mirror of
https://github.com/saymrwulf/pasta-pallas-verified.git
synced 2026-09-04 20:03:39 +00:00
- extract.sh: scoped Charon/Aeneas extraction of fields::fp (pow_vartime patched upstream to index loops — semantics-preserving, crate tests pass; sqrt/cmp/sum/random/... opaque, documented) - gen/: real transpiled model; subtle/CtOption hand-modeled (Choice := U8, CtOption := value × is_some), all other externals are axioms outside certificate cones - Proofs/PPallas: Lucas/Pratt primality certificate (reused — it was the one genuine piece of the previous attempt) - Proofs/Denote: Montgomery denotation ⟪a⟫ = feVal a · R⁻¹, Canon invariant - Proofs/HelperSpecs: adc/sbb/mac exact ℕ specs (step-registered) - Proofs/SubNegSpec: sub_spec (general two-case identity covering the t<2P reduction shape) and neg_spec, proven, no axioms Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
1 line
No EOL
2.2 MiB
1 line
No EOL
2.2 MiB
{"charon_version":"0.1.212","translated":{"crate_name":"pasta_curves","options":{"ullbc":false,"precise_drops":false,"skip_borrowck":false,"mir":null,"rustc_args":[],"targets":[],"monomorphize":false,"monomorphize_mut":null,"start_from":["crate::fields::fp"],"start_from_if_exists":[],"start_from_attribute":null,"start_from_pub":false,"include":[],"opaque":["crate::fields::fp::_::fmt","crate::fields::fp::_::pow_by_t_minus1_over2","crate::fields::fp::_::get_lower_32","crate::fields::fp::_::ZETA","crate::fields::fp::_::from_uniform_bytes","crate::fields::fp::_::sqrt","crate::fields::fp::_::sqrt_ratio","crate::fields::fp::_::random","crate::fields::fp::_::sum","crate::fields::fp::_::product","crate::fields::fp::_::cmp","crate::fields::fp::_::partial_cmp"],"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/pasta-pallas-verified/verification/PallasFp.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":"src/fields.rs"},"crate_name":"pasta_curves","contents":"//! This module contains implementations for the two finite fields of the Pallas\n//! and Vesta curves.\n\nmod fp;\nmod fq;\n\npub use fp::*;\npub use fq::*;\n\n/// Converts 64-bit little-endian limbs to 32-bit little endian limbs.\n#[cfg(feature = \"gpu\")]\nfn u64_to_u32(limbs: &[u64]) -> alloc::vec::Vec<u32> {\n limbs\n .iter()\n .flat_map(|limb| [(limb & 0xFFFF_FFFF) as u32, (limb >> 32) as u32].into_iter())\n .collect()\n}\n\n#[cfg(feature = \"gpu\")]\n#[test]\nfn test_u64_to_u32() {\n use rand::{RngCore, SeedableRng};\n use rand_xorshift::XorShiftRng;\n\n let mut rng = XorShiftRng::from_seed([0; 16]);\n let u64_limbs: alloc::vec::Vec<u64> = (0..6).map(|_| rng.next_u64()).collect();\n let u32_limbs = crate::fields::u64_to_u32(&u64_limbs);\n\n let u64_le_bytes: alloc::vec::Vec<u8> = u64_limbs\n .iter()\n .flat_map(|limb| limb.to_le_bytes())\n .collect();\n let u32_le_bytes: alloc::vec::Vec<u8> = u32_limbs\n .iter()\n .flat_map(|limb| limb.to_le_bytes())\n .collect();\n\n assert_eq!(u64_le_bytes, u32_le_bytes);\n}\n"},{"id":1,"name":{"Local":"src/lib.rs"},"crate_name":"pasta_curves","contents":"//! Implementation of the Pallas / Vesta curve cycle.\n\n#![no_std]\n#![cfg_attr(docsrs, feature(doc_cfg))]\n#![allow(unknown_lints)]\n#![allow(clippy::op_ref, clippy::same_item_push, clippy::upper_case_acronyms)]\n#![deny(rustdoc::broken_intra_doc_links)]\n#![deny(missing_debug_implementations)]\n#![deny(missing_docs)]\n#![deny(unsafe_code)]\n\n#[cfg(feature = \"alloc\")]\nextern crate alloc;\n\n#[cfg(test)]\n#[macro_use]\nextern crate std;\n\n#[macro_use]\nmod macros;\nmod curves;\nmod fields;\n\npub mod arithmetic;\n#[cfg(feature = \"deferred\")]\n#[cfg_attr(docsrs, doc(cfg(feature = \"deferred\")))]\npub mod deferred;\npub mod pallas;\npub mod vesta;\n\n#[cfg(feature = \"alloc\")]\nmod hashtocurve;\n\n#[cfg(feature = \"serde\")]\nmod serde_impl;\n\npub use curves::*;\npub use fields::*;\n\npub extern crate group;\n\n#[cfg(feature = \"alloc\")]\n#[test]\nfn test_endo_consistency() {\n use crate::arithmetic::CurveExt;\n use group::{ff::WithSmallOrderMulGroup, Group};\n\n let a = pallas::Point::generator();\n assert_eq!(a * pallas::Scalar::ZETA, a.endo());\n let a = vesta::Point::generator();\n assert_eq!(a * vesta::Scalar::ZETA, a.endo());\n}\n"},{"id":2,"name":{"Local":"src/fields/fp.rs"},"crate_name":"pasta_curves","contents":"use core::fmt;\nuse core::ops::{Add, Mul, Neg, Sub};\n\nuse ff::{Field, FromUniformBytes, PrimeField, WithSmallOrderMulGroup};\nuse rand::RngCore;\nuse subtle::{Choice, ConditionallySelectable, ConstantTimeEq, CtOption};\n\n#[cfg(feature = \"sqrt-table\")]\nuse lazy_static::lazy_static;\n\n#[cfg(feature = \"bits\")]\nuse ff::{FieldBits, PrimeFieldBits};\n\nuse crate::arithmetic::{adc, mac, sbb, SqrtTableHelpers};\n#[cfg(feature = \"deferred\")]\nuse crate::deferred::{DeferredField, Product};\n\n#[cfg(feature = \"sqrt-table\")]\nuse crate::arithmetic::SqrtTables;\n\n/// This represents an element of $\\mathbb{F}_p$ where\n///\n/// `p = 0x40000000000000000000000000000000224698fc094cf91b992d30ed00000001`\n///\n/// is the base field of the Pallas curve.\n// The internal representation of this type is four 64-bit unsigned\n// integers in little-endian order. `Fp` values are always in\n// Montgomery form; i.e., Fp(a) = aR mod p, with R = 2^256.\n#[derive(Clone, Copy, Eq)]\n#[repr(transparent)]\npub struct Fp(pub(crate) [u64; 4]);\n\nimpl fmt::Debug for Fp {\n fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {\n let tmp = self.to_repr();\n write!(f, \"0x\")?;\n for &b in tmp.iter().rev() {\n write!(f, \"{:02x}\", b)?;\n }\n Ok(())\n }\n}\n\nimpl From<bool> for Fp {\n fn from(bit: bool) -> Fp {\n if bit {\n Fp::one()\n } else {\n Fp::zero()\n }\n }\n}\n\nimpl From<u64> for Fp {\n fn from(val: u64) -> Fp {\n Fp([val, 0, 0, 0]) * R2\n }\n}\n\nimpl ConstantTimeEq for Fp {\n fn ct_eq(&self, other: &Self) -> Choice {\n self.0[0].ct_eq(&other.0[0])\n & self.0[1].ct_eq(&other.0[1])\n & self.0[2].ct_eq(&other.0[2])\n & self.0[3].ct_eq(&other.0[3])\n }\n}\n\nimpl PartialEq for Fp {\n #[inline]\n fn eq(&self, other: &Self) -> bool {\n self.ct_eq(other).unwrap_u8() == 1\n }\n}\n\nimpl core::cmp::Ord for Fp {\n fn cmp(&self, other: &Self) -> core::cmp::Ordering {\n let left = self.to_repr();\n let right = other.to_repr();\n left.iter()\n .zip(right.iter())\n .rev()\n .find_map(|(left_byte, right_byte)| match left_byte.cmp(right_byte) {\n core::cmp::Ordering::Equal => None,\n res => Some(res),\n })\n .unwrap_or(core::cmp::Ordering::Equal)\n }\n}\n\nimpl core::cmp::PartialOrd for Fp {\n fn partial_cmp(&self, other: &Self) -> Option<core::cmp::Ordering> {\n Some(self.cmp(other))\n }\n}\n\nimpl ConditionallySelectable for Fp {\n fn conditional_select(a: &Self, b: &Self, choice: Choice) -> Self {\n Fp([\n u64::conditional_select(&a.0[0], &b.0[0], choice),\n u64::conditional_select(&a.0[1], &b.0[1], choice),\n u64::conditional_select(&a.0[2], &b.0[2], choice),\n u64::conditional_select(&a.0[3], &b.0[3], choice),\n ])\n }\n}\n\n/// Constant representing the modulus\n/// p = 0x40000000000000000000000000000000224698fc094cf91b992d30ed00000001\nconst MODULUS: Fp = Fp([\n 0x992d30ed00000001,\n 0x224698fc094cf91b,\n 0x0000000000000000,\n 0x4000000000000000,\n]);\n\n/// The modulus as u32 limbs.\n#[cfg(not(target_pointer_width = \"64\"))]\nconst MODULUS_LIMBS_32: [u32; 8] = [\n 0x0000_0001,\n 0x992d_30ed,\n 0x094c_f91b,\n 0x2246_98fc,\n 0x0000_0000,\n 0x0000_0000,\n 0x0000_0000,\n 0x4000_0000,\n];\n\nimpl<'a> Neg for &'a Fp {\n type Output = Fp;\n\n #[inline]\n fn neg(self) -> Fp {\n self.neg()\n }\n}\n\nimpl Neg for Fp {\n type Output = Fp;\n\n #[inline]\n fn neg(self) -> Fp {\n -&self\n }\n}\n\nimpl<'a, 'b> Sub<&'b Fp> for &'a Fp {\n type Output = Fp;\n\n #[inline]\n fn sub(self, rhs: &'b Fp) -> Fp {\n self.sub(rhs)\n }\n}\n\nimpl<'a, 'b> Add<&'b Fp> for &'a Fp {\n type Output = Fp;\n\n #[inline]\n fn add(self, rhs: &'b Fp) -> Fp {\n self.add(rhs)\n }\n}\n\nimpl<'a, 'b> Mul<&'b Fp> for &'a Fp {\n type Output = Fp;\n\n #[inline]\n fn mul(self, rhs: &'b Fp) -> Fp {\n self.mul(rhs)\n }\n}\n\nimpl_binops_additive!(Fp, Fp);\nimpl_binops_multiplicative!(Fp, Fp);\n\nimpl<T: ::core::borrow::Borrow<Fp>> ::core::iter::Sum<T> for Fp {\n fn sum<I: Iterator<Item = T>>(iter: I) -> Self {\n iter.fold(Self::ZERO, |acc, item| acc + item.borrow())\n }\n}\n\nimpl<T: ::core::borrow::Borrow<Fp>> ::core::iter::Product<T> for Fp {\n fn product<I: Iterator<Item = T>>(iter: I) -> Self {\n iter.fold(Self::ONE, |acc, item| acc * item.borrow())\n }\n}\n\n/// INV = -(p^{-1} mod 2^64) mod 2^64\nconst INV: u64 = 0x992d30ecffffffff;\n\n/// R = 2^256 mod p\nconst R: Fp = Fp([\n 0x34786d38fffffffd,\n 0x992c350be41914ad,\n 0xffffffffffffffff,\n 0x3fffffffffffffff,\n]);\n\n/// R^2 = 2^512 mod p\nconst R2: Fp = Fp([\n 0x8c78ecb30000000f,\n 0xd7d30dbd8b0de0e7,\n 0x7797a99bc3c95d18,\n 0x096d41af7b9cb714,\n]);\n\n/// R^3 = 2^768 mod p\nconst R3: Fp = Fp([\n 0xf185a5993a9e10f9,\n 0xf6a68f3b6ac5b1d1,\n 0xdf8d1014353fd42c,\n 0x2ae309222d2d9910,\n]);\n\n/// `GENERATOR = 5 mod p` is a generator of the `p - 1` order multiplicative\n/// subgroup, or in other words a primitive root of the field.\nconst GENERATOR: Fp = Fp::from_raw([\n 0x0000_0000_0000_0005,\n 0x0000_0000_0000_0000,\n 0x0000_0000_0000_0000,\n 0x0000_0000_0000_0000,\n]);\n\nconst S: u32 = 32;\n\n/// GENERATOR^t where t * 2^s + 1 = p\n/// with t odd. In other words, this\n/// is a 2^s root of unity.\nconst ROOT_OF_UNITY: Fp = Fp::from_raw([\n 0xbdad6fabd87ea32f,\n 0xea322bf2b7bb7584,\n 0x362120830561f81a,\n 0x2bce74deac30ebda,\n]);\n\n/// GENERATOR^{2^s} where t * 2^s + 1 = p\n/// with t odd. In other words, this\n/// is a t root of unity.\nconst DELTA: Fp = Fp::from_raw([\n 0x6a6ccd20dd7b9ba2,\n 0xf5e4f3f13eee5636,\n 0xbd455b7112a5049d,\n 0x0a757d0f0006ab6c,\n]);\n\n/// `(t - 1) // 2` where t * 2^s + 1 = p with t odd.\n#[cfg(any(test, not(feature = \"sqrt-table\")))]\nconst T_MINUS1_OVER2: [u64; 4] = [\n 0x04a6_7c8d_cc96_9876,\n 0x0000_0000_1123_4c7e,\n 0x0000_0000_0000_0000,\n 0x0000_0000_2000_0000,\n];\n\nimpl Default for Fp {\n #[inline]\n fn default() -> Self {\n Self::zero()\n }\n}\n\nimpl Fp {\n /// Returns zero, the additive identity.\n #[inline]\n pub const fn zero() -> Fp {\n Fp([0, 0, 0, 0])\n }\n\n /// Returns one, the multiplicative identity.\n #[inline]\n pub const fn one() -> Fp {\n R\n }\n\n /// Doubles this field element.\n #[inline]\n pub const fn double(&self) -> Fp {\n // TODO: This can be achieved more efficiently with a bitshift.\n self.add(self)\n }\n\n fn from_u512(limbs: [u64; 8]) -> Fp {\n // We reduce an arbitrary 512-bit number by decomposing it into two 256-bit digits\n // with the higher bits multiplied by 2^256. Thus, we perform two reductions\n //\n // 1. the lower bits are multiplied by R^2, as normal\n // 2. the upper bits are multiplied by R^2 * 2^256 = R^3\n //\n // and computing their sum in the field. It remains to see that arbitrary 256-bit\n // numbers can be placed into Montgomery form safely using the reduction. The\n // reduction works so long as the product is less than R=2^256 multiplied by\n // the modulus. This holds because for any `c` smaller than the modulus, we have\n // that (2^256 - 1)*c is an acceptable product for the reduction. Therefore, the\n // reduction always works so long as `c` is in the field; in this case it is either the\n // constant `R2` or `R3`.\n let d0 = Fp([limbs[0], limbs[1], limbs[2], limbs[3]]);\n let d1 = Fp([limbs[4], limbs[5], limbs[6], limbs[7]]);\n // Convert to Montgomery form\n d0 * R2 + d1 * R3\n }\n\n /// Converts from an integer represented in little endian\n /// into its (congruent) `Fp` representation.\n pub const fn from_raw(val: [u64; 4]) -> Self {\n (&Fp(val)).mul(&R2)\n }\n\n /// Squares this element.\n #[cfg_attr(not(feature = \"uninline-portable\"), inline)]\n pub const fn square(&self) -> Fp {\n let u = self.square_unreduced();\n Fp::montgomery_reduce(u[0], u[1], u[2], u[3], u[4], u[5], u[6], u[7])\n }\n\n #[allow(clippy::too_many_arguments)]\n #[cfg_attr(not(feature = \"uninline-portable\"), inline(always))]\n const fn montgomery_reduce(\n r0: u64,\n r1: u64,\n r2: u64,\n r3: u64,\n r4: u64,\n r5: u64,\n r6: u64,\n r7: u64,\n ) -> Self {\n // The Montgomery reduction here is based on Algorithm 14.32 in\n // Handbook of Applied Cryptography\n // <http://cacr.uwaterloo.ca/hac/about/chap14.pdf>.\n\n let k = r0.wrapping_mul(INV);\n let (_, carry) = mac(r0, k, MODULUS.0[0], 0);\n let (r1, carry) = mac(r1, k, MODULUS.0[1], carry);\n let (r2, carry) = mac(r2, k, MODULUS.0[2], carry);\n let (r3, carry) = mac(r3, k, MODULUS.0[3], carry);\n let (r4, carry2) = adc(r4, 0, carry);\n\n let k = r1.wrapping_mul(INV);\n let (_, carry) = mac(r1, k, MODULUS.0[0], 0);\n let (r2, carry) = mac(r2, k, MODULUS.0[1], carry);\n let (r3, carry) = mac(r3, k, MODULUS.0[2], carry);\n let (r4, carry) = mac(r4, k, MODULUS.0[3], carry);\n let (r5, carry2) = adc(r5, carry2, carry);\n\n let k = r2.wrapping_mul(INV);\n let (_, carry) = mac(r2, k, MODULUS.0[0], 0);\n let (r3, carry) = mac(r3, k, MODULUS.0[1], carry);\n let (r4, carry) = mac(r4, k, MODULUS.0[2], carry);\n let (r5, carry) = mac(r5, k, MODULUS.0[3], carry);\n let (r6, carry2) = adc(r6, carry2, carry);\n\n let k = r3.wrapping_mul(INV);\n let (_, carry) = mac(r3, k, MODULUS.0[0], 0);\n let (r4, carry) = mac(r4, k, MODULUS.0[1], carry);\n let (r5, carry) = mac(r5, k, MODULUS.0[2], carry);\n let (r6, carry) = mac(r6, k, MODULUS.0[3], carry);\n let (r7, _) = adc(r7, carry2, carry);\n\n // Result may be within MODULUS of the correct value\n (&Fp([r4, r5, r6, r7])).sub(&MODULUS)\n }\n\n /// Multiplies `rhs` by `self`, returning the result.\n #[cfg_attr(not(feature = \"uninline-portable\"), inline)]\n pub const fn mul(&self, rhs: &Self) -> Self {\n let u = self.mul_unreduced(rhs);\n Fp::montgomery_reduce(u[0], u[1], u[2], u[3], u[4], u[5], u[6], u[7])\n }\n\n /// Subtracts `rhs` from `self`, returning the result.\n #[cfg_attr(not(feature = \"uninline-portable\"), inline)]\n pub const fn sub(&self, rhs: &Self) -> Self {\n let (d0, borrow) = sbb(self.0[0], rhs.0[0], 0);\n let (d1, borrow) = sbb(self.0[1], rhs.0[1], borrow);\n let (d2, borrow) = sbb(self.0[2], rhs.0[2], borrow);\n let (d3, borrow) = sbb(self.0[3], rhs.0[3], borrow);\n\n // If underflow occurred on the final limb, borrow = 0xfff...fff, otherwise\n // borrow = 0x000...000. Thus, we use it as a mask to conditionally add the modulus.\n let (d0, carry) = adc(d0, MODULUS.0[0] & borrow, 0);\n let (d1, carry) = adc(d1, MODULUS.0[1] & borrow, carry);\n let (d2, carry) = adc(d2, MODULUS.0[2] & borrow, carry);\n let (d3, _) = adc(d3, MODULUS.0[3] & borrow, carry);\n\n Fp([d0, d1, d2, d3])\n }\n\n /// Adds `rhs` to `self`, returning the result.\n #[cfg_attr(not(feature = \"uninline-portable\"), inline)]\n pub const fn add(&self, rhs: &Self) -> Self {\n let (d0, carry) = adc(self.0[0], rhs.0[0], 0);\n let (d1, carry) = adc(self.0[1], rhs.0[1], carry);\n let (d2, carry) = adc(self.0[2], rhs.0[2], carry);\n let (d3, _) = adc(self.0[3], rhs.0[3], carry);\n\n // Attempt to subtract the modulus, to ensure the value\n // is smaller than the modulus.\n (&Fp([d0, d1, d2, d3])).sub(&MODULUS)\n }\n\n /// Negates `self`.\n #[cfg_attr(not(feature = \"uninline-portable\"), inline)]\n pub const fn neg(&self) -> Self {\n // Subtract `self` from `MODULUS` to negate. Ignore the final\n // borrow because it cannot underflow; self is guaranteed to\n // be in the field.\n let (d0, borrow) = sbb(MODULUS.0[0], self.0[0], 0);\n let (d1, borrow) = sbb(MODULUS.0[1], self.0[1], borrow);\n let (d2, borrow) = sbb(MODULUS.0[2], self.0[2], borrow);\n let (d3, _) = sbb(MODULUS.0[3], self.0[3], borrow);\n\n // `tmp` could be `MODULUS` if `self` was zero. Create a mask that is\n // zero if `self` was zero, and `u64::max_value()` if self was nonzero.\n let mask = (((self.0[0] | self.0[1] | self.0[2] | self.0[3]) == 0) as u64).wrapping_sub(1);\n\n Fp([d0 & mask, d1 & mask, d2 & mask, d3 & mask])\n }\n\n /// Multiplies `rhs` by `self`, returning the unreduced 512-bit product.\n #[cfg_attr(not(feature = \"uninline-portable\"), inline)]\n pub(crate) const fn mul_unreduced(&self, rhs: &Self) -> [u64; 8] {\n // Schoolbook multiplication\n\n let (r0, carry) = mac(0, self.0[0], rhs.0[0], 0);\n let (r1, carry) = mac(0, self.0[0], rhs.0[1], carry);\n let (r2, carry) = mac(0, self.0[0], rhs.0[2], carry);\n let (r3, r4) = mac(0, self.0[0], rhs.0[3], carry);\n\n let (r1, carry) = mac(r1, self.0[1], rhs.0[0], 0);\n let (r2, carry) = mac(r2, self.0[1], rhs.0[1], carry);\n let (r3, carry) = mac(r3, self.0[1], rhs.0[2], carry);\n let (r4, r5) = mac(r4, self.0[1], rhs.0[3], carry);\n\n let (r2, carry) = mac(r2, self.0[2], rhs.0[0], 0);\n let (r3, carry) = mac(r3, self.0[2], rhs.0[1], carry);\n let (r4, carry) = mac(r4, self.0[2], rhs.0[2], carry);\n let (r5, r6) = mac(r5, self.0[2], rhs.0[3], carry);\n\n let (r3, carry) = mac(r3, self.0[3], rhs.0[0], 0);\n let (r4, carry) = mac(r4, self.0[3], rhs.0[1], carry);\n let (r5, carry) = mac(r5, self.0[3], rhs.0[2], carry);\n let (r6, r7) = mac(r6, self.0[3], rhs.0[3], carry);\n\n [r0, r1, r2, r3, r4, r5, r6, r7]\n }\n\n /// Squares this element, returning the unreduced 512-bit product.\n #[cfg_attr(not(feature = \"uninline-portable\"), inline)]\n pub(crate) const fn square_unreduced(&self) -> [u64; 8] {\n let (r1, carry) = mac(0, self.0[0], self.0[1], 0);\n let (r2, carry) = mac(0, self.0[0], self.0[2], carry);\n let (r3, r4) = mac(0, self.0[0], self.0[3], carry);\n\n let (r3, carry) = mac(r3, self.0[1], self.0[2], 0);\n let (r4, r5) = mac(r4, self.0[1], self.0[3], carry);\n\n let (r5, r6) = mac(r5, self.0[2], self.0[3], 0);\n\n let r7 = r6 >> 63;\n let r6 = (r6 << 1) | (r5 >> 63);\n let r5 = (r5 << 1) | (r4 >> 63);\n let r4 = (r4 << 1) | (r3 >> 63);\n let r3 = (r3 << 1) | (r2 >> 63);\n let r2 = (r2 << 1) | (r1 >> 63);\n let r1 = r1 << 1;\n\n let (r0, carry) = mac(0, self.0[0], self.0[0], 0);\n let (r1, carry) = adc(0, r1, carry);\n let (r2, carry) = mac(r2, self.0[1], self.0[1], carry);\n let (r3, carry) = adc(0, r3, carry);\n let (r4, carry) = mac(r4, self.0[2], self.0[2], carry);\n let (r5, carry) = adc(0, r5, carry);\n let (r6, carry) = mac(r6, self.0[3], self.0[3], carry);\n let (r7, _) = adc(0, r7, carry);\n\n [r0, r1, r2, r3, r4, r5, r6, r7]\n }\n}\n\n#[cfg(feature = \"deferred\")]\nimpl DeferredField for Fp {\n type Accumulator = Product<Fp>;\n\n #[cfg_attr(not(feature = \"uninline-portable\"), inline)]\n fn mul_accumulate(acc: &mut Self::Accumulator, a: &Fp, b: &Fp) {\n acc.accumulate(a.mul_unreduced(b));\n }\n\n #[cfg_attr(not(feature = \"uninline-portable\"), inline)]\n fn square_accumulate(acc: &mut Self::Accumulator, a: &Fp) {\n acc.accumulate(a.square_unreduced());\n }\n\n #[cfg_attr(not(feature = \"uninline-portable\"), inline)]\n fn reduce(acc: Self::Accumulator) -> Fp {\n /// 2^448 mod p (little-endian limbs).\n const B448: [u64; 4] = [\n 0x9b9858f294cf91ba,\n 0x8635bd2c4252b065,\n 0x496d41af7b9cb714,\n 0x1b4b3c4bfffffffc,\n ];\n let limbs = acc.partial_reduce(&B448, &R2.0);\n Fp::montgomery_reduce(\n limbs[0], limbs[1], limbs[2], limbs[3], limbs[4], limbs[5], limbs[6], limbs[7],\n )\n }\n}\n\nimpl From<Fp> for [u8; 32] {\n fn from(value: Fp) -> [u8; 32] {\n value.to_repr()\n }\n}\n\nimpl<'a> From<&'a Fp> for [u8; 32] {\n fn from(value: &'a Fp) -> [u8; 32] {\n value.to_repr()\n }\n}\n\nimpl ff::Field for Fp {\n const ZERO: Self = Self::zero();\n const ONE: Self = Self::one();\n\n fn random(mut rng: impl RngCore) -> Self {\n Self::from_u512([\n rng.next_u64(),\n rng.next_u64(),\n rng.next_u64(),\n rng.next_u64(),\n rng.next_u64(),\n rng.next_u64(),\n rng.next_u64(),\n rng.next_u64(),\n ])\n }\n\n fn double(&self) -> Self {\n self.double()\n }\n\n #[inline(always)]\n fn square(&self) -> Self {\n self.square()\n }\n\n fn sqrt_ratio(num: &Self, div: &Self) -> (Choice, Self) {\n #[cfg(feature = \"sqrt-table\")]\n {\n FP_TABLES.sqrt_ratio(num, div)\n }\n\n #[cfg(not(feature = \"sqrt-table\"))]\n ff::helpers::sqrt_ratio_generic(num, div)\n }\n\n #[cfg(feature = \"sqrt-table\")]\n fn sqrt_alt(&self) -> (Choice, Self) {\n FP_TABLES.sqrt_alt(self)\n }\n\n /// Computes the square root of this element, if it exists.\n fn sqrt(&self) -> CtOption<Self> {\n #[cfg(feature = \"sqrt-table\")]\n {\n let (is_square, res) = FP_TABLES.sqrt_alt(self);\n CtOption::new(res, is_square)\n }\n\n #[cfg(not(feature = \"sqrt-table\"))]\n ff::helpers::sqrt_tonelli_shanks(self, &T_MINUS1_OVER2)\n }\n\n /// Computes the multiplicative inverse of this element,\n /// failing if the element is zero.\n fn invert(&self) -> CtOption<Self> {\n let tmp = self.pow_vartime(&[\n 0x992d30ecffffffff,\n 0x224698fc094cf91b,\n 0x0,\n 0x4000000000000000,\n ]);\n\n CtOption::new(tmp, !self.ct_eq(&Self::zero()))\n }\n\n fn pow_vartime<S: AsRef<[u64]>>(&self, exp: S) -> Self {\n // PATCH (Aeneas compatibility): index-based loops instead of\n // `iter().rev()` / `(0..64).rev()` (double-ended range iterators have\n // no Aeneas model). Iteration order and arithmetic are IDENTICAL to\n // upstream: limbs from most- to least-significant, bits from high to\n // low, square-then-conditionally-multiply.\n let mut res = Self::one();\n let mut found_one = false;\n let exp = exp.as_ref();\n let mut j = exp.len();\n while j > 0 {\n j -= 1;\n let e = exp[j];\n let mut i = 64u32;\n while i > 0 {\n i -= 1;\n if found_one {\n res = res.square();\n }\n\n if ((e >> i) & 1) == 1 {\n found_one = true;\n res *= self;\n }\n }\n }\n res\n }\n}\n\nimpl ff::PrimeField for Fp {\n type Repr = [u8; 32];\n\n const MODULUS: &'static str =\n \"0x40000000000000000000000000000000224698fc094cf91b992d30ed00000001\";\n const TWO_INV: Self = Fp::from_raw([\n 0xcc96987680000001,\n 0x11234c7e04a67c8d,\n 0x0000000000000000,\n 0x2000000000000000,\n ]);\n const NUM_BITS: u32 = 255;\n const CAPACITY: u32 = 254;\n const MULTIPLICATIVE_GENERATOR: Self = GENERATOR;\n const S: u32 = S;\n const ROOT_OF_UNITY: Self = ROOT_OF_UNITY;\n const ROOT_OF_UNITY_INV: Self = Fp::from_raw([\n 0xf0b87c7db2ce91f6,\n 0x84a0a1d8859f066f,\n 0xb4ed8e647196dad1,\n 0x2cd5282c53116b5c,\n ]);\n const DELTA: Self = DELTA;\n\n fn from_u128(v: u128) -> Self {\n Fp::from_raw([v as u64, (v >> 64) as u64, 0, 0])\n }\n\n fn from_repr(repr: Self::Repr) -> CtOption<Self> {\n let mut tmp = Fp([0, 0, 0, 0]);\n\n tmp.0[0] = u64::from_le_bytes(repr[0..8].try_into().unwrap());\n tmp.0[1] = u64::from_le_bytes(repr[8..16].try_into().unwrap());\n tmp.0[2] = u64::from_le_bytes(repr[16..24].try_into().unwrap());\n tmp.0[3] = u64::from_le_bytes(repr[24..32].try_into().unwrap());\n\n // Try to subtract the modulus\n let (_, borrow) = sbb(tmp.0[0], MODULUS.0[0], 0);\n let (_, borrow) = sbb(tmp.0[1], MODULUS.0[1], borrow);\n let (_, borrow) = sbb(tmp.0[2], MODULUS.0[2], borrow);\n let (_, borrow) = sbb(tmp.0[3], MODULUS.0[3], borrow);\n\n // If the element is smaller than MODULUS then the\n // subtraction will underflow, producing a borrow value\n // of 0xffff...ffff. Otherwise, it'll be zero.\n let is_some = (borrow as u8) & 1;\n\n // Convert to Montgomery form by computing\n // (a.R^0 * R^2) / R = a.R\n tmp *= &R2;\n\n CtOption::new(tmp, Choice::from(is_some))\n }\n\n fn to_repr(&self) -> Self::Repr {\n // Turn into canonical form by computing\n // (a.R) / R = a\n let tmp = Fp::montgomery_reduce(self.0[0], self.0[1], self.0[2], self.0[3], 0, 0, 0, 0);\n\n let mut res = [0; 32];\n res[0..8].copy_from_slice(&tmp.0[0].to_le_bytes());\n res[8..16].copy_from_slice(&tmp.0[1].to_le_bytes());\n res[16..24].copy_from_slice(&tmp.0[2].to_le_bytes());\n res[24..32].copy_from_slice(&tmp.0[3].to_le_bytes());\n\n res\n }\n\n fn is_odd(&self) -> Choice {\n Choice::from(self.to_repr()[0] & 1)\n }\n}\n\n#[cfg(all(feature = \"bits\", not(target_pointer_width = \"64\")))]\ntype ReprBits = [u32; 8];\n\n#[cfg(all(feature = \"bits\", target_pointer_width = \"64\"))]\ntype ReprBits = [u64; 4];\n\n#[cfg(feature = \"bits\")]\n#[cfg_attr(docsrs, doc(cfg(feature = \"bits\")))]\nimpl PrimeFieldBits for Fp {\n type ReprBits = ReprBits;\n\n fn to_le_bits(&self) -> FieldBits<Self::ReprBits> {\n let bytes = self.to_repr();\n\n #[cfg(not(target_pointer_width = \"64\"))]\n let limbs = [\n u32::from_le_bytes(bytes[0..4].try_into().unwrap()),\n u32::from_le_bytes(bytes[4..8].try_into().unwrap()),\n u32::from_le_bytes(bytes[8..12].try_into().unwrap()),\n u32::from_le_bytes(bytes[12..16].try_into().unwrap()),\n u32::from_le_bytes(bytes[16..20].try_into().unwrap()),\n u32::from_le_bytes(bytes[20..24].try_into().unwrap()),\n u32::from_le_bytes(bytes[24..28].try_into().unwrap()),\n u32::from_le_bytes(bytes[28..32].try_into().unwrap()),\n ];\n\n #[cfg(target_pointer_width = \"64\")]\n let limbs = [\n u64::from_le_bytes(bytes[0..8].try_into().unwrap()),\n u64::from_le_bytes(bytes[8..16].try_into().unwrap()),\n u64::from_le_bytes(bytes[16..24].try_into().unwrap()),\n u64::from_le_bytes(bytes[24..32].try_into().unwrap()),\n ];\n\n FieldBits::new(limbs)\n }\n\n fn char_le_bits() -> FieldBits<Self::ReprBits> {\n #[cfg(not(target_pointer_width = \"64\"))]\n {\n FieldBits::new(MODULUS_LIMBS_32)\n }\n\n #[cfg(target_pointer_width = \"64\")]\n FieldBits::new(MODULUS.0)\n }\n}\n\n#[cfg(feature = \"sqrt-table\")]\nlazy_static! {\n // The perfect hash parameters are found by `squareroottab.sage` in zcash/pasta.\n #[cfg_attr(docsrs, doc(cfg(feature = \"sqrt-table\")))]\n static ref FP_TABLES: SqrtTables<Fp> = SqrtTables::new(0x11BE, 1098);\n}\n\nimpl SqrtTableHelpers for Fp {\n fn pow_by_t_minus1_over2(&self) -> Self {\n let sqr = |x: Fp, i: u32| (0..i).fold(x, |x, _| x.square());\n\n let r10 = self.square();\n let r11 = r10 * self;\n let r110 = r11.square();\n let r111 = r110 * self;\n let r1001 = r111 * r10;\n let r1101 = r111 * r110;\n let ra = sqr(*self, 129) * self;\n let rb = sqr(ra, 7) * r1001;\n let rc = sqr(rb, 7) * r1101;\n let rd = sqr(rc, 4) * r11;\n let re = sqr(rd, 6) * r111;\n let rf = sqr(re, 3) * r111;\n let rg = sqr(rf, 10) * r1001;\n let rh = sqr(rg, 5) * r1001;\n let ri = sqr(rh, 4) * r1001;\n let rj = sqr(ri, 3) * r111;\n let rk = sqr(rj, 4) * r1001;\n let rl = sqr(rk, 5) * r11;\n let rm = sqr(rl, 4) * r111;\n let rn = sqr(rm, 4) * r11;\n let ro = sqr(rn, 6) * r1001;\n let rp = sqr(ro, 5) * r1101;\n let rq = sqr(rp, 4) * r11;\n let rr = sqr(rq, 7) * r111;\n let rs = sqr(rr, 3) * r11;\n rs.square() // rt\n }\n\n fn get_lower_32(&self) -> u32 {\n // TODO: don't reduce, just hash the Montgomery form. (Requires rebuilding perfect hash table.)\n let tmp = Fp::montgomery_reduce(self.0[0], self.0[1], self.0[2], self.0[3], 0, 0, 0, 0);\n\n tmp.0[0] as u32\n }\n}\n\nimpl WithSmallOrderMulGroup<3> for Fp {\n const ZETA: Self = Fp::from_raw([\n 0x1dad5ebdfdfe4ab9,\n 0x1d1f8bd237ad3149,\n 0x2caad5dc57aab1b0,\n 0x12ccca834acdba71,\n ]);\n}\n\nimpl FromUniformBytes<64> for Fp {\n /// Converts a 512-bit little endian integer into\n /// a `Fp` by reducing by the modulus.\n fn from_uniform_bytes(bytes: &[u8; 64]) -> Fp {\n Fp::from_u512([\n u64::from_le_bytes(bytes[0..8].try_into().unwrap()),\n u64::from_le_bytes(bytes[8..16].try_into().unwrap()),\n u64::from_le_bytes(bytes[16..24].try_into().unwrap()),\n u64::from_le_bytes(bytes[24..32].try_into().unwrap()),\n u64::from_le_bytes(bytes[32..40].try_into().unwrap()),\n u64::from_le_bytes(bytes[40..48].try_into().unwrap()),\n u64::from_le_bytes(bytes[48..56].try_into().unwrap()),\n u64::from_le_bytes(bytes[56..64].try_into().unwrap()),\n ])\n }\n}\n\n#[cfg(feature = \"gpu\")]\nimpl ec_gpu::GpuName for Fp {\n fn name() -> alloc::string::String {\n ec_gpu::name!()\n }\n}\n\n#[cfg(feature = \"gpu\")]\nimpl ec_gpu::GpuField for Fp {\n fn one() -> alloc::vec::Vec<u32> {\n crate::fields::u64_to_u32(&R.0[..])\n }\n\n fn r2() -> alloc::vec::Vec<u32> {\n crate::fields::u64_to_u32(&R2.0[..])\n }\n\n fn modulus() -> alloc::vec::Vec<u32> {\n crate::fields::u64_to_u32(&MODULUS.0[..])\n }\n}\n\n#[test]\nfn test_inv() {\n // Compute -(r^{-1} mod 2^64) mod 2^64 by exponentiating\n // by totient(2**64) - 1\n\n let mut inv = 1u64;\n for _ in 0..63 {\n inv = inv.wrapping_mul(inv);\n inv = inv.wrapping_mul(MODULUS.0[0]);\n }\n inv = inv.wrapping_neg();\n\n assert_eq!(inv, INV);\n}\n\n#[test]\nfn test_sqrt() {\n // NB: TWO_INV is standing in as a \"random\" field element\n let v = (Fp::TWO_INV).square().sqrt().unwrap();\n assert!(v == Fp::TWO_INV || (-v) == Fp::TWO_INV);\n}\n\n#[test]\nfn test_sqrt_32bit_overflow() {\n assert!((Fp::from(5)).sqrt().is_none().unwrap_u8() == 1);\n}\n\n#[test]\nfn test_pow_by_t_minus1_over2() {\n // NB: TWO_INV is standing in as a \"random\" field element\n let v = (Fp::TWO_INV).pow_by_t_minus1_over2();\n assert!(v == ff::Field::pow_vartime(&Fp::TWO_INV, &T_MINUS1_OVER2));\n}\n\n#[test]\nfn test_sqrt_ratio_and_alt() {\n // (true, sqrt(num/div)), if num and div are nonzero and num/div is a square in the field\n let num = (Fp::TWO_INV).square();\n let div = Fp::from(25);\n let div_inverse = div.invert().unwrap();\n let expected = Fp::TWO_INV * Fp::from(5).invert().unwrap();\n let (is_square, v) = Fp::sqrt_ratio(&num, &div);\n assert!(bool::from(is_square));\n assert!(v == expected || (-v) == expected);\n\n let (is_square_alt, v_alt) = Fp::sqrt_alt(&(num * div_inverse));\n assert!(bool::from(is_square_alt));\n assert!(v_alt == v);\n\n // (false, sqrt(ROOT_OF_UNITY * num/div)), if num and div are nonzero and num/div is a nonsquare in the field\n let num = num * Fp::ROOT_OF_UNITY;\n let expected = Fp::TWO_INV * Fp::ROOT_OF_UNITY * Fp::from(5).invert().unwrap();\n let (is_square, v) = Fp::sqrt_ratio(&num, &div);\n assert!(!bool::from(is_square));\n assert!(v == expected || (-v) == expected);\n\n let (is_square_alt, v_alt) = Fp::sqrt_alt(&(num * div_inverse));\n assert!(!bool::from(is_square_alt));\n assert!(v_alt == v);\n\n // (true, 0), if num is zero\n let num = Fp::zero();\n let expected = Fp::zero();\n let (is_square, v) = Fp::sqrt_ratio(&num, &div);\n assert!(bool::from(is_square));\n assert!(v == expected);\n\n let (is_square_alt, v_alt) = Fp::sqrt_alt(&(num * div_inverse));\n assert!(bool::from(is_square_alt));\n assert!(v_alt == v);\n\n // (false, 0), if num is nonzero and div is zero\n let num = (Fp::TWO_INV).square();\n let div = Fp::zero();\n let expected = Fp::zero();\n let (is_square, v) = Fp::sqrt_ratio(&num, &div);\n assert!(!bool::from(is_square));\n assert!(v == expected);\n}\n\n#[test]\nfn test_zeta() {\n assert_eq!(\n format!(\"{:?}\", Fp::ZETA),\n \"0x12ccca834acdba712caad5dc57aab1b01d1f8bd237ad31491dad5ebdfdfe4ab9\"\n );\n\n let a = Fp::ZETA;\n assert!(a != Fp::one());\n let b = a * a;\n assert!(b != Fp::one());\n let c = b * a;\n assert!(c == Fp::one());\n}\n\n#[test]\nfn test_root_of_unity() {\n assert_eq!(\n Fp::ROOT_OF_UNITY.pow_vartime(&[1 << Fp::S, 0, 0, 0]),\n Fp::one()\n );\n}\n\n#[test]\nfn test_inv_root_of_unity() {\n assert_eq!(Fp::ROOT_OF_UNITY_INV, Fp::ROOT_OF_UNITY.invert().unwrap());\n}\n\n#[test]\nfn test_inv_2() {\n assert_eq!(Fp::TWO_INV, Fp::from(2).invert().unwrap());\n}\n\n#[test]\nfn test_delta() {\n assert_eq!(Fp::DELTA, GENERATOR.pow(&[1u64 << Fp::S, 0, 0, 0]));\n assert_eq!(\n Fp::DELTA,\n Fp::MULTIPLICATIVE_GENERATOR.pow(&[1u64 << Fp::S, 0, 0, 0])\n );\n}\n\n#[cfg(not(target_pointer_width = \"64\"))]\n#[test]\nfn consistent_modulus_limbs() {\n for (a, &b) in MODULUS\n .0\n .iter()\n .flat_map(|&limb| {\n Some(limb as u32)\n .into_iter()\n .chain(Some((limb >> 32) as u32))\n })\n .zip(MODULUS_LIMBS_32.iter())\n {\n assert_eq!(a, b);\n }\n}\n\n#[test]\nfn test_from_u512() {\n assert_eq!(\n Fp::from_raw([\n 0x3daec14d565241d9,\n 0x0b7af45b6073944b,\n 0xea5b8bd611a5bd4c,\n 0x150160330625db3d\n ]),\n Fp::from_u512([\n 0xee155641297678a1,\n 0xd83e156bdbfdbe65,\n 0xd9ccd834c68ba0b5,\n 0xf508ede312272758,\n 0x038df7cbf8228e89,\n 0x3505a1e4a3c74b41,\n 0xbfa46f775eb82db3,\n 0x26ebe27e262f471d\n ])\n );\n}\n"},{"id":3,"name":{"Local":"src/macros.rs"},"crate_name":"pasta_curves","contents":"macro_rules! impl_add_binop_specify_output {\n ($lhs:ident, $rhs:ident, $output:ident) => {\n impl<'b> ::core::ops::Add<&'b $rhs> for $lhs {\n type Output = $output;\n\n #[inline]\n fn add(self, rhs: &'b $rhs) -> $output {\n &self + rhs\n }\n }\n\n impl<'a> ::core::ops::Add<$rhs> for &'a $lhs {\n type Output = $output;\n\n #[inline]\n fn add(self, rhs: $rhs) -> $output {\n self + &rhs\n }\n }\n\n impl ::core::ops::Add<$rhs> for $lhs {\n type Output = $output;\n\n #[inline]\n fn add(self, rhs: $rhs) -> $output {\n &self + &rhs\n }\n }\n };\n}\n\nmacro_rules! impl_sub_binop_specify_output {\n ($lhs:ident, $rhs:ident, $output:ident) => {\n impl<'b> ::core::ops::Sub<&'b $rhs> for $lhs {\n type Output = $output;\n\n #[inline]\n fn sub(self, rhs: &'b $rhs) -> $output {\n &self - rhs\n }\n }\n\n impl<'a> ::core::ops::Sub<$rhs> for &'a $lhs {\n type Output = $output;\n\n #[inline]\n fn sub(self, rhs: $rhs) -> $output {\n self - &rhs\n }\n }\n\n impl ::core::ops::Sub<$rhs> for $lhs {\n type Output = $output;\n\n #[inline]\n fn sub(self, rhs: $rhs) -> $output {\n &self - &rhs\n }\n }\n };\n}\n\nmacro_rules! impl_binops_additive_specify_output {\n ($lhs:ident, $rhs:ident, $output:ident) => {\n impl_add_binop_specify_output!($lhs, $rhs, $output);\n impl_sub_binop_specify_output!($lhs, $rhs, $output);\n };\n}\n\nmacro_rules! impl_binops_multiplicative_mixed {\n ($lhs:ident, $rhs:ident, $output:ident) => {\n impl<'b> ::core::ops::Mul<&'b $rhs> for $lhs {\n type Output = $output;\n\n #[inline]\n fn mul(self, rhs: &'b $rhs) -> $output {\n &self * rhs\n }\n }\n\n impl<'a> ::core::ops::Mul<$rhs> for &'a $lhs {\n type Output = $output;\n\n #[inline]\n fn mul(self, rhs: $rhs) -> $output {\n self * &rhs\n }\n }\n\n impl ::core::ops::Mul<$rhs> for $lhs {\n type Output = $output;\n\n #[inline]\n fn mul(self, rhs: $rhs) -> $output {\n &self * &rhs\n }\n }\n };\n}\n\nmacro_rules! impl_binops_additive {\n ($lhs:ident, $rhs:ident) => {\n impl_binops_additive_specify_output!($lhs, $rhs, $lhs);\n\n impl ::core::ops::SubAssign<$rhs> for $lhs {\n #[inline]\n fn sub_assign(&mut self, rhs: $rhs) {\n *self = &*self - &rhs;\n }\n }\n\n impl ::core::ops::AddAssign<$rhs> for $lhs {\n #[inline]\n fn add_assign(&mut self, rhs: $rhs) {\n *self = &*self + &rhs;\n }\n }\n\n impl<'b> ::core::ops::SubAssign<&'b $rhs> for $lhs {\n #[inline]\n fn sub_assign(&mut self, rhs: &'b $rhs) {\n *self = &*self - rhs;\n }\n }\n\n impl<'b> ::core::ops::AddAssign<&'b $rhs> for $lhs {\n #[inline]\n fn add_assign(&mut self, rhs: &'b $rhs) {\n *self = &*self + rhs;\n }\n }\n };\n}\n\nmacro_rules! impl_binops_multiplicative {\n ($lhs:ident, $rhs:ident) => {\n impl_binops_multiplicative_mixed!($lhs, $rhs, $lhs);\n\n impl ::core::ops::MulAssign<$rhs> for $lhs {\n #[inline]\n fn mul_assign(&mut self, rhs: $rhs) {\n *self = &*self * &rhs;\n }\n }\n\n impl<'b> ::core::ops::MulAssign<&'b $rhs> for $lhs {\n #[inline]\n fn mul_assign(&mut self, rhs: &'b $rhs) {\n *self = &*self * rhs;\n }\n }\n };\n}\n"},{"id":4,"name":{"Local":"/rustc/library/core/src/clone.rs"},"crate_name":"core","contents":null},{"id":5,"name":{"Local":"/rustc/library/core/src/lib.rs"},"crate_name":"core","contents":null},{"id":6,"name":{"Local":"/rustc/library/core/src/marker.rs"},"crate_name":"core","contents":null},{"id":7,"name":{"Local":"/rustc/library/core/src/cmp.rs"},"crate_name":"core","contents":null},{"id":8,"name":{"Local":"/rustc/library/core/src/fmt/mod.rs"},"crate_name":"core","contents":null},{"id":9,"name":{"Local":"/rustc/library/core/src/convert/mod.rs"},"crate_name":"core","contents":null},{"id":10,"name":{"Local":"/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/subtle-2.6.1/src/lib.rs"},"crate_name":"subtle","contents":null},{"id":11,"name":{"Local":"/rustc/library/core/src/option.rs"},"crate_name":"core","contents":null},{"id":12,"name":{"Local":"/rustc/library/core/src/ops/control_flow.rs"},"crate_name":"core","contents":null},{"id":13,"name":{"Local":"/rustc/library/core/src/ops/mod.rs"},"crate_name":"core","contents":null},{"id":14,"name":{"Local":"/rustc/library/core/src/ops/arith.rs"},"crate_name":"core","contents":null},{"id":15,"name":{"Local":"/rustc/library/core/src/borrow.rs"},"crate_name":"core","contents":null},{"id":16,"name":{"Local":"/rustc/library/core/src/iter/traits/accum.rs"},"crate_name":"core","contents":null},{"id":17,"name":{"Local":"/rustc/library/core/src/iter/traits/mod.rs"},"crate_name":"core","contents":null},{"id":18,"name":{"Local":"/rustc/library/core/src/iter/mod.rs"},"crate_name":"core","contents":null},{"id":19,"name":{"Local":"/rustc/library/core/src/iter/traits/iterator.rs"},"crate_name":"core","contents":null},{"id":20,"name":{"Local":"/rustc/library/core/src/default.rs"},"crate_name":"core","contents":null},{"id":21,"name":{"Local":"/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ff-0.13.1/src/lib.rs"},"crate_name":"ff","contents":null},{"id":22,"name":{"Local":"/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.6.4/src/lib.rs"},"crate_name":"rand_core","contents":null},{"id":23,"name":{"Local":"/rustc/library/core/src/array/mod.rs"},"crate_name":"core","contents":null},{"id":24,"name":{"Local":"src/arithmetic/fields.rs"},"crate_name":"pasta_curves","contents":"//! This module contains the `Field` abstraction that allows us to write\n//! code that generalizes over a pair of fields.\n\nuse core::mem::size_of;\n\nuse static_assertions::const_assert;\n\n#[cfg(feature = \"sqrt-table\")]\nuse alloc::{boxed::Box, vec::Vec};\n#[cfg(feature = \"sqrt-table\")]\nuse core::marker::PhantomData;\n\n#[cfg(feature = \"sqrt-table\")]\nuse subtle::Choice;\n\nconst_assert!(size_of::<usize>() >= 4);\n\n/// An internal trait that exposes additional operations related to calculating square roots of\n/// prime-order finite fields.\npub(crate) trait SqrtTableHelpers: ff::PrimeField {\n /// Raise this field element to the power $(t-1)/2$.\n ///\n /// Field implementations may override this to use an efficient addition chain.\n fn pow_by_t_minus1_over2(&self) -> Self;\n\n /// Gets the lower 32 bits of this field element when expressed\n /// canonically.\n fn get_lower_32(&self) -> u32;\n}\n\n/// Parameters for a perfect hash function used in square root computation.\n#[cfg(feature = \"sqrt-table\")]\n#[cfg_attr(docsrs, doc(cfg(feature = \"sqrt-table\")))]\n#[derive(Debug)]\nstruct SqrtHasher<F: SqrtTableHelpers> {\n hash_xor: u32,\n hash_mod: usize,\n marker: PhantomData<F>,\n}\n\n#[cfg(feature = \"sqrt-table\")]\nimpl<F: SqrtTableHelpers> SqrtHasher<F> {\n /// Returns a perfect hash of x for use with SqrtTables::inv.\n fn hash(&self, x: &F) -> usize {\n // This is just the simplest constant-time perfect hash construction that could\n // possibly work. The 32 low-order bits are unique within the 2^S order subgroup,\n // then the xor acts as \"salt\" to injectively randomize the output when taken modulo\n // `hash_mod`. Since the table is small, we do not need anything more complicated.\n ((x.get_lower_32() ^ self.hash_xor) as usize) % self.hash_mod\n }\n}\n\n/// Tables used for square root computation.\n#[cfg(feature = \"sqrt-table\")]\n#[cfg_attr(docsrs, doc(cfg(feature = \"sqrt-table\")))]\n#[derive(Debug)]\npub(crate) struct SqrtTables<F: SqrtTableHelpers> {\n hasher: SqrtHasher<F>,\n inv: Vec<u8>,\n g0: Box<[F; 256]>,\n g1: Box<[F; 256]>,\n g2: Box<[F; 256]>,\n g3: Box<[F; 129]>,\n}\n\n#[cfg(feature = \"sqrt-table\")]\nimpl<F: SqrtTableHelpers> SqrtTables<F> {\n /// Build tables given parameters for the perfect hash.\n pub fn new(hash_xor: u32, hash_mod: usize) -> Self {\n use alloc::vec;\n\n let hasher = SqrtHasher {\n hash_xor,\n hash_mod,\n marker: PhantomData,\n };\n\n let mut gtab = (0..4).scan(F::ROOT_OF_UNITY, |gi, _| {\n // gi == ROOT_OF_UNITY^(256^i)\n let gtab_i: Vec<F> = (0..256)\n .scan(F::ONE, |acc, _| {\n let res = *acc;\n *acc *= *gi;\n Some(res)\n })\n .collect();\n *gi = gtab_i[255] * *gi;\n Some(gtab_i)\n });\n let gtab_0 = gtab.next().unwrap();\n let gtab_1 = gtab.next().unwrap();\n let gtab_2 = gtab.next().unwrap();\n let mut gtab_3 = gtab.next().unwrap();\n assert_eq!(gtab.next(), None);\n\n // Now invert gtab[3].\n let mut inv: Vec<u8> = vec![1; hash_mod];\n for (j, gtab_3_j) in gtab_3.iter().enumerate() {\n let hash = hasher.hash(gtab_3_j);\n // 1 is the last value to be assigned, so this ensures there are no collisions.\n assert!(inv[hash] == 1);\n inv[hash] = ((256 - j) & 0xFF) as u8;\n }\n\n gtab_3.truncate(129);\n\n SqrtTables::<F> {\n hasher,\n inv,\n g0: gtab_0.into_boxed_slice().try_into().unwrap(),\n g1: gtab_1.into_boxed_slice().try_into().unwrap(),\n g2: gtab_2.into_boxed_slice().try_into().unwrap(),\n g3: gtab_3.into_boxed_slice().try_into().unwrap(),\n }\n }\n\n /// Computes:\n ///\n /// * (true, sqrt(num/div)), if num and div are nonzero and num/div is a square in the field;\n /// * (true, 0), if num is zero;\n /// * (false, 0), if num is nonzero and div is zero;\n /// * (false, sqrt(ROOT_OF_UNITY * num/div)), if num and div are nonzero and num/div is a nonsquare in the field;\n ///\n /// where ROOT_OF_UNITY is a generator of the order 2^n subgroup (and therefore a nonsquare).\n ///\n /// The choice of root from sqrt is unspecified.\n pub fn sqrt_ratio(&self, num: &F, div: &F) -> (Choice, F) {\n // Based on:\n // * [Sarkar2020](https://eprint.iacr.org/2020/1407)\n // * [BDLSY2012](https://cr.yp.to/papers.html#ed25519)\n //\n // We need to calculate uv and v, where v = u^((T-1)/2), u = num/div, and p-1 = T * 2^S.\n // We can rewrite as follows:\n //\n // v = (num/div)^((T-1)/2)\n // = num^((T-1)/2) * div^(p-1 - (T-1)/2) [Fermat's Little Theorem]\n // = \" * div^(T * 2^S - (T-1)/2)\n // = \" * div^((2^(S+1) - 1)*(T-1)/2 + 2^S)\n // = (num * div^(2^(S+1) - 1))^((T-1)/2) * div^(2^S)\n //\n // Let w = (num * div^(2^(S+1) - 1))^((T-1)/2) * div^(2^S - 1).\n // Then v = w * div, and uv = num * v / div = num * w.\n //\n // We calculate:\n //\n // s = div^(2^S - 1) using an addition chain\n // t = div^(2^(S+1) - 1) = s^2 * div\n // w = (num * t)^((T-1)/2) * s using another addition chain\n //\n // then u and uv as above. The addition chains are given in\n // https://github.com/zcash/pasta/blob/master/addchain_sqrt.py .\n // The overall cost of this part is similar to a single full-width exponentiation,\n // regardless of S.\n\n let sqr = |x: F, i: u32| (0..i).fold(x, |x, _| x.square());\n\n // s = div^(2^S - 1)\n let s = (0..5).fold(*div, |d: F, i| sqr(d, 1 << i) * d);\n\n // t == div^(2^(S+1) - 1)\n let t = s.square() * div;\n\n // w = (num * t)^((T-1)/2) * s\n let w = (t * num).pow_by_t_minus1_over2() * s;\n\n // v == u^((T-1)/2)\n let v = w * div;\n\n // uv = u * v\n let uv = w * num;\n\n let res = self.sqrt_common(&uv, &v);\n\n let sqdiv = res.square() * div;\n let is_square = (sqdiv - num).is_zero();\n let is_nonsquare = (sqdiv - F::ROOT_OF_UNITY * num).is_zero();\n assert!(bool::from(\n num.is_zero() | div.is_zero() | (is_square ^ is_nonsquare)\n ));\n\n (is_square, res)\n }\n\n /// Same as sqrt_ratio(u, one()) but more efficient.\n pub fn sqrt_alt(&self, u: &F) -> (Choice, F) {\n let v = u.pow_by_t_minus1_over2();\n let uv = *u * v;\n\n let res = self.sqrt_common(&uv, &v);\n\n let sq = res.square();\n let is_square = (sq - u).is_zero();\n let is_nonsquare = (sq - F::ROOT_OF_UNITY * u).is_zero();\n assert!(bool::from(u.is_zero() | (is_square ^ is_nonsquare)));\n\n (is_square, res)\n }\n\n /// Common part of sqrt_ratio and sqrt_alt: return their result given v = u^((T-1)/2) and uv = u * v.\n fn sqrt_common(&self, uv: &F, v: &F) -> F {\n let sqr = |x: F, i: u32| (0..i).fold(x, |x, _| x.square());\n let inv = |x: F| self.inv[self.hasher.hash(&x)] as usize;\n\n let x3 = *uv * v;\n let x2 = sqr(x3, 8);\n let x1 = sqr(x2, 8);\n let x0 = sqr(x1, 8);\n\n // i = 0, 1\n let mut t_ = inv(x0); // = t >> 16\n // 1 == x0 * ROOT_OF_UNITY^(t_ << 24)\n assert!(t_ < 0x100);\n let alpha = x1 * self.g2[t_];\n\n // i = 2\n t_ += inv(alpha) << 8; // = t >> 8\n // 1 == x1 * ROOT_OF_UNITY^(t_ << 16)\n assert!(t_ < 0x10000);\n let alpha = x2 * self.g1[t_ & 0xFF] * self.g2[t_ >> 8];\n\n // i = 3\n t_ += inv(alpha) << 16; // = t\n // 1 == x2 * ROOT_OF_UNITY^(t_ << 8)\n assert!(t_ < 0x1000000);\n let alpha = x3 * self.g0[t_ & 0xFF] * self.g1[(t_ >> 8) & 0xFF] * self.g2[t_ >> 16];\n\n t_ += inv(alpha) << 24; // = t << 1\n // 1 == x3 * ROOT_OF_UNITY^t_\n t_ = (((t_ as u64) + 1) >> 1) as usize;\n assert!(t_ <= 0x80000000);\n\n *uv * self.g0[t_ & 0xFF]\n * self.g1[(t_ >> 8) & 0xFF]\n * self.g2[(t_ >> 16) & 0xFF]\n * self.g3[t_ >> 24]\n }\n}\n\n/// Compute a + b + carry, returning the result and the new carry over.\n#[inline(always)]\npub(crate) const fn adc(a: u64, b: u64, carry: u64) -> (u64, u64) {\n let ret = (a as u128) + (b as u128) + (carry as u128);\n (ret as u64, (ret >> 64) as u64)\n}\n\n/// Compute a - (b + borrow), returning the result and the new borrow.\n#[inline(always)]\npub(crate) const fn sbb(a: u64, b: u64, borrow: u64) -> (u64, u64) {\n let ret = (a as u128).wrapping_sub((b as u128) + ((borrow >> 63) as u128));\n (ret as u64, (ret >> 64) as u64)\n}\n\n/// Compute a + (b * c) + carry, returning the result and the new carry over.\n#[inline(always)]\npub(crate) const fn mac(a: u64, b: u64, c: u64, carry: u64) -> (u64, u64) {\n let ret = (a as u128) + ((b as u128) * (c as u128)) + (carry as u128);\n (ret as u64, (ret >> 64) as u64)\n}\n"},{"id":25,"name":{"Local":"src/arithmetic.rs"},"crate_name":"pasta_curves","contents":"//! This module provides common utilities, traits and structures for group and\n//! field arithmetic.\n//!\n//! This module is temporary, and the extension traits defined here are expected to be\n//! upstreamed into the `ff` and `group` crates after some refactoring.\n\nmod curves;\nmod fields;\n\npub use curves::*;\npub(crate) use fields::*;\n"},{"id":26,"name":{"Local":"/rustc/library/core/src/result.rs"},"crate_name":"core","contents":null},{"id":27,"name":{"Local":"/rustc/library/core/src/array/iter.rs"},"crate_name":"core","contents":null},{"id":28,"name":{"Local":"/rustc/library/core/src/num/nonzero.rs"},"crate_name":"core","contents":null},{"id":29,"name":{"Local":"/rustc/library/core/src/num/mod.rs"},"crate_name":"core","contents":null},{"id":30,"name":{"Local":"/rustc/library/core/src/iter/adapters/step_by.rs"},"crate_name":"core","contents":null},{"id":31,"name":{"Local":"/rustc/library/core/src/iter/adapters/mod.rs"},"crate_name":"core","contents":null},{"id":32,"name":{"Local":"/rustc/library/core/src/iter/traits/collect.rs"},"crate_name":"core","contents":null},{"id":33,"name":{"Local":"/rustc/library/core/src/iter/adapters/chain.rs"},"crate_name":"core","contents":null},{"id":34,"name":{"Local":"/rustc/library/core/src/iter/adapters/zip.rs"},"crate_name":"core","contents":null},{"id":35,"name":{"Local":"/rustc/library/core/src/iter/adapters/intersperse.rs"},"crate_name":"core","contents":null},{"id":36,"name":{"Local":"/rustc/library/core/src/ops/function.rs"},"crate_name":"core","contents":null},{"id":37,"name":{"Local":"/rustc/library/core/src/iter/adapters/map.rs"},"crate_name":"core","contents":null},{"id":38,"name":{"Local":"/rustc/library/core/src/iter/adapters/filter.rs"},"crate_name":"core","contents":null},{"id":39,"name":{"Local":"/rustc/library/core/src/iter/adapters/filter_map.rs"},"crate_name":"core","contents":null},{"id":40,"name":{"Local":"/rustc/library/core/src/iter/adapters/enumerate.rs"},"crate_name":"core","contents":null},{"id":41,"name":{"Local":"/rustc/library/core/src/iter/adapters/peekable.rs"},"crate_name":"core","contents":null},{"id":42,"name":{"Local":"/rustc/library/core/src/iter/adapters/skip_while.rs"},"crate_name":"core","contents":null},{"id":43,"name":{"Local":"/rustc/library/core/src/iter/adapters/take_while.rs"},"crate_name":"core","contents":null},{"id":44,"name":{"Local":"/rustc/library/core/src/iter/adapters/map_while.rs"},"crate_name":"core","contents":null},{"id":45,"name":{"Local":"/rustc/library/core/src/iter/adapters/skip.rs"},"crate_name":"core","contents":null},{"id":46,"name":{"Local":"/rustc/library/core/src/iter/adapters/take.rs"},"crate_name":"core","contents":null},{"id":47,"name":{"Local":"/rustc/library/core/src/iter/adapters/scan.rs"},"crate_name":"core","contents":null},{"id":48,"name":{"Local":"/rustc/library/core/src/iter/adapters/flatten.rs"},"crate_name":"core","contents":null},{"id":49,"name":{"Local":"/rustc/library/core/src/iter/adapters/map_windows.rs"},"crate_name":"core","contents":null},{"id":50,"name":{"Local":"/rustc/library/core/src/iter/adapters/fuse.rs"},"crate_name":"core","contents":null},{"id":51,"name":{"Local":"/rustc/library/core/src/iter/adapters/inspect.rs"},"crate_name":"core","contents":null},{"id":52,"name":{"Local":"/rustc/library/core/src/ops/try_trait.rs"},"crate_name":"core","contents":null},{"id":53,"name":{"Local":"/rustc/library/core/src/iter/traits/double_ended.rs"},"crate_name":"core","contents":null},{"id":54,"name":{"Local":"/rustc/library/core/src/iter/traits/exact_size.rs"},"crate_name":"core","contents":null},{"id":55,"name":{"Local":"/rustc/library/core/src/iter/adapters/rev.rs"},"crate_name":"core","contents":null},{"id":56,"name":{"Local":"/rustc/library/core/src/iter/adapters/copied.rs"},"crate_name":"core","contents":null},{"id":57,"name":{"Local":"/rustc/library/core/src/iter/adapters/cloned.rs"},"crate_name":"core","contents":null},{"id":58,"name":{"Local":"/rustc/library/core/src/iter/adapters/cycle.rs"},"crate_name":"core","contents":null},{"id":59,"name":{"Local":"/rustc/library/core/src/iter/adapters/array_chunks.rs"},"crate_name":"core","contents":null},{"id":60,"name":{"Local":"/rustc/library/core/src/num/uint_macros.rs"},"crate_name":"core","contents":null},{"id":61,"name":{"Local":"/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.6.4/src/error.rs"},"crate_name":"rand_core","contents":null},{"id":62,"name":{"Local":"/rustc/library/core/src/slice/mod.rs"},"crate_name":"core","contents":null},{"id":63,"name":{"Local":"/rustc/library/core/src/ops/range.rs"},"crate_name":"core","contents":null},{"id":64,"name":{"Local":"/rustc/library/core/src/ops/index.rs"},"crate_name":"core","contents":null},{"id":65,"name":{"Local":"/rustc/library/core/src/slice/index.rs"},"crate_name":"core","contents":null},{"id":66,"name":{"Local":"/rustc/library/core/src/ops/bit.rs"},"crate_name":"core","contents":null},{"id":67,"name":{"Local":"/rustc/library/core/src/num/niche_types.rs"},"crate_name":"core","contents":null}],"item_names":[{"key":{"Type":0},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["Fp",0]}]},{"key":{"TraitImpl":0},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":0}}]},{"key":{"TraitImpl":1},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":1}}]},{"key":{"TraitImpl":2},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":2}}]},{"key":{"TraitImpl":3},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":3}}]},{"key":{"TraitImpl":4},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":4}}]},{"key":{"TraitImpl":5},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":5}}]},{"key":{"TraitImpl":6},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":6}}]},{"key":{"TraitImpl":7},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":7}}]},{"key":{"TraitImpl":8},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":8}}]},{"key":{"TraitImpl":9},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":9}}]},{"key":{"TraitImpl":10},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":10}}]},{"key":{"TraitImpl":11},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":11}}]},{"key":{"Global":0},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["MODULUS",0]}]},{"key":{"TraitImpl":12},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":12}}]},{"key":{"TraitImpl":13},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":13}}]},{"key":{"TraitImpl":14},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":14}}]},{"key":{"TraitImpl":15},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":15}}]},{"key":{"TraitImpl":16},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":16}}]},{"key":{"TraitImpl":17},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":17}}]},{"key":{"TraitImpl":18},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":18}}]},{"key":{"TraitImpl":19},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":19}}]},{"key":{"TraitImpl":20},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":20}}]},{"key":{"TraitImpl":21},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":21}}]},{"key":{"TraitImpl":22},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":22}}]},{"key":{"TraitImpl":23},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":23}}]},{"key":{"TraitImpl":24},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":24}}]},{"key":{"TraitImpl":25},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":25}}]},{"key":{"TraitImpl":26},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":26}}]},{"key":{"TraitImpl":27},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":27}}]},{"key":{"TraitImpl":28},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":28}}]},{"key":{"TraitImpl":29},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":29}}]},{"key":{"TraitImpl":30},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":30}}]},{"key":{"TraitImpl":31},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":31}}]},{"key":{"TraitImpl":32},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":32}}]},{"key":{"TraitImpl":33},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":33}}]},{"key":{"Global":1},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["INV",0]}]},{"key":{"Global":2},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["R",0]}]},{"key":{"Global":3},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["R2",0]}]},{"key":{"Global":4},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["R3",0]}]},{"key":{"Global":5},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["GENERATOR",0]}]},{"key":{"Global":6},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["S",0]}]},{"key":{"Global":7},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["ROOT_OF_UNITY",0]}]},{"key":{"Global":8},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["DELTA",0]}]},{"key":{"Global":9},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["T_MINUS1_OVER2",0]}]},{"key":{"TraitImpl":34},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":34}}]},{"key":{"TraitImpl":35},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":35}}]},{"key":{"TraitImpl":36},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":36}}]},{"key":{"TraitImpl":37},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":37}}]},{"key":{"TraitImpl":38},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}}]},{"key":{"TraitImpl":39},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":39}}]},{"key":{"TraitImpl":40},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":40}}]},{"key":{"TraitImpl":41},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":41}}]},{"key":{"TraitDecl":0},"value":[{"Ident":["core",0]},{"Ident":["clone",0]},{"Ident":["TrivialClone",0]}]},{"key":{"TraitDecl":1},"value":[{"Ident":["core",0]},{"Ident":["clone",0]},{"Ident":["Clone",0]}]},{"key":{"Fun":0},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":1}},{"Ident":["clone",0]}]},{"key":{"Fun":1},"value":[{"Ident":["core",0]},{"Ident":["clone",0]},{"Ident":["Clone",0]},{"Ident":["clone",0]}]},{"key":{"Fun":2},"value":[{"Ident":["core",0]},{"Ident":["clone",0]},{"Ident":["Clone",0]},{"Ident":["clone_from",0]}]},{"key":{"TraitDecl":2},"value":[{"Ident":["core",0]},{"Ident":["marker",0]},{"Ident":["Destruct",0]}]},{"key":{"TraitDecl":3},"value":[{"Ident":["core",0]},{"Ident":["marker",0]},{"Ident":["Copy",0]}]},{"key":{"TraitDecl":4},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["Eq",0]}]},{"key":{"TraitDecl":5},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialEq",0]}]},{"key":{"Fun":3},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["Eq",0]},{"Ident":["assert_receiver_is_total_eq",0]}]},{"key":{"Fun":4},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["Eq",0]},{"Ident":["assert_fields_are_eq",0]}]},{"key":{"Fun":5},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":3}},{"Ident":["assert_fields_are_eq",0]}]},{"key":{"TraitDecl":6},"value":[{"Ident":["core",0]},{"Ident":["fmt",0]},{"Ident":["Debug",0]}]},{"key":{"Global":10},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":4}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":6},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":4}},{"Ident":["fmt",0]}]},{"key":{"TraitDecl":7},"value":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Ident":["From",0]}]},{"key":{"Fun":7},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":5}},{"Ident":["from",0]}]},{"key":{"Fun":8},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":6}},{"Ident":["from",0]}]},{"key":{"TraitDecl":8},"value":[{"Ident":["subtle",0]},{"Ident":["ConstantTimeEq",0]}]},{"key":{"Fun":9},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":7}},{"Ident":["ct_eq",0]}]},{"key":{"Fun":10},"value":[{"Ident":["subtle",0]},{"Ident":["ConstantTimeEq",0]},{"Ident":["ct_eq",0]}]},{"key":{"Type":1},"value":[{"Ident":["subtle",0]},{"Ident":["Choice",0]}]},{"key":{"Fun":11},"value":[{"Ident":["subtle",0]},{"Ident":["ConstantTimeEq",0]},{"Ident":["ct_ne",0]}]},{"key":{"Global":11},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":8}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":12},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":8}},{"Ident":["eq",0]}]},{"key":{"Type":2},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialEq",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":13},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialEq",0]},{"Ident":["eq",0]}]},{"key":{"Fun":14},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialEq",0]},{"Ident":["ne",0]}]},{"key":{"TraitDecl":9},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["Ord",0]}]},{"key":{"TraitDecl":10},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialOrd",0]}]},{"key":{"Fun":15},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":9}},{"Ident":["cmp",0]}]},{"key":{"Fun":16},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["Ord",0]},{"Ident":["cmp",0]}]},{"key":{"Type":3},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["Ordering",0]}]},{"key":{"Fun":17},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["Ord",0]},{"Ident":["max",0]}]},{"key":{"Fun":18},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["Ord",0]},{"Ident":["min",0]}]},{"key":{"Fun":19},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["Ord",0]},{"Ident":["clamp",0]}]},{"key":{"Global":12},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":10}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":20},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":10}},{"Ident":["partial_cmp",0]}]},{"key":{"Type":4},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialOrd",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":21},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialOrd",0]},{"Ident":["partial_cmp",0]}]},{"key":{"Type":5},"value":[{"Ident":["core",0]},{"Ident":["option",0]},{"Ident":["Option",0]}]},{"key":{"Fun":22},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialOrd",0]},{"Ident":["lt",0]}]},{"key":{"Fun":23},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialOrd",0]},{"Ident":["le",0]}]},{"key":{"Fun":24},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialOrd",0]},{"Ident":["gt",0]}]},{"key":{"Fun":25},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialOrd",0]},{"Ident":["ge",0]}]},{"key":{"Fun":26},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialOrd",0]},{"Ident":["__chaining_lt",0]}]},{"key":{"Type":6},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["control_flow",0]},{"Ident":["ControlFlow",0]}]},{"key":{"Fun":27},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialOrd",0]},{"Ident":["__chaining_le",0]}]},{"key":{"Fun":28},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialOrd",0]},{"Ident":["__chaining_gt",0]}]},{"key":{"Fun":29},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialOrd",0]},{"Ident":["__chaining_ge",0]}]},{"key":{"TraitDecl":11},"value":[{"Ident":["subtle",0]},{"Ident":["ConditionallySelectable",0]}]},{"key":{"Fun":30},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":11}},{"Ident":["conditional_select",0]}]},{"key":{"Fun":31},"value":[{"Ident":["subtle",0]},{"Ident":["ConditionallySelectable",0]},{"Ident":["conditional_select",0]}]},{"key":{"Fun":32},"value":[{"Ident":["subtle",0]},{"Ident":["ConditionallySelectable",0]},{"Ident":["conditional_assign",0]}]},{"key":{"Fun":33},"value":[{"Ident":["subtle",0]},{"Ident":["ConditionallySelectable",0]},{"Ident":["conditional_swap",0]}]},{"key":{"Fun":34},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["MODULUS",0]}]},{"key":{"TraitDecl":12},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["Neg",0]}]},{"key":{"Global":13},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":12}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":35},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":12}},{"Ident":["neg",0]}]},{"key":{"Global":14},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":13}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":36},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":13}},{"Ident":["neg",0]}]},{"key":{"TraitDecl":13},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["Sub",0]}]},{"key":{"Global":15},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":14}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":37},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":14}},{"Ident":["sub",0]}]},{"key":{"TraitDecl":14},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["Add",0]}]},{"key":{"Global":16},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":15}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":38},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":15}},{"Ident":["add",0]}]},{"key":{"TraitDecl":15},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["Mul",0]}]},{"key":{"Global":17},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":16}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":39},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":16}},{"Ident":["mul",0]}]},{"key":{"Global":18},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":17}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":40},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":17}},{"Ident":["add",0]}]},{"key":{"Global":19},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":18}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":41},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":18}},{"Ident":["add",0]}]},{"key":{"Global":20},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":19}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":42},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":19}},{"Ident":["add",0]}]},{"key":{"Global":21},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":20}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":43},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":20}},{"Ident":["sub",0]}]},{"key":{"Global":22},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":21}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":44},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":21}},{"Ident":["sub",0]}]},{"key":{"Global":23},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":22}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":45},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":22}},{"Ident":["sub",0]}]},{"key":{"TraitDecl":16},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["SubAssign",0]}]},{"key":{"Global":24},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":23}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":46},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":23}},{"Ident":["sub_assign",0]}]},{"key":{"TraitDecl":17},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["AddAssign",0]}]},{"key":{"Global":25},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":24}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":47},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":24}},{"Ident":["add_assign",0]}]},{"key":{"Global":26},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":25}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":48},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":25}},{"Ident":["sub_assign",0]}]},{"key":{"Global":27},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":26}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":49},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":26}},{"Ident":["add_assign",0]}]},{"key":{"Global":28},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":27}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":50},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":27}},{"Ident":["mul",0]}]},{"key":{"Global":29},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":28}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":51},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":28}},{"Ident":["mul",0]}]},{"key":{"Global":30},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":29}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":52},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":29}},{"Ident":["mul",0]}]},{"key":{"TraitDecl":18},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["MulAssign",0]}]},{"key":{"Global":31},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":30}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":53},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":30}},{"Ident":["mul_assign",0]}]},{"key":{"Global":32},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":31}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":54},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":31}},{"Ident":["mul_assign",0]}]},{"key":{"TraitDecl":19},"value":[{"Ident":["core",0]},{"Ident":["borrow",0]},{"Ident":["Borrow",0]}]},{"key":{"TraitDecl":20},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["accum",0]},{"Ident":["Sum",0]}]},{"key":{"TraitDecl":21},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]}]},{"key":{"Fun":55},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":32}},{"Ident":["sum",0]}]},{"key":{"TraitDecl":22},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["accum",0]},{"Ident":["Product",0]}]},{"key":{"Fun":56},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":33}},{"Ident":["product",0]}]},{"key":{"Fun":57},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["INV",0]}]},{"key":{"Fun":58},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["R",0]}]},{"key":{"Fun":59},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["R2",0]}]},{"key":{"Fun":60},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["R3",0]}]},{"key":{"Fun":61},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["GENERATOR",0]}]},{"key":{"Fun":62},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["S",0]}]},{"key":{"Fun":63},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["ROOT_OF_UNITY",0]}]},{"key":{"Fun":64},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["DELTA",0]}]},{"key":{"Fun":65},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["T_MINUS1_OVER2",0]}]},{"key":{"TraitDecl":23},"value":[{"Ident":["core",0]},{"Ident":["default",0]},{"Ident":["Default",0]}]},{"key":{"Fun":66},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":34}},{"Ident":["default",0]}]},{"key":{"Fun":67},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"HashConsedValue":[1079,{"Adt":{"id":{"Adt":0},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}}]},"kind":"InherentImplBlock"}}},{"Ident":["zero",0]}]},{"key":{"Fun":68},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":1079},"kind":"InherentImplBlock"}}},{"Ident":["one",0]}]},{"key":{"Fun":69},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":1079},"kind":"InherentImplBlock"}}},{"Ident":["double",0]}]},{"key":{"Fun":70},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":1079},"kind":"InherentImplBlock"}}},{"Ident":["from_u512",0]}]},{"key":{"Fun":71},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":1079},"kind":"InherentImplBlock"}}},{"Ident":["from_raw",0]}]},{"key":{"Fun":72},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":1079},"kind":"InherentImplBlock"}}},{"Ident":["square",0]}]},{"key":{"Fun":73},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":1079},"kind":"InherentImplBlock"}}},{"Ident":["montgomery_reduce",0]}]},{"key":{"Fun":74},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":1079},"kind":"InherentImplBlock"}}},{"Ident":["mul",0]}]},{"key":{"Fun":75},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":1079},"kind":"InherentImplBlock"}}},{"Ident":["sub",0]}]},{"key":{"Fun":76},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":1079},"kind":"InherentImplBlock"}}},{"Ident":["add",0]}]},{"key":{"Fun":77},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":1079},"kind":"InherentImplBlock"}}},{"Ident":["neg",0]}]},{"key":{"Fun":78},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":1079},"kind":"InherentImplBlock"}}},{"Ident":["mul_unreduced",0]}]},{"key":{"Fun":79},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":1079},"kind":"InherentImplBlock"}}},{"Ident":["square_unreduced",0]}]},{"key":{"Fun":80},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":35}},{"Ident":["from",0]}]},{"key":{"Fun":81},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":36}},{"Ident":["from",0]}]},{"key":{"TraitDecl":24},"value":[{"Ident":["ff",0]},{"Ident":["Field",0]}]},{"key":{"TraitDecl":25},"value":[{"Ident":["core",0]},{"Ident":["marker",0]},{"Ident":["Send",0]}]},{"key":{"TraitDecl":26},"value":[{"Ident":["core",0]},{"Ident":["marker",0]},{"Ident":["Sync",0]}]},{"key":{"TraitImpl":42},"value":[{"Ident":["core",0]},{"Ident":["borrow",0]},{"Impl":{"Trait":42}}]},{"key":{"TraitImpl":43},"value":[{"Ident":["core",0]},{"Ident":["borrow",0]},{"Impl":{"Trait":43}}]},{"key":{"Global":33},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":37}},{"Ident":["ZERO",0]}]},{"key":{"Global":34},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":37}},{"Ident":["ONE",0]}]},{"key":{"TraitDecl":27},"value":[{"Ident":["rand_core",0]},{"Ident":["RngCore",0]}]},{"key":{"Fun":82},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":37}},{"Ident":["random",0]}]},{"key":{"Fun":83},"value":[{"Ident":["ff",0]},{"Ident":["Field",0]},{"Ident":["random",0]}]},{"key":{"Fun":84},"value":[{"Ident":["ff",0]},{"Ident":["Field",0]},{"Ident":["is_zero",0]}]},{"key":{"Fun":85},"value":[{"Ident":["ff",0]},{"Ident":["Field",0]},{"Ident":["is_zero_vartime",0]}]},{"key":{"Fun":86},"value":[{"Ident":["ff",0]},{"Ident":["Field",0]},{"Ident":["square",0]}]},{"key":{"Fun":87},"value":[{"Ident":["ff",0]},{"Ident":["Field",0]},{"Ident":["cube",0]}]},{"key":{"Fun":88},"value":[{"Ident":["ff",0]},{"Ident":["Field",0]},{"Ident":["double",0]}]},{"key":{"Fun":89},"value":[{"Ident":["ff",0]},{"Ident":["Field",0]},{"Ident":["invert",0]}]},{"key":{"Type":7},"value":[{"Ident":["subtle",0]},{"Ident":["CtOption",0]}]},{"key":{"Fun":90},"value":[{"Ident":["ff",0]},{"Ident":["Field",0]},{"Ident":["sqrt_ratio",0]}]},{"key":{"Fun":91},"value":[{"Ident":["ff",0]},{"Ident":["Field",0]},{"Ident":["sqrt_alt",0]}]},{"key":{"Fun":92},"value":[{"Ident":["ff",0]},{"Ident":["Field",0]},{"Ident":["sqrt",0]}]},{"key":{"Fun":93},"value":[{"Ident":["ff",0]},{"Ident":["Field",0]},{"Ident":["pow",0]}]},{"key":{"TraitDecl":28},"value":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Ident":["AsRef",0]}]},{"key":{"Fun":94},"value":[{"Ident":["ff",0]},{"Ident":["Field",0]},{"Ident":["pow_vartime",0]}]},{"key":{"Fun":95},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":37}},{"Ident":["square",0]}]},{"key":{"Fun":96},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":37}},{"Ident":["double",0]}]},{"key":{"Fun":97},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":37}},{"Ident":["invert",0]}]},{"key":{"Fun":98},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":37}},{"Ident":["sqrt_ratio",0]}]},{"key":{"Fun":99},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":37}},{"Ident":["sqrt",0]}]},{"key":{"Fun":100},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":37}},{"Ident":["pow_vartime",0]}]},{"key":{"TraitDecl":29},"value":[{"Ident":["ff",0]},{"Ident":["PrimeField",0]}]},{"key":{"TraitImpl":44},"value":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":44}}]},{"key":{"TraitImpl":45},"value":[{"Ident":["core",0]},{"Ident":["marker",0]},{"Impl":{"Trait":45}}]},{"key":{"TraitImpl":46},"value":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":46}}]},{"key":{"TraitImpl":47},"value":[{"Ident":["core",0]},{"Ident":["default",0]},{"Impl":{"Trait":47}}]},{"key":{"TraitImpl":48},"value":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":48}}]},{"key":{"TraitDecl":30},"value":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Ident":["AsMut",0]}]},{"key":{"TraitImpl":49},"value":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":49}}]},{"key":{"Fun":101},"value":[{"Ident":["ff",0]},{"Ident":["PrimeField",0]},{"Ident":["from_str_vartime",0]}]},{"key":{"Fun":102},"value":[{"Ident":["ff",0]},{"Ident":["PrimeField",0]},{"Ident":["from_u128",0]}]},{"key":{"Fun":103},"value":[{"Ident":["ff",0]},{"Ident":["PrimeField",0]},{"Ident":["from_repr",0]}]},{"key":{"Fun":104},"value":[{"Ident":["ff",0]},{"Ident":["PrimeField",0]},{"Ident":["from_repr_vartime",0]}]},{"key":{"Fun":105},"value":[{"Ident":["ff",0]},{"Ident":["PrimeField",0]},{"Ident":["to_repr",0]}]},{"key":{"Fun":106},"value":[{"Ident":["ff",0]},{"Ident":["PrimeField",0]},{"Ident":["is_odd",0]}]},{"key":{"Fun":107},"value":[{"Ident":["ff",0]},{"Ident":["PrimeField",0]},{"Ident":["is_even",0]}]},{"key":{"Fun":108},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["from_u128",0]}]},{"key":{"Fun":109},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["from_repr",0]}]},{"key":{"Fun":110},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["to_repr",0]}]},{"key":{"Fun":111},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["is_odd",0]}]},{"key":{"Global":35},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["MODULUS",0]}]},{"key":{"Global":36},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["NUM_BITS",0]}]},{"key":{"Global":37},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["CAPACITY",0]}]},{"key":{"Global":38},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["TWO_INV",0]}]},{"key":{"Global":39},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["MULTIPLICATIVE_GENERATOR",0]}]},{"key":{"Global":40},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["S",0]}]},{"key":{"Global":41},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["ROOT_OF_UNITY",0]}]},{"key":{"Global":42},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["ROOT_OF_UNITY_INV",0]}]},{"key":{"Global":43},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["DELTA",0]}]},{"key":{"TraitDecl":31},"value":[{"Ident":["pasta_curves",0]},{"Ident":["arithmetic",0]},{"Ident":["fields",0]},{"Ident":["SqrtTableHelpers",0]}]},{"key":{"Fun":112},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":39}},{"Ident":["pow_by_t_minus1_over2",0]}]},{"key":{"Fun":113},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":39}},{"Ident":["get_lower_32",0]}]},{"key":{"TraitDecl":32},"value":[{"Ident":["ff",0]},{"Ident":["WithSmallOrderMulGroup",0]}]},{"key":{"Global":44},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":40}},{"Ident":["ZETA",0]}]},{"key":{"TraitDecl":33},"value":[{"Ident":["ff",0]},{"Ident":["FromUniformBytes",0]}]},{"key":{"Fun":114},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":41}},{"Ident":["from_uniform_bytes",0]}]},{"key":{"Fun":115},"value":[{"Ident":["core",0]},{"Ident":["marker",0]},{"Ident":["Destruct",0]},{"Ident":["drop_glue",0]}]},{"key":{"Type":8},"value":[{"Ident":["core",0]},{"Ident":["fmt",0]},{"Ident":["Debug",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":116},"value":[{"Ident":["core",0]},{"Ident":["fmt",0]},{"Ident":["Debug",0]},{"Ident":["fmt",0]}]},{"key":{"Type":9},"value":[{"Ident":["core",0]},{"Ident":["fmt",0]},{"Ident":["Formatter",0]}]},{"key":{"Type":10},"value":[{"Ident":["core",0]},{"Ident":["result",0]},{"Ident":["Result",0]}]},{"key":{"Type":11},"value":[{"Ident":["core",0]},{"Ident":["fmt",0]},{"Ident":["Error",0]}]},{"key":{"Fun":117},"value":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Ident":["From",0]},{"Ident":["from",0]}]},{"key":{"TraitImpl":50},"value":[{"Ident":["subtle",0]},{"Impl":{"Trait":50}}]},{"key":{"Fun":118},"value":[{"Ident":["subtle",0]},{"Impl":{"Trait":50}},{"Ident":["ct_eq",0]}]},{"key":{"TraitImpl":51},"value":[{"Ident":["subtle",0]},{"Impl":{"Trait":51}}]},{"key":{"Fun":119},"value":[{"Ident":["subtle",0]},{"Impl":{"Trait":51}},{"Ident":["bitand",0]}]},{"key":{"Fun":120},"value":[{"Ident":["subtle",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"HashConsedValue":[1250,{"Adt":{"id":{"Adt":1},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}}]},"kind":"InherentImplBlock"}}},{"Ident":["unwrap_u8",0]}]},{"key":{"TraitImpl":52},"value":[{"Ident":["subtle",0]},{"Impl":{"Trait":52}}]},{"key":{"Fun":121},"value":[{"Ident":["subtle",0]},{"Impl":{"Trait":52}},{"Ident":["conditional_select",0]}]},{"key":{"Type":12},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["Neg",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":122},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["Neg",0]},{"Ident":["neg",0]}]},{"key":{"Type":13},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["Sub",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":123},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["Sub",0]},{"Ident":["sub",0]}]},{"key":{"Type":14},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["Add",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":124},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["Add",0]},{"Ident":["add",0]}]},{"key":{"Type":15},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["Mul",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":125},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["Mul",0]},{"Ident":["mul",0]}]},{"key":{"Type":16},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["SubAssign",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":126},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["SubAssign",0]},{"Ident":["sub_assign",0]}]},{"key":{"Type":17},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["AddAssign",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":127},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["AddAssign",0]},{"Ident":["add_assign",0]}]},{"key":{"Type":18},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["MulAssign",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":128},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["MulAssign",0]},{"Ident":["mul_assign",0]}]},{"key":{"Type":19},"value":[{"Ident":["core",0]},{"Ident":["borrow",0]},{"Ident":["Borrow",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":129},"value":[{"Ident":["core",0]},{"Ident":["borrow",0]},{"Ident":["Borrow",0]},{"Ident":["borrow",0]}]},{"key":{"Fun":130},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["accum",0]},{"Ident":["Sum",0]},{"Ident":["sum",0]}]},{"key":{"Type":20},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":131},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["next",0]}]},{"key":{"Fun":132},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["next_chunk",0]}]},{"key":{"Type":21},"value":[{"Ident":["core",0]},{"Ident":["array",0]},{"Ident":["iter",0]},{"Ident":["IntoIter",0]}]},{"key":{"Fun":133},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["size_hint",0]}]},{"key":{"Fun":134},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["count",0]}]},{"key":{"Fun":135},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["last",0]}]},{"key":{"Fun":136},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["advance_by",0]}]},{"key":{"Type":22},"value":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["nonzero",0]},{"Ident":["NonZero",0]}]},{"key":{"TraitDecl":34},"value":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["nonzero",0]},{"Ident":["ZeroablePrimitive",0]}]},{"key":{"TraitImpl":53},"value":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["nonzero",0]},{"Impl":{"Trait":53}}]},{"key":{"Fun":137},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["nth",0]}]},{"key":{"Fun":138},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["step_by",0]}]},{"key":{"Type":23},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["step_by",0]},{"Ident":["StepBy",0]}]},{"key":{"Fun":139},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["chain",0]}]},{"key":{"TraitDecl":35},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["collect",0]},{"Ident":["IntoIterator",0]}]},{"key":{"Type":24},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["chain",0]},{"Ident":["Chain",0]}]},{"key":{"Fun":140},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["zip",0]}]},{"key":{"Type":25},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["zip",0]},{"Ident":["Zip",0]}]},{"key":{"Fun":141},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["intersperse",0]}]},{"key":{"Type":26},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["intersperse",0]},{"Ident":["Intersperse",0]}]},{"key":{"Fun":142},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["intersperse_with",0]}]},{"key":{"TraitDecl":36},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["function",0]},{"Ident":["FnMut",0]}]},{"key":{"TraitDecl":37},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["function",0]},{"Ident":["FnOnce",0]}]},{"key":{"Type":27},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["intersperse",0]},{"Ident":["IntersperseWith",0]}]},{"key":{"Fun":143},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["map",0]}]},{"key":{"Type":28},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["map",0]},{"Ident":["Map",0]}]},{"key":{"Fun":144},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["for_each",0]}]},{"key":{"Fun":145},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["filter",0]}]},{"key":{"Type":29},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["filter",0]},{"Ident":["Filter",0]}]},{"key":{"Fun":146},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["filter_map",0]}]},{"key":{"Type":30},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["filter_map",0]},{"Ident":["FilterMap",0]}]},{"key":{"Fun":147},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["enumerate",0]}]},{"key":{"Type":31},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["enumerate",0]},{"Ident":["Enumerate",0]}]},{"key":{"Fun":148},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["peekable",0]}]},{"key":{"Type":32},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["peekable",0]},{"Ident":["Peekable",0]}]},{"key":{"Fun":149},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["skip_while",0]}]},{"key":{"Type":33},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["skip_while",0]},{"Ident":["SkipWhile",0]}]},{"key":{"Fun":150},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["take_while",0]}]},{"key":{"Type":34},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["take_while",0]},{"Ident":["TakeWhile",0]}]},{"key":{"Fun":151},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["map_while",0]}]},{"key":{"Type":35},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["map_while",0]},{"Ident":["MapWhile",0]}]},{"key":{"Fun":152},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["skip",0]}]},{"key":{"Type":36},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["skip",0]},{"Ident":["Skip",0]}]},{"key":{"Fun":153},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["take",0]}]},{"key":{"Type":37},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["take",0]},{"Ident":["Take",0]}]},{"key":{"Fun":154},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["scan",0]}]},{"key":{"Type":38},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["scan",0]},{"Ident":["Scan",0]}]},{"key":{"Fun":155},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["flat_map",0]}]},{"key":{"Type":39},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["flatten",0]},{"Ident":["FlatMap",0]}]},{"key":{"Fun":156},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["flatten",0]}]},{"key":{"Type":40},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["flatten",0]},{"Ident":["Flatten",0]}]},{"key":{"Fun":157},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["map_windows",0]}]},{"key":{"Type":41},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["map_windows",0]},{"Ident":["MapWindows",0]}]},{"key":{"Fun":158},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["fuse",0]}]},{"key":{"Type":42},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["fuse",0]},{"Ident":["Fuse",0]}]},{"key":{"Fun":159},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["inspect",0]}]},{"key":{"Type":43},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["inspect",0]},{"Ident":["Inspect",0]}]},{"key":{"Fun":160},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["by_ref",0]}]},{"key":{"Fun":161},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["collect",0]}]},{"key":{"TraitDecl":38},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["collect",0]},{"Ident":["FromIterator",0]}]},{"key":{"Fun":162},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["try_collect",0]}]},{"key":{"TraitDecl":39},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["try_trait",0]},{"Ident":["Try",0]}]},{"key":{"TraitDecl":40},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["try_trait",0]},{"Ident":["Residual",0]}]},{"key":{"Fun":163},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["collect_into",0]}]},{"key":{"TraitDecl":41},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["collect",0]},{"Ident":["Extend",0]}]},{"key":{"Fun":164},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["partition",0]}]},{"key":{"Fun":165},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["partition_in_place",0]}]},{"key":{"TraitDecl":42},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["double_ended",0]},{"Ident":["DoubleEndedIterator",0]}]},{"key":{"Fun":166},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["is_partitioned",0]}]},{"key":{"Fun":167},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["try_fold",0]}]},{"key":{"Fun":168},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["try_for_each",0]}]},{"key":{"Fun":169},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["fold",0]}]},{"key":{"Fun":170},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["reduce",0]}]},{"key":{"Fun":171},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["try_reduce",0]}]},{"key":{"Fun":172},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["all",0]}]},{"key":{"Fun":173},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["any",0]}]},{"key":{"Fun":174},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["find",0]}]},{"key":{"Fun":175},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["find_map",0]}]},{"key":{"Fun":176},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["try_find",0]}]},{"key":{"Fun":177},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["position",0]}]},{"key":{"Fun":178},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["rposition",0]}]},{"key":{"TraitDecl":43},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["exact_size",0]},{"Ident":["ExactSizeIterator",0]}]},{"key":{"Fun":179},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["max",0]}]},{"key":{"Fun":180},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["min",0]}]},{"key":{"Fun":181},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["max_by_key",0]}]},{"key":{"Fun":182},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["max_by",0]}]},{"key":{"Fun":183},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["min_by_key",0]}]},{"key":{"Fun":184},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["min_by",0]}]},{"key":{"Fun":185},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["rev",0]}]},{"key":{"Type":44},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["rev",0]},{"Ident":["Rev",0]}]},{"key":{"Fun":186},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["unzip",0]}]},{"key":{"Fun":187},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["copied",0]}]},{"key":{"Type":45},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["copied",0]},{"Ident":["Copied",0]}]},{"key":{"Fun":188},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["cloned",0]}]},{"key":{"Type":46},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["cloned",0]},{"Ident":["Cloned",0]}]},{"key":{"Fun":189},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["cycle",0]}]},{"key":{"Type":47},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["cycle",0]},{"Ident":["Cycle",0]}]},{"key":{"Fun":190},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["array_chunks",0]}]},{"key":{"Type":48},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["array_chunks",0]},{"Ident":["ArrayChunks",0]}]},{"key":{"Fun":191},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["sum",0]}]},{"key":{"Fun":192},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["product",0]}]},{"key":{"Fun":193},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["cmp",0]}]},{"key":{"Fun":194},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["cmp_by",0]}]},{"key":{"Fun":195},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["partial_cmp",0]}]},{"key":{"Fun":196},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["partial_cmp_by",0]}]},{"key":{"Fun":197},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["eq",0]}]},{"key":{"Fun":198},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["eq_by",0]}]},{"key":{"Fun":199},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["ne",0]}]},{"key":{"Fun":200},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["lt",0]}]},{"key":{"Fun":201},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["le",0]}]},{"key":{"Fun":202},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["gt",0]}]},{"key":{"Fun":203},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["ge",0]}]},{"key":{"Fun":204},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["is_sorted",0]}]},{"key":{"Fun":205},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["is_sorted_by",0]}]},{"key":{"Fun":206},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["is_sorted_by_key",0]}]},{"key":{"Fun":207},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["__iterator_get_unchecked",0]}]},{"key":{"TraitDecl":44},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["zip",0]},{"Ident":["TrustedRandomAccessNoCoerce",0]}]},{"key":{"Fun":208},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["accum",0]},{"Ident":["Product",0]},{"Ident":["product",0]}]},{"key":{"Fun":209},"value":[{"Ident":["core",0]},{"Ident":["default",0]},{"Ident":["Default",0]},{"Ident":["default",0]}]},{"key":{"Global":45},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":1079},"kind":"InherentImplBlock"}}},{"Ident":["from_raw",0]},{"Ident":["{promoted_const}",0]}]},{"key":{"Fun":210},"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":[1072,{"Literal":{"UInt":"U64"}}]},"kind":"InherentImplBlock"}}},{"Ident":["wrapping_mul",0]}]},{"key":{"Fun":211},"value":[{"Ident":["pasta_curves",0]},{"Ident":["arithmetic",0]},{"Ident":["fields",0]},{"Ident":["mac",0]}]},{"key":{"Fun":212},"value":[{"Ident":["pasta_curves",0]},{"Ident":["arithmetic",0]},{"Ident":["fields",0]},{"Ident":["adc",0]}]},{"key":{"Global":46},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":1079},"kind":"InherentImplBlock"}}},{"Ident":["montgomery_reduce",0]},{"Ident":["{promoted_const}",0]}]},{"key":{"Fun":213},"value":[{"Ident":["pasta_curves",0]},{"Ident":["arithmetic",0]},{"Ident":["fields",0]},{"Ident":["sbb",0]}]},{"key":{"Global":47},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":1079},"kind":"InherentImplBlock"}}},{"Ident":["add",0]},{"Ident":["{promoted_const}",0]}]},{"key":{"Fun":214},"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":1072},"kind":"InherentImplBlock"}}},{"Ident":["wrapping_sub",0]}]},{"key":{"Type":49},"value":[{"Ident":["core",0]},{"Ident":["marker",0]},{"Ident":["Send",0]},{"Ident":["{vtable}",0]}]},{"key":{"Type":50},"value":[{"Ident":["core",0]},{"Ident":["marker",0]},{"Ident":["Sync",0]},{"Ident":["{vtable}",0]}]},{"key":{"Global":48},"value":[{"Ident":["core",0]},{"Ident":["borrow",0]},{"Impl":{"Trait":42}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":215},"value":[{"Ident":["core",0]},{"Ident":["borrow",0]},{"Impl":{"Trait":42}},{"Ident":["borrow",0]}]},{"key":{"Global":49},"value":[{"Ident":["core",0]},{"Ident":["borrow",0]},{"Impl":{"Trait":43}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":216},"value":[{"Ident":["core",0]},{"Ident":["borrow",0]},{"Impl":{"Trait":43}},{"Ident":["borrow",0]}]},{"key":{"Fun":217},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":37}},{"Ident":["ZERO",0]}]},{"key":{"Fun":218},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":37}},{"Ident":["ONE",0]}]},{"key":{"Type":51},"value":[{"Ident":["rand_core",0]},{"Ident":["RngCore",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":219},"value":[{"Ident":["rand_core",0]},{"Ident":["RngCore",0]},{"Ident":["next_u32",0]}]},{"key":{"Fun":220},"value":[{"Ident":["rand_core",0]},{"Ident":["RngCore",0]},{"Ident":["next_u64",0]}]},{"key":{"Fun":221},"value":[{"Ident":["rand_core",0]},{"Ident":["RngCore",0]},{"Ident":["fill_bytes",0]}]},{"key":{"Fun":222},"value":[{"Ident":["rand_core",0]},{"Ident":["RngCore",0]},{"Ident":["try_fill_bytes",0]}]},{"key":{"Type":52},"value":[{"Ident":["rand_core",0]},{"Ident":["error",0]},{"Ident":["Error",0]}]},{"key":{"Type":53},"value":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Ident":["AsRef",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":223},"value":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Ident":["AsRef",0]},{"Ident":["as_ref",0]}]},{"key":{"Global":50},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":37}},{"Ident":["invert",0]},{"Ident":["{promoted_const}",0]}]},{"key":{"TraitImpl":54},"value":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Impl":{"Trait":54}}]},{"key":{"TraitImpl":55},"value":[{"Ident":["subtle",0]},{"Impl":{"Trait":55}}]},{"key":{"Fun":224},"value":[{"Ident":["subtle",0]},{"Impl":{"Trait":55}},{"Ident":["not",0]}]},{"key":{"Fun":225},"value":[{"Ident":["subtle",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[{"index":0,"name":"T"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"HashConsedValue":[4814,{"Adt":{"id":{"Adt":7},"generics":{"regions":[],"types":[{"HashConsedValue":[1091,{"TypeVar":{"Bound":[0,0]}}]}],"const_generics":[],"trait_refs":[]}}}]},"kind":"InherentImplBlock"}}},{"Ident":["new",0]}]},{"key":{"Fun":226},"value":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[{"index":0,"name":"T"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"HashConsedValue":[5107,{"Slice":{"Deduplicated":1091}}]},"kind":"InherentImplBlock"}}},{"Ident":["len",0]}]},{"key":{"TraitImpl":56},"value":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":56}}]},{"key":{"TraitImpl":57},"value":[{"Ident":["core",0]},{"Ident":["clone",0]},{"Ident":["impls",0]},{"Impl":{"Trait":57}}]},{"key":{"Fun":227},"value":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":46}},{"Ident":["default",0]}]},{"key":{"Fun":228},"value":[{"Ident":["core",0]},{"Ident":["default",0]},{"Impl":{"Trait":47}},{"Ident":["default",0]}]},{"key":{"Global":51},"value":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":48}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":229},"value":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":48}},{"Ident":["as_ref",0]}]},{"key":{"Type":54},"value":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Ident":["AsMut",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":230},"value":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Ident":["AsMut",0]},{"Ident":["as_mut",0]}]},{"key":{"Global":52},"value":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":49}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":231},"value":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":49}},{"Ident":["as_mut",0]}]},{"key":{"Type":55},"value":[{"Ident":["core",0]},{"Ident":["array",0]},{"Ident":["TryFromSliceError",0]}]},{"key":{"Type":56},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["range",0]},{"Ident":["Range",0]}]},{"key":{"TraitImpl":58},"value":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":58}}]},{"key":{"Fun":232},"value":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":58}},{"Ident":["index",0]}]},{"key":{"TraitDecl":45},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["index",0]},{"Ident":["Index",0]}]},{"key":{"TraitImpl":59},"value":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Impl":{"Trait":59}}]},{"key":{"TraitDecl":46},"value":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Ident":["SliceIndex",0]}]},{"key":{"TraitImpl":60},"value":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Impl":{"Trait":60}}]},{"key":{"TraitImpl":61},"value":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Impl":{"Trait":61}}]},{"key":{"Fun":233},"value":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Impl":{"Trait":61}},{"Ident":["try_into",0]}]},{"key":{"TraitDecl":47},"value":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Ident":["TryFrom",0]}]},{"key":{"TraitImpl":62},"value":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":62}}]},{"key":{"Fun":234},"value":[{"Ident":["core",0]},{"Ident":["result",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[{"index":0,"name":"T"},{"index":1,"name":"E"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"HashConsedValue":[5457,{"Adt":{"id":{"Adt":10},"generics":{"regions":[],"types":[{"Deduplicated":1091},{"HashConsedValue":[1262,{"TypeVar":{"Bound":[0,1]}}]}],"const_generics":[],"trait_refs":[]}}}]},"kind":"InherentImplBlock"}}},{"Ident":["unwrap",0]}]},{"key":{"TraitImpl":63},"value":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":63}}]},{"key":{"Fun":235},"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":1072},"kind":"InherentImplBlock"}}},{"Ident":["from_le_bytes",0]}]},{"key":{"Global":53},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["from_repr",0]},{"Ident":["{promoted_const}",0]}]},{"key":{"TraitImpl":64},"value":[{"Ident":["subtle",0]},{"Impl":{"Trait":64}}]},{"key":{"Fun":236},"value":[{"Ident":["subtle",0]},{"Impl":{"Trait":64}},{"Ident":["from",0]}]},{"key":{"TraitImpl":65},"value":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":65}}]},{"key":{"Fun":237},"value":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":65}},{"Ident":["index_mut",0]}]},{"key":{"TraitDecl":48},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["index",0]},{"Ident":["IndexMut",0]}]},{"key":{"TraitImpl":66},"value":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Impl":{"Trait":66}}]},{"key":{"Fun":238},"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":1072},"kind":"InherentImplBlock"}}},{"Ident":["to_le_bytes",0]}]},{"key":{"Fun":239},"value":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[{"index":0,"name":"T"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":5107},"kind":"InherentImplBlock"}}},{"Ident":["copy_from_slice",0]}]},{"key":{"Fun":240},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["MODULUS",0]}]},{"key":{"Fun":241},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["NUM_BITS",0]}]},{"key":{"Fun":242},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["CAPACITY",0]}]},{"key":{"Fun":243},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["TWO_INV",0]}]},{"key":{"Fun":244},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["MULTIPLICATIVE_GENERATOR",0]}]},{"key":{"Fun":245},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["S",0]}]},{"key":{"Fun":246},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["ROOT_OF_UNITY",0]}]},{"key":{"Fun":247},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["ROOT_OF_UNITY_INV",0]}]},{"key":{"Fun":248},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["DELTA",0]}]},{"key":{"Fun":249},"value":[{"Ident":["pasta_curves",0]},{"Ident":["arithmetic",0]},{"Ident":["fields",0]},{"Ident":["SqrtTableHelpers",0]},{"Ident":["pow_by_t_minus1_over2",0]}]},{"key":{"Fun":250},"value":[{"Ident":["pasta_curves",0]},{"Ident":["arithmetic",0]},{"Ident":["fields",0]},{"Ident":["SqrtTableHelpers",0]},{"Ident":["get_lower_32",0]}]},{"key":{"Fun":251},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":40}},{"Ident":["ZETA",0]}]},{"key":{"Fun":252},"value":[{"Ident":["ff",0]},{"Ident":["FromUniformBytes",0]},{"Ident":["from_uniform_bytes",0]}]},{"key":{"TraitDecl":49},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["bit",0]},{"Ident":["BitAnd",0]}]},{"key":{"Global":54},"value":[{"Ident":["subtle",0]},{"Impl":{"Trait":51}},{"Ident":["{vtable}",0]}]},{"key":{"TraitImpl":67},"value":[{"Ident":["core",0]},{"Ident":["marker",0]},{"Impl":{"Trait":67}}]},{"key":{"Fun":253},"value":[{"Ident":["subtle",0]},{"Impl":{"Trait":52}},{"Ident":["conditional_assign",0]}]},{"key":{"Fun":254},"value":[{"Ident":["subtle",0]},{"Impl":{"Trait":52}},{"Ident":["conditional_swap",0]}]},{"key":{"TraitDecl":50},"value":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["nonzero",0]},{"Ident":["private",0]},{"Ident":["Sealed",0]}]},{"key":{"TraitImpl":68},"value":[{"Ident":["core",0]},{"Ident":["marker",0]},{"Impl":{"Trait":68}}]},{"key":{"TraitImpl":69},"value":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["nonzero",0]},{"Impl":{"Trait":69}}]},{"key":{"Type":57},"value":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["niche_types",0]},{"Ident":["NonZeroUsizeInner",0]}]},{"key":{"TraitImpl":70},"value":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["niche_types",0]},{"Impl":{"Trait":70}}]},{"key":{"Type":58},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["collect",0]},{"Ident":["IntoIterator",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":255},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["collect",0]},{"Ident":["IntoIterator",0]},{"Ident":["into_iter",0]}]},{"key":{"Type":59},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["function",0]},{"Ident":["FnMut",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":256},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["function",0]},{"Ident":["FnMut",0]},{"Ident":["call_mut",0]}]},{"key":{"Type":60},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["function",0]},{"Ident":["FnOnce",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":257},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["function",0]},{"Ident":["FnOnce",0]},{"Ident":["call_once",0]}]},{"key":{"Fun":258},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["collect",0]},{"Ident":["FromIterator",0]},{"Ident":["from_iter",0]}]},{"key":{"TraitDecl":51},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["try_trait",0]},{"Ident":["FromResidual",0]}]},{"key":{"Fun":259},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["try_trait",0]},{"Ident":["Try",0]},{"Ident":["from_output",0]}]},{"key":{"Fun":260},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["try_trait",0]},{"Ident":["Try",0]},{"Ident":["branch",0]}]},{"key":{"Fun":261},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["collect",0]},{"Ident":["Extend",0]},{"Ident":["extend",0]}]},{"key":{"Fun":262},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["collect",0]},{"Ident":["Extend",0]},{"Ident":["extend_one",0]}]},{"key":{"Fun":263},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["collect",0]},{"Ident":["Extend",0]},{"Ident":["extend_reserve",0]}]},{"key":{"Fun":264},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["collect",0]},{"Ident":["Extend",0]},{"Ident":["extend_one_unchecked",0]}]},{"key":{"Type":61},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["double_ended",0]},{"Ident":["DoubleEndedIterator",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":265},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["double_ended",0]},{"Ident":["DoubleEndedIterator",0]},{"Ident":["next_back",0]}]},{"key":{"Fun":266},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["double_ended",0]},{"Ident":["DoubleEndedIterator",0]},{"Ident":["advance_back_by",0]}]},{"key":{"Fun":267},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["double_ended",0]},{"Ident":["DoubleEndedIterator",0]},{"Ident":["nth_back",0]}]},{"key":{"Fun":268},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["double_ended",0]},{"Ident":["DoubleEndedIterator",0]},{"Ident":["try_rfold",0]}]},{"key":{"Fun":269},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["double_ended",0]},{"Ident":["DoubleEndedIterator",0]},{"Ident":["rfold",0]}]},{"key":{"Fun":270},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["double_ended",0]},{"Ident":["DoubleEndedIterator",0]},{"Ident":["rfind",0]}]},{"key":{"Type":62},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["exact_size",0]},{"Ident":["ExactSizeIterator",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":271},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["exact_size",0]},{"Ident":["ExactSizeIterator",0]},{"Ident":["len",0]}]},{"key":{"Fun":272},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["exact_size",0]},{"Ident":["ExactSizeIterator",0]},{"Ident":["is_empty",0]}]},{"key":{"Fun":273},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["zip",0]},{"Ident":["TrustedRandomAccessNoCoerce",0]},{"Ident":["size",0]}]},{"key":{"Fun":274},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":1079},"kind":"InherentImplBlock"}}},{"Ident":["from_raw",0]},{"Ident":["{promoted_const}",0]}]},{"key":{"Fun":275},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":1079},"kind":"InherentImplBlock"}}},{"Ident":["montgomery_reduce",0]},{"Ident":["{promoted_const}",0]}]},{"key":{"Fun":276},"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":[2226,{"Literal":{"UInt":"U128"}}]},"kind":"InherentImplBlock"}}},{"Ident":["wrapping_sub",0]}]},{"key":{"Fun":277},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":1079},"kind":"InherentImplBlock"}}},{"Ident":["add",0]},{"Ident":["{promoted_const}",0]}]},{"key":{"Fun":278},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":37}},{"Ident":["invert",0]},{"Ident":["{promoted_const}",0]}]},{"key":{"Global":55},"value":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Impl":{"Trait":54}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":279},"value":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Impl":{"Trait":54}},{"Ident":["as_ref",0]}]},{"key":{"TraitDecl":52},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["bit",0]},{"Ident":["Not",0]}]},{"key":{"Global":56},"value":[{"Ident":["subtle",0]},{"Impl":{"Trait":55}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":280},"value":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":56}},{"Ident":["clone",0]}]},{"key":{"Fun":281},"value":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":56}},{"Ident":["clone_from",0]}]},{"key":{"Fun":282},"value":[{"Ident":["core",0]},{"Ident":["clone",0]},{"Ident":["impls",0]},{"Impl":{"Trait":57}},{"Ident":["clone",0]}]},{"key":{"Global":57},"value":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":58}},{"Ident":["{vtable}",0]}]},{"key":{"Type":63},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["index",0]},{"Ident":["Index",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":283},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["index",0]},{"Ident":["Index",0]},{"Ident":["index",0]}]},{"key":{"Global":58},"value":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Impl":{"Trait":59}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":284},"value":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Impl":{"Trait":59}},{"Ident":["index",0]}]},{"key":{"TraitDecl":53},"value":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Ident":["private_slice_index",0]},{"Ident":["Sealed",0]}]},{"key":{"Type":64},"value":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Ident":["SliceIndex",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":285},"value":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Ident":["SliceIndex",0]},{"Ident":["get",0]}]},{"key":{"Fun":286},"value":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Ident":["SliceIndex",0]},{"Ident":["get_mut",0]}]},{"key":{"Fun":287},"value":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Ident":["SliceIndex",0]},{"Ident":["get_unchecked",0]}]},{"key":{"Fun":288},"value":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Ident":["SliceIndex",0]},{"Ident":["get_unchecked_mut",0]}]},{"key":{"Fun":289},"value":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Ident":["SliceIndex",0]},{"Ident":["index",0]}]},{"key":{"Fun":290},"value":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Ident":["SliceIndex",0]},{"Ident":["index_mut",0]}]},{"key":{"Global":59},"value":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Impl":{"Trait":60}},{"Ident":["{vtable}",0]}]},{"key":{"TraitImpl":71},"value":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Ident":["private_slice_index",0]},{"Impl":{"Trait":71}}]},{"key":{"Fun":291},"value":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Impl":{"Trait":60}},{"Ident":["get",0]}]},{"key":{"Fun":292},"value":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Impl":{"Trait":60}},{"Ident":["get_mut",0]}]},{"key":{"Fun":293},"value":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Impl":{"Trait":60}},{"Ident":["get_unchecked",0]}]},{"key":{"Fun":294},"value":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Impl":{"Trait":60}},{"Ident":["get_unchecked_mut",0]}]},{"key":{"Fun":295},"value":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Impl":{"Trait":60}},{"Ident":["index",0]}]},{"key":{"Fun":296},"value":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Impl":{"Trait":60}},{"Ident":["index_mut",0]}]},{"key":{"TraitDecl":54},"value":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Ident":["TryInto",0]}]},{"key":{"Fun":297},"value":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Ident":["TryFrom",0]},{"Ident":["try_from",0]}]},{"key":{"Fun":298},"value":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":62}},{"Ident":["try_from",0]}]},{"key":{"Global":60},"value":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":63}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":299},"value":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":63}},{"Ident":["fmt",0]}]},{"key":{"Fun":300},"value":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["from_repr",0]},{"Ident":["{promoted_const}",0]}]},{"key":{"Global":61},"value":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":65}},{"Ident":["{vtable}",0]}]},{"key":{"Type":65},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["index",0]},{"Ident":["IndexMut",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":301},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["index",0]},{"Ident":["IndexMut",0]},{"Ident":["index_mut",0]}]},{"key":{"Global":62},"value":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Impl":{"Trait":66}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":302},"value":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Impl":{"Trait":66}},{"Ident":["index_mut",0]}]},{"key":{"Type":66},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["bit",0]},{"Ident":["BitAnd",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":303},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["bit",0]},{"Ident":["BitAnd",0]},{"Ident":["bitand",0]}]},{"key":{"TraitImpl":72},"value":[{"Ident":["core",0]},{"Ident":["clone",0]},{"Ident":["impls",0]},{"Impl":{"Trait":72}}]},{"key":{"Type":67},"value":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["nonzero",0]},{"Ident":["private",0]},{"Ident":["Sealed",0]},{"Ident":["{vtable}",0]}]},{"key":{"TraitImpl":73},"value":[{"Ident":["core",0]},{"Ident":["clone",0]},{"Ident":["impls",0]},{"Impl":{"Trait":73}}]},{"key":{"Global":63},"value":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["nonzero",0]},{"Impl":{"Trait":69}},{"Ident":["{vtable}",0]}]},{"key":{"TraitImpl":74},"value":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["niche_types",0]},{"Impl":{"Trait":74}}]},{"key":{"Fun":304},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["try_trait",0]},{"Ident":["FromResidual",0]},{"Ident":["from_residual",0]}]},{"key":{"Type":68},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["bit",0]},{"Ident":["Not",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":305},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["bit",0]},{"Ident":["Not",0]},{"Ident":["not",0]}]},{"key":{"Type":69},"value":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Ident":["private_slice_index",0]},{"Ident":["Sealed",0]},{"Ident":["{vtable}",0]}]},{"key":{"Global":64},"value":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Ident":["private_slice_index",0]},{"Impl":{"Trait":71}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":306},"value":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Ident":["TryInto",0]},{"Ident":["try_into",0]}]},{"key":{"Fun":307},"value":[{"Ident":["core",0]},{"Ident":["clone",0]},{"Ident":["impls",0]},{"Impl":{"Trait":72}},{"Ident":["clone",0]}]},{"key":{"Fun":308},"value":[{"Ident":["core",0]},{"Ident":["clone",0]},{"Ident":["impls",0]},{"Impl":{"Trait":73}},{"Ident":["clone",0]}]},{"key":{"Fun":309},"value":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["niche_types",0]},{"Impl":{"Trait":74}},{"Ident":["clone",0]}]}],"assoc_item_names":[null,{"types":[],"methods":["clone","clone_from"],"consts":[]},{"types":[],"methods":["drop_glue"],"consts":[]},{"types":[],"methods":[],"consts":[]},{"types":[],"methods":["assert_receiver_is_total_eq","assert_fields_are_eq"],"consts":[]},{"types":[],"methods":["eq","ne"],"consts":[]},{"types":[],"methods":["fmt"],"consts":[]},{"types":[],"methods":["from"],"consts":[]},{"types":[],"methods":["ct_eq","ct_ne"],"consts":[]},{"types":[],"methods":["cmp","max","min","clamp"],"consts":[]},{"types":[],"methods":["partial_cmp","lt","le","gt","ge","__chaining_lt","__chaining_le","__chaining_gt","__chaining_ge"],"consts":[]},{"types":[],"methods":["conditional_select","conditional_assign","conditional_swap"],"consts":[]},{"types":["Output"],"methods":["neg"],"consts":[]},{"types":["Output"],"methods":["sub"],"consts":[]},{"types":["Output"],"methods":["add"],"consts":[]},{"types":["Output"],"methods":["mul"],"consts":[]},{"types":[],"methods":["sub_assign"],"consts":[]},{"types":[],"methods":["add_assign"],"consts":[]},{"types":[],"methods":["mul_assign"],"consts":[]},{"types":[],"methods":["borrow"],"consts":[]},{"types":[],"methods":["sum"],"consts":[]},{"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":["product"],"consts":[]},{"types":[],"methods":["default"],"consts":[]},{"types":[],"methods":["random","is_zero","is_zero_vartime","square","cube","double","invert","sqrt_ratio","sqrt_alt","sqrt","pow","pow_vartime"],"consts":["ZERO","ONE"]},{"types":[],"methods":[],"consts":[]},{"types":[],"methods":[],"consts":[]},{"types":[],"methods":["next_u32","next_u64","fill_bytes","try_fill_bytes"],"consts":[]},{"types":[],"methods":["as_ref"],"consts":[]},{"types":["Repr"],"methods":["from_str_vartime","from_u128","from_repr","from_repr_vartime","to_repr","is_odd","is_even"],"consts":["MODULUS","NUM_BITS","CAPACITY","TWO_INV","MULTIPLICATIVE_GENERATOR","S","ROOT_OF_UNITY","ROOT_OF_UNITY_INV","DELTA"]},{"types":[],"methods":["as_mut"],"consts":[]},{"types":[],"methods":["pow_by_t_minus1_over2","get_lower_32"],"consts":[]},{"types":[],"methods":[],"consts":["ZETA"]},{"types":[],"methods":["from_uniform_bytes"],"consts":[]},{"types":["NonZeroInner"],"methods":[],"consts":[]},{"types":["Item","IntoIter"],"methods":["into_iter"],"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":["next_back","advance_back_by","nth_back","try_rfold","rfold","rfind"],"consts":[]},{"types":[],"methods":["len","is_empty"],"consts":[]},{"types":[],"methods":["size"],"consts":["MAY_HAVE_SIDE_EFFECT"]},{"types":["Output"],"methods":["index"],"consts":[]},{"types":["Output"],"methods":["get","get_mut","get_unchecked","get_unchecked_mut","index","index_mut"],"consts":[]},{"types":["Error"],"methods":["try_from"],"consts":[]},{"types":[],"methods":["index_mut"],"consts":[]},{"types":["Output"],"methods":["bitand"],"consts":[]},{"types":[],"methods":[],"consts":[]},{"types":[],"methods":["from_residual"],"consts":[]},{"types":["Output"],"methods":["not"],"consts":[]},{"types":[],"methods":[],"consts":[]},{"types":["Error"],"methods":["try_into"],"consts":[]}],"short_names":[{"key":{"TraitImpl":0},"value":[{"Ident":["impl_TrivialClone_for_Fp",0]}]},{"key":{"TraitImpl":1},"value":[{"Ident":["impl_Clone_for_Fp",0]}]},{"key":{"TraitImpl":2},"value":[{"Ident":["impl_Copy_for_Fp",0]}]},{"key":{"TraitImpl":3},"value":[{"Ident":["impl_Eq_for_Fp",0]}]},{"key":{"TraitImpl":4},"value":[{"Ident":["impl_Debug_for_Fp",0]}]},{"key":{"TraitImpl":5},"value":[{"Ident":["impl_From_bool_for_Fp",0]}]},{"key":{"TraitImpl":6},"value":[{"Ident":["impl_From_u64_for_Fp",0]}]},{"key":{"TraitImpl":7},"value":[{"Ident":["impl_ConstantTimeEq_for_Fp",0]}]},{"key":{"TraitImpl":8},"value":[{"Ident":["impl_PartialEq_Fp_for_Fp",0]}]},{"key":{"TraitImpl":9},"value":[{"Ident":["impl_Ord_for_Fp",0]}]},{"key":{"TraitImpl":10},"value":[{"Ident":["impl_PartialOrd_Fp_for_Fp",0]}]},{"key":{"TraitImpl":11},"value":[{"Ident":["impl_ConditionallySelectable_for_Fp",0]}]},{"key":{"TraitImpl":12},"value":[{"Impl":{"Trait":12}}]},{"key":{"TraitImpl":13},"value":[{"Ident":["impl_Neg_for_Fp",0]}]},{"key":{"TraitImpl":14},"value":[{"Impl":{"Trait":14}}]},{"key":{"TraitImpl":15},"value":[{"Impl":{"Trait":15}}]},{"key":{"TraitImpl":16},"value":[{"Impl":{"Trait":16}}]},{"key":{"TraitImpl":17},"value":[{"Ident":["impl_Add_for_Fp",0]}]},{"key":{"TraitImpl":18},"value":[{"Impl":{"Trait":18}}]},{"key":{"TraitImpl":19},"value":[{"Ident":["impl_Add_Fp_for_Fp",0]}]},{"key":{"TraitImpl":20},"value":[{"Ident":["impl_Sub_for_Fp",0]}]},{"key":{"TraitImpl":21},"value":[{"Impl":{"Trait":21}}]},{"key":{"TraitImpl":22},"value":[{"Ident":["impl_Sub_Fp_for_Fp",0]}]},{"key":{"TraitImpl":23},"value":[{"Ident":["impl_SubAssign_Fp_for_Fp",0]}]},{"key":{"TraitImpl":24},"value":[{"Ident":["impl_AddAssign_Fp_for_Fp",0]}]},{"key":{"TraitImpl":25},"value":[{"Ident":["impl_SubAssign_for_Fp",0]}]},{"key":{"TraitImpl":26},"value":[{"Ident":["impl_AddAssign_for_Fp",0]}]},{"key":{"TraitImpl":27},"value":[{"Ident":["impl_Mul_for_Fp",0]}]},{"key":{"TraitImpl":28},"value":[{"Impl":{"Trait":28}}]},{"key":{"TraitImpl":29},"value":[{"Ident":["impl_Mul_Fp_for_Fp",0]}]},{"key":{"TraitImpl":30},"value":[{"Ident":["impl_MulAssign_Fp_for_Fp",0]}]},{"key":{"TraitImpl":31},"value":[{"Ident":["impl_MulAssign_for_Fp",0]}]},{"key":{"TraitImpl":32},"value":[{"Ident":["impl_Sum_for_Fp",0]}]},{"key":{"TraitImpl":33},"value":[{"Ident":["impl_Product_for_Fp",0]}]},{"key":{"TraitImpl":34},"value":[{"Ident":["impl_Default_for_Fp",0]}]},{"key":{"TraitImpl":35},"value":[{"Ident":["impl_From_Fp_for_array",0]}]},{"key":{"TraitImpl":36},"value":[{"Ident":["impl_From_for_array",0]}]},{"key":{"TraitImpl":37},"value":[{"Ident":["impl_Field_for_Fp",0]}]},{"key":{"TraitImpl":38},"value":[{"Ident":["impl_PrimeField_for_Fp",0]}]},{"key":{"TraitImpl":39},"value":[{"Ident":["impl_SqrtTableHelpers_for_Fp",0]}]},{"key":{"TraitImpl":40},"value":[{"Ident":["impl_WithSmallOrderMulGroup_for_Fp",0]}]},{"key":{"TraitImpl":41},"value":[{"Ident":["impl_FromUniformBytes_for_Fp",0]}]},{"key":{"Fun":0},"value":[{"Impl":{"Trait":1}},{"Ident":["clone",0]}]},{"key":{"Fun":5},"value":[{"Impl":{"Trait":3}},{"Ident":["assert_fields_are_eq",0]}]},{"key":{"Global":10},"value":[{"Impl":{"Trait":4}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":6},"value":[{"Impl":{"Trait":4}},{"Ident":["fmt",0]}]},{"key":{"Fun":7},"value":[{"Impl":{"Trait":5}},{"Ident":["from",0]}]},{"key":{"Fun":8},"value":[{"Impl":{"Trait":6}},{"Ident":["from",0]}]},{"key":{"Fun":9},"value":[{"Impl":{"Trait":7}},{"Ident":["ct_eq",0]}]},{"key":{"Global":11},"value":[{"Impl":{"Trait":8}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":12},"value":[{"Impl":{"Trait":8}},{"Ident":["eq",0]}]},{"key":{"Fun":15},"value":[{"Impl":{"Trait":9}},{"Ident":["cmp",0]}]},{"key":{"Global":12},"value":[{"Impl":{"Trait":10}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":20},"value":[{"Impl":{"Trait":10}},{"Ident":["partial_cmp",0]}]},{"key":{"Fun":30},"value":[{"Impl":{"Trait":11}},{"Ident":["conditional_select",0]}]},{"key":{"Global":13},"value":[{"Impl":{"Trait":12}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":35},"value":[{"Impl":{"Trait":12}},{"Ident":["neg",0]}]},{"key":{"Global":14},"value":[{"Impl":{"Trait":13}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":36},"value":[{"Impl":{"Trait":13}},{"Ident":["neg",0]}]},{"key":{"Global":15},"value":[{"Impl":{"Trait":14}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":37},"value":[{"Impl":{"Trait":14}},{"Ident":["sub",0]}]},{"key":{"Global":16},"value":[{"Impl":{"Trait":15}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":38},"value":[{"Impl":{"Trait":15}},{"Ident":["add",0]}]},{"key":{"Global":17},"value":[{"Impl":{"Trait":16}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":39},"value":[{"Impl":{"Trait":16}},{"Ident":["mul",0]}]},{"key":{"Global":18},"value":[{"Impl":{"Trait":17}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":40},"value":[{"Impl":{"Trait":17}},{"Ident":["add",0]}]},{"key":{"Global":19},"value":[{"Impl":{"Trait":18}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":41},"value":[{"Impl":{"Trait":18}},{"Ident":["add",0]}]},{"key":{"Global":20},"value":[{"Impl":{"Trait":19}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":42},"value":[{"Impl":{"Trait":19}},{"Ident":["add",0]}]},{"key":{"Global":21},"value":[{"Impl":{"Trait":20}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":43},"value":[{"Impl":{"Trait":20}},{"Ident":["sub",0]}]},{"key":{"Global":22},"value":[{"Impl":{"Trait":21}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":44},"value":[{"Impl":{"Trait":21}},{"Ident":["sub",0]}]},{"key":{"Global":23},"value":[{"Impl":{"Trait":22}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":45},"value":[{"Impl":{"Trait":22}},{"Ident":["sub",0]}]},{"key":{"Global":24},"value":[{"Impl":{"Trait":23}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":46},"value":[{"Impl":{"Trait":23}},{"Ident":["sub_assign",0]}]},{"key":{"Global":25},"value":[{"Impl":{"Trait":24}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":47},"value":[{"Impl":{"Trait":24}},{"Ident":["add_assign",0]}]},{"key":{"Global":26},"value":[{"Impl":{"Trait":25}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":48},"value":[{"Impl":{"Trait":25}},{"Ident":["sub_assign",0]}]},{"key":{"Global":27},"value":[{"Impl":{"Trait":26}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":49},"value":[{"Impl":{"Trait":26}},{"Ident":["add_assign",0]}]},{"key":{"Global":28},"value":[{"Impl":{"Trait":27}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":50},"value":[{"Impl":{"Trait":27}},{"Ident":["mul",0]}]},{"key":{"Global":29},"value":[{"Impl":{"Trait":28}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":51},"value":[{"Impl":{"Trait":28}},{"Ident":["mul",0]}]},{"key":{"Global":30},"value":[{"Impl":{"Trait":29}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":52},"value":[{"Impl":{"Trait":29}},{"Ident":["mul",0]}]},{"key":{"Global":31},"value":[{"Impl":{"Trait":30}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":53},"value":[{"Impl":{"Trait":30}},{"Ident":["mul_assign",0]}]},{"key":{"Global":32},"value":[{"Impl":{"Trait":31}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":54},"value":[{"Impl":{"Trait":31}},{"Ident":["mul_assign",0]}]},{"key":{"Fun":55},"value":[{"Impl":{"Trait":32}},{"Ident":["sum",0]}]},{"key":{"Fun":56},"value":[{"Impl":{"Trait":33}},{"Ident":["product",0]}]},{"key":{"Fun":66},"value":[{"Impl":{"Trait":34}},{"Ident":["default",0]}]},{"key":{"Fun":80},"value":[{"Impl":{"Trait":35}},{"Ident":["from",0]}]},{"key":{"Fun":81},"value":[{"Impl":{"Trait":36}},{"Ident":["from",0]}]},{"key":{"TraitImpl":42},"value":[{"Ident":["impl_Borrow_for_T",0]}]},{"key":{"TraitImpl":43},"value":[{"Impl":{"Trait":43}}]},{"key":{"Global":33},"value":[{"Ident":["ZERO",0]}]},{"key":{"Global":34},"value":[{"Ident":["ONE",0]}]},{"key":{"Fun":82},"value":[{"Impl":{"Trait":37}},{"Ident":["random",0]}]},{"key":{"Fun":95},"value":[{"Impl":{"Trait":37}},{"Ident":["square",0]}]},{"key":{"Fun":96},"value":[{"Impl":{"Trait":37}},{"Ident":["double",0]}]},{"key":{"Fun":97},"value":[{"Impl":{"Trait":37}},{"Ident":["invert",0]}]},{"key":{"Fun":98},"value":[{"Impl":{"Trait":37}},{"Ident":["sqrt_ratio",0]}]},{"key":{"Fun":99},"value":[{"Impl":{"Trait":37}},{"Ident":["sqrt",0]}]},{"key":{"Fun":100},"value":[{"Impl":{"Trait":37}},{"Ident":["pow_vartime",0]}]},{"key":{"TraitImpl":44},"value":[{"Ident":["impl_Copy_for_array",0]}]},{"key":{"TraitImpl":45},"value":[{"Ident":["impl_Copy_for_u8",0]}]},{"key":{"TraitImpl":46},"value":[{"Ident":["impl_Default_for_array",0]}]},{"key":{"TraitImpl":47},"value":[{"Ident":["impl_Default_for_u8",0]}]},{"key":{"TraitImpl":48},"value":[{"Ident":["impl_AsRef_slice_for_array",0]}]},{"key":{"TraitImpl":49},"value":[{"Ident":["impl_AsMut_slice_for_array",0]}]},{"key":{"Fun":108},"value":[{"Impl":{"Trait":38}},{"Ident":["from_u128",0]}]},{"key":{"Fun":109},"value":[{"Impl":{"Trait":38}},{"Ident":["from_repr",0]}]},{"key":{"Fun":110},"value":[{"Impl":{"Trait":38}},{"Ident":["to_repr",0]}]},{"key":{"Fun":111},"value":[{"Impl":{"Trait":38}},{"Ident":["is_odd",0]}]},{"key":{"Global":35},"value":[{"Impl":{"Trait":38}},{"Ident":["MODULUS",0]}]},{"key":{"Global":36},"value":[{"Ident":["NUM_BITS",0]}]},{"key":{"Global":37},"value":[{"Ident":["CAPACITY",0]}]},{"key":{"Global":38},"value":[{"Ident":["TWO_INV",0]}]},{"key":{"Global":39},"value":[{"Ident":["MULTIPLICATIVE_GENERATOR",0]}]},{"key":{"Global":40},"value":[{"Impl":{"Trait":38}},{"Ident":["S",0]}]},{"key":{"Global":41},"value":[{"Impl":{"Trait":38}},{"Ident":["ROOT_OF_UNITY",0]}]},{"key":{"Global":42},"value":[{"Ident":["ROOT_OF_UNITY_INV",0]}]},{"key":{"Global":43},"value":[{"Impl":{"Trait":38}},{"Ident":["DELTA",0]}]},{"key":{"Fun":112},"value":[{"Impl":{"Trait":39}},{"Ident":["pow_by_t_minus1_over2",0]}]},{"key":{"Fun":113},"value":[{"Impl":{"Trait":39}},{"Ident":["get_lower_32",0]}]},{"key":{"Global":44},"value":[{"Ident":["ZETA",0]}]},{"key":{"Fun":114},"value":[{"Impl":{"Trait":41}},{"Ident":["from_uniform_bytes",0]}]},{"key":{"TraitImpl":50},"value":[{"Ident":["impl_ConstantTimeEq_for_u64",0]}]},{"key":{"Fun":118},"value":[{"Impl":{"Trait":50}},{"Ident":["ct_eq",0]}]},{"key":{"TraitImpl":51},"value":[{"Ident":["impl_BitAnd_Choice_for_Choice",0]}]},{"key":{"Fun":119},"value":[{"Impl":{"Trait":51}},{"Ident":["bitand",0]}]},{"key":{"TraitImpl":52},"value":[{"Ident":["impl_ConditionallySelectable_for_u64",0]}]},{"key":{"Fun":121},"value":[{"Impl":{"Trait":52}},{"Ident":["conditional_select",0]}]},{"key":{"TraitImpl":53},"value":[{"Ident":["impl_ZeroablePrimitive_for_usize",0]}]},{"key":{"Global":48},"value":[{"Impl":{"Trait":42}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":215},"value":[{"Impl":{"Trait":42}},{"Ident":["borrow",0]}]},{"key":{"Global":49},"value":[{"Impl":{"Trait":43}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":216},"value":[{"Impl":{"Trait":43}},{"Ident":["borrow",0]}]},{"key":{"Fun":217},"value":[{"Ident":["ZERO",0]}]},{"key":{"Fun":218},"value":[{"Ident":["ONE",0]}]},{"key":{"Global":50},"value":[{"Impl":{"Trait":37}},{"Ident":["invert",0]},{"Ident":["{promoted_const}",0]}]},{"key":{"TraitImpl":54},"value":[{"Impl":{"Trait":54}}]},{"key":{"TraitImpl":55},"value":[{"Ident":["impl_Not_for_Choice",0]}]},{"key":{"Fun":224},"value":[{"Impl":{"Trait":55}},{"Ident":["not",0]}]},{"key":{"TraitImpl":56},"value":[{"Ident":["impl_Clone_for_array",0]}]},{"key":{"TraitImpl":57},"value":[{"Ident":["impl_Clone_for_u8",0]}]},{"key":{"Fun":227},"value":[{"Impl":{"Trait":46}},{"Ident":["default",0]}]},{"key":{"Fun":228},"value":[{"Impl":{"Trait":47}},{"Ident":["default",0]}]},{"key":{"Global":51},"value":[{"Impl":{"Trait":48}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":229},"value":[{"Impl":{"Trait":48}},{"Ident":["as_ref",0]}]},{"key":{"Global":52},"value":[{"Impl":{"Trait":49}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":231},"value":[{"Impl":{"Trait":49}},{"Ident":["as_mut",0]}]},{"key":{"TraitImpl":58},"value":[{"Ident":["impl_Index_for_array",0]}]},{"key":{"Fun":232},"value":[{"Impl":{"Trait":58}},{"Ident":["index",0]}]},{"key":{"TraitImpl":59},"value":[{"Ident":["impl_Index_for_slice",0]}]},{"key":{"TraitImpl":60},"value":[{"Ident":["impl_SliceIndex_slice_for_Range_usize",0]}]},{"key":{"TraitImpl":61},"value":[{"Ident":["impl_TryInto_for_T",0]}]},{"key":{"Fun":233},"value":[{"Impl":{"Trait":61}},{"Ident":["try_into",0]}]},{"key":{"TraitImpl":62},"value":[{"Ident":["impl_TryFrom_for_array",0]}]},{"key":{"TraitImpl":63},"value":[{"Ident":["impl_Debug_for_TryFromSliceError",0]}]},{"key":{"Global":53},"value":[{"Impl":{"Trait":38}},{"Ident":["from_repr",0]},{"Ident":["{promoted_const}",0]}]},{"key":{"TraitImpl":64},"value":[{"Ident":["impl_From_u8_for_Choice",0]}]},{"key":{"Fun":236},"value":[{"Impl":{"Trait":64}},{"Ident":["from",0]}]},{"key":{"TraitImpl":65},"value":[{"Ident":["impl_IndexMut_for_array",0]}]},{"key":{"Fun":237},"value":[{"Impl":{"Trait":65}},{"Ident":["index_mut",0]}]},{"key":{"TraitImpl":66},"value":[{"Ident":["impl_IndexMut_for_slice",0]}]},{"key":{"Fun":240},"value":[{"Impl":{"Trait":38}},{"Ident":["MODULUS",0]}]},{"key":{"Fun":241},"value":[{"Ident":["NUM_BITS",0]}]},{"key":{"Fun":242},"value":[{"Ident":["CAPACITY",0]}]},{"key":{"Fun":243},"value":[{"Ident":["TWO_INV",0]}]},{"key":{"Fun":244},"value":[{"Ident":["MULTIPLICATIVE_GENERATOR",0]}]},{"key":{"Fun":245},"value":[{"Impl":{"Trait":38}},{"Ident":["S",0]}]},{"key":{"Fun":246},"value":[{"Impl":{"Trait":38}},{"Ident":["ROOT_OF_UNITY",0]}]},{"key":{"Fun":247},"value":[{"Ident":["ROOT_OF_UNITY_INV",0]}]},{"key":{"Fun":248},"value":[{"Impl":{"Trait":38}},{"Ident":["DELTA",0]}]},{"key":{"Fun":251},"value":[{"Ident":["ZETA",0]}]},{"key":{"Global":54},"value":[{"Impl":{"Trait":51}},{"Ident":["{vtable}",0]}]},{"key":{"TraitImpl":67},"value":[{"Ident":["impl_Copy_for_u64",0]}]},{"key":{"Fun":253},"value":[{"Impl":{"Trait":52}},{"Ident":["conditional_assign",0]}]},{"key":{"Fun":254},"value":[{"Impl":{"Trait":52}},{"Ident":["conditional_swap",0]}]},{"key":{"TraitImpl":68},"value":[{"Ident":["impl_Copy_for_usize",0]}]},{"key":{"TraitImpl":69},"value":[{"Ident":["impl_Sealed_for_usize",0]}]},{"key":{"TraitImpl":70},"value":[{"Ident":["impl_Copy_for_NonZeroUsizeInner",0]}]},{"key":{"Fun":278},"value":[{"Impl":{"Trait":37}},{"Ident":["invert",0]},{"Ident":["{promoted_const}",0]}]},{"key":{"Global":55},"value":[{"Impl":{"Trait":54}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":279},"value":[{"Impl":{"Trait":54}},{"Ident":["as_ref",0]}]},{"key":{"Global":56},"value":[{"Impl":{"Trait":55}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":280},"value":[{"Impl":{"Trait":56}},{"Ident":["clone",0]}]},{"key":{"Fun":281},"value":[{"Impl":{"Trait":56}},{"Ident":["clone_from",0]}]},{"key":{"Fun":282},"value":[{"Impl":{"Trait":57}},{"Ident":["clone",0]}]},{"key":{"Global":57},"value":[{"Impl":{"Trait":58}},{"Ident":["{vtable}",0]}]},{"key":{"Global":58},"value":[{"Impl":{"Trait":59}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":284},"value":[{"Impl":{"Trait":59}},{"Ident":["index",0]}]},{"key":{"Global":59},"value":[{"Impl":{"Trait":60}},{"Ident":["{vtable}",0]}]},{"key":{"TraitImpl":71},"value":[{"Ident":["impl_Sealed_for_Range_usize",0]}]},{"key":{"Fun":291},"value":[{"Impl":{"Trait":60}},{"Ident":["get",0]}]},{"key":{"Fun":292},"value":[{"Impl":{"Trait":60}},{"Ident":["get_mut",0]}]},{"key":{"Fun":293},"value":[{"Impl":{"Trait":60}},{"Ident":["get_unchecked",0]}]},{"key":{"Fun":294},"value":[{"Impl":{"Trait":60}},{"Ident":["get_unchecked_mut",0]}]},{"key":{"Fun":295},"value":[{"Impl":{"Trait":60}},{"Ident":["index",0]}]},{"key":{"Fun":296},"value":[{"Impl":{"Trait":60}},{"Ident":["index_mut",0]}]},{"key":{"Fun":298},"value":[{"Impl":{"Trait":62}},{"Ident":["try_from",0]}]},{"key":{"Global":60},"value":[{"Impl":{"Trait":63}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":299},"value":[{"Impl":{"Trait":63}},{"Ident":["fmt",0]}]},{"key":{"Fun":300},"value":[{"Impl":{"Trait":38}},{"Ident":["from_repr",0]},{"Ident":["{promoted_const}",0]}]},{"key":{"Global":61},"value":[{"Impl":{"Trait":65}},{"Ident":["{vtable}",0]}]},{"key":{"Global":62},"value":[{"Impl":{"Trait":66}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":302},"value":[{"Impl":{"Trait":66}},{"Ident":["index_mut",0]}]},{"key":{"TraitImpl":72},"value":[{"Ident":["impl_Clone_for_u64",0]}]},{"key":{"TraitImpl":73},"value":[{"Ident":["impl_Clone_for_usize",0]}]},{"key":{"Global":63},"value":[{"Impl":{"Trait":69}},{"Ident":["{vtable}",0]}]},{"key":{"TraitImpl":74},"value":[{"Ident":["impl_Clone_for_NonZeroUsizeInner",0]}]},{"key":{"Global":64},"value":[{"Impl":{"Trait":71}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":307},"value":[{"Impl":{"Trait":72}},{"Ident":["clone",0]}]},{"key":{"Fun":308},"value":[{"Impl":{"Trait":73}},{"Ident":["clone",0]}]},{"key":{"Fun":309},"value":[{"Impl":{"Trait":74}},{"Ident":["clone",0]}]},{"key":{"TraitDecl":30},"value":[{"Ident":["AsMut",0]}]},{"key":{"Global":5},"value":[{"Ident":["GENERATOR",0]}]},{"key":{"Fun":61},"value":[{"Ident":["GENERATOR",0]}]},{"key":{"TraitDecl":8},"value":[{"Ident":["ConstantTimeEq",0]}]},{"key":{"TraitDecl":0},"value":[{"Ident":["TrivialClone",0]}]},{"key":{"Type":9},"value":[{"Ident":["Formatter",0]}]},{"key":{"Type":37},"value":[{"Ident":["Take",0]}]},{"key":{"Fun":258},"value":[{"Ident":["from_iter",0]}]},{"key":{"Fun":120},"value":[{"Ident":["unwrap_u8",0]}]},{"key":{"TraitDecl":20},"value":[{"Ident":["Sum",0]}]},{"key":{"Type":25},"value":[{"Ident":["Zip",0]}]},{"key":{"TraitDecl":34},"value":[{"Ident":["ZeroablePrimitive",0]}]},{"key":{"Fun":151},"value":[{"Ident":["map_while",0]}]},{"key":{"Type":56},"value":[{"Ident":["Range",0]}]},{"key":{"Fun":272},"value":[{"Ident":["is_empty",0]}]},{"key":{"Fun":70},"value":[{"Ident":["from_u512",0]}]},{"key":{"TraitDecl":36},"value":[{"Ident":["FnMut",0]}]},{"key":{"TraitDecl":54},"value":[{"Ident":["TryInto",0]}]},{"key":{"Fun":219},"value":[{"Ident":["next_u32",0]}]},{"key":{"Type":32},"value":[{"Ident":["Peekable",0]}]},{"key":{"TraitDecl":46},"value":[{"Ident":["SliceIndex",0]}]},{"key":{"Fun":148},"value":[{"Ident":["peekable",0]}]},{"key":{"Type":6},"value":[{"Ident":["ControlFlow",0]}]},{"key":{"Fun":188},"value":[{"Ident":["cloned",0]}]},{"key":{"Fun":204},"value":[{"Ident":["is_sorted",0]}]},{"key":{"TraitDecl":19},"value":[{"Ident":["Borrow",0]}]},{"key":{"Fun":68},"value":[{"Ident":["one",0]}]},{"key":{"Type":3},"value":[{"Ident":["Ordering",0]}]},{"key":{"Fun":79},"value":[{"Ident":["square_unreduced",0]}]},{"key":{"Type":46},"value":[{"Ident":["Cloned",0]}]},{"key":{"Fun":262},"value":[{"Ident":["extend_one",0]}]},{"key":{"Fun":158},"value":[{"Ident":["fuse",0]}]},{"key":{"Fun":162},"value":[{"Ident":["try_collect",0]}]},{"key":{"Fun":135},"value":[{"Ident":["last",0]}]},{"key":{"Fun":85},"value":[{"Ident":["is_zero_vartime",0]}]},{"key":{"Type":40},"value":[{"Ident":["Flatten",0]}]},{"key":{"Type":35},"value":[{"Ident":["MapWhile",0]}]},{"key":{"TraitDecl":3},"value":[{"Ident":["Copy",0]}]},{"key":{"TraitDecl":2},"value":[{"Ident":["Destruct",0]}]},{"key":{"Fun":27},"value":[{"Ident":["__chaining_le",0]}]},{"key":{"TraitDecl":18},"value":[{"Ident":["MulAssign",0]}]},{"key":{"Fun":136},"value":[{"Ident":["advance_by",0]}]},{"key":{"Fun":137},"value":[{"Ident":["nth",0]}]},{"key":{"Fun":169},"value":[{"Ident":["fold",0]}]},{"key":{"Fun":213},"value":[{"Ident":["sbb",0]}]},{"key":{"Fun":186},"value":[{"Ident":["unzip",0]}]},{"key":{"Fun":222},"value":[{"Ident":["try_fill_bytes",0]}]},{"key":{"Type":0},"value":[{"Ident":["Fp",0]}]},{"key":{"Fun":133},"value":[{"Ident":["size_hint",0]}]},{"key":{"Global":1},"value":[{"Ident":["INV",0]}]},{"key":{"Fun":57},"value":[{"Ident":["INV",0]}]},{"key":{"Type":31},"value":[{"Ident":["Enumerate",0]}]},{"key":{"TraitDecl":27},"value":[{"Ident":["RngCore",0]}]},{"key":{"TraitDecl":41},"value":[{"Ident":["Extend",0]}]},{"key":{"Fun":167},"value":[{"Ident":["try_fold",0]}]},{"key":{"Type":47},"value":[{"Ident":["Cycle",0]}]},{"key":{"Fun":225},"value":[{"Ident":["new",0]}]},{"key":{"Fun":268},"value":[{"Ident":["try_rfold",0]}]},{"key":{"TraitDecl":33},"value":[{"Ident":["FromUniformBytes",0]}]},{"key":{"Type":36},"value":[{"Ident":["Skip",0]}]},{"key":{"Type":23},"value":[{"Ident":["StepBy",0]}]},{"key":{"TraitDecl":15},"value":[{"Ident":["Mul",0]}]},{"key":{"TraitDecl":42},"value":[{"Ident":["DoubleEndedIterator",0]}]},{"key":{"Type":39},"value":[{"Ident":["FlatMap",0]}]},{"key":{"Fun":144},"value":[{"Ident":["for_each",0]}]},{"key":{"Fun":160},"value":[{"Ident":["by_ref",0]}]},{"key":{"Fun":175},"value":[{"Ident":["find_map",0]}]},{"key":{"Fun":198},"value":[{"Ident":["eq_by",0]}]},{"key":{"Type":45},"value":[{"Ident":["Copied",0]}]},{"key":{"Fun":181},"value":[{"Ident":["max_by_key",0]}]},{"key":{"TraitDecl":11},"value":[{"Ident":["ConditionallySelectable",0]}]},{"key":{"Type":43},"value":[{"Ident":["Inspect",0]}]},{"key":{"TraitDecl":40},"value":[{"Ident":["Residual",0]}]},{"key":{"Fun":84},"value":[{"Ident":["is_zero",0]}]},{"key":{"TraitDecl":22},"value":[{"Ident":["Product",0]}]},{"key":{"Fun":11},"value":[{"Ident":["ct_ne",0]}]},{"key":{"Fun":172},"value":[{"Ident":["all",0]}]},{"key":{"Fun":140},"value":[{"Ident":["zip",0]}]},{"key":{"Type":21},"value":[{"Ident":["IntoIter",0]}]},{"key":{"Fun":189},"value":[{"Ident":["cycle",0]}]},{"key":{"Fun":141},"value":[{"Ident":["intersperse",0]}]},{"key":{"Fun":187},"value":[{"Ident":["copied",0]}]},{"key":{"Fun":91},"value":[{"Ident":["sqrt_alt",0]}]},{"key":{"Fun":234},"value":[{"Ident":["unwrap",0]}]},{"key":{"Fun":257},"value":[{"Ident":["call_once",0]}]},{"key":{"Fun":153},"value":[{"Ident":["take",0]}]},{"key":{"Type":29},"value":[{"Ident":["Filter",0]}]},{"key":{"Type":7},"value":[{"Ident":["CtOption",0]}]},{"key":{"TraitDecl":14},"value":[{"Ident":["Add",0]}]},{"key":{"Fun":265},"value":[{"Ident":["next_back",0]}]},{"key":{"Fun":19},"value":[{"Ident":["clamp",0]}]},{"key":{"TraitDecl":39},"value":[{"Ident":["Try",0]}]},{"key":{"Fun":154},"value":[{"Ident":["scan",0]}]},{"key":{"Type":44},"value":[{"Ident":["Rev",0]}]},{"key":{"Fun":256},"value":[{"Ident":["call_mut",0]}]},{"key":{"Fun":176},"value":[{"Ident":["try_find",0]}]},{"key":{"Fun":212},"value":[{"Ident":["adc",0]}]},{"key":{"Fun":263},"value":[{"Ident":["extend_reserve",0]}]},{"key":{"Fun":205},"value":[{"Ident":["is_sorted_by",0]}]},{"key":{"Type":55},"value":[{"Ident":["TryFromSliceError",0]}]},{"key":{"Fun":155},"value":[{"Ident":["flat_map",0]}]},{"key":{"Fun":238},"value":[{"Ident":["to_le_bytes",0]}]},{"key":{"Fun":159},"value":[{"Ident":["inspect",0]}]},{"key":{"Fun":170},"value":[{"Ident":["reduce",0]}]},{"key":{"Fun":273},"value":[{"Ident":["size",0]}]},{"key":{"Fun":149},"value":[{"Ident":["skip_while",0]}]},{"key":{"Fun":104},"value":[{"Ident":["from_repr_vartime",0]}]},{"key":{"TraitDecl":32},"value":[{"Ident":["WithSmallOrderMulGroup",0]}]},{"key":{"Type":33},"value":[{"Ident":["SkipWhile",0]}]},{"key":{"Type":30},"value":[{"Ident":["FilterMap",0]}]},{"key":{"TraitDecl":10},"value":[{"Ident":["PartialOrd",0]}]},{"key":{"Fun":29},"value":[{"Ident":["__chaining_ge",0]}]},{"key":{"Fun":139},"value":[{"Ident":["chain",0]}]},{"key":{"Fun":177},"value":[{"Ident":["position",0]}]},{"key":{"Fun":266},"value":[{"Ident":["advance_back_by",0]}]},{"key":{"TraitDecl":52},"value":[{"Ident":["Not",0]}]},{"key":{"Fun":267},"value":[{"Ident":["nth_back",0]}]},{"key":{"Fun":147},"value":[{"Ident":["enumerate",0]}]},{"key":{"Fun":221},"value":[{"Ident":["fill_bytes",0]}]},{"key":{"Type":48},"value":[{"Ident":["ArrayChunks",0]}]},{"key":{"TraitDecl":47},"value":[{"Ident":["TryFrom",0]}]},{"key":{"Fun":101},"value":[{"Ident":["from_str_vartime",0]}]},{"key":{"Fun":269},"value":[{"Ident":["rfold",0]}]},{"key":{"TraitDecl":31},"value":[{"Ident":["SqrtTableHelpers",0]}]},{"key":{"Fun":207},"value":[{"Ident":["__iterator_get_unchecked",0]}]},{"key":{"Fun":173},"value":[{"Ident":["any",0]}]},{"key":{"Fun":184},"value":[{"Ident":["min_by",0]}]},{"key":{"Fun":220},"value":[{"Ident":["next_u64",0]}]},{"key":{"TraitDecl":12},"value":[{"Ident":["Neg",0]}]},{"key":{"TraitDecl":16},"value":[{"Ident":["SubAssign",0]}]},{"key":{"Fun":168},"value":[{"Ident":["try_for_each",0]}]},{"key":{"Fun":210},"value":[{"Ident":["wrapping_mul",0]}]},{"key":{"Type":38},"value":[{"Ident":["Scan",0]}]},{"key":{"Fun":146},"value":[{"Ident":["filter_map",0]}]},{"key":{"Global":2},"value":[{"Ident":["R",0]}]},{"key":{"Fun":58},"value":[{"Ident":["R",0]}]},{"key":{"Type":42},"value":[{"Ident":["Fuse",0]}]},{"key":{"Fun":182},"value":[{"Ident":["max_by",0]}]},{"key":{"Type":41},"value":[{"Ident":["MapWindows",0]}]},{"key":{"Fun":134},"value":[{"Ident":["count",0]}]},{"key":{"Fun":211},"value":[{"Ident":["mac",0]}]},{"key":{"Fun":304},"value":[{"Ident":["from_residual",0]}]},{"key":{"Fun":3},"value":[{"Ident":["assert_receiver_is_total_eq",0]}]},{"key":{"Fun":78},"value":[{"Ident":["mul_unreduced",0]}]},{"key":{"TraitDecl":37},"value":[{"Ident":["FnOnce",0]}]},{"key":{"Type":5},"value":[{"Ident":["Option",0]}]},{"key":{"TraitDecl":7},"value":[{"Ident":["From",0]}]},{"key":{"TraitDecl":5},"value":[{"Ident":["PartialEq",0]}]},{"key":{"TraitDecl":23},"value":[{"Ident":["Default",0]}]},{"key":{"Type":24},"value":[{"Ident":["Chain",0]}]},{"key":{"Fun":87},"value":[{"Ident":["cube",0]}]},{"key":{"TraitDecl":25},"value":[{"Ident":["Send",0]}]},{"key":{"Fun":183},"value":[{"Ident":["min_by_key",0]}]},{"key":{"Fun":143},"value":[{"Ident":["map",0]}]},{"key":{"TraitDecl":13},"value":[{"Ident":["Sub",0]}]},{"key":{"Fun":115},"value":[{"Ident":["drop_glue",0]}]},{"key":{"TraitDecl":6},"value":[{"Ident":["Debug",0]}]},{"key":{"Type":28},"value":[{"Ident":["Map",0]}]},{"key":{"Fun":174},"value":[{"Ident":["find",0]}]},{"key":{"TraitDecl":21},"value":[{"Ident":["Iterator",0]}]},{"key":{"Fun":255},"value":[{"Ident":["into_iter",0]}]},{"key":{"TraitDecl":28},"value":[{"Ident":["AsRef",0]}]},{"key":{"Fun":131},"value":[{"Ident":["next",0]}]},{"key":{"Fun":145},"value":[{"Ident":["filter",0]}]},{"key":{"TraitDecl":49},"value":[{"Ident":["BitAnd",0]}]},{"key":{"Fun":259},"value":[{"Ident":["from_output",0]}]},{"key":{"Fun":142},"value":[{"Ident":["intersperse_with",0]}]},{"key":{"TraitDecl":48},"value":[{"Ident":["IndexMut",0]}]},{"key":{"Fun":73},"value":[{"Ident":["montgomery_reduce",0]}]},{"key":{"Fun":157},"value":[{"Ident":["map_windows",0]}]},{"key":{"TraitDecl":44},"value":[{"Ident":["TrustedRandomAccessNoCoerce",0]}]},{"key":{"Type":10},"value":[{"Ident":["Result",0]}]},{"key":{"Fun":150},"value":[{"Ident":["take_while",0]}]},{"key":{"Fun":71},"value":[{"Ident":["from_raw",0]}]},{"key":{"TraitDecl":43},"value":[{"Ident":["ExactSizeIterator",0]}]},{"key":{"Fun":138},"value":[{"Ident":["step_by",0]}]},{"key":{"Fun":190},"value":[{"Ident":["array_chunks",0]}]},{"key":{"Type":22},"value":[{"Ident":["NonZero",0]}]},{"key":{"Fun":178},"value":[{"Ident":["rposition",0]}]},{"key":{"Fun":107},"value":[{"Ident":["is_even",0]}]},{"key":{"TraitDecl":45},"value":[{"Ident":["Index",0]}]},{"key":{"TraitDecl":17},"value":[{"Ident":["AddAssign",0]}]},{"key":{"TraitDecl":24},"value":[{"Ident":["Field",0]}]},{"key":{"TraitDecl":1},"value":[{"Ident":["Clone",0]}]},{"key":{"Fun":196},"value":[{"Ident":["partial_cmp_by",0]}]},{"key":{"Fun":171},"value":[{"Ident":["try_reduce",0]}]},{"key":{"Type":57},"value":[{"Ident":["NonZeroUsizeInner",0]}]},{"key":{"Type":26},"value":[{"Ident":["Intersperse",0]}]},{"key":{"Fun":67},"value":[{"Ident":["zero",0]}]},{"key":{"Fun":93},"value":[{"Ident":["pow",0]}]},{"key":{"Fun":156},"value":[{"Ident":["flatten",0]}]},{"key":{"Fun":164},"value":[{"Ident":["partition",0]}]},{"key":{"Type":27},"value":[{"Ident":["IntersperseWith",0]}]},{"key":{"Fun":152},"value":[{"Ident":["skip",0]}]},{"key":{"Global":4},"value":[{"Ident":["R3",0]}]},{"key":{"Fun":60},"value":[{"Ident":["R3",0]}]},{"key":{"Fun":132},"value":[{"Ident":["next_chunk",0]}]},{"key":{"Fun":261},"value":[{"Ident":["extend",0]}]},{"key":{"Fun":270},"value":[{"Ident":["rfind",0]}]},{"key":{"TraitDecl":29},"value":[{"Ident":["PrimeField",0]}]},{"key":{"Fun":28},"value":[{"Ident":["__chaining_gt",0]}]},{"key":{"TraitDecl":9},"value":[{"Ident":["Ord",0]}]},{"key":{"TraitDecl":51},"value":[{"Ident":["FromResidual",0]}]},{"key":{"Fun":260},"value":[{"Ident":["branch",0]}]},{"key":{"Fun":161},"value":[{"Ident":["collect",0]}]},{"key":{"Fun":206},"value":[{"Ident":["is_sorted_by_key",0]}]},{"key":{"Fun":166},"value":[{"Ident":["is_partitioned",0]}]},{"key":{"Global":9},"value":[{"Ident":["T_MINUS1_OVER2",0]}]},{"key":{"Fun":65},"value":[{"Ident":["T_MINUS1_OVER2",0]}]},{"key":{"Global":3},"value":[{"Ident":["R2",0]}]},{"key":{"Fun":59},"value":[{"Ident":["R2",0]}]},{"key":{"Fun":185},"value":[{"Ident":["rev",0]}]},{"key":{"Fun":165},"value":[{"Ident":["partition_in_place",0]}]},{"key":{"Fun":194},"value":[{"Ident":["cmp_by",0]}]},{"key":{"Fun":235},"value":[{"Ident":["from_le_bytes",0]}]},{"key":{"Fun":264},"value":[{"Ident":["extend_one_unchecked",0]}]},{"key":{"Fun":163},"value":[{"Ident":["collect_into",0]}]},{"key":{"Type":34},"value":[{"Ident":["TakeWhile",0]}]},{"key":{"TraitDecl":38},"value":[{"Ident":["FromIterator",0]}]},{"key":{"Fun":239},"value":[{"Ident":["copy_from_slice",0]}]},{"key":{"TraitDecl":4},"value":[{"Ident":["Eq",0]}]},{"key":{"Fun":26},"value":[{"Ident":["__chaining_lt",0]}]},{"key":{"TraitDecl":35},"value":[{"Ident":["IntoIterator",0]}]},{"key":{"TraitDecl":26},"value":[{"Ident":["Sync",0]}]},{"key":{"Type":1},"value":[{"Ident":["Choice",0]}]}],"type_decls":[{"def_id":0,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["Fp",0]}],"span":{"data":{"file_id":2,"beg":{"line":31,"col":0},"end":{"line":31,"col":35}},"generated_from_span":null},"source_text":"pub struct Fp(pub(crate) [u64; 4]);","attr_info":{"attributes":[{"DocComment":" This represents an element of $\\mathbb{F}_p$ where"},{"DocComment":""},{"DocComment":" `p = 0x40000000000000000000000000000000224698fc094cf91b992d30ed00000001`"},{"DocComment":""},{"DocComment":" is the base field of the Pallas curve."}],"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":2,"beg":{"line":31,"col":14},"end":{"line":31,"col":33}},"generated_from_span":null},"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"name":null,"ty":{"HashConsedValue":[1074,{"Array":[{"Deduplicated":1072},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"HashConsedValue":[1073,{"Literal":{"UInt":"Usize"}}]}}]}]}}]},"layout":[{"key":"x86_64-unknown-linux-gnu","value":{"size":32,"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"},{"def_id":1,"item_meta":{"name":[{"Ident":["subtle",0]},{"Ident":["Choice",0]}],"span":{"data":{"file_id":10,"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":3,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["Ordering",0]}],"span":{"data":{"file_id":7,"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":7,"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":7,"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":7,"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"},null,{"def_id":5,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["option",0]},{"Ident":["Option",0]}],"span":{"data":{"file_id":11,"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":11,"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":11,"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":11,"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":{"HashConsedValue":[8294,{"TypeVar":{"Free":0}}]}}],"discriminant":{"Scalar":{"Signed":["Isize","1"]}}}]},"layout":[],"ptr_metadata":"None"},{"def_id":6,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["control_flow",0]},{"Ident":["ControlFlow",0]}],"span":{"data":{"file_id":12,"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":12,"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":12,"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":{"HashConsedValue":[8295,{"TypeVar":{"Free":1}}]}}],"discriminant":{"Scalar":{"Signed":["Isize","0"]}}},{"id":1,"span":{"data":{"file_id":12,"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":12,"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":8294}}],"discriminant":{"Scalar":{"Signed":["Isize","1"]}}}]},"layout":[],"ptr_metadata":"None"},{"def_id":7,"item_meta":{"name":[{"Ident":["subtle",0]},{"Ident":["CtOption",0]}],"span":{"data":{"file_id":10,"beg":{"line":647,"col":0},"end":{"line":647,"col":22}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" The `CtOption<T>` type represents an optional value similar to the"},{"DocComment":" [`Option<T>`](core::option::Option) type but is intended for"},{"DocComment":" use in constant time APIs."},{"DocComment":""},{"DocComment":" Any given `CtOption<T>` is either `Some` or `None`, but unlike"},{"DocComment":" `Option<T>` these variants are not exposed. The"},{"DocComment":" [`is_some()`](CtOption::is_some) method is used to determine if"},{"DocComment":" the value is `Some`, and [`unwrap_or()`](CtOption::unwrap_or) and"},{"DocComment":" [`unwrap_or_else()`](CtOption::unwrap_or_else) methods are"},{"DocComment":" provided to access the underlying value. The value can also be"},{"DocComment":" obtained with [`unwrap()`](CtOption::unwrap) but this will panic"},{"DocComment":" if it is `None`."},{"DocComment":""},{"DocComment":" Functions that are intended to be constant time may not produce"},{"DocComment":" valid results for all inputs, such as square root and inversion"},{"DocComment":" operations in finite field arithmetic. Returning an `Option<T>`"},{"DocComment":" from these functions makes it difficult for the caller to reason"},{"DocComment":" about the result in constant time, and returning an incorrect"},{"DocComment":" value burdens the caller and increases the chance of bugs."}],"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"},null,{"def_id":9,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["fmt",0]},{"Ident":["Formatter",0]}],"span":{"data":{"file_id":8,"beg":{"line":561,"col":0},"end":{"line":561,"col":24}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Configuration for formatting."},{"DocComment":""},{"DocComment":" A `Formatter` represents various options related to formatting. Users do not"},{"DocComment":" construct `Formatter`s directly; a mutable reference to one is passed to"},{"DocComment":" the `fmt` method of all formatting traits, like [`Debug`] and [`Display`]."},{"DocComment":""},{"DocComment":" To interact with a `Formatter`, you'll call various methods to change the"},{"DocComment":" various options related to formatting. For examples, please see the"},{"DocComment":" documentation of the methods defined on `Formatter` below."}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"Formatter"},"generics":{"regions":[{"index":0,"name":"'a","mutability":"Mutable"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[{"regions":[],"skip_binder":[{"Var":{"Free":0}},{"Var":{"Free":0}}]}],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":"Opaque","layout":[{"key":"x86_64-unknown-linux-gnu","value":{"size":24,"align":8,"discriminator":{"Known":0},"uninhabited":false,"variant_layouts":[{"field_offsets":[16,0],"uninhabited":false,"tagger":[]}],"repr":{"repr_algo":"Rust","align_modif":null,"transparent":false,"explicit_discr_type":false}}}],"ptr_metadata":"None"},{"def_id":10,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["result",0]},{"Ident":["Result",0]}],"span":{"data":{"file_id":26,"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":26,"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":26,"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":8294}}],"discriminant":{"Scalar":{"Signed":["Isize","0"]}}},{"id":1,"span":{"data":{"file_id":26,"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":26,"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":{"Deduplicated":8295}}],"discriminant":{"Scalar":{"Signed":["Isize","1"]}}}]},"layout":[],"ptr_metadata":"None"},{"def_id":11,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["fmt",0]},{"Ident":["Error",0]}],"span":{"data":{"file_id":8,"beg":{"line":109,"col":0},"end":{"line":109,"col":16}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" The error type which is returned from formatting a message into a stream."},{"DocComment":""},{"DocComment":" This type does not support transmission of an error other than that an error"},{"DocComment":" occurred. This is because, despite the existence of this error,"},{"DocComment":" string formatting is considered an infallible operation."},{"DocComment":" `fmt()` implementors should not return this `Error` unless they received it from their"},{"DocComment":" [`Formatter`]. The only time your code should create a new instance of this"},{"DocComment":" error is when implementing `fmt::Write`, in order to cancel the formatting operation when"},{"DocComment":" writing to the underlying stream fails."},{"DocComment":""},{"DocComment":" Any extra information must be arranged to be transmitted through some other means,"},{"DocComment":" such as storing it in a field to be consulted after the formatting operation has been"},{"DocComment":" cancelled. (For example, this is how [`std::io::Write::write_fmt()`] propagates IO errors"},{"DocComment":" during writing.)"},{"DocComment":""},{"DocComment":" This type, `fmt::Error`, should not be"},{"DocComment":" confused with [`std::io::Error`] or [`std::error::Error`], which you may also"},{"DocComment":" have in scope."},{"DocComment":""},{"DocComment":" [`std::io::Error`]: ../../std/io/struct.Error.html"},{"DocComment":" [`std::io::Write::write_fmt()`]: ../../std/io/trait.Write.html#method.write_fmt"},{"DocComment":" [`std::error::Error`]: ../../std/error/trait.Error.html"},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```rust"},{"DocComment":" use std::fmt::{self, write};"},{"DocComment":""},{"DocComment":" let mut output = String::new();"},{"DocComment":" if let Err(fmt::Error) = write(&mut output, format_args!(\"Hello {}!\", \"world\")) {"},{"DocComment":" panic!(\"An error occurred\");"},{"DocComment":" }"},{"DocComment":" ```"}],"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":{"Struct":[]},"layout":[{"key":"x86_64-unknown-linux-gnu","value":{"size":0,"align":1,"discriminator":{"Known":0},"uninhabited":false,"variant_layouts":[{"field_offsets":[],"uninhabited":false,"tagger":[]}],"repr":{"repr_algo":"Rust","align_modif":null,"transparent":false,"explicit_discr_type":false}}}],"ptr_metadata":"None"},null,null,null,null,null,null,null,null,null,{"def_id":21,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["array",0]},{"Ident":["iter",0]},{"Ident":["IntoIter",0]}],"span":{"data":{"file_id":27,"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":1073}}],"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":["num",0]},{"Ident":["nonzero",0]},{"Ident":["NonZero",0]}],"span":{"data":{"file_id":28,"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":23,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["step_by",0]},{"Ident":["StepBy",0]}],"span":{"data":{"file_id":30,"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":24,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["chain",0]},{"Ident":["Chain",0]}],"span":{"data":{"file_id":33,"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":25,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["zip",0]},{"Ident":["Zip",0]}],"span":{"data":{"file_id":34,"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":26,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["intersperse",0]},{"Ident":["Intersperse",0]}],"span":{"data":{"file_id":35,"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":27,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["intersperse",0]},{"Ident":["IntersperseWith",0]}],"span":{"data":{"file_id":35,"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":28,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["map",0]},{"Ident":["Map",0]}],"span":{"data":{"file_id":37,"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":29,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["filter",0]},{"Ident":["Filter",0]}],"span":{"data":{"file_id":38,"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":30,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["filter_map",0]},{"Ident":["FilterMap",0]}],"span":{"data":{"file_id":39,"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":31,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["enumerate",0]},{"Ident":["Enumerate",0]}],"span":{"data":{"file_id":40,"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":32,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["peekable",0]},{"Ident":["Peekable",0]}],"span":{"data":{"file_id":41,"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":33,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["skip_while",0]},{"Ident":["SkipWhile",0]}],"span":{"data":{"file_id":42,"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":34,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["take_while",0]},{"Ident":["TakeWhile",0]}],"span":{"data":{"file_id":43,"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":35,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["map_while",0]},{"Ident":["MapWhile",0]}],"span":{"data":{"file_id":44,"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":36,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["skip",0]},{"Ident":["Skip",0]}],"span":{"data":{"file_id":45,"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":37,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["take",0]},{"Ident":["Take",0]}],"span":{"data":{"file_id":46,"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":38,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["scan",0]},{"Ident":["Scan",0]}],"span":{"data":{"file_id":47,"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":39,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["flatten",0]},{"Ident":["FlatMap",0]}],"span":{"data":{"file_id":48,"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":40,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["flatten",0]},{"Ident":["Flatten",0]}],"span":{"data":{"file_id":48,"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":41,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["map_windows",0]},{"Ident":["MapWindows",0]}],"span":{"data":{"file_id":49,"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":1073}}],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":"Opaque","layout":[],"ptr_metadata":"None"},{"def_id":42,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["fuse",0]},{"Ident":["Fuse",0]}],"span":{"data":{"file_id":50,"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":43,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["inspect",0]},{"Ident":["Inspect",0]}],"span":{"data":{"file_id":51,"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":44,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["rev",0]},{"Ident":["Rev",0]}],"span":{"data":{"file_id":55,"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":45,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["copied",0]},{"Ident":["Copied",0]}],"span":{"data":{"file_id":56,"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":46,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["cloned",0]},{"Ident":["Cloned",0]}],"span":{"data":{"file_id":57,"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":47,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["cycle",0]},{"Ident":["Cycle",0]}],"span":{"data":{"file_id":58,"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":48,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["array_chunks",0]},{"Ident":["ArrayChunks",0]}],"span":{"data":{"file_id":59,"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":1073}}],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":"Opaque","layout":[],"ptr_metadata":"None"},null,null,null,{"def_id":52,"item_meta":{"name":[{"Ident":["rand_core",0]},{"Ident":["error",0]},{"Ident":["Error",0]}],"span":{"data":{"file_id":61,"beg":{"line":21,"col":0},"end":{"line":21,"col":16}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Error type of random number generators"},{"DocComment":""},{"DocComment":" In order to be compatible with `std` and `no_std`, this type has two"},{"DocComment":" possible implementations: with `std` a boxed `Error` trait object is stored,"},{"DocComment":" while with `no_std` we merely store an error code."}],"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":4,"align":4,"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,null,{"def_id":55,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["array",0]},{"Ident":["TryFromSliceError",0]}],"span":{"data":{"file_id":23,"beg":{"line":183,"col":0},"end":{"line":183,"col":28}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" The error type returned when a conversion from a slice to an array fails."}],"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":0,"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"},{"def_id":56,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["range",0]},{"Ident":["Range",0]}],"span":{"data":{"file_id":63,"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":63,"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":{"Deduplicated":8294}},{"span":{"data":{"file_id":63,"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":8294}}]},"layout":[],"ptr_metadata":"None"},{"def_id":57,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["niche_types",0]},{"Ident":["NonZeroUsizeInner",0]}],"span":{"data":{"file_id":67,"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,null,null,null,null,null,null,null,null,null,null],"fun_decls":[{"def_id":0,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":1}},{"Ident":["clone",0]}],"span":{"data":{"file_id":2,"beg":{"line":29,"col":9},"end":{"line":29,"col":14}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":"Hint","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":[8297,{"Ref":[{"Var":{"Free":0}},{"Deduplicated":1079},"Shared"]}]}],"output":{"Deduplicated":1079}},"src":{"TraitImpl":{"impl_ref":{"id":1,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":29,"col":9},"end":{"line":29,"col":14}},"generated_from_span":null},"bound_body_regions":2,"locals":{"arg_count":1,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":29,"col":9},"end":{"line":29,"col":14}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":"self","span":{"data":{"file_id":2,"beg":{"line":29,"col":9},"end":{"line":29,"col":14}},"generated_from_span":null},"ty":{"HashConsedValue":[2302,{"Ref":[{"Body":1},{"Deduplicated":1079},"Shared"]}]}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":29,"col":9},"end":{"line":29,"col":14}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":29,"col":9},"end":{"line":29,"col":14}},"generated_from_span":null},"id":0,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":29,"col":14},"end":{"line":29,"col":14}},"generated_from_span":null},"id":1,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":1,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["clone",0]},{"Ident":["Clone",0]},{"Ident":["clone",0]}],"span":{"data":{"file_id":4,"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":1,"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":8294}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"HashConsedValue":[8333,{"Ref":[{"Var":{"Free":0}},{"Deduplicated":8294},"Shared"]}]}],"output":{"Deduplicated":8294}},"src":{"TraitDecl":{"trait_ref":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},null,null,{"def_id":4,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["Eq",0]},{"Ident":["assert_fields_are_eq",0]}],"span":{"data":{"file_id":7,"beg":{"line":356,"col":4},"end":{"line":356,"col":34}},"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":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[{"index":0,"name":"Self"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":4,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8333}],"output":{"HashConsedValue":[1108,{"Adt":{"id":"Tuple","generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}}]}},"src":{"TraitDecl":{"trait_ref":{"id":4,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":1},"has_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":5,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":3}},{"Ident":["assert_fields_are_eq",0]}],"span":{"data":{"file_id":2,"beg":{"line":29,"col":22},"end":{"line":29,"col":24}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":"Hint","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":8297}],"output":{"Deduplicated":1108}},"src":{"TraitImpl":{"impl_ref":{"id":3,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":4,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":1},"reuses_default":false}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":29,"col":22},"end":{"line":29,"col":24}},"generated_from_span":null},"bound_body_regions":2,"locals":{"arg_count":1,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":29,"col":22},"end":{"line":29,"col":24}},"generated_from_span":null},"ty":{"Deduplicated":1108}},{"index":1,"name":"self","span":{"data":{"file_id":2,"beg":{"line":29,"col":22},"end":{"line":29,"col":24}},"generated_from_span":null},"ty":{"Deduplicated":2302}}]},"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":2,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1108}},{"Aggregate":[{"Adt":[{"id":"Tuple","generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":29,"col":22},"end":{"line":29,"col":24}},"generated_from_span":null},"id":3,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1108}},{"Aggregate":[{"Adt":[{"id":"Tuple","generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":29,"col":24},"end":{"line":29,"col":24}},"generated_from_span":null},"id":4,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":6,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":4}},{"Ident":["fmt",0]}],"span":{"data":{"file_id":2,"beg":{"line":34,"col":4},"end":{"line":41,"col":5}},"generated_from_span":null},"source_text":"fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {\n let tmp = self.to_repr();\n write!(f, \"0x\")?;\n for &b in tmp.iter().rev() {\n write!(f, \"{:02x}\", b)?;\n }\n Ok(())\n }","attr_info":{"attributes":[],"inline":null,"rename":null,"public":true},"is_local":true,"opacity":"Opaque","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"},{"index":1,"name":null,"mutability":"Unknown"},{"index":2,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8297},{"HashConsedValue":[8434,{"Ref":[{"Var":{"Free":1}},{"HashConsedValue":[8433,{"Adt":{"id":{"Adt":9},"generics":{"regions":[{"Var":{"Free":2}}],"types":[],"const_generics":[],"trait_refs":[]}}}]},"Mut"]}]}],"output":{"HashConsedValue":[2348,{"Adt":{"id":{"Adt":10},"generics":{"regions":[],"types":[{"Deduplicated":1108},{"HashConsedValue":[2347,{"Adt":{"id":{"Adt":11},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}}]}],"const_generics":[],"trait_refs":[]}}}]}},"src":{"TraitImpl":{"impl_ref":{"id":4,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":6,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":7,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":5}},{"Ident":["from",0]}],"span":{"data":{"file_id":2,"beg":{"line":45,"col":4},"end":{"line":51,"col":5}},"generated_from_span":null},"source_text":"fn from(bit: bool) -> Fp {\n if bit {\n Fp::one()\n } else {\n Fp::zero()\n }\n }","attr_info":{"attributes":[],"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":[{"HashConsedValue":[1225,{"Literal":"Bool"}]}],"output":{"Deduplicated":1079}},"src":{"TraitImpl":{"impl_ref":{"id":5,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":7,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1225}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":45,"col":4},"end":{"line":51,"col":5}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":1,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":45,"col":26},"end":{"line":45,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":"bit","span":{"data":{"file_id":2,"beg":{"line":45,"col":12},"end":{"line":45,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1225}},{"index":2,"name":null,"span":{"data":{"file_id":2,"beg":{"line":46,"col":11},"end":{"line":46,"col":14}},"generated_from_span":null},"ty":{"Deduplicated":1225}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":46,"col":11},"end":{"line":51,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":46,"col":11},"end":{"line":46,"col":14}},"generated_from_span":null},"id":5,"kind":{"StorageLive":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":46,"col":11},"end":{"line":46,"col":14}},"generated_from_span":null},"id":6,"kind":{"Assign":[{"kind":{"Local":2},"ty":{"Deduplicated":1225}},{"Use":[{"Copy":{"kind":{"Local":1},"ty":{"Deduplicated":1225}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":46,"col":11},"end":{"line":49,"col":22}},"generated_from_span":null},"id":11,"kind":{"Switch":{"If":[{"Move":{"kind":{"Local":2},"ty":{"Deduplicated":1225}}},{"span":{"data":{"file_id":2,"beg":{"line":47,"col":12},"end":{"line":47,"col":21}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":47,"col":12},"end":{"line":47,"col":21}},"generated_from_span":null},"id":7,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":68}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]}]},{"span":{"data":{"file_id":2,"beg":{"line":49,"col":12},"end":{"line":49,"col":22}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":49,"col":12},"end":{"line":49,"col":22}},"generated_from_span":null},"id":9,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":67}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]}]}]}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":50,"col":8},"end":{"line":50,"col":9}},"generated_from_span":null},"id":12,"kind":{"StorageDead":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":51,"col":5},"end":{"line":51,"col":5}},"generated_from_span":null},"id":13,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":8,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":6}},{"Ident":["from",0]}],"span":{"data":{"file_id":2,"beg":{"line":55,"col":4},"end":{"line":57,"col":5}},"generated_from_span":null},"source_text":"fn from(val: u64) -> Fp {\n Fp([val, 0, 0, 0]) * R2\n }","attr_info":{"attributes":[],"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":[{"Deduplicated":1072}],"output":{"Deduplicated":1079}},"src":{"TraitImpl":{"impl_ref":{"id":6,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":7,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1072}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":55,"col":4},"end":{"line":57,"col":5}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":1,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":55,"col":25},"end":{"line":55,"col":27}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":"val","span":{"data":{"file_id":2,"beg":{"line":55,"col":12},"end":{"line":55,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":2,"name":null,"span":{"data":{"file_id":2,"beg":{"line":56,"col":8},"end":{"line":56,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":3,"name":null,"span":{"data":{"file_id":2,"beg":{"line":56,"col":11},"end":{"line":56,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":1074}},{"index":4,"name":null,"span":{"data":{"file_id":2,"beg":{"line":56,"col":12},"end":{"line":56,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":56,"col":8},"end":{"line":57,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":56,"col":8},"end":{"line":56,"col":26}},"generated_from_span":null},"id":14,"kind":{"StorageLive":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":56,"col":11},"end":{"line":56,"col":25}},"generated_from_span":null},"id":15,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":56,"col":12},"end":{"line":56,"col":15}},"generated_from_span":null},"id":16,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":56,"col":12},"end":{"line":56,"col":15}},"generated_from_span":null},"id":17,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":1},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":56,"col":11},"end":{"line":56,"col":25}},"generated_from_span":null},"id":18,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":1074}},{"Aggregate":[{"Array":[{"Deduplicated":1072},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}]},[{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":56,"col":24},"end":{"line":56,"col":25}},"generated_from_span":null},"id":19,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":56,"col":8},"end":{"line":56,"col":26}},"generated_from_span":null},"id":20,"kind":{"Assign":[{"kind":{"Local":2},"ty":{"Deduplicated":1079}},{"Aggregate":[{"Adt":[{"id":{"Adt":0},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":1074}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":56,"col":25},"end":{"line":56,"col":26}},"generated_from_span":null},"id":21,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":56,"col":8},"end":{"line":56,"col":31}},"generated_from_span":null},"id":22,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":52}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":2},"ty":{"Deduplicated":1079}}},{"Copy":{"kind":{"Global":{"id":3,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":56,"col":30},"end":{"line":56,"col":31}},"generated_from_span":null},"id":23,"kind":{"StorageDead":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":57,"col":5},"end":{"line":57,"col":5}},"generated_from_span":null},"id":24,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":9,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":7}},{"Ident":["ct_eq",0]}],"span":{"data":{"file_id":2,"beg":{"line":61,"col":4},"end":{"line":66,"col":5}},"generated_from_span":null},"source_text":"fn ct_eq(&self, other: &Self) -> Choice {\n self.0[0].ct_eq(&other.0[0])\n & self.0[1].ct_eq(&other.0[1])\n & self.0[2].ct_eq(&other.0[2])\n & self.0[3].ct_eq(&other.0[3])\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"},{"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":8297},{"HashConsedValue":[8298,{"Ref":[{"Var":{"Free":1}},{"Deduplicated":1079},"Shared"]}]}],"output":{"Deduplicated":1250}},"src":{"TraitImpl":{"impl_ref":{"id":7,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":8,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":61,"col":4},"end":{"line":66,"col":5}},"generated_from_span":null},"bound_body_regions":32,"locals":{"arg_count":2,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":61,"col":37},"end":{"line":61,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1250}},{"index":1,"name":"self","span":{"data":{"file_id":2,"beg":{"line":61,"col":13},"end":{"line":61,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":2302}},{"index":2,"name":"other","span":{"data":{"file_id":2,"beg":{"line":61,"col":20},"end":{"line":61,"col":25}},"generated_from_span":null},"ty":{"HashConsedValue":[2355,{"Ref":[{"Body":2},{"Deduplicated":1079},"Shared"]}]}},{"index":3,"name":null,"span":{"data":{"file_id":2,"beg":{"line":62,"col":8},"end":{"line":64,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1250}},{"index":4,"name":null,"span":{"data":{"file_id":2,"beg":{"line":62,"col":8},"end":{"line":63,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1250}},{"index":5,"name":null,"span":{"data":{"file_id":2,"beg":{"line":62,"col":8},"end":{"line":62,"col":36}},"generated_from_span":null},"ty":{"Deduplicated":1250}},{"index":6,"name":null,"span":{"data":{"file_id":2,"beg":{"line":62,"col":8},"end":{"line":62,"col":17}},"generated_from_span":null},"ty":{"HashConsedValue":[2358,{"Ref":[{"Body":4},{"Deduplicated":1072},"Shared"]}]}},{"index":7,"name":null,"span":{"data":{"file_id":2,"beg":{"line":62,"col":15},"end":{"line":62,"col":16}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":8,"name":null,"span":{"data":{"file_id":2,"beg":{"line":62,"col":24},"end":{"line":62,"col":35}},"generated_from_span":null},"ty":{"HashConsedValue":[2359,{"Ref":[{"Body":5},{"Deduplicated":1072},"Shared"]}]}},{"index":9,"name":null,"span":{"data":{"file_id":2,"beg":{"line":62,"col":24},"end":{"line":62,"col":35}},"generated_from_span":null},"ty":{"HashConsedValue":[2360,{"Ref":[{"Body":6},{"Deduplicated":1072},"Shared"]}]}},{"index":10,"name":null,"span":{"data":{"file_id":2,"beg":{"line":62,"col":33},"end":{"line":62,"col":34}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":11,"name":null,"span":{"data":{"file_id":2,"beg":{"line":63,"col":14},"end":{"line":63,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1250}},{"index":12,"name":null,"span":{"data":{"file_id":2,"beg":{"line":63,"col":14},"end":{"line":63,"col":23}},"generated_from_span":null},"ty":{"HashConsedValue":[2361,{"Ref":[{"Body":7},{"Deduplicated":1072},"Shared"]}]}},{"index":13,"name":null,"span":{"data":{"file_id":2,"beg":{"line":63,"col":21},"end":{"line":63,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":14,"name":null,"span":{"data":{"file_id":2,"beg":{"line":63,"col":30},"end":{"line":63,"col":41}},"generated_from_span":null},"ty":{"HashConsedValue":[2362,{"Ref":[{"Body":8},{"Deduplicated":1072},"Shared"]}]}},{"index":15,"name":null,"span":{"data":{"file_id":2,"beg":{"line":63,"col":30},"end":{"line":63,"col":41}},"generated_from_span":null},"ty":{"HashConsedValue":[2363,{"Ref":[{"Body":9},{"Deduplicated":1072},"Shared"]}]}},{"index":16,"name":null,"span":{"data":{"file_id":2,"beg":{"line":63,"col":39},"end":{"line":63,"col":40}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":17,"name":null,"span":{"data":{"file_id":2,"beg":{"line":64,"col":14},"end":{"line":64,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1250}},{"index":18,"name":null,"span":{"data":{"file_id":2,"beg":{"line":64,"col":14},"end":{"line":64,"col":23}},"generated_from_span":null},"ty":{"HashConsedValue":[2364,{"Ref":[{"Body":10},{"Deduplicated":1072},"Shared"]}]}},{"index":19,"name":null,"span":{"data":{"file_id":2,"beg":{"line":64,"col":21},"end":{"line":64,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":20,"name":null,"span":{"data":{"file_id":2,"beg":{"line":64,"col":30},"end":{"line":64,"col":41}},"generated_from_span":null},"ty":{"HashConsedValue":[2365,{"Ref":[{"Body":11},{"Deduplicated":1072},"Shared"]}]}},{"index":21,"name":null,"span":{"data":{"file_id":2,"beg":{"line":64,"col":30},"end":{"line":64,"col":41}},"generated_from_span":null},"ty":{"HashConsedValue":[2366,{"Ref":[{"Body":12},{"Deduplicated":1072},"Shared"]}]}},{"index":22,"name":null,"span":{"data":{"file_id":2,"beg":{"line":64,"col":39},"end":{"line":64,"col":40}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":23,"name":null,"span":{"data":{"file_id":2,"beg":{"line":65,"col":14},"end":{"line":65,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1250}},{"index":24,"name":null,"span":{"data":{"file_id":2,"beg":{"line":65,"col":14},"end":{"line":65,"col":23}},"generated_from_span":null},"ty":{"HashConsedValue":[2367,{"Ref":[{"Body":13},{"Deduplicated":1072},"Shared"]}]}},{"index":25,"name":null,"span":{"data":{"file_id":2,"beg":{"line":65,"col":21},"end":{"line":65,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":26,"name":null,"span":{"data":{"file_id":2,"beg":{"line":65,"col":30},"end":{"line":65,"col":41}},"generated_from_span":null},"ty":{"HashConsedValue":[2368,{"Ref":[{"Body":14},{"Deduplicated":1072},"Shared"]}]}},{"index":27,"name":null,"span":{"data":{"file_id":2,"beg":{"line":65,"col":30},"end":{"line":65,"col":41}},"generated_from_span":null},"ty":{"HashConsedValue":[2369,{"Ref":[{"Body":15},{"Deduplicated":1072},"Shared"]}]}},{"index":28,"name":null,"span":{"data":{"file_id":2,"beg":{"line":65,"col":39},"end":{"line":65,"col":40}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":29,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"HashConsedValue":[6167,{"Ref":["Erased",{"Deduplicated":1074},"Shared"]}]}},{"index":30,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"HashConsedValue":[7281,{"Ref":["Erased",{"Deduplicated":1072},"Shared"]}]}},{"index":31,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":32,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":33,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":34,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":35,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":36,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":37,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":38,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":39,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":40,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"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":6167}},{"index":42,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":43,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":44,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":62,"col":8},"end":{"line":66,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":62,"col":8},"end":{"line":64,"col":42}},"generated_from_span":null},"id":33,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":62,"col":8},"end":{"line":63,"col":42}},"generated_from_span":null},"id":34,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":62,"col":8},"end":{"line":62,"col":36}},"generated_from_span":null},"id":35,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":62,"col":8},"end":{"line":62,"col":17}},"generated_from_span":null},"id":36,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":62,"col":15},"end":{"line":62,"col":16}},"generated_from_span":null},"id":37,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":62,"col":15},"end":{"line":62,"col":16}},"generated_from_span":null},"id":38,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":62,"col":8},"end":{"line":62,"col":17}},"generated_from_span":null},"id":3981,"kind":{"StorageLive":29},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":62,"col":8},"end":{"line":62,"col":17}},"generated_from_span":null},"id":3982,"kind":{"Assign":[{"kind":{"Local":29},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":62,"col":8},"end":{"line":62,"col":17}},"generated_from_span":null},"id":3983,"kind":{"StorageLive":30},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":62,"col":8},"end":{"line":62,"col":17}},"generated_from_span":null},"id":3984,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":29},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":7},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":30},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":62,"col":8},"end":{"line":62,"col":17}},"generated_from_span":null},"id":41,"kind":{"Assign":[{"kind":{"Local":6},"ty":{"Deduplicated":2358}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":30},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":62,"col":24},"end":{"line":62,"col":35}},"generated_from_span":null},"id":42,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":62,"col":24},"end":{"line":62,"col":35}},"generated_from_span":null},"id":43,"kind":{"StorageLive":9},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":62,"col":33},"end":{"line":62,"col":34}},"generated_from_span":null},"id":44,"kind":{"StorageLive":10},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":62,"col":33},"end":{"line":62,"col":34}},"generated_from_span":null},"id":45,"kind":{"Assign":[{"kind":{"Local":10},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":62,"col":24},"end":{"line":62,"col":35}},"generated_from_span":null},"id":3985,"kind":{"StorageLive":31},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":62,"col":24},"end":{"line":62,"col":35}},"generated_from_span":null},"id":3986,"kind":{"Assign":[{"kind":{"Local":31},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":62,"col":24},"end":{"line":62,"col":35}},"generated_from_span":null},"id":3987,"kind":{"StorageLive":32},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":62,"col":24},"end":{"line":62,"col":35}},"generated_from_span":null},"id":3988,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":31},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":10},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":32},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":62,"col":24},"end":{"line":62,"col":35}},"generated_from_span":null},"id":48,"kind":{"Assign":[{"kind":{"Local":9},"ty":{"Deduplicated":2360}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":32},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":62,"col":24},"end":{"line":62,"col":35}},"generated_from_span":null},"id":49,"kind":{"Assign":[{"kind":{"Local":8},"ty":{"Deduplicated":2359}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":9},"ty":{"Deduplicated":2360}},"Deref"]},"ty":{"Deduplicated":1072}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":62,"col":8},"end":{"line":62,"col":36}},"generated_from_span":null},"id":50,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":118}},"generics":{"regions":[{"Body":18},{"Body":19}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":6},"ty":{"Deduplicated":2358}}},{"Move":{"kind":{"Local":8},"ty":{"Deduplicated":2359}}}],"dest":{"kind":{"Local":5},"ty":{"Deduplicated":1250}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":62,"col":35},"end":{"line":62,"col":36}},"generated_from_span":null},"id":51,"kind":{"StorageDead":8},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":62,"col":35},"end":{"line":62,"col":36}},"generated_from_span":null},"id":52,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":63,"col":14},"end":{"line":63,"col":42}},"generated_from_span":null},"id":53,"kind":{"StorageLive":11},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":63,"col":14},"end":{"line":63,"col":23}},"generated_from_span":null},"id":54,"kind":{"StorageLive":12},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":63,"col":21},"end":{"line":63,"col":22}},"generated_from_span":null},"id":55,"kind":{"StorageLive":13},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":63,"col":21},"end":{"line":63,"col":22}},"generated_from_span":null},"id":56,"kind":{"Assign":[{"kind":{"Local":13},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":63,"col":14},"end":{"line":63,"col":23}},"generated_from_span":null},"id":3989,"kind":{"StorageLive":33},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":63,"col":14},"end":{"line":63,"col":23}},"generated_from_span":null},"id":3990,"kind":{"Assign":[{"kind":{"Local":33},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":63,"col":14},"end":{"line":63,"col":23}},"generated_from_span":null},"id":3991,"kind":{"StorageLive":34},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":63,"col":14},"end":{"line":63,"col":23}},"generated_from_span":null},"id":3992,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":33},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":13},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":34},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":63,"col":14},"end":{"line":63,"col":23}},"generated_from_span":null},"id":59,"kind":{"Assign":[{"kind":{"Local":12},"ty":{"Deduplicated":2361}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":34},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":63,"col":30},"end":{"line":63,"col":41}},"generated_from_span":null},"id":60,"kind":{"StorageLive":14},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":63,"col":30},"end":{"line":63,"col":41}},"generated_from_span":null},"id":61,"kind":{"StorageLive":15},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":63,"col":39},"end":{"line":63,"col":40}},"generated_from_span":null},"id":62,"kind":{"StorageLive":16},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":63,"col":39},"end":{"line":63,"col":40}},"generated_from_span":null},"id":63,"kind":{"Assign":[{"kind":{"Local":16},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":63,"col":30},"end":{"line":63,"col":41}},"generated_from_span":null},"id":3993,"kind":{"StorageLive":35},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":63,"col":30},"end":{"line":63,"col":41}},"generated_from_span":null},"id":3994,"kind":{"Assign":[{"kind":{"Local":35},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":63,"col":30},"end":{"line":63,"col":41}},"generated_from_span":null},"id":3995,"kind":{"StorageLive":36},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":63,"col":30},"end":{"line":63,"col":41}},"generated_from_span":null},"id":3996,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":35},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":16},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":36},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":63,"col":30},"end":{"line":63,"col":41}},"generated_from_span":null},"id":66,"kind":{"Assign":[{"kind":{"Local":15},"ty":{"Deduplicated":2363}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":36},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":63,"col":30},"end":{"line":63,"col":41}},"generated_from_span":null},"id":67,"kind":{"Assign":[{"kind":{"Local":14},"ty":{"Deduplicated":2362}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":15},"ty":{"Deduplicated":2363}},"Deref"]},"ty":{"Deduplicated":1072}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":63,"col":14},"end":{"line":63,"col":42}},"generated_from_span":null},"id":68,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":118}},"generics":{"regions":[{"Body":22},{"Body":23}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":12},"ty":{"Deduplicated":2361}}},{"Move":{"kind":{"Local":14},"ty":{"Deduplicated":2362}}}],"dest":{"kind":{"Local":11},"ty":{"Deduplicated":1250}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":63,"col":41},"end":{"line":63,"col":42}},"generated_from_span":null},"id":69,"kind":{"StorageDead":14},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":63,"col":41},"end":{"line":63,"col":42}},"generated_from_span":null},"id":70,"kind":{"StorageDead":12},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":62,"col":8},"end":{"line":63,"col":42}},"generated_from_span":null},"id":71,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":119}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":5},"ty":{"Deduplicated":1250}}},{"Move":{"kind":{"Local":11},"ty":{"Deduplicated":1250}}}],"dest":{"kind":{"Local":4},"ty":{"Deduplicated":1250}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":63,"col":41},"end":{"line":63,"col":42}},"generated_from_span":null},"id":72,"kind":{"StorageDead":11},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":63,"col":41},"end":{"line":63,"col":42}},"generated_from_span":null},"id":73,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":64,"col":14},"end":{"line":64,"col":42}},"generated_from_span":null},"id":74,"kind":{"StorageLive":17},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":64,"col":14},"end":{"line":64,"col":23}},"generated_from_span":null},"id":75,"kind":{"StorageLive":18},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":64,"col":21},"end":{"line":64,"col":22}},"generated_from_span":null},"id":76,"kind":{"StorageLive":19},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":64,"col":21},"end":{"line":64,"col":22}},"generated_from_span":null},"id":77,"kind":{"Assign":[{"kind":{"Local":19},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":64,"col":14},"end":{"line":64,"col":23}},"generated_from_span":null},"id":3997,"kind":{"StorageLive":37},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":64,"col":14},"end":{"line":64,"col":23}},"generated_from_span":null},"id":3998,"kind":{"Assign":[{"kind":{"Local":37},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":64,"col":14},"end":{"line":64,"col":23}},"generated_from_span":null},"id":3999,"kind":{"StorageLive":38},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":64,"col":14},"end":{"line":64,"col":23}},"generated_from_span":null},"id":4000,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":37},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":19},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":38},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":64,"col":14},"end":{"line":64,"col":23}},"generated_from_span":null},"id":80,"kind":{"Assign":[{"kind":{"Local":18},"ty":{"Deduplicated":2364}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":38},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":64,"col":30},"end":{"line":64,"col":41}},"generated_from_span":null},"id":81,"kind":{"StorageLive":20},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":64,"col":30},"end":{"line":64,"col":41}},"generated_from_span":null},"id":82,"kind":{"StorageLive":21},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":64,"col":39},"end":{"line":64,"col":40}},"generated_from_span":null},"id":83,"kind":{"StorageLive":22},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":64,"col":39},"end":{"line":64,"col":40}},"generated_from_span":null},"id":84,"kind":{"Assign":[{"kind":{"Local":22},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":64,"col":30},"end":{"line":64,"col":41}},"generated_from_span":null},"id":4001,"kind":{"StorageLive":39},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":64,"col":30},"end":{"line":64,"col":41}},"generated_from_span":null},"id":4002,"kind":{"Assign":[{"kind":{"Local":39},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":64,"col":30},"end":{"line":64,"col":41}},"generated_from_span":null},"id":4003,"kind":{"StorageLive":40},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":64,"col":30},"end":{"line":64,"col":41}},"generated_from_span":null},"id":4004,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":39},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":22},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":40},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":64,"col":30},"end":{"line":64,"col":41}},"generated_from_span":null},"id":87,"kind":{"Assign":[{"kind":{"Local":21},"ty":{"Deduplicated":2366}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":40},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":64,"col":30},"end":{"line":64,"col":41}},"generated_from_span":null},"id":88,"kind":{"Assign":[{"kind":{"Local":20},"ty":{"Deduplicated":2365}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":21},"ty":{"Deduplicated":2366}},"Deref"]},"ty":{"Deduplicated":1072}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":64,"col":14},"end":{"line":64,"col":42}},"generated_from_span":null},"id":89,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":118}},"generics":{"regions":[{"Body":26},{"Body":27}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":18},"ty":{"Deduplicated":2364}}},{"Move":{"kind":{"Local":20},"ty":{"Deduplicated":2365}}}],"dest":{"kind":{"Local":17},"ty":{"Deduplicated":1250}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":64,"col":41},"end":{"line":64,"col":42}},"generated_from_span":null},"id":90,"kind":{"StorageDead":20},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":64,"col":41},"end":{"line":64,"col":42}},"generated_from_span":null},"id":91,"kind":{"StorageDead":18},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":62,"col":8},"end":{"line":64,"col":42}},"generated_from_span":null},"id":92,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":119}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":1250}}},{"Move":{"kind":{"Local":17},"ty":{"Deduplicated":1250}}}],"dest":{"kind":{"Local":3},"ty":{"Deduplicated":1250}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":64,"col":41},"end":{"line":64,"col":42}},"generated_from_span":null},"id":93,"kind":{"StorageDead":17},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":64,"col":41},"end":{"line":64,"col":42}},"generated_from_span":null},"id":94,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":65,"col":14},"end":{"line":65,"col":42}},"generated_from_span":null},"id":95,"kind":{"StorageLive":23},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":65,"col":14},"end":{"line":65,"col":23}},"generated_from_span":null},"id":96,"kind":{"StorageLive":24},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":65,"col":21},"end":{"line":65,"col":22}},"generated_from_span":null},"id":97,"kind":{"StorageLive":25},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":65,"col":21},"end":{"line":65,"col":22}},"generated_from_span":null},"id":98,"kind":{"Assign":[{"kind":{"Local":25},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":65,"col":14},"end":{"line":65,"col":23}},"generated_from_span":null},"id":4005,"kind":{"StorageLive":41},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":65,"col":14},"end":{"line":65,"col":23}},"generated_from_span":null},"id":4006,"kind":{"Assign":[{"kind":{"Local":41},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":65,"col":14},"end":{"line":65,"col":23}},"generated_from_span":null},"id":4007,"kind":{"StorageLive":42},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":65,"col":14},"end":{"line":65,"col":23}},"generated_from_span":null},"id":4008,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":41},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":25},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":42},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":65,"col":14},"end":{"line":65,"col":23}},"generated_from_span":null},"id":101,"kind":{"Assign":[{"kind":{"Local":24},"ty":{"Deduplicated":2367}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":42},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":65,"col":30},"end":{"line":65,"col":41}},"generated_from_span":null},"id":102,"kind":{"StorageLive":26},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":65,"col":30},"end":{"line":65,"col":41}},"generated_from_span":null},"id":103,"kind":{"StorageLive":27},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":65,"col":39},"end":{"line":65,"col":40}},"generated_from_span":null},"id":104,"kind":{"StorageLive":28},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":65,"col":39},"end":{"line":65,"col":40}},"generated_from_span":null},"id":105,"kind":{"Assign":[{"kind":{"Local":28},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":65,"col":30},"end":{"line":65,"col":41}},"generated_from_span":null},"id":4009,"kind":{"StorageLive":43},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":65,"col":30},"end":{"line":65,"col":41}},"generated_from_span":null},"id":4010,"kind":{"Assign":[{"kind":{"Local":43},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":65,"col":30},"end":{"line":65,"col":41}},"generated_from_span":null},"id":4011,"kind":{"StorageLive":44},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":65,"col":30},"end":{"line":65,"col":41}},"generated_from_span":null},"id":4012,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":43},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":28},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":44},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":65,"col":30},"end":{"line":65,"col":41}},"generated_from_span":null},"id":108,"kind":{"Assign":[{"kind":{"Local":27},"ty":{"Deduplicated":2369}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":44},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":65,"col":30},"end":{"line":65,"col":41}},"generated_from_span":null},"id":109,"kind":{"Assign":[{"kind":{"Local":26},"ty":{"Deduplicated":2368}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":27},"ty":{"Deduplicated":2369}},"Deref"]},"ty":{"Deduplicated":1072}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":65,"col":14},"end":{"line":65,"col":42}},"generated_from_span":null},"id":110,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":118}},"generics":{"regions":[{"Body":30},{"Body":31}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":24},"ty":{"Deduplicated":2367}}},{"Move":{"kind":{"Local":26},"ty":{"Deduplicated":2368}}}],"dest":{"kind":{"Local":23},"ty":{"Deduplicated":1250}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":65,"col":41},"end":{"line":65,"col":42}},"generated_from_span":null},"id":111,"kind":{"StorageDead":26},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":65,"col":41},"end":{"line":65,"col":42}},"generated_from_span":null},"id":112,"kind":{"StorageDead":24},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":62,"col":8},"end":{"line":65,"col":42}},"generated_from_span":null},"id":113,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":119}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":1250}}},{"Move":{"kind":{"Local":23},"ty":{"Deduplicated":1250}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1250}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":65,"col":41},"end":{"line":65,"col":42}},"generated_from_span":null},"id":114,"kind":{"StorageDead":23},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":65,"col":41},"end":{"line":65,"col":42}},"generated_from_span":null},"id":115,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":66,"col":4},"end":{"line":66,"col":5}},"generated_from_span":null},"id":116,"kind":{"StorageDead":28},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":66,"col":4},"end":{"line":66,"col":5}},"generated_from_span":null},"id":117,"kind":{"StorageDead":27},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":66,"col":4},"end":{"line":66,"col":5}},"generated_from_span":null},"id":118,"kind":{"StorageDead":25},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":66,"col":4},"end":{"line":66,"col":5}},"generated_from_span":null},"id":119,"kind":{"StorageDead":22},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":66,"col":4},"end":{"line":66,"col":5}},"generated_from_span":null},"id":120,"kind":{"StorageDead":21},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":66,"col":4},"end":{"line":66,"col":5}},"generated_from_span":null},"id":121,"kind":{"StorageDead":19},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":66,"col":4},"end":{"line":66,"col":5}},"generated_from_span":null},"id":122,"kind":{"StorageDead":16},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":66,"col":4},"end":{"line":66,"col":5}},"generated_from_span":null},"id":123,"kind":{"StorageDead":15},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":66,"col":4},"end":{"line":66,"col":5}},"generated_from_span":null},"id":124,"kind":{"StorageDead":13},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":66,"col":4},"end":{"line":66,"col":5}},"generated_from_span":null},"id":125,"kind":{"StorageDead":10},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":66,"col":4},"end":{"line":66,"col":5}},"generated_from_span":null},"id":126,"kind":{"StorageDead":9},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":66,"col":4},"end":{"line":66,"col":5}},"generated_from_span":null},"id":127,"kind":{"StorageDead":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":66,"col":5},"end":{"line":66,"col":5}},"generated_from_span":null},"id":128,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":10,"item_meta":{"name":[{"Ident":["subtle",0]},{"Ident":["ConstantTimeEq",0]},{"Ident":["ct_eq",0]}],"span":{"data":{"file_id":10,"beg":{"line":273,"col":4},"end":{"line":273,"col":44}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Determine if two items are equal."},{"DocComment":""},{"DocComment":" The `ct_eq` function should execute in constant time."},{"DocComment":""},{"DocComment":" # Returns"},{"DocComment":""},{"DocComment":" * `Choice(1u8)` if `self == other`;"},{"DocComment":" * `Choice(0u8)` if `self != other`."}],"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":1,"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":8294}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8333},{"HashConsedValue":[8435,{"Ref":[{"Var":{"Free":1}},{"Deduplicated":8294},"Shared"]}]}],"output":{"Deduplicated":1250}},"src":{"TraitDecl":{"trait_ref":{"id":8,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},null,{"def_id":12,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":8}},{"Ident":["eq",0]}],"span":{"data":{"file_id":2,"beg":{"line":71,"col":4},"end":{"line":73,"col":5}},"generated_from_span":null},"source_text":"fn eq(&self, other: &Self) -> bool {\n self.ct_eq(other).unwrap_u8() == 1\n }","attr_info":{"attributes":[],"inline":"Hint","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":8297},{"Deduplicated":8298}],"output":{"Deduplicated":1225}},"src":{"TraitImpl":{"impl_ref":{"id":8,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":5,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":71,"col":4},"end":{"line":73,"col":5}},"generated_from_span":null},"bound_body_regions":13,"locals":{"arg_count":2,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":71,"col":34},"end":{"line":71,"col":38}},"generated_from_span":null},"ty":{"Deduplicated":1225}},{"index":1,"name":"self","span":{"data":{"file_id":2,"beg":{"line":71,"col":10},"end":{"line":71,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":2302}},{"index":2,"name":"other","span":{"data":{"file_id":2,"beg":{"line":71,"col":17},"end":{"line":71,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":2355}},{"index":3,"name":null,"span":{"data":{"file_id":2,"beg":{"line":72,"col":8},"end":{"line":72,"col":37}},"generated_from_span":null},"ty":{"HashConsedValue":[1894,{"Literal":{"UInt":"U8"}}]}},{"index":4,"name":null,"span":{"data":{"file_id":2,"beg":{"line":72,"col":8},"end":{"line":72,"col":25}},"generated_from_span":null},"ty":{"HashConsedValue":[2400,{"Ref":[{"Body":4},{"Deduplicated":1250},"Shared"]}]}},{"index":5,"name":null,"span":{"data":{"file_id":2,"beg":{"line":72,"col":8},"end":{"line":72,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":1250}},{"index":6,"name":null,"span":{"data":{"file_id":2,"beg":{"line":72,"col":8},"end":{"line":72,"col":12}},"generated_from_span":null},"ty":{"HashConsedValue":[2401,{"Ref":[{"Body":5},{"Deduplicated":1079},"Shared"]}]}},{"index":7,"name":null,"span":{"data":{"file_id":2,"beg":{"line":72,"col":19},"end":{"line":72,"col":24}},"generated_from_span":null},"ty":{"HashConsedValue":[2402,{"Ref":[{"Body":6},{"Deduplicated":1079},"Shared"]}]}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":72,"col":8},"end":{"line":73,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":72,"col":8},"end":{"line":72,"col":37}},"generated_from_span":null},"id":129,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":72,"col":8},"end":{"line":72,"col":25}},"generated_from_span":null},"id":130,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":72,"col":8},"end":{"line":72,"col":25}},"generated_from_span":null},"id":131,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":72,"col":8},"end":{"line":72,"col":12}},"generated_from_span":null},"id":132,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":72,"col":8},"end":{"line":72,"col":12}},"generated_from_span":null},"id":133,"kind":{"Assign":[{"kind":{"Local":6},"ty":{"Deduplicated":2401}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":72,"col":19},"end":{"line":72,"col":24}},"generated_from_span":null},"id":134,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":72,"col":19},"end":{"line":72,"col":24}},"generated_from_span":null},"id":135,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":2402}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":72,"col":8},"end":{"line":72,"col":25}},"generated_from_span":null},"id":136,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":9}},"generics":{"regions":[{"Body":9},{"Body":10}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":6},"ty":{"Deduplicated":2401}}},{"Move":{"kind":{"Local":7},"ty":{"Deduplicated":2402}}}],"dest":{"kind":{"Local":5},"ty":{"Deduplicated":1250}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":72,"col":8},"end":{"line":72,"col":25}},"generated_from_span":null},"id":137,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":2400}},{"Ref":{"place":{"kind":{"Local":5},"ty":{"Deduplicated":1250}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":72,"col":24},"end":{"line":72,"col":25}},"generated_from_span":null},"id":138,"kind":{"StorageDead":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":72,"col":24},"end":{"line":72,"col":25}},"generated_from_span":null},"id":139,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":72,"col":8},"end":{"line":72,"col":37}},"generated_from_span":null},"id":140,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":120}},"generics":{"regions":[{"Body":12}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":2400}}}],"dest":{"kind":{"Local":3},"ty":{"Deduplicated":1894}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":72,"col":36},"end":{"line":72,"col":37}},"generated_from_span":null},"id":141,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":72,"col":8},"end":{"line":72,"col":42}},"generated_from_span":null},"id":142,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1225}},{"BinaryOp":["Eq",{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":1894}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U8","1"]}}},"ty":{"Deduplicated":1894}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":72,"col":41},"end":{"line":72,"col":42}},"generated_from_span":null},"id":143,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":73,"col":4},"end":{"line":73,"col":5}},"generated_from_span":null},"id":144,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":73,"col":5},"end":{"line":73,"col":5}},"generated_from_span":null},"id":145,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":13,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialEq",0]},{"Ident":["eq",0]}],"span":{"data":{"file_id":7,"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":1,"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":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8333},{"HashConsedValue":[8436,{"Ref":[{"Var":{"Free":1}},{"Deduplicated":8295},"Shared"]}]}],"output":{"Deduplicated":1225}},"src":{"TraitDecl":{"trait_ref":{"id":5,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},null,{"def_id":15,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":9}},{"Ident":["cmp",0]}],"span":{"data":{"file_id":2,"beg":{"line":77,"col":4},"end":{"line":88,"col":5}},"generated_from_span":null},"source_text":"fn cmp(&self, other: &Self) -> core::cmp::Ordering {\n let left = self.to_repr();\n let right = other.to_repr();\n left.iter()\n .zip(right.iter())\n .rev()\n .find_map(|(left_byte, right_byte)| match left_byte.cmp(right_byte) {\n core::cmp::Ordering::Equal => None,\n res => Some(res),\n })\n .unwrap_or(core::cmp::Ordering::Equal)\n }","attr_info":{"attributes":[],"inline":null,"rename":null,"public":true},"is_local":true,"opacity":"Opaque","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":8297},{"Deduplicated":8298}],"output":{"HashConsedValue":[1299,{"Adt":{"id":{"Adt":3},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}}]}},"src":{"TraitImpl":{"impl_ref":{"id":9,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":9,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":16,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["Ord",0]},{"Ident":["cmp",0]}],"span":{"data":{"file_id":7,"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":1,"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":8294}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8333},{"Deduplicated":8435}],"output":{"Deduplicated":1299}},"src":{"TraitDecl":{"trait_ref":{"id":9,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},null,null,null,{"def_id":20,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":10}},{"Ident":["partial_cmp",0]}],"span":{"data":{"file_id":2,"beg":{"line":92,"col":4},"end":{"line":94,"col":5}},"generated_from_span":null},"source_text":"fn partial_cmp(&self, other: &Self) -> Option<core::cmp::Ordering> {\n Some(self.cmp(other))\n }","attr_info":{"attributes":[],"inline":null,"rename":null,"public":true},"is_local":true,"opacity":"Opaque","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":8297},{"Deduplicated":8298}],"output":{"HashConsedValue":[1352,{"Adt":{"id":{"Adt":5},"generics":{"regions":[],"types":[{"Deduplicated":1299}],"const_generics":[],"trait_refs":[]}}}]}},"src":{"TraitImpl":{"impl_ref":{"id":10,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":10,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":21,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialOrd",0]},{"Ident":["partial_cmp",0]}],"span":{"data":{"file_id":7,"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":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":10,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8333},{"Deduplicated":8436}],"output":{"Deduplicated":1352}},"src":{"TraitDecl":{"trait_ref":{"id":10,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"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":30,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":11}},{"Ident":["conditional_select",0]}],"span":{"data":{"file_id":2,"beg":{"line":98,"col":4},"end":{"line":105,"col":5}},"generated_from_span":null},"source_text":"fn conditional_select(a: &Self, b: &Self, choice: Choice) -> Self {\n Fp([\n u64::conditional_select(&a.0[0], &b.0[0], choice),\n u64::conditional_select(&a.0[1], &b.0[1], choice),\n u64::conditional_select(&a.0[2], &b.0[2], choice),\n u64::conditional_select(&a.0[3], &b.0[3], choice),\n ])\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"},{"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":8297},{"Deduplicated":8298},{"Deduplicated":1250}],"output":{"Deduplicated":1079}},"src":{"TraitImpl":{"impl_ref":{"id":11,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":11,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":98,"col":4},"end":{"line":105,"col":5}},"generated_from_span":null},"bound_body_regions":36,"locals":{"arg_count":3,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":98,"col":65},"end":{"line":98,"col":69}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":"a","span":{"data":{"file_id":2,"beg":{"line":98,"col":26},"end":{"line":98,"col":27}},"generated_from_span":null},"ty":{"Deduplicated":2302}},{"index":2,"name":"b","span":{"data":{"file_id":2,"beg":{"line":98,"col":36},"end":{"line":98,"col":37}},"generated_from_span":null},"ty":{"Deduplicated":2355}},{"index":3,"name":"choice","span":{"data":{"file_id":2,"beg":{"line":98,"col":46},"end":{"line":98,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":1250}},{"index":4,"name":null,"span":{"data":{"file_id":2,"beg":{"line":99,"col":11},"end":{"line":104,"col":9}},"generated_from_span":null},"ty":{"Deduplicated":1074}},{"index":5,"name":null,"span":{"data":{"file_id":2,"beg":{"line":100,"col":12},"end":{"line":100,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":6,"name":null,"span":{"data":{"file_id":2,"beg":{"line":100,"col":36},"end":{"line":100,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":2358}},{"index":7,"name":null,"span":{"data":{"file_id":2,"beg":{"line":100,"col":36},"end":{"line":100,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":2359}},{"index":8,"name":null,"span":{"data":{"file_id":2,"beg":{"line":100,"col":41},"end":{"line":100,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":9,"name":null,"span":{"data":{"file_id":2,"beg":{"line":100,"col":45},"end":{"line":100,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":2360}},{"index":10,"name":null,"span":{"data":{"file_id":2,"beg":{"line":100,"col":45},"end":{"line":100,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":2361}},{"index":11,"name":null,"span":{"data":{"file_id":2,"beg":{"line":100,"col":50},"end":{"line":100,"col":51}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":12,"name":null,"span":{"data":{"file_id":2,"beg":{"line":100,"col":54},"end":{"line":100,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1250}},{"index":13,"name":null,"span":{"data":{"file_id":2,"beg":{"line":101,"col":12},"end":{"line":101,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":14,"name":null,"span":{"data":{"file_id":2,"beg":{"line":101,"col":36},"end":{"line":101,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":2362}},{"index":15,"name":null,"span":{"data":{"file_id":2,"beg":{"line":101,"col":36},"end":{"line":101,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":2363}},{"index":16,"name":null,"span":{"data":{"file_id":2,"beg":{"line":101,"col":41},"end":{"line":101,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":17,"name":null,"span":{"data":{"file_id":2,"beg":{"line":101,"col":45},"end":{"line":101,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":2364}},{"index":18,"name":null,"span":{"data":{"file_id":2,"beg":{"line":101,"col":45},"end":{"line":101,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":2365}},{"index":19,"name":null,"span":{"data":{"file_id":2,"beg":{"line":101,"col":50},"end":{"line":101,"col":51}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":20,"name":null,"span":{"data":{"file_id":2,"beg":{"line":101,"col":54},"end":{"line":101,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1250}},{"index":21,"name":null,"span":{"data":{"file_id":2,"beg":{"line":102,"col":12},"end":{"line":102,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":22,"name":null,"span":{"data":{"file_id":2,"beg":{"line":102,"col":36},"end":{"line":102,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":2366}},{"index":23,"name":null,"span":{"data":{"file_id":2,"beg":{"line":102,"col":36},"end":{"line":102,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":2367}},{"index":24,"name":null,"span":{"data":{"file_id":2,"beg":{"line":102,"col":41},"end":{"line":102,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":25,"name":null,"span":{"data":{"file_id":2,"beg":{"line":102,"col":45},"end":{"line":102,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":2368}},{"index":26,"name":null,"span":{"data":{"file_id":2,"beg":{"line":102,"col":45},"end":{"line":102,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":2369}},{"index":27,"name":null,"span":{"data":{"file_id":2,"beg":{"line":102,"col":50},"end":{"line":102,"col":51}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":28,"name":null,"span":{"data":{"file_id":2,"beg":{"line":102,"col":54},"end":{"line":102,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1250}},{"index":29,"name":null,"span":{"data":{"file_id":2,"beg":{"line":103,"col":12},"end":{"line":103,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":30,"name":null,"span":{"data":{"file_id":2,"beg":{"line":103,"col":36},"end":{"line":103,"col":43}},"generated_from_span":null},"ty":{"HashConsedValue":[2421,{"Ref":[{"Body":16},{"Deduplicated":1072},"Shared"]}]}},{"index":31,"name":null,"span":{"data":{"file_id":2,"beg":{"line":103,"col":36},"end":{"line":103,"col":43}},"generated_from_span":null},"ty":{"HashConsedValue":[2422,{"Ref":[{"Body":17},{"Deduplicated":1072},"Shared"]}]}},{"index":32,"name":null,"span":{"data":{"file_id":2,"beg":{"line":103,"col":41},"end":{"line":103,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":33,"name":null,"span":{"data":{"file_id":2,"beg":{"line":103,"col":45},"end":{"line":103,"col":52}},"generated_from_span":null},"ty":{"HashConsedValue":[2423,{"Ref":[{"Body":18},{"Deduplicated":1072},"Shared"]}]}},{"index":34,"name":null,"span":{"data":{"file_id":2,"beg":{"line":103,"col":45},"end":{"line":103,"col":52}},"generated_from_span":null},"ty":{"HashConsedValue":[2424,{"Ref":[{"Body":19},{"Deduplicated":1072},"Shared"]}]}},{"index":35,"name":null,"span":{"data":{"file_id":2,"beg":{"line":103,"col":50},"end":{"line":103,"col":51}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":36,"name":null,"span":{"data":{"file_id":2,"beg":{"line":103,"col":54},"end":{"line":103,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1250}},{"index":37,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":38,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":39,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":40,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"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":6167}},{"index":42,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":43,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":44,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":45,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":46,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":47,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":48,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":49,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":50,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":51,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":52,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":99,"col":8},"end":{"line":105,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":99,"col":11},"end":{"line":104,"col":9}},"generated_from_span":null},"id":154,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":100,"col":12},"end":{"line":100,"col":61}},"generated_from_span":null},"id":155,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":100,"col":36},"end":{"line":100,"col":43}},"generated_from_span":null},"id":156,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":100,"col":36},"end":{"line":100,"col":43}},"generated_from_span":null},"id":157,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":100,"col":41},"end":{"line":100,"col":42}},"generated_from_span":null},"id":158,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":100,"col":41},"end":{"line":100,"col":42}},"generated_from_span":null},"id":159,"kind":{"Assign":[{"kind":{"Local":8},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":100,"col":36},"end":{"line":100,"col":43}},"generated_from_span":null},"id":4013,"kind":{"StorageLive":37},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":100,"col":36},"end":{"line":100,"col":43}},"generated_from_span":null},"id":4014,"kind":{"Assign":[{"kind":{"Local":37},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":100,"col":36},"end":{"line":100,"col":43}},"generated_from_span":null},"id":4015,"kind":{"StorageLive":38},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":100,"col":36},"end":{"line":100,"col":43}},"generated_from_span":null},"id":4016,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":37},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":8},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":38},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":100,"col":36},"end":{"line":100,"col":43}},"generated_from_span":null},"id":162,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":2359}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":38},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":100,"col":36},"end":{"line":100,"col":43}},"generated_from_span":null},"id":163,"kind":{"Assign":[{"kind":{"Local":6},"ty":{"Deduplicated":2358}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":7},"ty":{"Deduplicated":2359}},"Deref"]},"ty":{"Deduplicated":1072}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":100,"col":45},"end":{"line":100,"col":52}},"generated_from_span":null},"id":164,"kind":{"StorageLive":9},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":100,"col":45},"end":{"line":100,"col":52}},"generated_from_span":null},"id":165,"kind":{"StorageLive":10},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":100,"col":50},"end":{"line":100,"col":51}},"generated_from_span":null},"id":166,"kind":{"StorageLive":11},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":100,"col":50},"end":{"line":100,"col":51}},"generated_from_span":null},"id":167,"kind":{"Assign":[{"kind":{"Local":11},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":100,"col":45},"end":{"line":100,"col":52}},"generated_from_span":null},"id":4017,"kind":{"StorageLive":39},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":100,"col":45},"end":{"line":100,"col":52}},"generated_from_span":null},"id":4018,"kind":{"Assign":[{"kind":{"Local":39},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":100,"col":45},"end":{"line":100,"col":52}},"generated_from_span":null},"id":4019,"kind":{"StorageLive":40},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":100,"col":45},"end":{"line":100,"col":52}},"generated_from_span":null},"id":4020,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":39},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":11},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":40},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":100,"col":45},"end":{"line":100,"col":52}},"generated_from_span":null},"id":170,"kind":{"Assign":[{"kind":{"Local":10},"ty":{"Deduplicated":2361}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":40},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":100,"col":45},"end":{"line":100,"col":52}},"generated_from_span":null},"id":171,"kind":{"Assign":[{"kind":{"Local":9},"ty":{"Deduplicated":2360}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":10},"ty":{"Deduplicated":2361}},"Deref"]},"ty":{"Deduplicated":1072}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":100,"col":54},"end":{"line":100,"col":60}},"generated_from_span":null},"id":172,"kind":{"StorageLive":12},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":100,"col":54},"end":{"line":100,"col":60}},"generated_from_span":null},"id":173,"kind":{"Assign":[{"kind":{"Local":12},"ty":{"Deduplicated":1250}},{"Use":[{"Copy":{"kind":{"Local":3},"ty":{"Deduplicated":1250}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":100,"col":12},"end":{"line":100,"col":61}},"generated_from_span":null},"id":174,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":121}},"generics":{"regions":[{"Body":22},{"Body":23}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":6},"ty":{"Deduplicated":2358}}},{"Move":{"kind":{"Local":9},"ty":{"Deduplicated":2360}}},{"Move":{"kind":{"Local":12},"ty":{"Deduplicated":1250}}}],"dest":{"kind":{"Local":5},"ty":{"Deduplicated":1072}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":100,"col":60},"end":{"line":100,"col":61}},"generated_from_span":null},"id":175,"kind":{"StorageDead":12},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":100,"col":60},"end":{"line":100,"col":61}},"generated_from_span":null},"id":176,"kind":{"StorageDead":9},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":100,"col":60},"end":{"line":100,"col":61}},"generated_from_span":null},"id":177,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":101,"col":12},"end":{"line":101,"col":61}},"generated_from_span":null},"id":178,"kind":{"StorageLive":13},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":101,"col":36},"end":{"line":101,"col":43}},"generated_from_span":null},"id":179,"kind":{"StorageLive":14},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":101,"col":36},"end":{"line":101,"col":43}},"generated_from_span":null},"id":180,"kind":{"StorageLive":15},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":101,"col":41},"end":{"line":101,"col":42}},"generated_from_span":null},"id":181,"kind":{"StorageLive":16},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":101,"col":41},"end":{"line":101,"col":42}},"generated_from_span":null},"id":182,"kind":{"Assign":[{"kind":{"Local":16},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":101,"col":36},"end":{"line":101,"col":43}},"generated_from_span":null},"id":4021,"kind":{"StorageLive":41},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":101,"col":36},"end":{"line":101,"col":43}},"generated_from_span":null},"id":4022,"kind":{"Assign":[{"kind":{"Local":41},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":101,"col":36},"end":{"line":101,"col":43}},"generated_from_span":null},"id":4023,"kind":{"StorageLive":42},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":101,"col":36},"end":{"line":101,"col":43}},"generated_from_span":null},"id":4024,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":41},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":16},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":42},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":101,"col":36},"end":{"line":101,"col":43}},"generated_from_span":null},"id":185,"kind":{"Assign":[{"kind":{"Local":15},"ty":{"Deduplicated":2363}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":42},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":101,"col":36},"end":{"line":101,"col":43}},"generated_from_span":null},"id":186,"kind":{"Assign":[{"kind":{"Local":14},"ty":{"Deduplicated":2362}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":15},"ty":{"Deduplicated":2363}},"Deref"]},"ty":{"Deduplicated":1072}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":101,"col":45},"end":{"line":101,"col":52}},"generated_from_span":null},"id":187,"kind":{"StorageLive":17},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":101,"col":45},"end":{"line":101,"col":52}},"generated_from_span":null},"id":188,"kind":{"StorageLive":18},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":101,"col":50},"end":{"line":101,"col":51}},"generated_from_span":null},"id":189,"kind":{"StorageLive":19},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":101,"col":50},"end":{"line":101,"col":51}},"generated_from_span":null},"id":190,"kind":{"Assign":[{"kind":{"Local":19},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":101,"col":45},"end":{"line":101,"col":52}},"generated_from_span":null},"id":4025,"kind":{"StorageLive":43},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":101,"col":45},"end":{"line":101,"col":52}},"generated_from_span":null},"id":4026,"kind":{"Assign":[{"kind":{"Local":43},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":101,"col":45},"end":{"line":101,"col":52}},"generated_from_span":null},"id":4027,"kind":{"StorageLive":44},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":101,"col":45},"end":{"line":101,"col":52}},"generated_from_span":null},"id":4028,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":43},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":19},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":44},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":101,"col":45},"end":{"line":101,"col":52}},"generated_from_span":null},"id":193,"kind":{"Assign":[{"kind":{"Local":18},"ty":{"Deduplicated":2365}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":44},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":101,"col":45},"end":{"line":101,"col":52}},"generated_from_span":null},"id":194,"kind":{"Assign":[{"kind":{"Local":17},"ty":{"Deduplicated":2364}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":18},"ty":{"Deduplicated":2365}},"Deref"]},"ty":{"Deduplicated":1072}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":101,"col":54},"end":{"line":101,"col":60}},"generated_from_span":null},"id":195,"kind":{"StorageLive":20},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":101,"col":54},"end":{"line":101,"col":60}},"generated_from_span":null},"id":196,"kind":{"Assign":[{"kind":{"Local":20},"ty":{"Deduplicated":1250}},{"Use":[{"Copy":{"kind":{"Local":3},"ty":{"Deduplicated":1250}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":101,"col":12},"end":{"line":101,"col":61}},"generated_from_span":null},"id":197,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":121}},"generics":{"regions":[{"Body":26},{"Body":27}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":14},"ty":{"Deduplicated":2362}}},{"Move":{"kind":{"Local":17},"ty":{"Deduplicated":2364}}},{"Move":{"kind":{"Local":20},"ty":{"Deduplicated":1250}}}],"dest":{"kind":{"Local":13},"ty":{"Deduplicated":1072}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":101,"col":60},"end":{"line":101,"col":61}},"generated_from_span":null},"id":198,"kind":{"StorageDead":20},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":101,"col":60},"end":{"line":101,"col":61}},"generated_from_span":null},"id":199,"kind":{"StorageDead":17},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":101,"col":60},"end":{"line":101,"col":61}},"generated_from_span":null},"id":200,"kind":{"StorageDead":14},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":102,"col":12},"end":{"line":102,"col":61}},"generated_from_span":null},"id":201,"kind":{"StorageLive":21},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":102,"col":36},"end":{"line":102,"col":43}},"generated_from_span":null},"id":202,"kind":{"StorageLive":22},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":102,"col":36},"end":{"line":102,"col":43}},"generated_from_span":null},"id":203,"kind":{"StorageLive":23},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":102,"col":41},"end":{"line":102,"col":42}},"generated_from_span":null},"id":204,"kind":{"StorageLive":24},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":102,"col":41},"end":{"line":102,"col":42}},"generated_from_span":null},"id":205,"kind":{"Assign":[{"kind":{"Local":24},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":102,"col":36},"end":{"line":102,"col":43}},"generated_from_span":null},"id":4029,"kind":{"StorageLive":45},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":102,"col":36},"end":{"line":102,"col":43}},"generated_from_span":null},"id":4030,"kind":{"Assign":[{"kind":{"Local":45},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":102,"col":36},"end":{"line":102,"col":43}},"generated_from_span":null},"id":4031,"kind":{"StorageLive":46},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":102,"col":36},"end":{"line":102,"col":43}},"generated_from_span":null},"id":4032,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":45},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":24},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":46},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":102,"col":36},"end":{"line":102,"col":43}},"generated_from_span":null},"id":208,"kind":{"Assign":[{"kind":{"Local":23},"ty":{"Deduplicated":2367}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":46},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":102,"col":36},"end":{"line":102,"col":43}},"generated_from_span":null},"id":209,"kind":{"Assign":[{"kind":{"Local":22},"ty":{"Deduplicated":2366}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":23},"ty":{"Deduplicated":2367}},"Deref"]},"ty":{"Deduplicated":1072}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":102,"col":45},"end":{"line":102,"col":52}},"generated_from_span":null},"id":210,"kind":{"StorageLive":25},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":102,"col":45},"end":{"line":102,"col":52}},"generated_from_span":null},"id":211,"kind":{"StorageLive":26},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":102,"col":50},"end":{"line":102,"col":51}},"generated_from_span":null},"id":212,"kind":{"StorageLive":27},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":102,"col":50},"end":{"line":102,"col":51}},"generated_from_span":null},"id":213,"kind":{"Assign":[{"kind":{"Local":27},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":102,"col":45},"end":{"line":102,"col":52}},"generated_from_span":null},"id":4033,"kind":{"StorageLive":47},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":102,"col":45},"end":{"line":102,"col":52}},"generated_from_span":null},"id":4034,"kind":{"Assign":[{"kind":{"Local":47},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":102,"col":45},"end":{"line":102,"col":52}},"generated_from_span":null},"id":4035,"kind":{"StorageLive":48},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":102,"col":45},"end":{"line":102,"col":52}},"generated_from_span":null},"id":4036,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":47},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":27},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":48},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":102,"col":45},"end":{"line":102,"col":52}},"generated_from_span":null},"id":216,"kind":{"Assign":[{"kind":{"Local":26},"ty":{"Deduplicated":2369}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":48},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":102,"col":45},"end":{"line":102,"col":52}},"generated_from_span":null},"id":217,"kind":{"Assign":[{"kind":{"Local":25},"ty":{"Deduplicated":2368}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":26},"ty":{"Deduplicated":2369}},"Deref"]},"ty":{"Deduplicated":1072}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":102,"col":54},"end":{"line":102,"col":60}},"generated_from_span":null},"id":218,"kind":{"StorageLive":28},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":102,"col":54},"end":{"line":102,"col":60}},"generated_from_span":null},"id":219,"kind":{"Assign":[{"kind":{"Local":28},"ty":{"Deduplicated":1250}},{"Use":[{"Copy":{"kind":{"Local":3},"ty":{"Deduplicated":1250}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":102,"col":12},"end":{"line":102,"col":61}},"generated_from_span":null},"id":220,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":121}},"generics":{"regions":[{"Body":30},{"Body":31}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":22},"ty":{"Deduplicated":2366}}},{"Move":{"kind":{"Local":25},"ty":{"Deduplicated":2368}}},{"Move":{"kind":{"Local":28},"ty":{"Deduplicated":1250}}}],"dest":{"kind":{"Local":21},"ty":{"Deduplicated":1072}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":102,"col":60},"end":{"line":102,"col":61}},"generated_from_span":null},"id":221,"kind":{"StorageDead":28},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":102,"col":60},"end":{"line":102,"col":61}},"generated_from_span":null},"id":222,"kind":{"StorageDead":25},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":102,"col":60},"end":{"line":102,"col":61}},"generated_from_span":null},"id":223,"kind":{"StorageDead":22},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":103,"col":12},"end":{"line":103,"col":61}},"generated_from_span":null},"id":224,"kind":{"StorageLive":29},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":103,"col":36},"end":{"line":103,"col":43}},"generated_from_span":null},"id":225,"kind":{"StorageLive":30},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":103,"col":36},"end":{"line":103,"col":43}},"generated_from_span":null},"id":226,"kind":{"StorageLive":31},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":103,"col":41},"end":{"line":103,"col":42}},"generated_from_span":null},"id":227,"kind":{"StorageLive":32},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":103,"col":41},"end":{"line":103,"col":42}},"generated_from_span":null},"id":228,"kind":{"Assign":[{"kind":{"Local":32},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":103,"col":36},"end":{"line":103,"col":43}},"generated_from_span":null},"id":4037,"kind":{"StorageLive":49},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":103,"col":36},"end":{"line":103,"col":43}},"generated_from_span":null},"id":4038,"kind":{"Assign":[{"kind":{"Local":49},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":103,"col":36},"end":{"line":103,"col":43}},"generated_from_span":null},"id":4039,"kind":{"StorageLive":50},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":103,"col":36},"end":{"line":103,"col":43}},"generated_from_span":null},"id":4040,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":49},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":32},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":50},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":103,"col":36},"end":{"line":103,"col":43}},"generated_from_span":null},"id":231,"kind":{"Assign":[{"kind":{"Local":31},"ty":{"Deduplicated":2422}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":50},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":103,"col":36},"end":{"line":103,"col":43}},"generated_from_span":null},"id":232,"kind":{"Assign":[{"kind":{"Local":30},"ty":{"Deduplicated":2421}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":31},"ty":{"Deduplicated":2422}},"Deref"]},"ty":{"Deduplicated":1072}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":103,"col":45},"end":{"line":103,"col":52}},"generated_from_span":null},"id":233,"kind":{"StorageLive":33},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":103,"col":45},"end":{"line":103,"col":52}},"generated_from_span":null},"id":234,"kind":{"StorageLive":34},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":103,"col":50},"end":{"line":103,"col":51}},"generated_from_span":null},"id":235,"kind":{"StorageLive":35},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":103,"col":50},"end":{"line":103,"col":51}},"generated_from_span":null},"id":236,"kind":{"Assign":[{"kind":{"Local":35},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":103,"col":45},"end":{"line":103,"col":52}},"generated_from_span":null},"id":4041,"kind":{"StorageLive":51},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":103,"col":45},"end":{"line":103,"col":52}},"generated_from_span":null},"id":4042,"kind":{"Assign":[{"kind":{"Local":51},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":103,"col":45},"end":{"line":103,"col":52}},"generated_from_span":null},"id":4043,"kind":{"StorageLive":52},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":103,"col":45},"end":{"line":103,"col":52}},"generated_from_span":null},"id":4044,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":51},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":35},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":52},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":103,"col":45},"end":{"line":103,"col":52}},"generated_from_span":null},"id":239,"kind":{"Assign":[{"kind":{"Local":34},"ty":{"Deduplicated":2424}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":52},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":103,"col":45},"end":{"line":103,"col":52}},"generated_from_span":null},"id":240,"kind":{"Assign":[{"kind":{"Local":33},"ty":{"Deduplicated":2423}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":34},"ty":{"Deduplicated":2424}},"Deref"]},"ty":{"Deduplicated":1072}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":103,"col":54},"end":{"line":103,"col":60}},"generated_from_span":null},"id":241,"kind":{"StorageLive":36},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":103,"col":54},"end":{"line":103,"col":60}},"generated_from_span":null},"id":242,"kind":{"Assign":[{"kind":{"Local":36},"ty":{"Deduplicated":1250}},{"Use":[{"Copy":{"kind":{"Local":3},"ty":{"Deduplicated":1250}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":103,"col":12},"end":{"line":103,"col":61}},"generated_from_span":null},"id":243,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":121}},"generics":{"regions":[{"Body":34},{"Body":35}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":30},"ty":{"Deduplicated":2421}}},{"Move":{"kind":{"Local":33},"ty":{"Deduplicated":2423}}},{"Move":{"kind":{"Local":36},"ty":{"Deduplicated":1250}}}],"dest":{"kind":{"Local":29},"ty":{"Deduplicated":1072}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":103,"col":60},"end":{"line":103,"col":61}},"generated_from_span":null},"id":244,"kind":{"StorageDead":36},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":103,"col":60},"end":{"line":103,"col":61}},"generated_from_span":null},"id":245,"kind":{"StorageDead":33},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":103,"col":60},"end":{"line":103,"col":61}},"generated_from_span":null},"id":246,"kind":{"StorageDead":30},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":99,"col":11},"end":{"line":104,"col":9}},"generated_from_span":null},"id":247,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":1074}},{"Aggregate":[{"Array":[{"Deduplicated":1072},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}]},[{"Move":{"kind":{"Local":5},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":13},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":21},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":29},"ty":{"Deduplicated":1072}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":104,"col":8},"end":{"line":104,"col":9}},"generated_from_span":null},"id":248,"kind":{"StorageDead":29},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":104,"col":8},"end":{"line":104,"col":9}},"generated_from_span":null},"id":249,"kind":{"StorageDead":21},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":104,"col":8},"end":{"line":104,"col":9}},"generated_from_span":null},"id":250,"kind":{"StorageDead":13},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":104,"col":8},"end":{"line":104,"col":9}},"generated_from_span":null},"id":251,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":99,"col":8},"end":{"line":104,"col":10}},"generated_from_span":null},"id":252,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1079}},{"Aggregate":[{"Adt":[{"id":{"Adt":0},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":1074}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":104,"col":9},"end":{"line":104,"col":10}},"generated_from_span":null},"id":253,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":105,"col":4},"end":{"line":105,"col":5}},"generated_from_span":null},"id":254,"kind":{"StorageDead":35},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":105,"col":4},"end":{"line":105,"col":5}},"generated_from_span":null},"id":255,"kind":{"StorageDead":34},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":105,"col":4},"end":{"line":105,"col":5}},"generated_from_span":null},"id":256,"kind":{"StorageDead":32},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":105,"col":4},"end":{"line":105,"col":5}},"generated_from_span":null},"id":257,"kind":{"StorageDead":31},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":105,"col":4},"end":{"line":105,"col":5}},"generated_from_span":null},"id":258,"kind":{"StorageDead":27},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":105,"col":4},"end":{"line":105,"col":5}},"generated_from_span":null},"id":259,"kind":{"StorageDead":26},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":105,"col":4},"end":{"line":105,"col":5}},"generated_from_span":null},"id":260,"kind":{"StorageDead":24},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":105,"col":4},"end":{"line":105,"col":5}},"generated_from_span":null},"id":261,"kind":{"StorageDead":23},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":105,"col":4},"end":{"line":105,"col":5}},"generated_from_span":null},"id":262,"kind":{"StorageDead":19},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":105,"col":4},"end":{"line":105,"col":5}},"generated_from_span":null},"id":263,"kind":{"StorageDead":18},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":105,"col":4},"end":{"line":105,"col":5}},"generated_from_span":null},"id":264,"kind":{"StorageDead":16},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":105,"col":4},"end":{"line":105,"col":5}},"generated_from_span":null},"id":265,"kind":{"StorageDead":15},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":105,"col":4},"end":{"line":105,"col":5}},"generated_from_span":null},"id":266,"kind":{"StorageDead":11},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":105,"col":4},"end":{"line":105,"col":5}},"generated_from_span":null},"id":267,"kind":{"StorageDead":10},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":105,"col":4},"end":{"line":105,"col":5}},"generated_from_span":null},"id":268,"kind":{"StorageDead":8},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":105,"col":4},"end":{"line":105,"col":5}},"generated_from_span":null},"id":269,"kind":{"StorageDead":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":105,"col":5},"end":{"line":105,"col":5}},"generated_from_span":null},"id":270,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":31,"item_meta":{"name":[{"Ident":["subtle",0]},{"Ident":["ConditionallySelectable",0]},{"Ident":["conditional_select",0]}],"span":{"data":{"file_id":10,"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":1,"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":8294}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8333},{"Deduplicated":8435},{"Deduplicated":1250}],"output":{"Deduplicated":8294}},"src":{"TraitDecl":{"trait_ref":{"id":11,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},null,null,{"def_id":34,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["MODULUS",0]}],"span":{"data":{"file_id":2,"beg":{"line":110,"col":0},"end":{"line":115,"col":3}},"generated_from_span":null},"source_text":"const MODULUS: Fp = Fp([\n 0x992d30ed00000001,\n 0x224698fc094cf91b,\n 0x0000000000000000,\n 0x4000000000000000,\n]);","attr_info":{"attributes":[{"DocComment":" Constant representing the modulus"},{"DocComment":" p = 0x40000000000000000000000000000000224698fc094cf91b992d30ed00000001"}],"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":1079}},"src":"TopLevel","is_global_initializer":0,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":110,"col":0},"end":{"line":115,"col":3}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":0,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":110,"col":15},"end":{"line":110,"col":17}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":null,"span":{"data":{"file_id":2,"beg":{"line":110,"col":23},"end":{"line":115,"col":1}},"generated_from_span":null},"ty":{"Deduplicated":1074}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":110,"col":0},"end":{"line":115,"col":3}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":110,"col":23},"end":{"line":115,"col":1}},"generated_from_span":null},"id":271,"kind":{"StorageLive":1},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":110,"col":23},"end":{"line":115,"col":1}},"generated_from_span":null},"id":272,"kind":{"Assign":[{"kind":{"Local":1},"ty":{"Deduplicated":1074}},{"Aggregate":[{"Array":[{"Deduplicated":1072},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}]},[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","11037532056220336129"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","2469829653914515739"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","4611686018427387904"]}}},"ty":{"Deduplicated":1072}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":110,"col":20},"end":{"line":115,"col":2}},"generated_from_span":null},"id":273,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1079}},{"Aggregate":[{"Adt":[{"id":{"Adt":0},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[{"Move":{"kind":{"Local":1},"ty":{"Deduplicated":1074}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":115,"col":1},"end":{"line":115,"col":2}},"generated_from_span":null},"id":274,"kind":{"StorageDead":1},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":110,"col":0},"end":{"line":115,"col":3}},"generated_from_span":null},"id":275,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":35,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":12}},{"Ident":["neg",0]}],"span":{"data":{"file_id":2,"beg":{"line":134,"col":4},"end":{"line":136,"col":5}},"generated_from_span":null},"source_text":"fn neg(self) -> Fp {\n self.neg()\n }","attr_info":{"attributes":[],"inline":"Hint","rename":null,"public":true},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[{"index":0,"name":"'a","mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8297}],"output":{"Deduplicated":1079}},"src":{"TraitImpl":{"impl_ref":{"id":12,"generics":{"regions":[{"Var":{"Free":0}}],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":12,"generics":{"regions":[],"types":[{"Deduplicated":8297},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":134,"col":4},"end":{"line":136,"col":5}},"generated_from_span":null},"bound_body_regions":5,"locals":{"arg_count":1,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":134,"col":20},"end":{"line":134,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":"self","span":{"data":{"file_id":2,"beg":{"line":134,"col":11},"end":{"line":134,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":2302}},{"index":2,"name":null,"span":{"data":{"file_id":2,"beg":{"line":135,"col":8},"end":{"line":135,"col":12}},"generated_from_span":null},"ty":{"Deduplicated":2355}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":135,"col":8},"end":{"line":136,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":135,"col":8},"end":{"line":135,"col":12}},"generated_from_span":null},"id":276,"kind":{"StorageLive":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":135,"col":8},"end":{"line":135,"col":12}},"generated_from_span":null},"id":277,"kind":{"Assign":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":135,"col":8},"end":{"line":135,"col":18}},"generated_from_span":null},"id":278,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":77}},"generics":{"regions":[{"Body":4}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":2},"ty":{"Deduplicated":2355}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":135,"col":17},"end":{"line":135,"col":18}},"generated_from_span":null},"id":279,"kind":{"StorageDead":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":136,"col":5},"end":{"line":136,"col":5}},"generated_from_span":null},"id":280,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":36,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":13}},{"Ident":["neg",0]}],"span":{"data":{"file_id":2,"beg":{"line":143,"col":4},"end":{"line":145,"col":5}},"generated_from_span":null},"source_text":"fn neg(self) -> Fp {\n -&self\n }","attr_info":{"attributes":[],"inline":"Hint","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":[{"Deduplicated":1079}],"output":{"Deduplicated":1079}},"src":{"TraitImpl":{"impl_ref":{"id":13,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":12,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":143,"col":4},"end":{"line":145,"col":5}},"generated_from_span":null},"bound_body_regions":3,"locals":{"arg_count":1,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":143,"col":20},"end":{"line":143,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":"self","span":{"data":{"file_id":2,"beg":{"line":143,"col":11},"end":{"line":143,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":2,"name":null,"span":{"data":{"file_id":2,"beg":{"line":144,"col":9},"end":{"line":144,"col":14}},"generated_from_span":null},"ty":{"Deduplicated":2302}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":144,"col":9},"end":{"line":145,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":144,"col":9},"end":{"line":144,"col":14}},"generated_from_span":null},"id":281,"kind":{"StorageLive":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":144,"col":9},"end":{"line":144,"col":14}},"generated_from_span":null},"id":282,"kind":{"Assign":[{"kind":{"Local":2},"ty":{"Deduplicated":2302}},{"Ref":{"place":{"kind":{"Local":1},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":144,"col":8},"end":{"line":144,"col":14}},"generated_from_span":null},"id":283,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":35}},"generics":{"regions":[{"Body":2}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":2},"ty":{"Deduplicated":2302}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":144,"col":13},"end":{"line":144,"col":14}},"generated_from_span":null},"id":284,"kind":{"StorageDead":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":145,"col":5},"end":{"line":145,"col":5}},"generated_from_span":null},"id":285,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":37,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":14}},{"Ident":["sub",0]}],"span":{"data":{"file_id":2,"beg":{"line":152,"col":4},"end":{"line":154,"col":5}},"generated_from_span":null},"source_text":"fn sub(self, rhs: &'b Fp) -> Fp {\n self.sub(rhs)\n }","attr_info":{"attributes":[],"inline":"Hint","rename":null,"public":true},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[{"index":0,"name":"'a","mutability":"Unknown"},{"index":1,"name":"'b","mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8297},{"Deduplicated":8298}],"output":{"Deduplicated":1079}},"src":{"TraitImpl":{"impl_ref":{"id":14,"generics":{"regions":[{"Var":{"Free":0}},{"Var":{"Free":1}}],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":13,"generics":{"regions":[],"types":[{"Deduplicated":8297},{"Deduplicated":8298},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":152,"col":4},"end":{"line":154,"col":5}},"generated_from_span":null},"bound_body_regions":9,"locals":{"arg_count":2,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":152,"col":33},"end":{"line":152,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":"self","span":{"data":{"file_id":2,"beg":{"line":152,"col":11},"end":{"line":152,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":2302}},{"index":2,"name":"rhs","span":{"data":{"file_id":2,"beg":{"line":152,"col":17},"end":{"line":152,"col":20}},"generated_from_span":null},"ty":{"Deduplicated":2355}},{"index":3,"name":null,"span":{"data":{"file_id":2,"beg":{"line":153,"col":8},"end":{"line":153,"col":12}},"generated_from_span":null},"ty":{"HashConsedValue":[2470,{"Ref":[{"Body":3},{"Deduplicated":1079},"Shared"]}]}},{"index":4,"name":null,"span":{"data":{"file_id":2,"beg":{"line":153,"col":17},"end":{"line":153,"col":20}},"generated_from_span":null},"ty":{"HashConsedValue":[2471,{"Ref":[{"Body":4},{"Deduplicated":1079},"Shared"]}]}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":153,"col":8},"end":{"line":154,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":153,"col":8},"end":{"line":153,"col":12}},"generated_from_span":null},"id":286,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":153,"col":8},"end":{"line":153,"col":12}},"generated_from_span":null},"id":287,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":2470}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":153,"col":17},"end":{"line":153,"col":20}},"generated_from_span":null},"id":288,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":153,"col":17},"end":{"line":153,"col":20}},"generated_from_span":null},"id":289,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":2471}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":153,"col":8},"end":{"line":153,"col":21}},"generated_from_span":null},"id":290,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":75}},"generics":{"regions":[{"Body":7},{"Body":8}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":2470}}},{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":2471}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":153,"col":20},"end":{"line":153,"col":21}},"generated_from_span":null},"id":291,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":153,"col":20},"end":{"line":153,"col":21}},"generated_from_span":null},"id":292,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":154,"col":5},"end":{"line":154,"col":5}},"generated_from_span":null},"id":293,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":38,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":15}},{"Ident":["add",0]}],"span":{"data":{"file_id":2,"beg":{"line":161,"col":4},"end":{"line":163,"col":5}},"generated_from_span":null},"source_text":"fn add(self, rhs: &'b Fp) -> Fp {\n self.add(rhs)\n }","attr_info":{"attributes":[],"inline":"Hint","rename":null,"public":true},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[{"index":0,"name":"'a","mutability":"Unknown"},{"index":1,"name":"'b","mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8297},{"Deduplicated":8298}],"output":{"Deduplicated":1079}},"src":{"TraitImpl":{"impl_ref":{"id":15,"generics":{"regions":[{"Var":{"Free":0}},{"Var":{"Free":1}}],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":14,"generics":{"regions":[],"types":[{"Deduplicated":8297},{"Deduplicated":8298},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":161,"col":4},"end":{"line":163,"col":5}},"generated_from_span":null},"bound_body_regions":9,"locals":{"arg_count":2,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":161,"col":33},"end":{"line":161,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":"self","span":{"data":{"file_id":2,"beg":{"line":161,"col":11},"end":{"line":161,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":2302}},{"index":2,"name":"rhs","span":{"data":{"file_id":2,"beg":{"line":161,"col":17},"end":{"line":161,"col":20}},"generated_from_span":null},"ty":{"Deduplicated":2355}},{"index":3,"name":null,"span":{"data":{"file_id":2,"beg":{"line":162,"col":8},"end":{"line":162,"col":12}},"generated_from_span":null},"ty":{"Deduplicated":2470}},{"index":4,"name":null,"span":{"data":{"file_id":2,"beg":{"line":162,"col":17},"end":{"line":162,"col":20}},"generated_from_span":null},"ty":{"Deduplicated":2471}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":162,"col":8},"end":{"line":163,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":162,"col":8},"end":{"line":162,"col":12}},"generated_from_span":null},"id":294,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":162,"col":8},"end":{"line":162,"col":12}},"generated_from_span":null},"id":295,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":2470}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":162,"col":17},"end":{"line":162,"col":20}},"generated_from_span":null},"id":296,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":162,"col":17},"end":{"line":162,"col":20}},"generated_from_span":null},"id":297,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":2471}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":162,"col":8},"end":{"line":162,"col":21}},"generated_from_span":null},"id":298,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":76}},"generics":{"regions":[{"Body":7},{"Body":8}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":2470}}},{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":2471}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":162,"col":20},"end":{"line":162,"col":21}},"generated_from_span":null},"id":299,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":162,"col":20},"end":{"line":162,"col":21}},"generated_from_span":null},"id":300,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":163,"col":5},"end":{"line":163,"col":5}},"generated_from_span":null},"id":301,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":39,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":16}},{"Ident":["mul",0]}],"span":{"data":{"file_id":2,"beg":{"line":170,"col":4},"end":{"line":172,"col":5}},"generated_from_span":null},"source_text":"fn mul(self, rhs: &'b Fp) -> Fp {\n self.mul(rhs)\n }","attr_info":{"attributes":[],"inline":"Hint","rename":null,"public":true},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[{"index":0,"name":"'a","mutability":"Unknown"},{"index":1,"name":"'b","mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8297},{"Deduplicated":8298}],"output":{"Deduplicated":1079}},"src":{"TraitImpl":{"impl_ref":{"id":16,"generics":{"regions":[{"Var":{"Free":0}},{"Var":{"Free":1}}],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":15,"generics":{"regions":[],"types":[{"Deduplicated":8297},{"Deduplicated":8298},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":170,"col":4},"end":{"line":172,"col":5}},"generated_from_span":null},"bound_body_regions":9,"locals":{"arg_count":2,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":170,"col":33},"end":{"line":170,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":"self","span":{"data":{"file_id":2,"beg":{"line":170,"col":11},"end":{"line":170,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":2302}},{"index":2,"name":"rhs","span":{"data":{"file_id":2,"beg":{"line":170,"col":17},"end":{"line":170,"col":20}},"generated_from_span":null},"ty":{"Deduplicated":2355}},{"index":3,"name":null,"span":{"data":{"file_id":2,"beg":{"line":171,"col":8},"end":{"line":171,"col":12}},"generated_from_span":null},"ty":{"Deduplicated":2470}},{"index":4,"name":null,"span":{"data":{"file_id":2,"beg":{"line":171,"col":17},"end":{"line":171,"col":20}},"generated_from_span":null},"ty":{"Deduplicated":2471}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":171,"col":8},"end":{"line":172,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":171,"col":8},"end":{"line":171,"col":12}},"generated_from_span":null},"id":302,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":171,"col":8},"end":{"line":171,"col":12}},"generated_from_span":null},"id":303,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":2470}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":171,"col":17},"end":{"line":171,"col":20}},"generated_from_span":null},"id":304,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":171,"col":17},"end":{"line":171,"col":20}},"generated_from_span":null},"id":305,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":2471}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":171,"col":8},"end":{"line":171,"col":21}},"generated_from_span":null},"id":306,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":74}},"generics":{"regions":[{"Body":7},{"Body":8}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":2470}}},{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":2471}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":171,"col":20},"end":{"line":171,"col":21}},"generated_from_span":null},"id":307,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":171,"col":20},"end":{"line":171,"col":21}},"generated_from_span":null},"id":308,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":172,"col":5},"end":{"line":172,"col":5}},"generated_from_span":null},"id":309,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":40,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":17}},{"Ident":["add",0]}],"span":{"data":{"file_id":3,"beg":{"line":7,"col":12},"end":{"line":9,"col":13}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":"Hint","rename":null,"public":true},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[{"index":0,"name":"'b","mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":1079},{"Deduplicated":8297}],"output":{"Deduplicated":1079}},"src":{"TraitImpl":{"impl_ref":{"id":17,"generics":{"regions":[{"Var":{"Free":0}}],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":14,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":8297},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":3,"beg":{"line":7,"col":12},"end":{"line":9,"col":13}},"generated_from_span":null},"bound_body_regions":6,"locals":{"arg_count":2,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":3,"beg":{"line":7,"col":43},"end":{"line":7,"col":50}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":"self","span":{"data":{"file_id":3,"beg":{"line":7,"col":19},"end":{"line":7,"col":23}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":2,"name":"rhs","span":{"data":{"file_id":3,"beg":{"line":7,"col":25},"end":{"line":7,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":2302}},{"index":3,"name":null,"span":{"data":{"file_id":3,"beg":{"line":8,"col":16},"end":{"line":8,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":2355}},{"index":4,"name":null,"span":{"data":{"file_id":3,"beg":{"line":8,"col":24},"end":{"line":8,"col":27}},"generated_from_span":null},"ty":{"Deduplicated":2470}}]},"body":{"span":{"data":{"file_id":3,"beg":{"line":8,"col":16},"end":{"line":9,"col":13}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":3,"beg":{"line":8,"col":16},"end":{"line":8,"col":21}},"generated_from_span":null},"id":310,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":8,"col":16},"end":{"line":8,"col":21}},"generated_from_span":null},"id":311,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":2355}},{"Ref":{"place":{"kind":{"Local":1},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":8,"col":24},"end":{"line":8,"col":27}},"generated_from_span":null},"id":312,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":8,"col":24},"end":{"line":8,"col":27}},"generated_from_span":null},"id":313,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":2470}},{"Use":[{"Copy":{"kind":{"Local":2},"ty":{"Deduplicated":2302}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":8,"col":16},"end":{"line":8,"col":27}},"generated_from_span":null},"id":314,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":38}},"generics":{"regions":[{"Body":4},{"Body":5}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":2355}}},{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":2470}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":8,"col":26},"end":{"line":8,"col":27}},"generated_from_span":null},"id":315,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":8,"col":26},"end":{"line":8,"col":27}},"generated_from_span":null},"id":316,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":9,"col":13},"end":{"line":9,"col":13}},"generated_from_span":null},"id":317,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":41,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":18}},{"Ident":["add",0]}],"span":{"data":{"file_id":3,"beg":{"line":16,"col":12},"end":{"line":18,"col":13}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":"Hint","rename":null,"public":true},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[{"index":0,"name":"'a","mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8297},{"Deduplicated":1079}],"output":{"Deduplicated":1079}},"src":{"TraitImpl":{"impl_ref":{"id":18,"generics":{"regions":[{"Var":{"Free":0}}],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":14,"generics":{"regions":[],"types":[{"Deduplicated":8297},{"Deduplicated":1079},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":3,"beg":{"line":16,"col":12},"end":{"line":18,"col":13}},"generated_from_span":null},"bound_body_regions":6,"locals":{"arg_count":2,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":3,"beg":{"line":16,"col":39},"end":{"line":16,"col":46}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":"self","span":{"data":{"file_id":3,"beg":{"line":16,"col":19},"end":{"line":16,"col":23}},"generated_from_span":null},"ty":{"Deduplicated":2302}},{"index":2,"name":"rhs","span":{"data":{"file_id":3,"beg":{"line":16,"col":25},"end":{"line":16,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":3,"name":null,"span":{"data":{"file_id":3,"beg":{"line":17,"col":16},"end":{"line":17,"col":20}},"generated_from_span":null},"ty":{"Deduplicated":2355}},{"index":4,"name":null,"span":{"data":{"file_id":3,"beg":{"line":17,"col":23},"end":{"line":17,"col":27}},"generated_from_span":null},"ty":{"Deduplicated":2470}}]},"body":{"span":{"data":{"file_id":3,"beg":{"line":17,"col":16},"end":{"line":18,"col":13}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":3,"beg":{"line":17,"col":16},"end":{"line":17,"col":20}},"generated_from_span":null},"id":318,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":17,"col":16},"end":{"line":17,"col":20}},"generated_from_span":null},"id":319,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":2355}},{"Use":[{"Copy":{"kind":{"Local":1},"ty":{"Deduplicated":2302}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":17,"col":23},"end":{"line":17,"col":27}},"generated_from_span":null},"id":320,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":17,"col":23},"end":{"line":17,"col":27}},"generated_from_span":null},"id":321,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":2470}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":17,"col":16},"end":{"line":17,"col":27}},"generated_from_span":null},"id":322,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":38}},"generics":{"regions":[{"Body":4},{"Body":5}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":2355}}},{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":2470}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":17,"col":26},"end":{"line":17,"col":27}},"generated_from_span":null},"id":323,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":17,"col":26},"end":{"line":17,"col":27}},"generated_from_span":null},"id":324,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":18,"col":13},"end":{"line":18,"col":13}},"generated_from_span":null},"id":325,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":42,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":19}},{"Ident":["add",0]}],"span":{"data":{"file_id":3,"beg":{"line":25,"col":12},"end":{"line":27,"col":13}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":"Hint","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":[{"Deduplicated":1079},{"Deduplicated":1079}],"output":{"Deduplicated":1079}},"src":{"TraitImpl":{"impl_ref":{"id":19,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":14,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1079},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":3,"beg":{"line":25,"col":12},"end":{"line":27,"col":13}},"generated_from_span":null},"bound_body_regions":5,"locals":{"arg_count":2,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":3,"beg":{"line":25,"col":39},"end":{"line":25,"col":46}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":"self","span":{"data":{"file_id":3,"beg":{"line":25,"col":19},"end":{"line":25,"col":23}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":2,"name":"rhs","span":{"data":{"file_id":3,"beg":{"line":25,"col":25},"end":{"line":25,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":3,"name":null,"span":{"data":{"file_id":3,"beg":{"line":26,"col":16},"end":{"line":26,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":2302}},{"index":4,"name":null,"span":{"data":{"file_id":3,"beg":{"line":26,"col":24},"end":{"line":26,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":2355}}]},"body":{"span":{"data":{"file_id":3,"beg":{"line":26,"col":16},"end":{"line":27,"col":13}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":3,"beg":{"line":26,"col":16},"end":{"line":26,"col":21}},"generated_from_span":null},"id":326,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":26,"col":16},"end":{"line":26,"col":21}},"generated_from_span":null},"id":327,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":2302}},{"Ref":{"place":{"kind":{"Local":1},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":26,"col":24},"end":{"line":26,"col":28}},"generated_from_span":null},"id":328,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":26,"col":24},"end":{"line":26,"col":28}},"generated_from_span":null},"id":329,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":2355}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":26,"col":16},"end":{"line":26,"col":28}},"generated_from_span":null},"id":330,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":38}},"generics":{"regions":[{"Body":3},{"Body":4}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":2302}}},{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":2355}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":26,"col":27},"end":{"line":26,"col":28}},"generated_from_span":null},"id":331,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":26,"col":27},"end":{"line":26,"col":28}},"generated_from_span":null},"id":332,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":27,"col":13},"end":{"line":27,"col":13}},"generated_from_span":null},"id":333,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":43,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":20}},{"Ident":["sub",0]}],"span":{"data":{"file_id":3,"beg":{"line":38,"col":12},"end":{"line":40,"col":13}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":"Hint","rename":null,"public":true},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[{"index":0,"name":"'b","mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":1079},{"Deduplicated":8297}],"output":{"Deduplicated":1079}},"src":{"TraitImpl":{"impl_ref":{"id":20,"generics":{"regions":[{"Var":{"Free":0}}],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":13,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":8297},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":3,"beg":{"line":38,"col":12},"end":{"line":40,"col":13}},"generated_from_span":null},"bound_body_regions":6,"locals":{"arg_count":2,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":3,"beg":{"line":38,"col":43},"end":{"line":38,"col":50}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":"self","span":{"data":{"file_id":3,"beg":{"line":38,"col":19},"end":{"line":38,"col":23}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":2,"name":"rhs","span":{"data":{"file_id":3,"beg":{"line":38,"col":25},"end":{"line":38,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":2302}},{"index":3,"name":null,"span":{"data":{"file_id":3,"beg":{"line":39,"col":16},"end":{"line":39,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":2355}},{"index":4,"name":null,"span":{"data":{"file_id":3,"beg":{"line":39,"col":24},"end":{"line":39,"col":27}},"generated_from_span":null},"ty":{"Deduplicated":2470}}]},"body":{"span":{"data":{"file_id":3,"beg":{"line":39,"col":16},"end":{"line":40,"col":13}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":3,"beg":{"line":39,"col":16},"end":{"line":39,"col":21}},"generated_from_span":null},"id":334,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":39,"col":16},"end":{"line":39,"col":21}},"generated_from_span":null},"id":335,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":2355}},{"Ref":{"place":{"kind":{"Local":1},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":39,"col":24},"end":{"line":39,"col":27}},"generated_from_span":null},"id":336,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":39,"col":24},"end":{"line":39,"col":27}},"generated_from_span":null},"id":337,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":2470}},{"Use":[{"Copy":{"kind":{"Local":2},"ty":{"Deduplicated":2302}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":39,"col":16},"end":{"line":39,"col":27}},"generated_from_span":null},"id":338,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":37}},"generics":{"regions":[{"Body":4},{"Body":5}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":2355}}},{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":2470}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":39,"col":26},"end":{"line":39,"col":27}},"generated_from_span":null},"id":339,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":39,"col":26},"end":{"line":39,"col":27}},"generated_from_span":null},"id":340,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":40,"col":13},"end":{"line":40,"col":13}},"generated_from_span":null},"id":341,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":44,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":21}},{"Ident":["sub",0]}],"span":{"data":{"file_id":3,"beg":{"line":47,"col":12},"end":{"line":49,"col":13}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":"Hint","rename":null,"public":true},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[{"index":0,"name":"'a","mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8297},{"Deduplicated":1079}],"output":{"Deduplicated":1079}},"src":{"TraitImpl":{"impl_ref":{"id":21,"generics":{"regions":[{"Var":{"Free":0}}],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":13,"generics":{"regions":[],"types":[{"Deduplicated":8297},{"Deduplicated":1079},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":3,"beg":{"line":47,"col":12},"end":{"line":49,"col":13}},"generated_from_span":null},"bound_body_regions":6,"locals":{"arg_count":2,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":3,"beg":{"line":47,"col":39},"end":{"line":47,"col":46}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":"self","span":{"data":{"file_id":3,"beg":{"line":47,"col":19},"end":{"line":47,"col":23}},"generated_from_span":null},"ty":{"Deduplicated":2302}},{"index":2,"name":"rhs","span":{"data":{"file_id":3,"beg":{"line":47,"col":25},"end":{"line":47,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":3,"name":null,"span":{"data":{"file_id":3,"beg":{"line":48,"col":16},"end":{"line":48,"col":20}},"generated_from_span":null},"ty":{"Deduplicated":2355}},{"index":4,"name":null,"span":{"data":{"file_id":3,"beg":{"line":48,"col":23},"end":{"line":48,"col":27}},"generated_from_span":null},"ty":{"Deduplicated":2470}}]},"body":{"span":{"data":{"file_id":3,"beg":{"line":48,"col":16},"end":{"line":49,"col":13}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":3,"beg":{"line":48,"col":16},"end":{"line":48,"col":20}},"generated_from_span":null},"id":342,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":48,"col":16},"end":{"line":48,"col":20}},"generated_from_span":null},"id":343,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":2355}},{"Use":[{"Copy":{"kind":{"Local":1},"ty":{"Deduplicated":2302}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":48,"col":23},"end":{"line":48,"col":27}},"generated_from_span":null},"id":344,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":48,"col":23},"end":{"line":48,"col":27}},"generated_from_span":null},"id":345,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":2470}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":48,"col":16},"end":{"line":48,"col":27}},"generated_from_span":null},"id":346,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":37}},"generics":{"regions":[{"Body":4},{"Body":5}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":2355}}},{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":2470}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":48,"col":26},"end":{"line":48,"col":27}},"generated_from_span":null},"id":347,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":48,"col":26},"end":{"line":48,"col":27}},"generated_from_span":null},"id":348,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":49,"col":13},"end":{"line":49,"col":13}},"generated_from_span":null},"id":349,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":45,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":22}},{"Ident":["sub",0]}],"span":{"data":{"file_id":3,"beg":{"line":56,"col":12},"end":{"line":58,"col":13}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":"Hint","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":[{"Deduplicated":1079},{"Deduplicated":1079}],"output":{"Deduplicated":1079}},"src":{"TraitImpl":{"impl_ref":{"id":22,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":13,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1079},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":3,"beg":{"line":56,"col":12},"end":{"line":58,"col":13}},"generated_from_span":null},"bound_body_regions":5,"locals":{"arg_count":2,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":3,"beg":{"line":56,"col":39},"end":{"line":56,"col":46}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":"self","span":{"data":{"file_id":3,"beg":{"line":56,"col":19},"end":{"line":56,"col":23}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":2,"name":"rhs","span":{"data":{"file_id":3,"beg":{"line":56,"col":25},"end":{"line":56,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":3,"name":null,"span":{"data":{"file_id":3,"beg":{"line":57,"col":16},"end":{"line":57,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":2302}},{"index":4,"name":null,"span":{"data":{"file_id":3,"beg":{"line":57,"col":24},"end":{"line":57,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":2355}}]},"body":{"span":{"data":{"file_id":3,"beg":{"line":57,"col":16},"end":{"line":58,"col":13}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":3,"beg":{"line":57,"col":16},"end":{"line":57,"col":21}},"generated_from_span":null},"id":350,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":57,"col":16},"end":{"line":57,"col":21}},"generated_from_span":null},"id":351,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":2302}},{"Ref":{"place":{"kind":{"Local":1},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":57,"col":24},"end":{"line":57,"col":28}},"generated_from_span":null},"id":352,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":57,"col":24},"end":{"line":57,"col":28}},"generated_from_span":null},"id":353,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":2355}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":57,"col":16},"end":{"line":57,"col":28}},"generated_from_span":null},"id":354,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":37}},"generics":{"regions":[{"Body":3},{"Body":4}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":2302}}},{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":2355}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":57,"col":27},"end":{"line":57,"col":28}},"generated_from_span":null},"id":355,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":57,"col":27},"end":{"line":57,"col":28}},"generated_from_span":null},"id":356,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":58,"col":13},"end":{"line":58,"col":13}},"generated_from_span":null},"id":357,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":46,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":23}},{"Ident":["sub_assign",0]}],"span":{"data":{"file_id":3,"beg":{"line":107,"col":12},"end":{"line":109,"col":13}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":"Hint","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":[8437,{"Ref":[{"Var":{"Free":0}},{"Deduplicated":1079},"Mut"]}]},{"Deduplicated":1079}],"output":{"Deduplicated":1108}},"src":{"TraitImpl":{"impl_ref":{"id":23,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":16,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":3,"beg":{"line":107,"col":12},"end":{"line":109,"col":13}},"generated_from_span":null},"bound_body_regions":7,"locals":{"arg_count":2,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":3,"beg":{"line":107,"col":47},"end":{"line":107,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":1108}},{"index":1,"name":"self","span":{"data":{"file_id":3,"beg":{"line":107,"col":26},"end":{"line":107,"col":35}},"generated_from_span":null},"ty":{"HashConsedValue":[2503,{"Ref":[{"Body":1},{"Deduplicated":1079},"Mut"]}]}},{"index":2,"name":"rhs","span":{"data":{"file_id":3,"beg":{"line":107,"col":37},"end":{"line":107,"col":40}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":3,"name":null,"span":{"data":{"file_id":3,"beg":{"line":108,"col":24},"end":{"line":108,"col":37}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":4,"name":null,"span":{"data":{"file_id":3,"beg":{"line":108,"col":24},"end":{"line":108,"col":30}},"generated_from_span":null},"ty":{"Deduplicated":2470}},{"index":5,"name":null,"span":{"data":{"file_id":3,"beg":{"line":108,"col":33},"end":{"line":108,"col":37}},"generated_from_span":null},"ty":{"Deduplicated":2471}}]},"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":358,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1108}},{"Aggregate":[{"Adt":[{"id":"Tuple","generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[]]}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":108,"col":24},"end":{"line":108,"col":37}},"generated_from_span":null},"id":359,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":108,"col":24},"end":{"line":108,"col":30}},"generated_from_span":null},"id":360,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":108,"col":24},"end":{"line":108,"col":30}},"generated_from_span":null},"id":361,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":2470}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2503}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":108,"col":33},"end":{"line":108,"col":37}},"generated_from_span":null},"id":362,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":108,"col":33},"end":{"line":108,"col":37}},"generated_from_span":null},"id":363,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":2471}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":108,"col":24},"end":{"line":108,"col":37}},"generated_from_span":null},"id":364,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":37}},"generics":{"regions":[{"Body":5},{"Body":6}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":2470}}},{"Move":{"kind":{"Local":5},"ty":{"Deduplicated":2471}}}],"dest":{"kind":{"Local":3},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":108,"col":36},"end":{"line":108,"col":37}},"generated_from_span":null},"id":365,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":108,"col":36},"end":{"line":108,"col":37}},"generated_from_span":null},"id":366,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":108,"col":16},"end":{"line":108,"col":37}},"generated_from_span":null},"id":367,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2503}},"Deref"]},"ty":{"Deduplicated":1079}},{"Use":[{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":108,"col":36},"end":{"line":108,"col":37}},"generated_from_span":null},"id":368,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":107,"col":48},"end":{"line":109,"col":13}},"generated_from_span":null},"id":369,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1108}},{"Aggregate":[{"Adt":[{"id":"Tuple","generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[]]}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":109,"col":13},"end":{"line":109,"col":13}},"generated_from_span":null},"id":370,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":47,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":24}},{"Ident":["add_assign",0]}],"span":{"data":{"file_id":3,"beg":{"line":114,"col":12},"end":{"line":116,"col":13}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":"Hint","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":8437},{"Deduplicated":1079}],"output":{"Deduplicated":1108}},"src":{"TraitImpl":{"impl_ref":{"id":24,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":17,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":3,"beg":{"line":114,"col":12},"end":{"line":116,"col":13}},"generated_from_span":null},"bound_body_regions":7,"locals":{"arg_count":2,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":3,"beg":{"line":114,"col":47},"end":{"line":114,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":1108}},{"index":1,"name":"self","span":{"data":{"file_id":3,"beg":{"line":114,"col":26},"end":{"line":114,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":2503}},{"index":2,"name":"rhs","span":{"data":{"file_id":3,"beg":{"line":114,"col":37},"end":{"line":114,"col":40}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":3,"name":null,"span":{"data":{"file_id":3,"beg":{"line":115,"col":24},"end":{"line":115,"col":37}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":4,"name":null,"span":{"data":{"file_id":3,"beg":{"line":115,"col":24},"end":{"line":115,"col":30}},"generated_from_span":null},"ty":{"Deduplicated":2470}},{"index":5,"name":null,"span":{"data":{"file_id":3,"beg":{"line":115,"col":33},"end":{"line":115,"col":37}},"generated_from_span":null},"ty":{"Deduplicated":2471}}]},"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":371,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1108}},{"Aggregate":[{"Adt":[{"id":"Tuple","generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[]]}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":115,"col":24},"end":{"line":115,"col":37}},"generated_from_span":null},"id":372,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":115,"col":24},"end":{"line":115,"col":30}},"generated_from_span":null},"id":373,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":115,"col":24},"end":{"line":115,"col":30}},"generated_from_span":null},"id":374,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":2470}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2503}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":115,"col":33},"end":{"line":115,"col":37}},"generated_from_span":null},"id":375,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":115,"col":33},"end":{"line":115,"col":37}},"generated_from_span":null},"id":376,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":2471}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":115,"col":24},"end":{"line":115,"col":37}},"generated_from_span":null},"id":377,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":38}},"generics":{"regions":[{"Body":5},{"Body":6}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":2470}}},{"Move":{"kind":{"Local":5},"ty":{"Deduplicated":2471}}}],"dest":{"kind":{"Local":3},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":115,"col":36},"end":{"line":115,"col":37}},"generated_from_span":null},"id":378,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":115,"col":36},"end":{"line":115,"col":37}},"generated_from_span":null},"id":379,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":115,"col":16},"end":{"line":115,"col":37}},"generated_from_span":null},"id":380,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2503}},"Deref"]},"ty":{"Deduplicated":1079}},{"Use":[{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":115,"col":36},"end":{"line":115,"col":37}},"generated_from_span":null},"id":381,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":114,"col":48},"end":{"line":116,"col":13}},"generated_from_span":null},"id":382,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1108}},{"Aggregate":[{"Adt":[{"id":"Tuple","generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[]]}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":116,"col":13},"end":{"line":116,"col":13}},"generated_from_span":null},"id":383,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":48,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":25}},{"Ident":["sub_assign",0]}],"span":{"data":{"file_id":3,"beg":{"line":121,"col":12},"end":{"line":123,"col":13}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":"Hint","rename":null,"public":true},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[{"index":0,"name":"'b","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":[8438,{"Ref":[{"Var":{"Free":1}},{"Deduplicated":1079},"Mut"]}]},{"Deduplicated":8297}],"output":{"Deduplicated":1108}},"src":{"TraitImpl":{"impl_ref":{"id":25,"generics":{"regions":[{"Var":{"Free":0}}],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":16,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":8297}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":3,"beg":{"line":121,"col":12},"end":{"line":123,"col":13}},"generated_from_span":null},"bound_body_regions":8,"locals":{"arg_count":2,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":3,"beg":{"line":121,"col":51},"end":{"line":121,"col":51}},"generated_from_span":null},"ty":{"Deduplicated":1108}},{"index":1,"name":"self","span":{"data":{"file_id":3,"beg":{"line":121,"col":26},"end":{"line":121,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":2503}},{"index":2,"name":"rhs","span":{"data":{"file_id":3,"beg":{"line":121,"col":37},"end":{"line":121,"col":40}},"generated_from_span":null},"ty":{"Deduplicated":2470}},{"index":3,"name":null,"span":{"data":{"file_id":3,"beg":{"line":122,"col":24},"end":{"line":122,"col":36}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":4,"name":null,"span":{"data":{"file_id":3,"beg":{"line":122,"col":24},"end":{"line":122,"col":30}},"generated_from_span":null},"ty":{"Deduplicated":2471}},{"index":5,"name":null,"span":{"data":{"file_id":3,"beg":{"line":122,"col":33},"end":{"line":122,"col":36}},"generated_from_span":null},"ty":{"Deduplicated":2401}}]},"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":384,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1108}},{"Aggregate":[{"Adt":[{"id":"Tuple","generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[]]}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":122,"col":24},"end":{"line":122,"col":36}},"generated_from_span":null},"id":385,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":122,"col":24},"end":{"line":122,"col":30}},"generated_from_span":null},"id":386,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":122,"col":24},"end":{"line":122,"col":30}},"generated_from_span":null},"id":387,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":2471}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2503}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":122,"col":33},"end":{"line":122,"col":36}},"generated_from_span":null},"id":388,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":122,"col":33},"end":{"line":122,"col":36}},"generated_from_span":null},"id":389,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":2401}},{"Use":[{"Copy":{"kind":{"Local":2},"ty":{"Deduplicated":2470}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":122,"col":24},"end":{"line":122,"col":36}},"generated_from_span":null},"id":390,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":37}},"generics":{"regions":[{"Body":6},{"Body":7}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":2471}}},{"Move":{"kind":{"Local":5},"ty":{"Deduplicated":2401}}}],"dest":{"kind":{"Local":3},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":122,"col":35},"end":{"line":122,"col":36}},"generated_from_span":null},"id":391,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":122,"col":35},"end":{"line":122,"col":36}},"generated_from_span":null},"id":392,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":122,"col":16},"end":{"line":122,"col":36}},"generated_from_span":null},"id":393,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2503}},"Deref"]},"ty":{"Deduplicated":1079}},{"Use":[{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":122,"col":35},"end":{"line":122,"col":36}},"generated_from_span":null},"id":394,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":121,"col":52},"end":{"line":123,"col":13}},"generated_from_span":null},"id":395,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1108}},{"Aggregate":[{"Adt":[{"id":"Tuple","generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[]]}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":123,"col":13},"end":{"line":123,"col":13}},"generated_from_span":null},"id":396,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":49,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":26}},{"Ident":["add_assign",0]}],"span":{"data":{"file_id":3,"beg":{"line":128,"col":12},"end":{"line":130,"col":13}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":"Hint","rename":null,"public":true},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[{"index":0,"name":"'b","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":8438},{"Deduplicated":8297}],"output":{"Deduplicated":1108}},"src":{"TraitImpl":{"impl_ref":{"id":26,"generics":{"regions":[{"Var":{"Free":0}}],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":17,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":8297}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":3,"beg":{"line":128,"col":12},"end":{"line":130,"col":13}},"generated_from_span":null},"bound_body_regions":8,"locals":{"arg_count":2,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":3,"beg":{"line":128,"col":51},"end":{"line":128,"col":51}},"generated_from_span":null},"ty":{"Deduplicated":1108}},{"index":1,"name":"self","span":{"data":{"file_id":3,"beg":{"line":128,"col":26},"end":{"line":128,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":2503}},{"index":2,"name":"rhs","span":{"data":{"file_id":3,"beg":{"line":128,"col":37},"end":{"line":128,"col":40}},"generated_from_span":null},"ty":{"Deduplicated":2470}},{"index":3,"name":null,"span":{"data":{"file_id":3,"beg":{"line":129,"col":24},"end":{"line":129,"col":36}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":4,"name":null,"span":{"data":{"file_id":3,"beg":{"line":129,"col":24},"end":{"line":129,"col":30}},"generated_from_span":null},"ty":{"Deduplicated":2471}},{"index":5,"name":null,"span":{"data":{"file_id":3,"beg":{"line":129,"col":33},"end":{"line":129,"col":36}},"generated_from_span":null},"ty":{"Deduplicated":2401}}]},"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":397,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1108}},{"Aggregate":[{"Adt":[{"id":"Tuple","generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[]]}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":129,"col":24},"end":{"line":129,"col":36}},"generated_from_span":null},"id":398,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":129,"col":24},"end":{"line":129,"col":30}},"generated_from_span":null},"id":399,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":129,"col":24},"end":{"line":129,"col":30}},"generated_from_span":null},"id":400,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":2471}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2503}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":129,"col":33},"end":{"line":129,"col":36}},"generated_from_span":null},"id":401,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":129,"col":33},"end":{"line":129,"col":36}},"generated_from_span":null},"id":402,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":2401}},{"Use":[{"Copy":{"kind":{"Local":2},"ty":{"Deduplicated":2470}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":129,"col":24},"end":{"line":129,"col":36}},"generated_from_span":null},"id":403,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":38}},"generics":{"regions":[{"Body":6},{"Body":7}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":2471}}},{"Move":{"kind":{"Local":5},"ty":{"Deduplicated":2401}}}],"dest":{"kind":{"Local":3},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":129,"col":35},"end":{"line":129,"col":36}},"generated_from_span":null},"id":404,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":129,"col":35},"end":{"line":129,"col":36}},"generated_from_span":null},"id":405,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":129,"col":16},"end":{"line":129,"col":36}},"generated_from_span":null},"id":406,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2503}},"Deref"]},"ty":{"Deduplicated":1079}},{"Use":[{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":129,"col":35},"end":{"line":129,"col":36}},"generated_from_span":null},"id":407,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":128,"col":52},"end":{"line":130,"col":13}},"generated_from_span":null},"id":408,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1108}},{"Aggregate":[{"Adt":[{"id":"Tuple","generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[]]}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":130,"col":13},"end":{"line":130,"col":13}},"generated_from_span":null},"id":409,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":50,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":27}},{"Ident":["mul",0]}],"span":{"data":{"file_id":3,"beg":{"line":76,"col":12},"end":{"line":78,"col":13}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":"Hint","rename":null,"public":true},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[{"index":0,"name":"'b","mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":1079},{"Deduplicated":8297}],"output":{"Deduplicated":1079}},"src":{"TraitImpl":{"impl_ref":{"id":27,"generics":{"regions":[{"Var":{"Free":0}}],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":15,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":8297},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":3,"beg":{"line":76,"col":12},"end":{"line":78,"col":13}},"generated_from_span":null},"bound_body_regions":6,"locals":{"arg_count":2,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":3,"beg":{"line":76,"col":43},"end":{"line":76,"col":50}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":"self","span":{"data":{"file_id":3,"beg":{"line":76,"col":19},"end":{"line":76,"col":23}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":2,"name":"rhs","span":{"data":{"file_id":3,"beg":{"line":76,"col":25},"end":{"line":76,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":2302}},{"index":3,"name":null,"span":{"data":{"file_id":3,"beg":{"line":77,"col":16},"end":{"line":77,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":2355}},{"index":4,"name":null,"span":{"data":{"file_id":3,"beg":{"line":77,"col":24},"end":{"line":77,"col":27}},"generated_from_span":null},"ty":{"Deduplicated":2470}}]},"body":{"span":{"data":{"file_id":3,"beg":{"line":77,"col":16},"end":{"line":78,"col":13}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":3,"beg":{"line":77,"col":16},"end":{"line":77,"col":21}},"generated_from_span":null},"id":410,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":77,"col":16},"end":{"line":77,"col":21}},"generated_from_span":null},"id":411,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":2355}},{"Ref":{"place":{"kind":{"Local":1},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":77,"col":24},"end":{"line":77,"col":27}},"generated_from_span":null},"id":412,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":77,"col":24},"end":{"line":77,"col":27}},"generated_from_span":null},"id":413,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":2470}},{"Use":[{"Copy":{"kind":{"Local":2},"ty":{"Deduplicated":2302}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":77,"col":16},"end":{"line":77,"col":27}},"generated_from_span":null},"id":414,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":39}},"generics":{"regions":[{"Body":4},{"Body":5}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":2355}}},{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":2470}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":77,"col":26},"end":{"line":77,"col":27}},"generated_from_span":null},"id":415,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":77,"col":26},"end":{"line":77,"col":27}},"generated_from_span":null},"id":416,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":78,"col":13},"end":{"line":78,"col":13}},"generated_from_span":null},"id":417,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":51,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":28}},{"Ident":["mul",0]}],"span":{"data":{"file_id":3,"beg":{"line":85,"col":12},"end":{"line":87,"col":13}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":"Hint","rename":null,"public":true},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[{"index":0,"name":"'a","mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8297},{"Deduplicated":1079}],"output":{"Deduplicated":1079}},"src":{"TraitImpl":{"impl_ref":{"id":28,"generics":{"regions":[{"Var":{"Free":0}}],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":15,"generics":{"regions":[],"types":[{"Deduplicated":8297},{"Deduplicated":1079},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":3,"beg":{"line":85,"col":12},"end":{"line":87,"col":13}},"generated_from_span":null},"bound_body_regions":6,"locals":{"arg_count":2,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":3,"beg":{"line":85,"col":39},"end":{"line":85,"col":46}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":"self","span":{"data":{"file_id":3,"beg":{"line":85,"col":19},"end":{"line":85,"col":23}},"generated_from_span":null},"ty":{"Deduplicated":2302}},{"index":2,"name":"rhs","span":{"data":{"file_id":3,"beg":{"line":85,"col":25},"end":{"line":85,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":3,"name":null,"span":{"data":{"file_id":3,"beg":{"line":86,"col":16},"end":{"line":86,"col":20}},"generated_from_span":null},"ty":{"Deduplicated":2355}},{"index":4,"name":null,"span":{"data":{"file_id":3,"beg":{"line":86,"col":23},"end":{"line":86,"col":27}},"generated_from_span":null},"ty":{"Deduplicated":2470}}]},"body":{"span":{"data":{"file_id":3,"beg":{"line":86,"col":16},"end":{"line":87,"col":13}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":3,"beg":{"line":86,"col":16},"end":{"line":86,"col":20}},"generated_from_span":null},"id":418,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":86,"col":16},"end":{"line":86,"col":20}},"generated_from_span":null},"id":419,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":2355}},{"Use":[{"Copy":{"kind":{"Local":1},"ty":{"Deduplicated":2302}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":86,"col":23},"end":{"line":86,"col":27}},"generated_from_span":null},"id":420,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":86,"col":23},"end":{"line":86,"col":27}},"generated_from_span":null},"id":421,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":2470}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":86,"col":16},"end":{"line":86,"col":27}},"generated_from_span":null},"id":422,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":39}},"generics":{"regions":[{"Body":4},{"Body":5}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":2355}}},{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":2470}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":86,"col":26},"end":{"line":86,"col":27}},"generated_from_span":null},"id":423,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":86,"col":26},"end":{"line":86,"col":27}},"generated_from_span":null},"id":424,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":87,"col":13},"end":{"line":87,"col":13}},"generated_from_span":null},"id":425,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":52,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":29}},{"Ident":["mul",0]}],"span":{"data":{"file_id":3,"beg":{"line":94,"col":12},"end":{"line":96,"col":13}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":"Hint","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":[{"Deduplicated":1079},{"Deduplicated":1079}],"output":{"Deduplicated":1079}},"src":{"TraitImpl":{"impl_ref":{"id":29,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":15,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1079},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":3,"beg":{"line":94,"col":12},"end":{"line":96,"col":13}},"generated_from_span":null},"bound_body_regions":5,"locals":{"arg_count":2,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":3,"beg":{"line":94,"col":39},"end":{"line":94,"col":46}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":"self","span":{"data":{"file_id":3,"beg":{"line":94,"col":19},"end":{"line":94,"col":23}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":2,"name":"rhs","span":{"data":{"file_id":3,"beg":{"line":94,"col":25},"end":{"line":94,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":3,"name":null,"span":{"data":{"file_id":3,"beg":{"line":95,"col":16},"end":{"line":95,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":2302}},{"index":4,"name":null,"span":{"data":{"file_id":3,"beg":{"line":95,"col":24},"end":{"line":95,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":2355}}]},"body":{"span":{"data":{"file_id":3,"beg":{"line":95,"col":16},"end":{"line":96,"col":13}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":3,"beg":{"line":95,"col":16},"end":{"line":95,"col":21}},"generated_from_span":null},"id":426,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":95,"col":16},"end":{"line":95,"col":21}},"generated_from_span":null},"id":427,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":2302}},{"Ref":{"place":{"kind":{"Local":1},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":95,"col":24},"end":{"line":95,"col":28}},"generated_from_span":null},"id":428,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":95,"col":24},"end":{"line":95,"col":28}},"generated_from_span":null},"id":429,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":2355}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":95,"col":16},"end":{"line":95,"col":28}},"generated_from_span":null},"id":430,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":39}},"generics":{"regions":[{"Body":3},{"Body":4}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":2302}}},{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":2355}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":95,"col":27},"end":{"line":95,"col":28}},"generated_from_span":null},"id":431,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":95,"col":27},"end":{"line":95,"col":28}},"generated_from_span":null},"id":432,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":96,"col":13},"end":{"line":96,"col":13}},"generated_from_span":null},"id":433,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":53,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":30}},{"Ident":["mul_assign",0]}],"span":{"data":{"file_id":3,"beg":{"line":141,"col":12},"end":{"line":143,"col":13}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":"Hint","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":8437},{"Deduplicated":1079}],"output":{"Deduplicated":1108}},"src":{"TraitImpl":{"impl_ref":{"id":30,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":18,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":3,"beg":{"line":141,"col":12},"end":{"line":143,"col":13}},"generated_from_span":null},"bound_body_regions":7,"locals":{"arg_count":2,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":3,"beg":{"line":141,"col":47},"end":{"line":141,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":1108}},{"index":1,"name":"self","span":{"data":{"file_id":3,"beg":{"line":141,"col":26},"end":{"line":141,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":2503}},{"index":2,"name":"rhs","span":{"data":{"file_id":3,"beg":{"line":141,"col":37},"end":{"line":141,"col":40}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":3,"name":null,"span":{"data":{"file_id":3,"beg":{"line":142,"col":24},"end":{"line":142,"col":37}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":4,"name":null,"span":{"data":{"file_id":3,"beg":{"line":142,"col":24},"end":{"line":142,"col":30}},"generated_from_span":null},"ty":{"Deduplicated":2470}},{"index":5,"name":null,"span":{"data":{"file_id":3,"beg":{"line":142,"col":33},"end":{"line":142,"col":37}},"generated_from_span":null},"ty":{"Deduplicated":2471}}]},"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":434,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1108}},{"Aggregate":[{"Adt":[{"id":"Tuple","generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[]]}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":142,"col":24},"end":{"line":142,"col":37}},"generated_from_span":null},"id":435,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":142,"col":24},"end":{"line":142,"col":30}},"generated_from_span":null},"id":436,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":142,"col":24},"end":{"line":142,"col":30}},"generated_from_span":null},"id":437,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":2470}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2503}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":142,"col":33},"end":{"line":142,"col":37}},"generated_from_span":null},"id":438,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":142,"col":33},"end":{"line":142,"col":37}},"generated_from_span":null},"id":439,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":2471}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":142,"col":24},"end":{"line":142,"col":37}},"generated_from_span":null},"id":440,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":39}},"generics":{"regions":[{"Body":5},{"Body":6}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":2470}}},{"Move":{"kind":{"Local":5},"ty":{"Deduplicated":2471}}}],"dest":{"kind":{"Local":3},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":142,"col":36},"end":{"line":142,"col":37}},"generated_from_span":null},"id":441,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":142,"col":36},"end":{"line":142,"col":37}},"generated_from_span":null},"id":442,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":142,"col":16},"end":{"line":142,"col":37}},"generated_from_span":null},"id":443,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2503}},"Deref"]},"ty":{"Deduplicated":1079}},{"Use":[{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":142,"col":36},"end":{"line":142,"col":37}},"generated_from_span":null},"id":444,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":141,"col":48},"end":{"line":143,"col":13}},"generated_from_span":null},"id":445,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1108}},{"Aggregate":[{"Adt":[{"id":"Tuple","generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[]]}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":143,"col":13},"end":{"line":143,"col":13}},"generated_from_span":null},"id":446,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":54,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":31}},{"Ident":["mul_assign",0]}],"span":{"data":{"file_id":3,"beg":{"line":148,"col":12},"end":{"line":150,"col":13}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":"Hint","rename":null,"public":true},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[{"index":0,"name":"'b","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":8438},{"Deduplicated":8297}],"output":{"Deduplicated":1108}},"src":{"TraitImpl":{"impl_ref":{"id":31,"generics":{"regions":[{"Var":{"Free":0}}],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":18,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":8297}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":3,"beg":{"line":148,"col":12},"end":{"line":150,"col":13}},"generated_from_span":null},"bound_body_regions":8,"locals":{"arg_count":2,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":3,"beg":{"line":148,"col":51},"end":{"line":148,"col":51}},"generated_from_span":null},"ty":{"Deduplicated":1108}},{"index":1,"name":"self","span":{"data":{"file_id":3,"beg":{"line":148,"col":26},"end":{"line":148,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":2503}},{"index":2,"name":"rhs","span":{"data":{"file_id":3,"beg":{"line":148,"col":37},"end":{"line":148,"col":40}},"generated_from_span":null},"ty":{"Deduplicated":2470}},{"index":3,"name":null,"span":{"data":{"file_id":3,"beg":{"line":149,"col":24},"end":{"line":149,"col":36}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":4,"name":null,"span":{"data":{"file_id":3,"beg":{"line":149,"col":24},"end":{"line":149,"col":30}},"generated_from_span":null},"ty":{"Deduplicated":2471}},{"index":5,"name":null,"span":{"data":{"file_id":3,"beg":{"line":149,"col":33},"end":{"line":149,"col":36}},"generated_from_span":null},"ty":{"Deduplicated":2401}}]},"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":447,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1108}},{"Aggregate":[{"Adt":[{"id":"Tuple","generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[]]}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":149,"col":24},"end":{"line":149,"col":36}},"generated_from_span":null},"id":448,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":149,"col":24},"end":{"line":149,"col":30}},"generated_from_span":null},"id":449,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":149,"col":24},"end":{"line":149,"col":30}},"generated_from_span":null},"id":450,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":2471}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2503}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":149,"col":33},"end":{"line":149,"col":36}},"generated_from_span":null},"id":451,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":149,"col":33},"end":{"line":149,"col":36}},"generated_from_span":null},"id":452,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":2401}},{"Use":[{"Copy":{"kind":{"Local":2},"ty":{"Deduplicated":2470}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":149,"col":24},"end":{"line":149,"col":36}},"generated_from_span":null},"id":453,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":39}},"generics":{"regions":[{"Body":6},{"Body":7}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":2471}}},{"Move":{"kind":{"Local":5},"ty":{"Deduplicated":2401}}}],"dest":{"kind":{"Local":3},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":149,"col":35},"end":{"line":149,"col":36}},"generated_from_span":null},"id":454,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":149,"col":35},"end":{"line":149,"col":36}},"generated_from_span":null},"id":455,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":149,"col":16},"end":{"line":149,"col":36}},"generated_from_span":null},"id":456,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2503}},"Deref"]},"ty":{"Deduplicated":1079}},{"Use":[{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":149,"col":35},"end":{"line":149,"col":36}},"generated_from_span":null},"id":457,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":148,"col":52},"end":{"line":150,"col":13}},"generated_from_span":null},"id":458,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1108}},{"Aggregate":[{"Adt":[{"id":"Tuple","generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[]]}]},"comments_before":[]},{"span":{"data":{"file_id":3,"beg":{"line":150,"col":13},"end":{"line":150,"col":13}},"generated_from_span":null},"id":459,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":55,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":32}},{"Ident":["sum",0]}],"span":{"data":{"file_id":2,"beg":{"line":179,"col":4},"end":{"line":181,"col":5}},"generated_from_span":null},"source_text":"fn sum<I: Iterator<Item = T>>(iter: I) -> Self {\n iter.fold(Self::ZERO, |acc, item| acc + item.borrow())\n }","attr_info":{"attributes":[],"inline":null,"rename":null,"public":true},"is_local":true,"opacity":"Opaque","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"T"},{"index":1,"name":"I"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":2,"beg":{"line":178,"col":8},"end":{"line":178,"col":34}},"generated_from_span":null},"origin":"WhereClauseOnImpl","trait_":{"regions":[],"skip_binder":{"id":19,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":1,"span":{"data":{"file_id":2,"beg":{"line":179,"col":14},"end":{"line":179,"col":32}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":21,"generics":{"regions":[],"types":[{"Deduplicated":8295},{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8295}],"output":{"Deduplicated":1079}},"src":{"TraitImpl":{"impl_ref":{"id":32,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8299,{"kind":{"Clause":{"Free":0}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":19,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}}}]}]}},"trait_ref":{"id":20,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":56,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":33}},{"Ident":["product",0]}],"span":{"data":{"file_id":2,"beg":{"line":185,"col":4},"end":{"line":187,"col":5}},"generated_from_span":null},"source_text":"fn product<I: Iterator<Item = T>>(iter: I) -> Self {\n iter.fold(Self::ONE, |acc, item| acc * item.borrow())\n }","attr_info":{"attributes":[],"inline":null,"rename":null,"public":true},"is_local":true,"opacity":"Opaque","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"T"},{"index":1,"name":"I"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":2,"beg":{"line":184,"col":8},"end":{"line":184,"col":34}},"generated_from_span":null},"origin":"WhereClauseOnImpl","trait_":{"regions":[],"skip_binder":{"id":19,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":1,"span":{"data":{"file_id":2,"beg":{"line":185,"col":18},"end":{"line":185,"col":36}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":21,"generics":{"regions":[],"types":[{"Deduplicated":8295},{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8295}],"output":{"Deduplicated":1079}},"src":{"TraitImpl":{"impl_ref":{"id":33,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[{"Deduplicated":8299}]}},"trait_ref":{"id":22,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":57,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["INV",0]}],"span":{"data":{"file_id":2,"beg":{"line":191,"col":0},"end":{"line":191,"col":36}},"generated_from_span":null},"source_text":"const INV: u64 = 0x992d30ecffffffff;","attr_info":{"attributes":[{"DocComment":" INV = -(p^{-1} mod 2^64) mod 2^64"}],"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":1072}},"src":"TopLevel","is_global_initializer":1,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":191,"col":0},"end":{"line":191,"col":36}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":0,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":191,"col":11},"end":{"line":191,"col":14}},"generated_from_span":null},"ty":{"Deduplicated":1072}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":191,"col":0},"end":{"line":191,"col":36}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":191,"col":17},"end":{"line":191,"col":35}},"generated_from_span":null},"id":460,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1072}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","11037532056220336127"]}}},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":191,"col":0},"end":{"line":191,"col":36}},"generated_from_span":null},"id":461,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":58,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["R",0]}],"span":{"data":{"file_id":2,"beg":{"line":194,"col":0},"end":{"line":199,"col":3}},"generated_from_span":null},"source_text":"const R: Fp = Fp([\n 0x34786d38fffffffd,\n 0x992c350be41914ad,\n 0xffffffffffffffff,\n 0x3fffffffffffffff,\n]);","attr_info":{"attributes":[{"DocComment":" R = 2^256 mod p"}],"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":1079}},"src":"TopLevel","is_global_initializer":2,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":194,"col":0},"end":{"line":199,"col":3}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":0,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":194,"col":9},"end":{"line":194,"col":11}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":null,"span":{"data":{"file_id":2,"beg":{"line":194,"col":17},"end":{"line":199,"col":1}},"generated_from_span":null},"ty":{"Deduplicated":1074}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":194,"col":0},"end":{"line":199,"col":3}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":194,"col":17},"end":{"line":199,"col":1}},"generated_from_span":null},"id":462,"kind":{"StorageLive":1},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":194,"col":17},"end":{"line":199,"col":1}},"generated_from_span":null},"id":463,"kind":{"Assign":[{"kind":{"Local":1},"ty":{"Deduplicated":1074}},{"Aggregate":[{"Array":[{"Deduplicated":1072},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}]},[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","3780891978758094845"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","11037255111966004397"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","18446744073709551615"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","4611686018427387903"]}}},"ty":{"Deduplicated":1072}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":194,"col":14},"end":{"line":199,"col":2}},"generated_from_span":null},"id":464,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1079}},{"Aggregate":[{"Adt":[{"id":{"Adt":0},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[{"Move":{"kind":{"Local":1},"ty":{"Deduplicated":1074}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":199,"col":1},"end":{"line":199,"col":2}},"generated_from_span":null},"id":465,"kind":{"StorageDead":1},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":194,"col":0},"end":{"line":199,"col":3}},"generated_from_span":null},"id":466,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":59,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["R2",0]}],"span":{"data":{"file_id":2,"beg":{"line":202,"col":0},"end":{"line":207,"col":3}},"generated_from_span":null},"source_text":"const R2: Fp = Fp([\n 0x8c78ecb30000000f,\n 0xd7d30dbd8b0de0e7,\n 0x7797a99bc3c95d18,\n 0x096d41af7b9cb714,\n]);","attr_info":{"attributes":[{"DocComment":" R^2 = 2^512 mod p"}],"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":1079}},"src":"TopLevel","is_global_initializer":3,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":202,"col":0},"end":{"line":207,"col":3}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":0,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":202,"col":10},"end":{"line":202,"col":12}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":null,"span":{"data":{"file_id":2,"beg":{"line":202,"col":18},"end":{"line":207,"col":1}},"generated_from_span":null},"ty":{"Deduplicated":1074}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":202,"col":0},"end":{"line":207,"col":3}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":202,"col":18},"end":{"line":207,"col":1}},"generated_from_span":null},"id":467,"kind":{"StorageLive":1},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":202,"col":18},"end":{"line":207,"col":1}},"generated_from_span":null},"id":468,"kind":{"Assign":[{"kind":{"Local":1},"ty":{"Deduplicated":1074}},{"Aggregate":[{"Array":[{"Deduplicated":1072},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}]},[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","10122100416058490895"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","15551789045973377255"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","8617542898466512152"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","679271340751763220"]}}},"ty":{"Deduplicated":1072}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":202,"col":15},"end":{"line":207,"col":2}},"generated_from_span":null},"id":469,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1079}},{"Aggregate":[{"Adt":[{"id":{"Adt":0},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[{"Move":{"kind":{"Local":1},"ty":{"Deduplicated":1074}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":207,"col":1},"end":{"line":207,"col":2}},"generated_from_span":null},"id":470,"kind":{"StorageDead":1},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":202,"col":0},"end":{"line":207,"col":3}},"generated_from_span":null},"id":471,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":60,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["R3",0]}],"span":{"data":{"file_id":2,"beg":{"line":210,"col":0},"end":{"line":215,"col":3}},"generated_from_span":null},"source_text":"const R3: Fp = Fp([\n 0xf185a5993a9e10f9,\n 0xf6a68f3b6ac5b1d1,\n 0xdf8d1014353fd42c,\n 0x2ae309222d2d9910,\n]);","attr_info":{"attributes":[{"DocComment":" R^3 = 2^768 mod p"}],"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":1079}},"src":"TopLevel","is_global_initializer":4,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":210,"col":0},"end":{"line":215,"col":3}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":0,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":210,"col":10},"end":{"line":210,"col":12}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":null,"span":{"data":{"file_id":2,"beg":{"line":210,"col":18},"end":{"line":215,"col":1}},"generated_from_span":null},"ty":{"Deduplicated":1074}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":210,"col":0},"end":{"line":215,"col":3}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":210,"col":18},"end":{"line":215,"col":1}},"generated_from_span":null},"id":472,"kind":{"StorageLive":1},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":210,"col":18},"end":{"line":215,"col":1}},"generated_from_span":null},"id":473,"kind":{"Assign":[{"kind":{"Local":1},"ty":{"Deduplicated":1074}},{"Aggregate":[{"Array":[{"Deduplicated":1072},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}]},[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","17403498412575166713"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","17773050464821424593"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","16108549121152898092"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","3090323811697793296"]}}},"ty":{"Deduplicated":1072}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":210,"col":15},"end":{"line":215,"col":2}},"generated_from_span":null},"id":474,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1079}},{"Aggregate":[{"Adt":[{"id":{"Adt":0},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[{"Move":{"kind":{"Local":1},"ty":{"Deduplicated":1074}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":215,"col":1},"end":{"line":215,"col":2}},"generated_from_span":null},"id":475,"kind":{"StorageDead":1},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":210,"col":0},"end":{"line":215,"col":3}},"generated_from_span":null},"id":476,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":61,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["GENERATOR",0]}],"span":{"data":{"file_id":2,"beg":{"line":219,"col":0},"end":{"line":224,"col":3}},"generated_from_span":null},"source_text":"const GENERATOR: Fp = Fp::from_raw([\n 0x0000_0000_0000_0005,\n 0x0000_0000_0000_0000,\n 0x0000_0000_0000_0000,\n 0x0000_0000_0000_0000,\n]);","attr_info":{"attributes":[{"DocComment":" `GENERATOR = 5 mod p` is a generator of the `p - 1` order multiplicative"},{"DocComment":" subgroup, or in other words a primitive root of the field."}],"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":1079}},"src":"TopLevel","is_global_initializer":5,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":219,"col":0},"end":{"line":224,"col":3}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":0,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":219,"col":17},"end":{"line":219,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":null,"span":{"data":{"file_id":2,"beg":{"line":219,"col":35},"end":{"line":224,"col":1}},"generated_from_span":null},"ty":{"Deduplicated":1074}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":219,"col":0},"end":{"line":224,"col":3}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":219,"col":35},"end":{"line":224,"col":1}},"generated_from_span":null},"id":477,"kind":{"StorageLive":1},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":219,"col":35},"end":{"line":224,"col":1}},"generated_from_span":null},"id":478,"kind":{"Assign":[{"kind":{"Local":1},"ty":{"Deduplicated":1074}},{"Aggregate":[{"Array":[{"Deduplicated":1072},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}]},[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","5"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":219,"col":22},"end":{"line":224,"col":2}},"generated_from_span":null},"id":479,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":71}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":1},"ty":{"Deduplicated":1074}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":224,"col":1},"end":{"line":224,"col":2}},"generated_from_span":null},"id":480,"kind":{"StorageDead":1},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":219,"col":0},"end":{"line":224,"col":3}},"generated_from_span":null},"id":481,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":62,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["S",0]}],"span":{"data":{"file_id":2,"beg":{"line":226,"col":0},"end":{"line":226,"col":18}},"generated_from_span":null},"source_text":"const S: u32 = 32;","attr_info":{"attributes":[],"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":{"HashConsedValue":[1834,{"Literal":{"UInt":"U32"}}]}},"src":"TopLevel","is_global_initializer":6,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":226,"col":0},"end":{"line":226,"col":18}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":0,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":226,"col":9},"end":{"line":226,"col":12}},"generated_from_span":null},"ty":{"Deduplicated":1834}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":226,"col":0},"end":{"line":226,"col":18}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":226,"col":15},"end":{"line":226,"col":17}},"generated_from_span":null},"id":482,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1834}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U32","32"]}}},"ty":{"Deduplicated":1834}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":226,"col":0},"end":{"line":226,"col":18}},"generated_from_span":null},"id":483,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":63,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["ROOT_OF_UNITY",0]}],"span":{"data":{"file_id":2,"beg":{"line":231,"col":0},"end":{"line":236,"col":3}},"generated_from_span":null},"source_text":"const ROOT_OF_UNITY: Fp = Fp::from_raw([\n 0xbdad6fabd87ea32f,\n 0xea322bf2b7bb7584,\n 0x362120830561f81a,\n 0x2bce74deac30ebda,\n]);","attr_info":{"attributes":[{"DocComment":" GENERATOR^t where t * 2^s + 1 = p"},{"DocComment":" with t odd. In other words, this"},{"DocComment":" is a 2^s root of unity."}],"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":1079}},"src":"TopLevel","is_global_initializer":7,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":231,"col":0},"end":{"line":236,"col":3}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":0,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":231,"col":21},"end":{"line":231,"col":23}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":null,"span":{"data":{"file_id":2,"beg":{"line":231,"col":39},"end":{"line":236,"col":1}},"generated_from_span":null},"ty":{"Deduplicated":1074}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":231,"col":0},"end":{"line":236,"col":3}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":231,"col":39},"end":{"line":236,"col":1}},"generated_from_span":null},"id":484,"kind":{"StorageLive":1},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":231,"col":39},"end":{"line":236,"col":1}},"generated_from_span":null},"id":485,"kind":{"Assign":[{"kind":{"Local":1},"ty":{"Deduplicated":1074}},{"Aggregate":[{"Array":[{"Deduplicated":1072},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}]},[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","13667703228001592111"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","16875599075175265668"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","3900434499382671386"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","3156588888553745370"]}}},"ty":{"Deduplicated":1072}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":231,"col":26},"end":{"line":236,"col":2}},"generated_from_span":null},"id":486,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":71}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":1},"ty":{"Deduplicated":1074}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":236,"col":1},"end":{"line":236,"col":2}},"generated_from_span":null},"id":487,"kind":{"StorageDead":1},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":231,"col":0},"end":{"line":236,"col":3}},"generated_from_span":null},"id":488,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":64,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["DELTA",0]}],"span":{"data":{"file_id":2,"beg":{"line":241,"col":0},"end":{"line":246,"col":3}},"generated_from_span":null},"source_text":"const DELTA: Fp = Fp::from_raw([\n 0x6a6ccd20dd7b9ba2,\n 0xf5e4f3f13eee5636,\n 0xbd455b7112a5049d,\n 0x0a757d0f0006ab6c,\n]);","attr_info":{"attributes":[{"DocComment":" GENERATOR^{2^s} where t * 2^s + 1 = p"},{"DocComment":" with t odd. In other words, this"},{"DocComment":" is a t root of unity."}],"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":1079}},"src":"TopLevel","is_global_initializer":8,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":241,"col":0},"end":{"line":246,"col":3}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":0,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":241,"col":13},"end":{"line":241,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":null,"span":{"data":{"file_id":2,"beg":{"line":241,"col":31},"end":{"line":246,"col":1}},"generated_from_span":null},"ty":{"Deduplicated":1074}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":241,"col":0},"end":{"line":246,"col":3}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":241,"col":31},"end":{"line":246,"col":1}},"generated_from_span":null},"id":489,"kind":{"StorageLive":1},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":241,"col":31},"end":{"line":246,"col":1}},"generated_from_span":null},"id":490,"kind":{"Assign":[{"kind":{"Local":1},"ty":{"Deduplicated":1074}},{"Aggregate":[{"Array":[{"Deduplicated":1072},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}]},[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","7668729806543625122"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","17718555051450848822"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","13638407587763651741"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","753646016032844652"]}}},"ty":{"Deduplicated":1072}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":241,"col":18},"end":{"line":246,"col":2}},"generated_from_span":null},"id":491,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":71}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":1},"ty":{"Deduplicated":1074}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":246,"col":1},"end":{"line":246,"col":2}},"generated_from_span":null},"id":492,"kind":{"StorageDead":1},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":241,"col":0},"end":{"line":246,"col":3}},"generated_from_span":null},"id":493,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":65,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["T_MINUS1_OVER2",0]}],"span":{"data":{"file_id":2,"beg":{"line":250,"col":0},"end":{"line":255,"col":2}},"generated_from_span":null},"source_text":"const T_MINUS1_OVER2: [u64; 4] = [\n 0x04a6_7c8d_cc96_9876,\n 0x0000_0000_1123_4c7e,\n 0x0000_0000_0000_0000,\n 0x0000_0000_2000_0000,\n];","attr_info":{"attributes":[{"DocComment":" `(t - 1) // 2` where t * 2^s + 1 = p with t odd."}],"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":1074}},"src":"TopLevel","is_global_initializer":9,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":250,"col":0},"end":{"line":255,"col":2}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":0,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":250,"col":22},"end":{"line":250,"col":30}},"generated_from_span":null},"ty":{"Deduplicated":1074}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":250,"col":0},"end":{"line":255,"col":2}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":250,"col":33},"end":{"line":255,"col":1}},"generated_from_span":null},"id":494,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1074}},{"Aggregate":[{"Array":[{"Deduplicated":1072},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}]},[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","335092170750335094"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","287526014"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","536870912"]}}},"ty":{"Deduplicated":1072}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":250,"col":0},"end":{"line":255,"col":2}},"generated_from_span":null},"id":495,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":66,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":34}},{"Ident":["default",0]}],"span":{"data":{"file_id":2,"beg":{"line":259,"col":4},"end":{"line":261,"col":5}},"generated_from_span":null},"source_text":"fn default() -> Self {\n Self::zero()\n }","attr_info":{"attributes":[],"inline":"Hint","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":1079}},"src":{"TraitImpl":{"impl_ref":{"id":34,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":23,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":259,"col":4},"end":{"line":261,"col":5}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":0,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":259,"col":20},"end":{"line":259,"col":24}},"generated_from_span":null},"ty":{"Deduplicated":1079}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":261,"col":5},"end":{"line":261,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":260,"col":8},"end":{"line":260,"col":20}},"generated_from_span":null},"id":496,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":67}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":261,"col":5},"end":{"line":261,"col":5}},"generated_from_span":null},"id":497,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":67,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":1079},"kind":"InherentImplBlock"}}},{"Ident":["zero",0]}],"span":{"data":{"file_id":2,"beg":{"line":267,"col":4},"end":{"line":269,"col":5}},"generated_from_span":null},"source_text":"pub const fn zero() -> Fp {\n Fp([0, 0, 0, 0])\n }","attr_info":{"attributes":[{"DocComment":" Returns zero, the additive identity."}],"inline":"Hint","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":1079}},"src":"TopLevel","is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":267,"col":4},"end":{"line":269,"col":5}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":0,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":267,"col":27},"end":{"line":267,"col":29}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":null,"span":{"data":{"file_id":2,"beg":{"line":268,"col":11},"end":{"line":268,"col":23}},"generated_from_span":null},"ty":{"Deduplicated":1074}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":268,"col":8},"end":{"line":269,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":268,"col":11},"end":{"line":268,"col":23}},"generated_from_span":null},"id":498,"kind":{"StorageLive":1},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":268,"col":11},"end":{"line":268,"col":23}},"generated_from_span":null},"id":499,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":"ArrayRepeat"}},"generics":{"regions":[],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":1},"ty":{"Deduplicated":1074}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":268,"col":8},"end":{"line":268,"col":24}},"generated_from_span":null},"id":500,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1079}},{"Aggregate":[{"Adt":[{"id":{"Adt":0},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[{"Move":{"kind":{"Local":1},"ty":{"Deduplicated":1074}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":268,"col":23},"end":{"line":268,"col":24}},"generated_from_span":null},"id":501,"kind":{"StorageDead":1},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":269,"col":5},"end":{"line":269,"col":5}},"generated_from_span":null},"id":502,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":68,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":1079},"kind":"InherentImplBlock"}}},{"Ident":["one",0]}],"span":{"data":{"file_id":2,"beg":{"line":273,"col":4},"end":{"line":275,"col":5}},"generated_from_span":null},"source_text":"pub const fn one() -> Fp {\n R\n }","attr_info":{"attributes":[{"DocComment":" Returns one, the multiplicative identity."}],"inline":"Hint","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":1079}},"src":"TopLevel","is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":273,"col":4},"end":{"line":275,"col":5}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":0,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":273,"col":26},"end":{"line":273,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":1079}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":274,"col":8},"end":{"line":275,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":274,"col":8},"end":{"line":274,"col":9}},"generated_from_span":null},"id":503,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":2,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":275,"col":5},"end":{"line":275,"col":5}},"generated_from_span":null},"id":504,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":69,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":1079},"kind":"InherentImplBlock"}}},{"Ident":["double",0]}],"span":{"data":{"file_id":2,"beg":{"line":279,"col":4},"end":{"line":282,"col":5}},"generated_from_span":null},"source_text":"pub const fn double(&self) -> Fp {\n // TODO: This can be achieved more efficiently with a bitshift.\n self.add(self)\n }","attr_info":{"attributes":[{"DocComment":" Doubles this field element."}],"inline":"Hint","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":8297}],"output":{"Deduplicated":1079}},"src":"TopLevel","is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":279,"col":4},"end":{"line":282,"col":5}},"generated_from_span":null},"bound_body_regions":8,"locals":{"arg_count":1,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":279,"col":34},"end":{"line":279,"col":36}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":"self","span":{"data":{"file_id":2,"beg":{"line":279,"col":24},"end":{"line":279,"col":29}},"generated_from_span":null},"ty":{"Deduplicated":2302}},{"index":2,"name":null,"span":{"data":{"file_id":2,"beg":{"line":281,"col":8},"end":{"line":281,"col":12}},"generated_from_span":null},"ty":{"Deduplicated":2355}},{"index":3,"name":null,"span":{"data":{"file_id":2,"beg":{"line":281,"col":17},"end":{"line":281,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":2470}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":281,"col":8},"end":{"line":282,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":281,"col":8},"end":{"line":281,"col":12}},"generated_from_span":null},"id":505,"kind":{"StorageLive":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":281,"col":8},"end":{"line":281,"col":12}},"generated_from_span":null},"id":506,"kind":{"Assign":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":["TODO: This can be achieved more efficiently with a bitshift."]},{"span":{"data":{"file_id":2,"beg":{"line":281,"col":17},"end":{"line":281,"col":21}},"generated_from_span":null},"id":507,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":281,"col":17},"end":{"line":281,"col":21}},"generated_from_span":null},"id":508,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":2470}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":281,"col":8},"end":{"line":281,"col":22}},"generated_from_span":null},"id":509,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":76}},"generics":{"regions":[{"Body":6},{"Body":7}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":2},"ty":{"Deduplicated":2355}}},{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":2470}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":281,"col":21},"end":{"line":281,"col":22}},"generated_from_span":null},"id":510,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":281,"col":21},"end":{"line":281,"col":22}},"generated_from_span":null},"id":511,"kind":{"StorageDead":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":282,"col":5},"end":{"line":282,"col":5}},"generated_from_span":null},"id":512,"kind":"Return","comments_before":[]}]},"comments":[[281,["TODO: This can be achieved more efficiently with a bitshift."]]]}}},{"def_id":70,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":1079},"kind":"InherentImplBlock"}}},{"Ident":["from_u512",0]}],"span":{"data":{"file_id":2,"beg":{"line":284,"col":4},"end":{"line":302,"col":5}},"generated_from_span":null},"source_text":"fn from_u512(limbs: [u64; 8]) -> Fp {\n // We reduce an arbitrary 512-bit number by decomposing it into two 256-bit digits\n // with the higher bits multiplied by 2^256. Thus, we perform two reductions\n //\n // 1. the lower bits are multiplied by R^2, as normal\n // 2. the upper bits are multiplied by R^2 * 2^256 = R^3\n //\n // and computing their sum in the field. It remains to see that arbitrary 256-bit\n // numbers can be placed into Montgomery form safely using the reduction. The\n // reduction works so long as the product is less than R=2^256 multiplied by\n // the modulus. This holds because for any `c` smaller than the modulus, we have\n // that (2^256 - 1)*c is an acceptable product for the reduction. Therefore, the\n // reduction always works so long as `c` is in the field; in this case it is either the\n // constant `R2` or `R3`.\n let d0 = Fp([limbs[0], limbs[1], limbs[2], limbs[3]]);\n let d1 = Fp([limbs[4], limbs[5], limbs[6], limbs[7]]);\n // Convert to Montgomery form\n d0 * R2 + d1 * R3\n }","attr_info":{"attributes":[],"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":[{"HashConsedValue":[4585,{"Array":[{"Deduplicated":1072},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}]}]}],"output":{"Deduplicated":1079}},"src":"TopLevel","is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":284,"col":4},"end":{"line":302,"col":5}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":1,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":284,"col":37},"end":{"line":284,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":"limbs","span":{"data":{"file_id":2,"beg":{"line":284,"col":17},"end":{"line":284,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":4585}},{"index":2,"name":"d0","span":{"data":{"file_id":2,"beg":{"line":298,"col":12},"end":{"line":298,"col":14}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":3,"name":null,"span":{"data":{"file_id":2,"beg":{"line":298,"col":20},"end":{"line":298,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1074}},{"index":4,"name":null,"span":{"data":{"file_id":2,"beg":{"line":298,"col":21},"end":{"line":298,"col":29}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":5,"name":null,"span":{"data":{"file_id":2,"beg":{"line":298,"col":27},"end":{"line":298,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":6,"name":null,"span":{"data":{"file_id":2,"beg":{"line":298,"col":31},"end":{"line":298,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":7,"name":null,"span":{"data":{"file_id":2,"beg":{"line":298,"col":37},"end":{"line":298,"col":38}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":8,"name":null,"span":{"data":{"file_id":2,"beg":{"line":298,"col":41},"end":{"line":298,"col":49}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":9,"name":null,"span":{"data":{"file_id":2,"beg":{"line":298,"col":47},"end":{"line":298,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":10,"name":null,"span":{"data":{"file_id":2,"beg":{"line":298,"col":51},"end":{"line":298,"col":59}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":11,"name":null,"span":{"data":{"file_id":2,"beg":{"line":298,"col":57},"end":{"line":298,"col":58}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":12,"name":"d1","span":{"data":{"file_id":2,"beg":{"line":299,"col":12},"end":{"line":299,"col":14}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":13,"name":null,"span":{"data":{"file_id":2,"beg":{"line":299,"col":20},"end":{"line":299,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1074}},{"index":14,"name":null,"span":{"data":{"file_id":2,"beg":{"line":299,"col":21},"end":{"line":299,"col":29}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":15,"name":null,"span":{"data":{"file_id":2,"beg":{"line":299,"col":27},"end":{"line":299,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":16,"name":null,"span":{"data":{"file_id":2,"beg":{"line":299,"col":31},"end":{"line":299,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":17,"name":null,"span":{"data":{"file_id":2,"beg":{"line":299,"col":37},"end":{"line":299,"col":38}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":18,"name":null,"span":{"data":{"file_id":2,"beg":{"line":299,"col":41},"end":{"line":299,"col":49}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":19,"name":null,"span":{"data":{"file_id":2,"beg":{"line":299,"col":47},"end":{"line":299,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":20,"name":null,"span":{"data":{"file_id":2,"beg":{"line":299,"col":51},"end":{"line":299,"col":59}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":21,"name":null,"span":{"data":{"file_id":2,"beg":{"line":299,"col":57},"end":{"line":299,"col":58}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":22,"name":null,"span":{"data":{"file_id":2,"beg":{"line":301,"col":8},"end":{"line":301,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":23,"name":null,"span":{"data":{"file_id":2,"beg":{"line":301,"col":8},"end":{"line":301,"col":10}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":24,"name":null,"span":{"data":{"file_id":2,"beg":{"line":301,"col":18},"end":{"line":301,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":25,"name":null,"span":{"data":{"file_id":2,"beg":{"line":301,"col":18},"end":{"line":301,"col":20}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":26,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"HashConsedValue":[7282,{"Ref":["Erased",{"Deduplicated":4585},"Shared"]}]}},{"index":27,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":28,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7282}},{"index":29,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":30,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7282}},{"index":31,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":32,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7282}},{"index":33,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":34,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7282}},{"index":35,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":36,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7282}},{"index":37,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":38,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7282}},{"index":39,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":40,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7282}},{"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":7281}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":298,"col":12},"end":{"line":302,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":298,"col":12},"end":{"line":298,"col":14}},"generated_from_span":null},"id":521,"kind":{"StorageLive":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":20},"end":{"line":298,"col":60}},"generated_from_span":null},"id":522,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":21},"end":{"line":298,"col":29}},"generated_from_span":null},"id":523,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":27},"end":{"line":298,"col":28}},"generated_from_span":null},"id":524,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":27},"end":{"line":298,"col":28}},"generated_from_span":null},"id":525,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":["We reduce an arbitrary 512-bit number by decomposing it into two 256-bit digits","with the higher bits multiplied by 2^256. Thus, we perform two reductions","","1. the lower bits are multiplied by R^2, as normal","2. the upper bits are multiplied by R^2 * 2^256 = R^3","","and computing their sum in the field. It remains to see that arbitrary 256-bit","numbers can be placed into Montgomery form safely using the reduction. The","reduction works so long as the product is less than R=2^256 multiplied by","the modulus. This holds because for any `c` smaller than the modulus, we have","that (2^256 - 1)*c is an acceptable product for the reduction. Therefore, the","reduction always works so long as `c` is in the field; in this case it is either the","constant `R2` or `R3`."]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":21},"end":{"line":298,"col":29}},"generated_from_span":null},"id":4045,"kind":{"StorageLive":26},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":21},"end":{"line":298,"col":29}},"generated_from_span":null},"id":4046,"kind":{"Assign":[{"kind":{"Local":26},"ty":{"Deduplicated":7282}},{"Ref":{"place":{"kind":{"Local":1},"ty":{"Deduplicated":4585}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":21},"end":{"line":298,"col":29}},"generated_from_span":null},"id":4047,"kind":{"StorageLive":27},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":21},"end":{"line":298,"col":29}},"generated_from_span":null},"id":4048,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":26},"ty":{"Deduplicated":7282}}},{"Copy":{"kind":{"Local":5},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":27},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":21},"end":{"line":298,"col":29}},"generated_from_span":null},"id":528,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":27},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":31},"end":{"line":298,"col":39}},"generated_from_span":null},"id":529,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":37},"end":{"line":298,"col":38}},"generated_from_span":null},"id":530,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":37},"end":{"line":298,"col":38}},"generated_from_span":null},"id":531,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":31},"end":{"line":298,"col":39}},"generated_from_span":null},"id":4049,"kind":{"StorageLive":28},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":31},"end":{"line":298,"col":39}},"generated_from_span":null},"id":4050,"kind":{"Assign":[{"kind":{"Local":28},"ty":{"Deduplicated":7282}},{"Ref":{"place":{"kind":{"Local":1},"ty":{"Deduplicated":4585}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":31},"end":{"line":298,"col":39}},"generated_from_span":null},"id":4051,"kind":{"StorageLive":29},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":31},"end":{"line":298,"col":39}},"generated_from_span":null},"id":4052,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":28},"ty":{"Deduplicated":7282}}},{"Copy":{"kind":{"Local":7},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":29},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":31},"end":{"line":298,"col":39}},"generated_from_span":null},"id":534,"kind":{"Assign":[{"kind":{"Local":6},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":29},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":41},"end":{"line":298,"col":49}},"generated_from_span":null},"id":535,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":47},"end":{"line":298,"col":48}},"generated_from_span":null},"id":536,"kind":{"StorageLive":9},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":47},"end":{"line":298,"col":48}},"generated_from_span":null},"id":537,"kind":{"Assign":[{"kind":{"Local":9},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":41},"end":{"line":298,"col":49}},"generated_from_span":null},"id":4053,"kind":{"StorageLive":30},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":41},"end":{"line":298,"col":49}},"generated_from_span":null},"id":4054,"kind":{"Assign":[{"kind":{"Local":30},"ty":{"Deduplicated":7282}},{"Ref":{"place":{"kind":{"Local":1},"ty":{"Deduplicated":4585}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":41},"end":{"line":298,"col":49}},"generated_from_span":null},"id":4055,"kind":{"StorageLive":31},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":41},"end":{"line":298,"col":49}},"generated_from_span":null},"id":4056,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":30},"ty":{"Deduplicated":7282}}},{"Copy":{"kind":{"Local":9},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":31},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":41},"end":{"line":298,"col":49}},"generated_from_span":null},"id":540,"kind":{"Assign":[{"kind":{"Local":8},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":31},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":51},"end":{"line":298,"col":59}},"generated_from_span":null},"id":541,"kind":{"StorageLive":10},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":57},"end":{"line":298,"col":58}},"generated_from_span":null},"id":542,"kind":{"StorageLive":11},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":57},"end":{"line":298,"col":58}},"generated_from_span":null},"id":543,"kind":{"Assign":[{"kind":{"Local":11},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":51},"end":{"line":298,"col":59}},"generated_from_span":null},"id":4057,"kind":{"StorageLive":32},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":51},"end":{"line":298,"col":59}},"generated_from_span":null},"id":4058,"kind":{"Assign":[{"kind":{"Local":32},"ty":{"Deduplicated":7282}},{"Ref":{"place":{"kind":{"Local":1},"ty":{"Deduplicated":4585}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":51},"end":{"line":298,"col":59}},"generated_from_span":null},"id":4059,"kind":{"StorageLive":33},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":51},"end":{"line":298,"col":59}},"generated_from_span":null},"id":4060,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":32},"ty":{"Deduplicated":7282}}},{"Copy":{"kind":{"Local":11},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":33},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":51},"end":{"line":298,"col":59}},"generated_from_span":null},"id":546,"kind":{"Assign":[{"kind":{"Local":10},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":33},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":20},"end":{"line":298,"col":60}},"generated_from_span":null},"id":547,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":1074}},{"Aggregate":[{"Array":[{"Deduplicated":1072},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}]},[{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":6},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":8},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":10},"ty":{"Deduplicated":1072}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":59},"end":{"line":298,"col":60}},"generated_from_span":null},"id":548,"kind":{"StorageDead":10},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":59},"end":{"line":298,"col":60}},"generated_from_span":null},"id":549,"kind":{"StorageDead":8},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":59},"end":{"line":298,"col":60}},"generated_from_span":null},"id":550,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":59},"end":{"line":298,"col":60}},"generated_from_span":null},"id":551,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":17},"end":{"line":298,"col":61}},"generated_from_span":null},"id":552,"kind":{"Assign":[{"kind":{"Local":2},"ty":{"Deduplicated":1079}},{"Aggregate":[{"Adt":[{"id":{"Adt":0},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":1074}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":60},"end":{"line":298,"col":61}},"generated_from_span":null},"id":553,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":61},"end":{"line":298,"col":62}},"generated_from_span":null},"id":554,"kind":{"StorageDead":11},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":61},"end":{"line":298,"col":62}},"generated_from_span":null},"id":555,"kind":{"StorageDead":9},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":61},"end":{"line":298,"col":62}},"generated_from_span":null},"id":556,"kind":{"StorageDead":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":298,"col":61},"end":{"line":298,"col":62}},"generated_from_span":null},"id":557,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":12},"end":{"line":299,"col":14}},"generated_from_span":null},"id":558,"kind":{"StorageLive":12},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":20},"end":{"line":299,"col":60}},"generated_from_span":null},"id":559,"kind":{"StorageLive":13},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":21},"end":{"line":299,"col":29}},"generated_from_span":null},"id":560,"kind":{"StorageLive":14},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":27},"end":{"line":299,"col":28}},"generated_from_span":null},"id":561,"kind":{"StorageLive":15},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":27},"end":{"line":299,"col":28}},"generated_from_span":null},"id":562,"kind":{"Assign":[{"kind":{"Local":15},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":21},"end":{"line":299,"col":29}},"generated_from_span":null},"id":4061,"kind":{"StorageLive":34},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":21},"end":{"line":299,"col":29}},"generated_from_span":null},"id":4062,"kind":{"Assign":[{"kind":{"Local":34},"ty":{"Deduplicated":7282}},{"Ref":{"place":{"kind":{"Local":1},"ty":{"Deduplicated":4585}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":21},"end":{"line":299,"col":29}},"generated_from_span":null},"id":4063,"kind":{"StorageLive":35},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":21},"end":{"line":299,"col":29}},"generated_from_span":null},"id":4064,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":34},"ty":{"Deduplicated":7282}}},{"Copy":{"kind":{"Local":15},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":35},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":21},"end":{"line":299,"col":29}},"generated_from_span":null},"id":565,"kind":{"Assign":[{"kind":{"Local":14},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":35},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":31},"end":{"line":299,"col":39}},"generated_from_span":null},"id":566,"kind":{"StorageLive":16},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":37},"end":{"line":299,"col":38}},"generated_from_span":null},"id":567,"kind":{"StorageLive":17},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":37},"end":{"line":299,"col":38}},"generated_from_span":null},"id":568,"kind":{"Assign":[{"kind":{"Local":17},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","5"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":31},"end":{"line":299,"col":39}},"generated_from_span":null},"id":4065,"kind":{"StorageLive":36},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":31},"end":{"line":299,"col":39}},"generated_from_span":null},"id":4066,"kind":{"Assign":[{"kind":{"Local":36},"ty":{"Deduplicated":7282}},{"Ref":{"place":{"kind":{"Local":1},"ty":{"Deduplicated":4585}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":31},"end":{"line":299,"col":39}},"generated_from_span":null},"id":4067,"kind":{"StorageLive":37},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":31},"end":{"line":299,"col":39}},"generated_from_span":null},"id":4068,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":36},"ty":{"Deduplicated":7282}}},{"Copy":{"kind":{"Local":17},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":37},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":31},"end":{"line":299,"col":39}},"generated_from_span":null},"id":571,"kind":{"Assign":[{"kind":{"Local":16},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":37},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":41},"end":{"line":299,"col":49}},"generated_from_span":null},"id":572,"kind":{"StorageLive":18},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":47},"end":{"line":299,"col":48}},"generated_from_span":null},"id":573,"kind":{"StorageLive":19},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":47},"end":{"line":299,"col":48}},"generated_from_span":null},"id":574,"kind":{"Assign":[{"kind":{"Local":19},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","6"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":41},"end":{"line":299,"col":49}},"generated_from_span":null},"id":4069,"kind":{"StorageLive":38},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":41},"end":{"line":299,"col":49}},"generated_from_span":null},"id":4070,"kind":{"Assign":[{"kind":{"Local":38},"ty":{"Deduplicated":7282}},{"Ref":{"place":{"kind":{"Local":1},"ty":{"Deduplicated":4585}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":41},"end":{"line":299,"col":49}},"generated_from_span":null},"id":4071,"kind":{"StorageLive":39},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":41},"end":{"line":299,"col":49}},"generated_from_span":null},"id":4072,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":38},"ty":{"Deduplicated":7282}}},{"Copy":{"kind":{"Local":19},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":39},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":41},"end":{"line":299,"col":49}},"generated_from_span":null},"id":577,"kind":{"Assign":[{"kind":{"Local":18},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":39},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":51},"end":{"line":299,"col":59}},"generated_from_span":null},"id":578,"kind":{"StorageLive":20},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":57},"end":{"line":299,"col":58}},"generated_from_span":null},"id":579,"kind":{"StorageLive":21},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":57},"end":{"line":299,"col":58}},"generated_from_span":null},"id":580,"kind":{"Assign":[{"kind":{"Local":21},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","7"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":51},"end":{"line":299,"col":59}},"generated_from_span":null},"id":4073,"kind":{"StorageLive":40},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":51},"end":{"line":299,"col":59}},"generated_from_span":null},"id":4074,"kind":{"Assign":[{"kind":{"Local":40},"ty":{"Deduplicated":7282}},{"Ref":{"place":{"kind":{"Local":1},"ty":{"Deduplicated":4585}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":51},"end":{"line":299,"col":59}},"generated_from_span":null},"id":4075,"kind":{"StorageLive":41},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":51},"end":{"line":299,"col":59}},"generated_from_span":null},"id":4076,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":40},"ty":{"Deduplicated":7282}}},{"Copy":{"kind":{"Local":21},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":41},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":51},"end":{"line":299,"col":59}},"generated_from_span":null},"id":583,"kind":{"Assign":[{"kind":{"Local":20},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":41},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":20},"end":{"line":299,"col":60}},"generated_from_span":null},"id":584,"kind":{"Assign":[{"kind":{"Local":13},"ty":{"Deduplicated":1074}},{"Aggregate":[{"Array":[{"Deduplicated":1072},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}]},[{"Move":{"kind":{"Local":14},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":16},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":18},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":20},"ty":{"Deduplicated":1072}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":59},"end":{"line":299,"col":60}},"generated_from_span":null},"id":585,"kind":{"StorageDead":20},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":59},"end":{"line":299,"col":60}},"generated_from_span":null},"id":586,"kind":{"StorageDead":18},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":59},"end":{"line":299,"col":60}},"generated_from_span":null},"id":587,"kind":{"StorageDead":16},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":59},"end":{"line":299,"col":60}},"generated_from_span":null},"id":588,"kind":{"StorageDead":14},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":17},"end":{"line":299,"col":61}},"generated_from_span":null},"id":589,"kind":{"Assign":[{"kind":{"Local":12},"ty":{"Deduplicated":1079}},{"Aggregate":[{"Adt":[{"id":{"Adt":0},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[{"Move":{"kind":{"Local":13},"ty":{"Deduplicated":1074}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":60},"end":{"line":299,"col":61}},"generated_from_span":null},"id":590,"kind":{"StorageDead":13},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":61},"end":{"line":299,"col":62}},"generated_from_span":null},"id":591,"kind":{"StorageDead":21},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":61},"end":{"line":299,"col":62}},"generated_from_span":null},"id":592,"kind":{"StorageDead":19},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":61},"end":{"line":299,"col":62}},"generated_from_span":null},"id":593,"kind":{"StorageDead":17},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":299,"col":61},"end":{"line":299,"col":62}},"generated_from_span":null},"id":594,"kind":{"StorageDead":15},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":301,"col":8},"end":{"line":301,"col":15}},"generated_from_span":null},"id":595,"kind":{"StorageLive":22},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":301,"col":8},"end":{"line":301,"col":10}},"generated_from_span":null},"id":596,"kind":{"StorageLive":23},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":301,"col":8},"end":{"line":301,"col":10}},"generated_from_span":null},"id":597,"kind":{"Assign":[{"kind":{"Local":23},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Local":2},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":["Convert to Montgomery form"]},{"span":{"data":{"file_id":2,"beg":{"line":301,"col":8},"end":{"line":301,"col":15}},"generated_from_span":null},"id":598,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":52}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":23},"ty":{"Deduplicated":1079}}},{"Copy":{"kind":{"Global":{"id":3,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}}],"dest":{"kind":{"Local":22},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":301,"col":14},"end":{"line":301,"col":15}},"generated_from_span":null},"id":599,"kind":{"StorageDead":23},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":301,"col":18},"end":{"line":301,"col":25}},"generated_from_span":null},"id":600,"kind":{"StorageLive":24},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":301,"col":18},"end":{"line":301,"col":20}},"generated_from_span":null},"id":601,"kind":{"StorageLive":25},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":301,"col":18},"end":{"line":301,"col":20}},"generated_from_span":null},"id":602,"kind":{"Assign":[{"kind":{"Local":25},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Local":12},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":301,"col":18},"end":{"line":301,"col":25}},"generated_from_span":null},"id":603,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":52}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":25},"ty":{"Deduplicated":1079}}},{"Copy":{"kind":{"Global":{"id":4,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}}],"dest":{"kind":{"Local":24},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":301,"col":24},"end":{"line":301,"col":25}},"generated_from_span":null},"id":604,"kind":{"StorageDead":25},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":301,"col":8},"end":{"line":301,"col":25}},"generated_from_span":null},"id":605,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":42}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":22},"ty":{"Deduplicated":1079}}},{"Move":{"kind":{"Local":24},"ty":{"Deduplicated":1079}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":301,"col":24},"end":{"line":301,"col":25}},"generated_from_span":null},"id":606,"kind":{"StorageDead":24},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":301,"col":24},"end":{"line":301,"col":25}},"generated_from_span":null},"id":607,"kind":{"StorageDead":22},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":302,"col":4},"end":{"line":302,"col":5}},"generated_from_span":null},"id":608,"kind":{"StorageDead":12},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":302,"col":4},"end":{"line":302,"col":5}},"generated_from_span":null},"id":609,"kind":{"StorageDead":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":302,"col":5},"end":{"line":302,"col":5}},"generated_from_span":null},"id":610,"kind":"Return","comments_before":[]}]},"comments":[[298,["We reduce an arbitrary 512-bit number by decomposing it into two 256-bit digits","with the higher bits multiplied by 2^256. Thus, we perform two reductions","","1. the lower bits are multiplied by R^2, as normal","2. the upper bits are multiplied by R^2 * 2^256 = R^3","","and computing their sum in the field. It remains to see that arbitrary 256-bit","numbers can be placed into Montgomery form safely using the reduction. The","reduction works so long as the product is less than R=2^256 multiplied by","the modulus. This holds because for any `c` smaller than the modulus, we have","that (2^256 - 1)*c is an acceptable product for the reduction. Therefore, the","reduction always works so long as `c` is in the field; in this case it is either the","constant `R2` or `R3`."]],[301,["Convert to Montgomery form"]]]}}},{"def_id":71,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":1079},"kind":"InherentImplBlock"}}},{"Ident":["from_raw",0]}],"span":{"data":{"file_id":2,"beg":{"line":306,"col":4},"end":{"line":308,"col":5}},"generated_from_span":null},"source_text":"pub const fn from_raw(val: [u64; 4]) -> Self {\n (&Fp(val)).mul(&R2)\n }","attr_info":{"attributes":[{"DocComment":" Converts from an integer represented in little endian"},{"DocComment":" into its (congruent) `Fp` representation."}],"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":[{"Deduplicated":1074}],"output":{"Deduplicated":1079}},"src":"TopLevel","is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":306,"col":4},"end":{"line":308,"col":5}},"generated_from_span":null},"bound_body_regions":12,"locals":{"arg_count":1,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":306,"col":44},"end":{"line":306,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":"val","span":{"data":{"file_id":2,"beg":{"line":306,"col":26},"end":{"line":306,"col":29}},"generated_from_span":null},"ty":{"Deduplicated":1074}},{"index":2,"name":null,"span":{"data":{"file_id":2,"beg":{"line":307,"col":8},"end":{"line":307,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":2302}},{"index":3,"name":null,"span":{"data":{"file_id":2,"beg":{"line":307,"col":8},"end":{"line":307,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":2355}},{"index":4,"name":null,"span":{"data":{"file_id":2,"beg":{"line":307,"col":10},"end":{"line":307,"col":17}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":5,"name":null,"span":{"data":{"file_id":2,"beg":{"line":307,"col":13},"end":{"line":307,"col":16}},"generated_from_span":null},"ty":{"Deduplicated":1074}},{"index":6,"name":null,"span":{"data":{"file_id":2,"beg":{"line":307,"col":23},"end":{"line":307,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":2470}},{"index":7,"name":null,"span":{"data":{"file_id":2,"beg":{"line":307,"col":23},"end":{"line":307,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":2471}},{"index":8,"name":null,"span":{"data":{"file_id":2,"beg":{"line":307,"col":23},"end":{"line":307,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":2401}},{"index":9,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":2402}},{"index":10,"name":null,"span":{"data":{"file_id":2,"beg":{"line":307,"col":23},"end":{"line":307,"col":26}},"generated_from_span":null},"ty":{"HashConsedValue":[7195,{"Ref":[{"Body":11},{"Deduplicated":1079},"Shared"]}]}},{"index":11,"name":null,"span":{"data":{"file_id":2,"beg":{"line":307,"col":24},"end":{"line":307,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":1079}}]},"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":611,"kind":{"StorageLive":9},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":307,"col":23},"end":{"line":307,"col":26}},"generated_from_span":null},"id":612,"kind":{"StorageLive":10},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":307,"col":24},"end":{"line":307,"col":26}},"generated_from_span":null},"id":613,"kind":{"StorageLive":11},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":307,"col":24},"end":{"line":307,"col":26}},"generated_from_span":null},"id":614,"kind":{"Assign":[{"kind":{"Local":11},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":3,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":307,"col":23},"end":{"line":307,"col":26}},"generated_from_span":null},"id":615,"kind":{"Assign":[{"kind":{"Local":10},"ty":{"Deduplicated":7195}},{"Ref":{"place":{"kind":{"Local":11},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":307,"col":23},"end":{"line":307,"col":26}},"generated_from_span":null},"id":616,"kind":{"Assign":[{"kind":{"Local":9},"ty":{"Deduplicated":2402}},{"Use":[{"Move":{"kind":{"Local":10},"ty":{"Deduplicated":7195}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":307,"col":8},"end":{"line":307,"col":18}},"generated_from_span":null},"id":617,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":307,"col":8},"end":{"line":307,"col":18}},"generated_from_span":null},"id":618,"kind":{"StorageLive":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":307,"col":8},"end":{"line":307,"col":18}},"generated_from_span":null},"id":619,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":307,"col":10},"end":{"line":307,"col":17}},"generated_from_span":null},"id":620,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":307,"col":13},"end":{"line":307,"col":16}},"generated_from_span":null},"id":621,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":307,"col":13},"end":{"line":307,"col":16}},"generated_from_span":null},"id":622,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":1074}},{"Use":[{"Copy":{"kind":{"Local":1},"ty":{"Deduplicated":1074}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":307,"col":10},"end":{"line":307,"col":17}},"generated_from_span":null},"id":623,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":1079}},{"Aggregate":[{"Adt":[{"id":{"Adt":0},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[{"Move":{"kind":{"Local":5},"ty":{"Deduplicated":1074}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":307,"col":16},"end":{"line":307,"col":17}},"generated_from_span":null},"id":624,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":307,"col":8},"end":{"line":307,"col":18}},"generated_from_span":null},"id":625,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":2355}},{"Ref":{"place":{"kind":{"Local":4},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":307,"col":8},"end":{"line":307,"col":18}},"generated_from_span":null},"id":626,"kind":{"Assign":[{"kind":{"Local":2},"ty":{"Deduplicated":2302}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":3},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":307,"col":23},"end":{"line":307,"col":26}},"generated_from_span":null},"id":627,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":307,"col":23},"end":{"line":307,"col":26}},"generated_from_span":null},"id":628,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":307,"col":23},"end":{"line":307,"col":26}},"generated_from_span":null},"id":629,"kind":{"Assign":[{"kind":{"Local":8},"ty":{"Deduplicated":2401}},{"Use":[{"Move":{"kind":{"Local":9},"ty":{"Deduplicated":2402}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":307,"col":23},"end":{"line":307,"col":26}},"generated_from_span":null},"id":630,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":2471}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":8},"ty":{"Deduplicated":2401}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":307,"col":23},"end":{"line":307,"col":26}},"generated_from_span":null},"id":631,"kind":{"Assign":[{"kind":{"Local":6},"ty":{"Deduplicated":2470}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":7},"ty":{"Deduplicated":2471}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":307,"col":8},"end":{"line":307,"col":27}},"generated_from_span":null},"id":632,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":74}},"generics":{"regions":[{"Body":9},{"Body":10}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":2},"ty":{"Deduplicated":2302}}},{"Move":{"kind":{"Local":6},"ty":{"Deduplicated":2470}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":307,"col":26},"end":{"line":307,"col":27}},"generated_from_span":null},"id":633,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":307,"col":26},"end":{"line":307,"col":27}},"generated_from_span":null},"id":634,"kind":{"StorageDead":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":308,"col":4},"end":{"line":308,"col":5}},"generated_from_span":null},"id":635,"kind":{"StorageDead":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":308,"col":4},"end":{"line":308,"col":5}},"generated_from_span":null},"id":636,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":308,"col":4},"end":{"line":308,"col":5}},"generated_from_span":null},"id":637,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":308,"col":5},"end":{"line":308,"col":5}},"generated_from_span":null},"id":638,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":72,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":1079},"kind":"InherentImplBlock"}}},{"Ident":["square",0]}],"span":{"data":{"file_id":2,"beg":{"line":312,"col":4},"end":{"line":315,"col":5}},"generated_from_span":null},"source_text":"pub const fn square(&self) -> Fp {\n let u = self.square_unreduced();\n Fp::montgomery_reduce(u[0], u[1], u[2], u[3], u[4], u[5], u[6], u[7])\n }","attr_info":{"attributes":[{"DocComment":" Squares this element."}],"inline":"Hint","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":8297}],"output":{"Deduplicated":1079}},"src":"TopLevel","is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":312,"col":4},"end":{"line":315,"col":5}},"generated_from_span":null},"bound_body_regions":5,"locals":{"arg_count":1,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":312,"col":34},"end":{"line":312,"col":36}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":"self","span":{"data":{"file_id":2,"beg":{"line":312,"col":24},"end":{"line":312,"col":29}},"generated_from_span":null},"ty":{"Deduplicated":2302}},{"index":2,"name":"u","span":{"data":{"file_id":2,"beg":{"line":313,"col":12},"end":{"line":313,"col":13}},"generated_from_span":null},"ty":{"Deduplicated":4585}},{"index":3,"name":null,"span":{"data":{"file_id":2,"beg":{"line":313,"col":16},"end":{"line":313,"col":20}},"generated_from_span":null},"ty":{"Deduplicated":2355}},{"index":4,"name":null,"span":{"data":{"file_id":2,"beg":{"line":314,"col":30},"end":{"line":314,"col":34}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":5,"name":null,"span":{"data":{"file_id":2,"beg":{"line":314,"col":32},"end":{"line":314,"col":33}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":6,"name":null,"span":{"data":{"file_id":2,"beg":{"line":314,"col":36},"end":{"line":314,"col":40}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":7,"name":null,"span":{"data":{"file_id":2,"beg":{"line":314,"col":38},"end":{"line":314,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":8,"name":null,"span":{"data":{"file_id":2,"beg":{"line":314,"col":42},"end":{"line":314,"col":46}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":9,"name":null,"span":{"data":{"file_id":2,"beg":{"line":314,"col":44},"end":{"line":314,"col":45}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":10,"name":null,"span":{"data":{"file_id":2,"beg":{"line":314,"col":48},"end":{"line":314,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":11,"name":null,"span":{"data":{"file_id":2,"beg":{"line":314,"col":50},"end":{"line":314,"col":51}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":12,"name":null,"span":{"data":{"file_id":2,"beg":{"line":314,"col":54},"end":{"line":314,"col":58}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":13,"name":null,"span":{"data":{"file_id":2,"beg":{"line":314,"col":56},"end":{"line":314,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":14,"name":null,"span":{"data":{"file_id":2,"beg":{"line":314,"col":60},"end":{"line":314,"col":64}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":15,"name":null,"span":{"data":{"file_id":2,"beg":{"line":314,"col":62},"end":{"line":314,"col":63}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":16,"name":null,"span":{"data":{"file_id":2,"beg":{"line":314,"col":66},"end":{"line":314,"col":70}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":17,"name":null,"span":{"data":{"file_id":2,"beg":{"line":314,"col":68},"end":{"line":314,"col":69}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":18,"name":null,"span":{"data":{"file_id":2,"beg":{"line":314,"col":72},"end":{"line":314,"col":76}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":19,"name":null,"span":{"data":{"file_id":2,"beg":{"line":314,"col":74},"end":{"line":314,"col":75}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"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":7282}},{"index":21,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":22,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7282}},{"index":23,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":24,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7282}},{"index":25,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":26,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7282}},{"index":27,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":28,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7282}},{"index":29,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":30,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7282}},{"index":31,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":32,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7282}},{"index":33,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":34,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7282}},{"index":35,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":313,"col":12},"end":{"line":315,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":313,"col":12},"end":{"line":313,"col":13}},"generated_from_span":null},"id":647,"kind":{"StorageLive":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":313,"col":16},"end":{"line":313,"col":20}},"generated_from_span":null},"id":648,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":313,"col":16},"end":{"line":313,"col":20}},"generated_from_span":null},"id":649,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":2355}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":313,"col":16},"end":{"line":313,"col":39}},"generated_from_span":null},"id":650,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":79}},"generics":{"regions":[{"Body":4}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":2355}}}],"dest":{"kind":{"Local":2},"ty":{"Deduplicated":4585}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":313,"col":38},"end":{"line":313,"col":39}},"generated_from_span":null},"id":651,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":30},"end":{"line":314,"col":34}},"generated_from_span":null},"id":652,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":32},"end":{"line":314,"col":33}},"generated_from_span":null},"id":653,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":32},"end":{"line":314,"col":33}},"generated_from_span":null},"id":654,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":30},"end":{"line":314,"col":34}},"generated_from_span":null},"id":4077,"kind":{"StorageLive":20},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":30},"end":{"line":314,"col":34}},"generated_from_span":null},"id":4078,"kind":{"Assign":[{"kind":{"Local":20},"ty":{"Deduplicated":7282}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":4585}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":30},"end":{"line":314,"col":34}},"generated_from_span":null},"id":4079,"kind":{"StorageLive":21},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":30},"end":{"line":314,"col":34}},"generated_from_span":null},"id":4080,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":20},"ty":{"Deduplicated":7282}}},{"Copy":{"kind":{"Local":5},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":21},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":30},"end":{"line":314,"col":34}},"generated_from_span":null},"id":657,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":21},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":36},"end":{"line":314,"col":40}},"generated_from_span":null},"id":658,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":38},"end":{"line":314,"col":39}},"generated_from_span":null},"id":659,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":38},"end":{"line":314,"col":39}},"generated_from_span":null},"id":660,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":36},"end":{"line":314,"col":40}},"generated_from_span":null},"id":4081,"kind":{"StorageLive":22},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":36},"end":{"line":314,"col":40}},"generated_from_span":null},"id":4082,"kind":{"Assign":[{"kind":{"Local":22},"ty":{"Deduplicated":7282}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":4585}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":36},"end":{"line":314,"col":40}},"generated_from_span":null},"id":4083,"kind":{"StorageLive":23},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":36},"end":{"line":314,"col":40}},"generated_from_span":null},"id":4084,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":22},"ty":{"Deduplicated":7282}}},{"Copy":{"kind":{"Local":7},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":23},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":36},"end":{"line":314,"col":40}},"generated_from_span":null},"id":663,"kind":{"Assign":[{"kind":{"Local":6},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":23},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":42},"end":{"line":314,"col":46}},"generated_from_span":null},"id":664,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":44},"end":{"line":314,"col":45}},"generated_from_span":null},"id":665,"kind":{"StorageLive":9},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":44},"end":{"line":314,"col":45}},"generated_from_span":null},"id":666,"kind":{"Assign":[{"kind":{"Local":9},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":42},"end":{"line":314,"col":46}},"generated_from_span":null},"id":4085,"kind":{"StorageLive":24},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":42},"end":{"line":314,"col":46}},"generated_from_span":null},"id":4086,"kind":{"Assign":[{"kind":{"Local":24},"ty":{"Deduplicated":7282}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":4585}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":42},"end":{"line":314,"col":46}},"generated_from_span":null},"id":4087,"kind":{"StorageLive":25},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":42},"end":{"line":314,"col":46}},"generated_from_span":null},"id":4088,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":24},"ty":{"Deduplicated":7282}}},{"Copy":{"kind":{"Local":9},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":25},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":42},"end":{"line":314,"col":46}},"generated_from_span":null},"id":669,"kind":{"Assign":[{"kind":{"Local":8},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":25},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":48},"end":{"line":314,"col":52}},"generated_from_span":null},"id":670,"kind":{"StorageLive":10},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":50},"end":{"line":314,"col":51}},"generated_from_span":null},"id":671,"kind":{"StorageLive":11},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":50},"end":{"line":314,"col":51}},"generated_from_span":null},"id":672,"kind":{"Assign":[{"kind":{"Local":11},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":48},"end":{"line":314,"col":52}},"generated_from_span":null},"id":4089,"kind":{"StorageLive":26},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":48},"end":{"line":314,"col":52}},"generated_from_span":null},"id":4090,"kind":{"Assign":[{"kind":{"Local":26},"ty":{"Deduplicated":7282}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":4585}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":48},"end":{"line":314,"col":52}},"generated_from_span":null},"id":4091,"kind":{"StorageLive":27},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":48},"end":{"line":314,"col":52}},"generated_from_span":null},"id":4092,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":26},"ty":{"Deduplicated":7282}}},{"Copy":{"kind":{"Local":11},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":27},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":48},"end":{"line":314,"col":52}},"generated_from_span":null},"id":675,"kind":{"Assign":[{"kind":{"Local":10},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":27},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":54},"end":{"line":314,"col":58}},"generated_from_span":null},"id":676,"kind":{"StorageLive":12},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":56},"end":{"line":314,"col":57}},"generated_from_span":null},"id":677,"kind":{"StorageLive":13},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":56},"end":{"line":314,"col":57}},"generated_from_span":null},"id":678,"kind":{"Assign":[{"kind":{"Local":13},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":54},"end":{"line":314,"col":58}},"generated_from_span":null},"id":4093,"kind":{"StorageLive":28},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":54},"end":{"line":314,"col":58}},"generated_from_span":null},"id":4094,"kind":{"Assign":[{"kind":{"Local":28},"ty":{"Deduplicated":7282}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":4585}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":54},"end":{"line":314,"col":58}},"generated_from_span":null},"id":4095,"kind":{"StorageLive":29},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":54},"end":{"line":314,"col":58}},"generated_from_span":null},"id":4096,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":28},"ty":{"Deduplicated":7282}}},{"Copy":{"kind":{"Local":13},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":29},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":54},"end":{"line":314,"col":58}},"generated_from_span":null},"id":681,"kind":{"Assign":[{"kind":{"Local":12},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":29},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":60},"end":{"line":314,"col":64}},"generated_from_span":null},"id":682,"kind":{"StorageLive":14},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":62},"end":{"line":314,"col":63}},"generated_from_span":null},"id":683,"kind":{"StorageLive":15},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":62},"end":{"line":314,"col":63}},"generated_from_span":null},"id":684,"kind":{"Assign":[{"kind":{"Local":15},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","5"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":60},"end":{"line":314,"col":64}},"generated_from_span":null},"id":4097,"kind":{"StorageLive":30},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":60},"end":{"line":314,"col":64}},"generated_from_span":null},"id":4098,"kind":{"Assign":[{"kind":{"Local":30},"ty":{"Deduplicated":7282}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":4585}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":60},"end":{"line":314,"col":64}},"generated_from_span":null},"id":4099,"kind":{"StorageLive":31},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":60},"end":{"line":314,"col":64}},"generated_from_span":null},"id":4100,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":30},"ty":{"Deduplicated":7282}}},{"Copy":{"kind":{"Local":15},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":31},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":60},"end":{"line":314,"col":64}},"generated_from_span":null},"id":687,"kind":{"Assign":[{"kind":{"Local":14},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":31},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":66},"end":{"line":314,"col":70}},"generated_from_span":null},"id":688,"kind":{"StorageLive":16},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":68},"end":{"line":314,"col":69}},"generated_from_span":null},"id":689,"kind":{"StorageLive":17},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":68},"end":{"line":314,"col":69}},"generated_from_span":null},"id":690,"kind":{"Assign":[{"kind":{"Local":17},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","6"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":66},"end":{"line":314,"col":70}},"generated_from_span":null},"id":4101,"kind":{"StorageLive":32},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":66},"end":{"line":314,"col":70}},"generated_from_span":null},"id":4102,"kind":{"Assign":[{"kind":{"Local":32},"ty":{"Deduplicated":7282}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":4585}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":66},"end":{"line":314,"col":70}},"generated_from_span":null},"id":4103,"kind":{"StorageLive":33},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":66},"end":{"line":314,"col":70}},"generated_from_span":null},"id":4104,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":32},"ty":{"Deduplicated":7282}}},{"Copy":{"kind":{"Local":17},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":33},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":66},"end":{"line":314,"col":70}},"generated_from_span":null},"id":693,"kind":{"Assign":[{"kind":{"Local":16},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":33},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":72},"end":{"line":314,"col":76}},"generated_from_span":null},"id":694,"kind":{"StorageLive":18},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":74},"end":{"line":314,"col":75}},"generated_from_span":null},"id":695,"kind":{"StorageLive":19},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":74},"end":{"line":314,"col":75}},"generated_from_span":null},"id":696,"kind":{"Assign":[{"kind":{"Local":19},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","7"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":72},"end":{"line":314,"col":76}},"generated_from_span":null},"id":4105,"kind":{"StorageLive":34},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":72},"end":{"line":314,"col":76}},"generated_from_span":null},"id":4106,"kind":{"Assign":[{"kind":{"Local":34},"ty":{"Deduplicated":7282}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":4585}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":72},"end":{"line":314,"col":76}},"generated_from_span":null},"id":4107,"kind":{"StorageLive":35},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":72},"end":{"line":314,"col":76}},"generated_from_span":null},"id":4108,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":34},"ty":{"Deduplicated":7282}}},{"Copy":{"kind":{"Local":19},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":35},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":72},"end":{"line":314,"col":76}},"generated_from_span":null},"id":699,"kind":{"Assign":[{"kind":{"Local":18},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":35},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":8},"end":{"line":314,"col":77}},"generated_from_span":null},"id":700,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":73}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":6},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":8},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":10},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":12},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":14},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":16},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":18},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":76},"end":{"line":314,"col":77}},"generated_from_span":null},"id":701,"kind":{"StorageDead":18},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":76},"end":{"line":314,"col":77}},"generated_from_span":null},"id":702,"kind":{"StorageDead":16},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":76},"end":{"line":314,"col":77}},"generated_from_span":null},"id":703,"kind":{"StorageDead":14},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":76},"end":{"line":314,"col":77}},"generated_from_span":null},"id":704,"kind":{"StorageDead":12},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":76},"end":{"line":314,"col":77}},"generated_from_span":null},"id":705,"kind":{"StorageDead":10},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":76},"end":{"line":314,"col":77}},"generated_from_span":null},"id":706,"kind":{"StorageDead":8},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":76},"end":{"line":314,"col":77}},"generated_from_span":null},"id":707,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":314,"col":76},"end":{"line":314,"col":77}},"generated_from_span":null},"id":708,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":315,"col":4},"end":{"line":315,"col":5}},"generated_from_span":null},"id":709,"kind":{"StorageDead":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":315,"col":4},"end":{"line":315,"col":5}},"generated_from_span":null},"id":710,"kind":{"StorageDead":19},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":315,"col":4},"end":{"line":315,"col":5}},"generated_from_span":null},"id":711,"kind":{"StorageDead":17},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":315,"col":4},"end":{"line":315,"col":5}},"generated_from_span":null},"id":712,"kind":{"StorageDead":15},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":315,"col":4},"end":{"line":315,"col":5}},"generated_from_span":null},"id":713,"kind":{"StorageDead":13},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":315,"col":4},"end":{"line":315,"col":5}},"generated_from_span":null},"id":714,"kind":{"StorageDead":11},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":315,"col":4},"end":{"line":315,"col":5}},"generated_from_span":null},"id":715,"kind":{"StorageDead":9},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":315,"col":4},"end":{"line":315,"col":5}},"generated_from_span":null},"id":716,"kind":{"StorageDead":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":315,"col":4},"end":{"line":315,"col":5}},"generated_from_span":null},"id":717,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":315,"col":5},"end":{"line":315,"col":5}},"generated_from_span":null},"id":718,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":73,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":1079},"kind":"InherentImplBlock"}}},{"Ident":["montgomery_reduce",0]}],"span":{"data":{"file_id":2,"beg":{"line":319,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"source_text":"const fn montgomery_reduce(\n r0: u64,\n r1: u64,\n r2: u64,\n r3: u64,\n r4: u64,\n r5: u64,\n r6: u64,\n r7: u64,\n ) -> Self {\n // The Montgomery reduction here is based on Algorithm 14.32 in\n // Handbook of Applied Cryptography\n // <http://cacr.uwaterloo.ca/hac/about/chap14.pdf>.\n\n let k = r0.wrapping_mul(INV);\n let (_, carry) = mac(r0, k, MODULUS.0[0], 0);\n let (r1, carry) = mac(r1, k, MODULUS.0[1], carry);\n let (r2, carry) = mac(r2, k, MODULUS.0[2], carry);\n let (r3, carry) = mac(r3, k, MODULUS.0[3], carry);\n let (r4, carry2) = adc(r4, 0, carry);\n\n let k = r1.wrapping_mul(INV);\n let (_, carry) = mac(r1, k, MODULUS.0[0], 0);\n let (r2, carry) = mac(r2, k, MODULUS.0[1], carry);\n let (r3, carry) = mac(r3, k, MODULUS.0[2], carry);\n let (r4, carry) = mac(r4, k, MODULUS.0[3], carry);\n let (r5, carry2) = adc(r5, carry2, carry);\n\n let k = r2.wrapping_mul(INV);\n let (_, carry) = mac(r2, k, MODULUS.0[0], 0);\n let (r3, carry) = mac(r3, k, MODULUS.0[1], carry);\n let (r4, carry) = mac(r4, k, MODULUS.0[2], carry);\n let (r5, carry) = mac(r5, k, MODULUS.0[3], carry);\n let (r6, carry2) = adc(r6, carry2, carry);\n\n let k = r3.wrapping_mul(INV);\n let (_, carry) = mac(r3, k, MODULUS.0[0], 0);\n let (r4, carry) = mac(r4, k, MODULUS.0[1], carry);\n let (r5, carry) = mac(r5, k, MODULUS.0[2], carry);\n let (r6, carry) = mac(r6, k, MODULUS.0[3], carry);\n let (r7, _) = adc(r7, carry2, carry);\n\n // Result may be within MODULUS of the correct value\n (&Fp([r4, r5, r6, r7])).sub(&MODULUS)\n }","attr_info":{"attributes":[{"Unknown":{"path":"allow","args":"clippy::too_many_arguments"}}],"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":1072},{"Deduplicated":1072},{"Deduplicated":1072},{"Deduplicated":1072},{"Deduplicated":1072},{"Deduplicated":1072},{"Deduplicated":1072},{"Deduplicated":1072}],"output":{"Deduplicated":1079}},"src":"TopLevel","is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":319,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"bound_body_regions":12,"locals":{"arg_count":8,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":328,"col":9},"end":{"line":328,"col":13}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":"r0","span":{"data":{"file_id":2,"beg":{"line":320,"col":8},"end":{"line":320,"col":10}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":2,"name":"r1","span":{"data":{"file_id":2,"beg":{"line":321,"col":8},"end":{"line":321,"col":10}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":3,"name":"r2","span":{"data":{"file_id":2,"beg":{"line":322,"col":8},"end":{"line":322,"col":10}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":4,"name":"r3","span":{"data":{"file_id":2,"beg":{"line":323,"col":8},"end":{"line":323,"col":10}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":5,"name":"r4","span":{"data":{"file_id":2,"beg":{"line":324,"col":8},"end":{"line":324,"col":10}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":6,"name":"r5","span":{"data":{"file_id":2,"beg":{"line":325,"col":8},"end":{"line":325,"col":10}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":7,"name":"r6","span":{"data":{"file_id":2,"beg":{"line":326,"col":8},"end":{"line":326,"col":10}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":8,"name":"r7","span":{"data":{"file_id":2,"beg":{"line":327,"col":8},"end":{"line":327,"col":10}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":9,"name":"k","span":{"data":{"file_id":2,"beg":{"line":333,"col":12},"end":{"line":333,"col":13}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":10,"name":null,"span":{"data":{"file_id":2,"beg":{"line":333,"col":16},"end":{"line":333,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":11,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":334,"col":16},"end":{"line":334,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":12,"name":null,"span":{"data":{"file_id":2,"beg":{"line":334,"col":25},"end":{"line":334,"col":52}},"generated_from_span":null},"ty":{"HashConsedValue":[4590,{"Adt":{"id":"Tuple","generics":{"regions":[],"types":[{"Deduplicated":1072},{"Deduplicated":1072}],"const_generics":[],"trait_refs":[]}}}]}},{"index":13,"name":null,"span":{"data":{"file_id":2,"beg":{"line":334,"col":29},"end":{"line":334,"col":31}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":14,"name":null,"span":{"data":{"file_id":2,"beg":{"line":334,"col":33},"end":{"line":334,"col":34}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":15,"name":null,"span":{"data":{"file_id":2,"beg":{"line":334,"col":36},"end":{"line":334,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":16,"name":null,"span":{"data":{"file_id":2,"beg":{"line":334,"col":36},"end":{"line":334,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":17,"name":null,"span":{"data":{"file_id":2,"beg":{"line":334,"col":46},"end":{"line":334,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":18,"name":"r1","span":{"data":{"file_id":2,"beg":{"line":335,"col":13},"end":{"line":335,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":19,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":335,"col":17},"end":{"line":335,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":20,"name":null,"span":{"data":{"file_id":2,"beg":{"line":335,"col":26},"end":{"line":335,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":21,"name":null,"span":{"data":{"file_id":2,"beg":{"line":335,"col":30},"end":{"line":335,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":22,"name":null,"span":{"data":{"file_id":2,"beg":{"line":335,"col":34},"end":{"line":335,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":23,"name":null,"span":{"data":{"file_id":2,"beg":{"line":335,"col":37},"end":{"line":335,"col":49}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":24,"name":null,"span":{"data":{"file_id":2,"beg":{"line":335,"col":37},"end":{"line":335,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":25,"name":null,"span":{"data":{"file_id":2,"beg":{"line":335,"col":47},"end":{"line":335,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":26,"name":null,"span":{"data":{"file_id":2,"beg":{"line":335,"col":51},"end":{"line":335,"col":56}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":27,"name":"r2","span":{"data":{"file_id":2,"beg":{"line":336,"col":13},"end":{"line":336,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":28,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":336,"col":17},"end":{"line":336,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":29,"name":null,"span":{"data":{"file_id":2,"beg":{"line":336,"col":26},"end":{"line":336,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":30,"name":null,"span":{"data":{"file_id":2,"beg":{"line":336,"col":30},"end":{"line":336,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":31,"name":null,"span":{"data":{"file_id":2,"beg":{"line":336,"col":34},"end":{"line":336,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":32,"name":null,"span":{"data":{"file_id":2,"beg":{"line":336,"col":37},"end":{"line":336,"col":49}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":33,"name":null,"span":{"data":{"file_id":2,"beg":{"line":336,"col":37},"end":{"line":336,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":34,"name":null,"span":{"data":{"file_id":2,"beg":{"line":336,"col":47},"end":{"line":336,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":35,"name":null,"span":{"data":{"file_id":2,"beg":{"line":336,"col":51},"end":{"line":336,"col":56}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":36,"name":"r3","span":{"data":{"file_id":2,"beg":{"line":337,"col":13},"end":{"line":337,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":37,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":337,"col":17},"end":{"line":337,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":38,"name":null,"span":{"data":{"file_id":2,"beg":{"line":337,"col":26},"end":{"line":337,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":39,"name":null,"span":{"data":{"file_id":2,"beg":{"line":337,"col":30},"end":{"line":337,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":40,"name":null,"span":{"data":{"file_id":2,"beg":{"line":337,"col":34},"end":{"line":337,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":41,"name":null,"span":{"data":{"file_id":2,"beg":{"line":337,"col":37},"end":{"line":337,"col":49}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":42,"name":null,"span":{"data":{"file_id":2,"beg":{"line":337,"col":37},"end":{"line":337,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":43,"name":null,"span":{"data":{"file_id":2,"beg":{"line":337,"col":47},"end":{"line":337,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":44,"name":null,"span":{"data":{"file_id":2,"beg":{"line":337,"col":51},"end":{"line":337,"col":56}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":45,"name":"r4","span":{"data":{"file_id":2,"beg":{"line":338,"col":13},"end":{"line":338,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":46,"name":"carry2","span":{"data":{"file_id":2,"beg":{"line":338,"col":17},"end":{"line":338,"col":23}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":47,"name":null,"span":{"data":{"file_id":2,"beg":{"line":338,"col":27},"end":{"line":338,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":48,"name":null,"span":{"data":{"file_id":2,"beg":{"line":338,"col":31},"end":{"line":338,"col":33}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":49,"name":null,"span":{"data":{"file_id":2,"beg":{"line":338,"col":38},"end":{"line":338,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":50,"name":"k","span":{"data":{"file_id":2,"beg":{"line":340,"col":12},"end":{"line":340,"col":13}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":51,"name":null,"span":{"data":{"file_id":2,"beg":{"line":340,"col":16},"end":{"line":340,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":52,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":341,"col":16},"end":{"line":341,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":53,"name":null,"span":{"data":{"file_id":2,"beg":{"line":341,"col":25},"end":{"line":341,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":54,"name":null,"span":{"data":{"file_id":2,"beg":{"line":341,"col":29},"end":{"line":341,"col":31}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":55,"name":null,"span":{"data":{"file_id":2,"beg":{"line":341,"col":33},"end":{"line":341,"col":34}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":56,"name":null,"span":{"data":{"file_id":2,"beg":{"line":341,"col":36},"end":{"line":341,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":57,"name":null,"span":{"data":{"file_id":2,"beg":{"line":341,"col":36},"end":{"line":341,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":58,"name":null,"span":{"data":{"file_id":2,"beg":{"line":341,"col":46},"end":{"line":341,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":59,"name":"r2","span":{"data":{"file_id":2,"beg":{"line":342,"col":13},"end":{"line":342,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":60,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":342,"col":17},"end":{"line":342,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":61,"name":null,"span":{"data":{"file_id":2,"beg":{"line":342,"col":26},"end":{"line":342,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":62,"name":null,"span":{"data":{"file_id":2,"beg":{"line":342,"col":30},"end":{"line":342,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":63,"name":null,"span":{"data":{"file_id":2,"beg":{"line":342,"col":34},"end":{"line":342,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":64,"name":null,"span":{"data":{"file_id":2,"beg":{"line":342,"col":37},"end":{"line":342,"col":49}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":65,"name":null,"span":{"data":{"file_id":2,"beg":{"line":342,"col":37},"end":{"line":342,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":66,"name":null,"span":{"data":{"file_id":2,"beg":{"line":342,"col":47},"end":{"line":342,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":67,"name":null,"span":{"data":{"file_id":2,"beg":{"line":342,"col":51},"end":{"line":342,"col":56}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":68,"name":"r3","span":{"data":{"file_id":2,"beg":{"line":343,"col":13},"end":{"line":343,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":69,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":343,"col":17},"end":{"line":343,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":70,"name":null,"span":{"data":{"file_id":2,"beg":{"line":343,"col":26},"end":{"line":343,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":71,"name":null,"span":{"data":{"file_id":2,"beg":{"line":343,"col":30},"end":{"line":343,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":72,"name":null,"span":{"data":{"file_id":2,"beg":{"line":343,"col":34},"end":{"line":343,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":73,"name":null,"span":{"data":{"file_id":2,"beg":{"line":343,"col":37},"end":{"line":343,"col":49}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":74,"name":null,"span":{"data":{"file_id":2,"beg":{"line":343,"col":37},"end":{"line":343,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":75,"name":null,"span":{"data":{"file_id":2,"beg":{"line":343,"col":47},"end":{"line":343,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":76,"name":null,"span":{"data":{"file_id":2,"beg":{"line":343,"col":51},"end":{"line":343,"col":56}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":77,"name":"r4","span":{"data":{"file_id":2,"beg":{"line":344,"col":13},"end":{"line":344,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":78,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":344,"col":17},"end":{"line":344,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":79,"name":null,"span":{"data":{"file_id":2,"beg":{"line":344,"col":26},"end":{"line":344,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":80,"name":null,"span":{"data":{"file_id":2,"beg":{"line":344,"col":30},"end":{"line":344,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":81,"name":null,"span":{"data":{"file_id":2,"beg":{"line":344,"col":34},"end":{"line":344,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":82,"name":null,"span":{"data":{"file_id":2,"beg":{"line":344,"col":37},"end":{"line":344,"col":49}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":83,"name":null,"span":{"data":{"file_id":2,"beg":{"line":344,"col":37},"end":{"line":344,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":84,"name":null,"span":{"data":{"file_id":2,"beg":{"line":344,"col":47},"end":{"line":344,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":85,"name":null,"span":{"data":{"file_id":2,"beg":{"line":344,"col":51},"end":{"line":344,"col":56}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":86,"name":"r5","span":{"data":{"file_id":2,"beg":{"line":345,"col":13},"end":{"line":345,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":87,"name":"carry2","span":{"data":{"file_id":2,"beg":{"line":345,"col":17},"end":{"line":345,"col":23}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":88,"name":null,"span":{"data":{"file_id":2,"beg":{"line":345,"col":27},"end":{"line":345,"col":49}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":89,"name":null,"span":{"data":{"file_id":2,"beg":{"line":345,"col":31},"end":{"line":345,"col":33}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":90,"name":null,"span":{"data":{"file_id":2,"beg":{"line":345,"col":35},"end":{"line":345,"col":41}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":91,"name":null,"span":{"data":{"file_id":2,"beg":{"line":345,"col":43},"end":{"line":345,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":92,"name":"k","span":{"data":{"file_id":2,"beg":{"line":347,"col":12},"end":{"line":347,"col":13}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":93,"name":null,"span":{"data":{"file_id":2,"beg":{"line":347,"col":16},"end":{"line":347,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":94,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":348,"col":16},"end":{"line":348,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":95,"name":null,"span":{"data":{"file_id":2,"beg":{"line":348,"col":25},"end":{"line":348,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":96,"name":null,"span":{"data":{"file_id":2,"beg":{"line":348,"col":29},"end":{"line":348,"col":31}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":97,"name":null,"span":{"data":{"file_id":2,"beg":{"line":348,"col":33},"end":{"line":348,"col":34}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":98,"name":null,"span":{"data":{"file_id":2,"beg":{"line":348,"col":36},"end":{"line":348,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":99,"name":null,"span":{"data":{"file_id":2,"beg":{"line":348,"col":36},"end":{"line":348,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":100,"name":null,"span":{"data":{"file_id":2,"beg":{"line":348,"col":46},"end":{"line":348,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":101,"name":"r3","span":{"data":{"file_id":2,"beg":{"line":349,"col":13},"end":{"line":349,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":102,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":349,"col":17},"end":{"line":349,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":103,"name":null,"span":{"data":{"file_id":2,"beg":{"line":349,"col":26},"end":{"line":349,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":104,"name":null,"span":{"data":{"file_id":2,"beg":{"line":349,"col":30},"end":{"line":349,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":105,"name":null,"span":{"data":{"file_id":2,"beg":{"line":349,"col":34},"end":{"line":349,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":106,"name":null,"span":{"data":{"file_id":2,"beg":{"line":349,"col":37},"end":{"line":349,"col":49}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":107,"name":null,"span":{"data":{"file_id":2,"beg":{"line":349,"col":37},"end":{"line":349,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":108,"name":null,"span":{"data":{"file_id":2,"beg":{"line":349,"col":47},"end":{"line":349,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":109,"name":null,"span":{"data":{"file_id":2,"beg":{"line":349,"col":51},"end":{"line":349,"col":56}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":110,"name":"r4","span":{"data":{"file_id":2,"beg":{"line":350,"col":13},"end":{"line":350,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":111,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":350,"col":17},"end":{"line":350,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":112,"name":null,"span":{"data":{"file_id":2,"beg":{"line":350,"col":26},"end":{"line":350,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":113,"name":null,"span":{"data":{"file_id":2,"beg":{"line":350,"col":30},"end":{"line":350,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":114,"name":null,"span":{"data":{"file_id":2,"beg":{"line":350,"col":34},"end":{"line":350,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":115,"name":null,"span":{"data":{"file_id":2,"beg":{"line":350,"col":37},"end":{"line":350,"col":49}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":116,"name":null,"span":{"data":{"file_id":2,"beg":{"line":350,"col":37},"end":{"line":350,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":117,"name":null,"span":{"data":{"file_id":2,"beg":{"line":350,"col":47},"end":{"line":350,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":118,"name":null,"span":{"data":{"file_id":2,"beg":{"line":350,"col":51},"end":{"line":350,"col":56}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":119,"name":"r5","span":{"data":{"file_id":2,"beg":{"line":351,"col":13},"end":{"line":351,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":120,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":351,"col":17},"end":{"line":351,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":121,"name":null,"span":{"data":{"file_id":2,"beg":{"line":351,"col":26},"end":{"line":351,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":122,"name":null,"span":{"data":{"file_id":2,"beg":{"line":351,"col":30},"end":{"line":351,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":123,"name":null,"span":{"data":{"file_id":2,"beg":{"line":351,"col":34},"end":{"line":351,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":124,"name":null,"span":{"data":{"file_id":2,"beg":{"line":351,"col":37},"end":{"line":351,"col":49}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":125,"name":null,"span":{"data":{"file_id":2,"beg":{"line":351,"col":37},"end":{"line":351,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":126,"name":null,"span":{"data":{"file_id":2,"beg":{"line":351,"col":47},"end":{"line":351,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":127,"name":null,"span":{"data":{"file_id":2,"beg":{"line":351,"col":51},"end":{"line":351,"col":56}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":128,"name":"r6","span":{"data":{"file_id":2,"beg":{"line":352,"col":13},"end":{"line":352,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":129,"name":"carry2","span":{"data":{"file_id":2,"beg":{"line":352,"col":17},"end":{"line":352,"col":23}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":130,"name":null,"span":{"data":{"file_id":2,"beg":{"line":352,"col":27},"end":{"line":352,"col":49}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":131,"name":null,"span":{"data":{"file_id":2,"beg":{"line":352,"col":31},"end":{"line":352,"col":33}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":132,"name":null,"span":{"data":{"file_id":2,"beg":{"line":352,"col":35},"end":{"line":352,"col":41}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":133,"name":null,"span":{"data":{"file_id":2,"beg":{"line":352,"col":43},"end":{"line":352,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":134,"name":"k","span":{"data":{"file_id":2,"beg":{"line":354,"col":12},"end":{"line":354,"col":13}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":135,"name":null,"span":{"data":{"file_id":2,"beg":{"line":354,"col":16},"end":{"line":354,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":136,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":355,"col":16},"end":{"line":355,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":137,"name":null,"span":{"data":{"file_id":2,"beg":{"line":355,"col":25},"end":{"line":355,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":138,"name":null,"span":{"data":{"file_id":2,"beg":{"line":355,"col":29},"end":{"line":355,"col":31}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":139,"name":null,"span":{"data":{"file_id":2,"beg":{"line":355,"col":33},"end":{"line":355,"col":34}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":140,"name":null,"span":{"data":{"file_id":2,"beg":{"line":355,"col":36},"end":{"line":355,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":141,"name":null,"span":{"data":{"file_id":2,"beg":{"line":355,"col":36},"end":{"line":355,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":142,"name":null,"span":{"data":{"file_id":2,"beg":{"line":355,"col":46},"end":{"line":355,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":143,"name":"r4","span":{"data":{"file_id":2,"beg":{"line":356,"col":13},"end":{"line":356,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":144,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":356,"col":17},"end":{"line":356,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":145,"name":null,"span":{"data":{"file_id":2,"beg":{"line":356,"col":26},"end":{"line":356,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":146,"name":null,"span":{"data":{"file_id":2,"beg":{"line":356,"col":30},"end":{"line":356,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":147,"name":null,"span":{"data":{"file_id":2,"beg":{"line":356,"col":34},"end":{"line":356,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":148,"name":null,"span":{"data":{"file_id":2,"beg":{"line":356,"col":37},"end":{"line":356,"col":49}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":149,"name":null,"span":{"data":{"file_id":2,"beg":{"line":356,"col":37},"end":{"line":356,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":150,"name":null,"span":{"data":{"file_id":2,"beg":{"line":356,"col":47},"end":{"line":356,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":151,"name":null,"span":{"data":{"file_id":2,"beg":{"line":356,"col":51},"end":{"line":356,"col":56}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":152,"name":"r5","span":{"data":{"file_id":2,"beg":{"line":357,"col":13},"end":{"line":357,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":153,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":357,"col":17},"end":{"line":357,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":154,"name":null,"span":{"data":{"file_id":2,"beg":{"line":357,"col":26},"end":{"line":357,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":155,"name":null,"span":{"data":{"file_id":2,"beg":{"line":357,"col":30},"end":{"line":357,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":156,"name":null,"span":{"data":{"file_id":2,"beg":{"line":357,"col":34},"end":{"line":357,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":157,"name":null,"span":{"data":{"file_id":2,"beg":{"line":357,"col":37},"end":{"line":357,"col":49}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":158,"name":null,"span":{"data":{"file_id":2,"beg":{"line":357,"col":37},"end":{"line":357,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":159,"name":null,"span":{"data":{"file_id":2,"beg":{"line":357,"col":47},"end":{"line":357,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":160,"name":null,"span":{"data":{"file_id":2,"beg":{"line":357,"col":51},"end":{"line":357,"col":56}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":161,"name":"r6","span":{"data":{"file_id":2,"beg":{"line":358,"col":13},"end":{"line":358,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":162,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":358,"col":17},"end":{"line":358,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":163,"name":null,"span":{"data":{"file_id":2,"beg":{"line":358,"col":26},"end":{"line":358,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":164,"name":null,"span":{"data":{"file_id":2,"beg":{"line":358,"col":30},"end":{"line":358,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":165,"name":null,"span":{"data":{"file_id":2,"beg":{"line":358,"col":34},"end":{"line":358,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":166,"name":null,"span":{"data":{"file_id":2,"beg":{"line":358,"col":37},"end":{"line":358,"col":49}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":167,"name":null,"span":{"data":{"file_id":2,"beg":{"line":358,"col":37},"end":{"line":358,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":168,"name":null,"span":{"data":{"file_id":2,"beg":{"line":358,"col":47},"end":{"line":358,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":169,"name":null,"span":{"data":{"file_id":2,"beg":{"line":358,"col":51},"end":{"line":358,"col":56}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":170,"name":"r7","span":{"data":{"file_id":2,"beg":{"line":359,"col":13},"end":{"line":359,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":171,"name":null,"span":{"data":{"file_id":2,"beg":{"line":359,"col":22},"end":{"line":359,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":172,"name":null,"span":{"data":{"file_id":2,"beg":{"line":359,"col":26},"end":{"line":359,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":173,"name":null,"span":{"data":{"file_id":2,"beg":{"line":359,"col":30},"end":{"line":359,"col":36}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":174,"name":null,"span":{"data":{"file_id":2,"beg":{"line":359,"col":38},"end":{"line":359,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":175,"name":null,"span":{"data":{"file_id":2,"beg":{"line":362,"col":8},"end":{"line":362,"col":31}},"generated_from_span":null},"ty":{"Deduplicated":2302}},{"index":176,"name":null,"span":{"data":{"file_id":2,"beg":{"line":362,"col":8},"end":{"line":362,"col":31}},"generated_from_span":null},"ty":{"Deduplicated":2355}},{"index":177,"name":null,"span":{"data":{"file_id":2,"beg":{"line":362,"col":10},"end":{"line":362,"col":30}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":178,"name":null,"span":{"data":{"file_id":2,"beg":{"line":362,"col":13},"end":{"line":362,"col":29}},"generated_from_span":null},"ty":{"Deduplicated":1074}},{"index":179,"name":null,"span":{"data":{"file_id":2,"beg":{"line":362,"col":14},"end":{"line":362,"col":16}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":180,"name":null,"span":{"data":{"file_id":2,"beg":{"line":362,"col":18},"end":{"line":362,"col":20}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":181,"name":null,"span":{"data":{"file_id":2,"beg":{"line":362,"col":22},"end":{"line":362,"col":24}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":182,"name":null,"span":{"data":{"file_id":2,"beg":{"line":362,"col":26},"end":{"line":362,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":183,"name":null,"span":{"data":{"file_id":2,"beg":{"line":362,"col":36},"end":{"line":362,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":2470}},{"index":184,"name":null,"span":{"data":{"file_id":2,"beg":{"line":362,"col":36},"end":{"line":362,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":2471}},{"index":185,"name":null,"span":{"data":{"file_id":2,"beg":{"line":362,"col":36},"end":{"line":362,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":2401}},{"index":186,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":2402}},{"index":187,"name":null,"span":{"data":{"file_id":2,"beg":{"line":362,"col":36},"end":{"line":362,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":7195}},{"index":188,"name":null,"span":{"data":{"file_id":2,"beg":{"line":362,"col":37},"end":{"line":362,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":189,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":190,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":191,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":192,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":193,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":194,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"index":211,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":212,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":333,"col":12},"end":{"line":359,"col":44}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":333,"col":12},"end":{"line":333,"col":13}},"generated_from_span":null},"id":735,"kind":{"StorageLive":185},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":333,"col":12},"end":{"line":333,"col":13}},"generated_from_span":null},"id":736,"kind":{"StorageLive":9},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":333,"col":16},"end":{"line":333,"col":18}},"generated_from_span":null},"id":737,"kind":{"StorageLive":10},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":333,"col":16},"end":{"line":333,"col":18}},"generated_from_span":null},"id":738,"kind":{"Assign":[{"kind":{"Local":10},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":1},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":["The Montgomery reduction here is based on Algorithm 14.32 in","Handbook of Applied Cryptography","<http://cacr.uwaterloo.ca/hac/about/chap14.pdf>."]},{"span":{"data":{"file_id":2,"beg":{"line":333,"col":16},"end":{"line":333,"col":36}},"generated_from_span":null},"id":739,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":210}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":10},"ty":{"Deduplicated":1072}}},{"Copy":{"kind":{"Global":{"id":1,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":9},"ty":{"Deduplicated":1072}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":333,"col":35},"end":{"line":333,"col":36}},"generated_from_span":null},"id":740,"kind":{"StorageDead":10},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":334,"col":25},"end":{"line":334,"col":52}},"generated_from_span":null},"id":741,"kind":{"StorageLive":12},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":334,"col":29},"end":{"line":334,"col":31}},"generated_from_span":null},"id":742,"kind":{"StorageLive":13},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":334,"col":29},"end":{"line":334,"col":31}},"generated_from_span":null},"id":743,"kind":{"Assign":[{"kind":{"Local":13},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":1},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":334,"col":33},"end":{"line":334,"col":34}},"generated_from_span":null},"id":744,"kind":{"StorageLive":14},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":334,"col":33},"end":{"line":334,"col":34}},"generated_from_span":null},"id":745,"kind":{"Assign":[{"kind":{"Local":14},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":9},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":334,"col":36},"end":{"line":334,"col":48}},"generated_from_span":null},"id":746,"kind":{"StorageLive":15},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":334,"col":36},"end":{"line":334,"col":43}},"generated_from_span":null},"id":747,"kind":{"StorageLive":16},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":334,"col":36},"end":{"line":334,"col":43}},"generated_from_span":null},"id":748,"kind":{"Assign":[{"kind":{"Local":16},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":0,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":334,"col":46},"end":{"line":334,"col":47}},"generated_from_span":null},"id":749,"kind":{"StorageLive":17},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":334,"col":46},"end":{"line":334,"col":47}},"generated_from_span":null},"id":750,"kind":{"Assign":[{"kind":{"Local":17},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":334,"col":36},"end":{"line":334,"col":48}},"generated_from_span":null},"id":4109,"kind":{"StorageLive":189},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":334,"col":36},"end":{"line":334,"col":48}},"generated_from_span":null},"id":4110,"kind":{"Assign":[{"kind":{"Local":189},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":16},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":334,"col":36},"end":{"line":334,"col":48}},"generated_from_span":null},"id":4111,"kind":{"StorageLive":190},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":334,"col":36},"end":{"line":334,"col":48}},"generated_from_span":null},"id":4112,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":189},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":17},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":190},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":334,"col":36},"end":{"line":334,"col":48}},"generated_from_span":null},"id":753,"kind":{"Assign":[{"kind":{"Local":15},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":190},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":334,"col":25},"end":{"line":334,"col":52}},"generated_from_span":null},"id":754,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":13},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":14},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":15},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":12},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":334,"col":51},"end":{"line":334,"col":52}},"generated_from_span":null},"id":755,"kind":{"StorageDead":15},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":334,"col":51},"end":{"line":334,"col":52}},"generated_from_span":null},"id":756,"kind":{"StorageDead":14},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":334,"col":51},"end":{"line":334,"col":52}},"generated_from_span":null},"id":757,"kind":{"StorageDead":13},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":334,"col":16},"end":{"line":334,"col":21}},"generated_from_span":null},"id":758,"kind":{"StorageLive":11},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":334,"col":16},"end":{"line":334,"col":21}},"generated_from_span":null},"id":759,"kind":{"Assign":[{"kind":{"Local":11},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":12},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":334,"col":52},"end":{"line":334,"col":53}},"generated_from_span":null},"id":760,"kind":{"StorageDead":17},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":334,"col":52},"end":{"line":334,"col":53}},"generated_from_span":null},"id":761,"kind":{"StorageDead":16},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":334,"col":52},"end":{"line":334,"col":53}},"generated_from_span":null},"id":762,"kind":{"StorageDead":12},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":335,"col":26},"end":{"line":335,"col":57}},"generated_from_span":null},"id":763,"kind":{"StorageLive":20},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":335,"col":30},"end":{"line":335,"col":32}},"generated_from_span":null},"id":764,"kind":{"StorageLive":21},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":335,"col":30},"end":{"line":335,"col":32}},"generated_from_span":null},"id":765,"kind":{"Assign":[{"kind":{"Local":21},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":2},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":335,"col":34},"end":{"line":335,"col":35}},"generated_from_span":null},"id":766,"kind":{"StorageLive":22},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":335,"col":34},"end":{"line":335,"col":35}},"generated_from_span":null},"id":767,"kind":{"Assign":[{"kind":{"Local":22},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":9},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":335,"col":37},"end":{"line":335,"col":49}},"generated_from_span":null},"id":768,"kind":{"StorageLive":23},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":335,"col":37},"end":{"line":335,"col":44}},"generated_from_span":null},"id":769,"kind":{"StorageLive":24},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":335,"col":37},"end":{"line":335,"col":44}},"generated_from_span":null},"id":770,"kind":{"Assign":[{"kind":{"Local":24},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":0,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":335,"col":47},"end":{"line":335,"col":48}},"generated_from_span":null},"id":771,"kind":{"StorageLive":25},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":335,"col":47},"end":{"line":335,"col":48}},"generated_from_span":null},"id":772,"kind":{"Assign":[{"kind":{"Local":25},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":335,"col":37},"end":{"line":335,"col":49}},"generated_from_span":null},"id":4113,"kind":{"StorageLive":191},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":335,"col":37},"end":{"line":335,"col":49}},"generated_from_span":null},"id":4114,"kind":{"Assign":[{"kind":{"Local":191},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":24},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":335,"col":37},"end":{"line":335,"col":49}},"generated_from_span":null},"id":4115,"kind":{"StorageLive":192},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":335,"col":37},"end":{"line":335,"col":49}},"generated_from_span":null},"id":4116,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":191},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":25},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":192},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":335,"col":37},"end":{"line":335,"col":49}},"generated_from_span":null},"id":775,"kind":{"Assign":[{"kind":{"Local":23},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":192},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":335,"col":51},"end":{"line":335,"col":56}},"generated_from_span":null},"id":776,"kind":{"StorageLive":26},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":335,"col":51},"end":{"line":335,"col":56}},"generated_from_span":null},"id":777,"kind":{"Assign":[{"kind":{"Local":26},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":11},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":335,"col":26},"end":{"line":335,"col":57}},"generated_from_span":null},"id":778,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":21},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":22},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":23},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":26},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":20},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":335,"col":56},"end":{"line":335,"col":57}},"generated_from_span":null},"id":779,"kind":{"StorageDead":26},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":335,"col":56},"end":{"line":335,"col":57}},"generated_from_span":null},"id":780,"kind":{"StorageDead":23},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":335,"col":56},"end":{"line":335,"col":57}},"generated_from_span":null},"id":781,"kind":{"StorageDead":22},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":335,"col":56},"end":{"line":335,"col":57}},"generated_from_span":null},"id":782,"kind":{"StorageDead":21},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":335,"col":13},"end":{"line":335,"col":15}},"generated_from_span":null},"id":783,"kind":{"StorageLive":18},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":335,"col":13},"end":{"line":335,"col":15}},"generated_from_span":null},"id":784,"kind":{"Assign":[{"kind":{"Local":18},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":20},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":335,"col":17},"end":{"line":335,"col":22}},"generated_from_span":null},"id":785,"kind":{"StorageLive":19},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":335,"col":17},"end":{"line":335,"col":22}},"generated_from_span":null},"id":786,"kind":{"Assign":[{"kind":{"Local":19},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":20},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":335,"col":57},"end":{"line":335,"col":58}},"generated_from_span":null},"id":787,"kind":{"StorageDead":25},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":335,"col":57},"end":{"line":335,"col":58}},"generated_from_span":null},"id":788,"kind":{"StorageDead":24},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":335,"col":57},"end":{"line":335,"col":58}},"generated_from_span":null},"id":789,"kind":{"StorageDead":20},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":336,"col":26},"end":{"line":336,"col":57}},"generated_from_span":null},"id":790,"kind":{"StorageLive":29},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":336,"col":30},"end":{"line":336,"col":32}},"generated_from_span":null},"id":791,"kind":{"StorageLive":30},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":336,"col":30},"end":{"line":336,"col":32}},"generated_from_span":null},"id":792,"kind":{"Assign":[{"kind":{"Local":30},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":3},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":336,"col":34},"end":{"line":336,"col":35}},"generated_from_span":null},"id":793,"kind":{"StorageLive":31},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":336,"col":34},"end":{"line":336,"col":35}},"generated_from_span":null},"id":794,"kind":{"Assign":[{"kind":{"Local":31},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":9},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":336,"col":37},"end":{"line":336,"col":49}},"generated_from_span":null},"id":795,"kind":{"StorageLive":32},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":336,"col":37},"end":{"line":336,"col":44}},"generated_from_span":null},"id":796,"kind":{"StorageLive":33},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":336,"col":37},"end":{"line":336,"col":44}},"generated_from_span":null},"id":797,"kind":{"Assign":[{"kind":{"Local":33},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":0,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":336,"col":47},"end":{"line":336,"col":48}},"generated_from_span":null},"id":798,"kind":{"StorageLive":34},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":336,"col":47},"end":{"line":336,"col":48}},"generated_from_span":null},"id":799,"kind":{"Assign":[{"kind":{"Local":34},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":336,"col":37},"end":{"line":336,"col":49}},"generated_from_span":null},"id":4117,"kind":{"StorageLive":193},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":336,"col":37},"end":{"line":336,"col":49}},"generated_from_span":null},"id":4118,"kind":{"Assign":[{"kind":{"Local":193},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":33},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":336,"col":37},"end":{"line":336,"col":49}},"generated_from_span":null},"id":4119,"kind":{"StorageLive":194},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":336,"col":37},"end":{"line":336,"col":49}},"generated_from_span":null},"id":4120,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":193},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":34},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":194},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":336,"col":37},"end":{"line":336,"col":49}},"generated_from_span":null},"id":802,"kind":{"Assign":[{"kind":{"Local":32},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":194},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":336,"col":51},"end":{"line":336,"col":56}},"generated_from_span":null},"id":803,"kind":{"StorageLive":35},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":336,"col":51},"end":{"line":336,"col":56}},"generated_from_span":null},"id":804,"kind":{"Assign":[{"kind":{"Local":35},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":19},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":336,"col":26},"end":{"line":336,"col":57}},"generated_from_span":null},"id":805,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":30},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":31},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":32},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":35},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":29},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":336,"col":56},"end":{"line":336,"col":57}},"generated_from_span":null},"id":806,"kind":{"StorageDead":35},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":336,"col":56},"end":{"line":336,"col":57}},"generated_from_span":null},"id":807,"kind":{"StorageDead":32},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":336,"col":56},"end":{"line":336,"col":57}},"generated_from_span":null},"id":808,"kind":{"StorageDead":31},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":336,"col":56},"end":{"line":336,"col":57}},"generated_from_span":null},"id":809,"kind":{"StorageDead":30},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":336,"col":13},"end":{"line":336,"col":15}},"generated_from_span":null},"id":810,"kind":{"StorageLive":27},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":336,"col":13},"end":{"line":336,"col":15}},"generated_from_span":null},"id":811,"kind":{"Assign":[{"kind":{"Local":27},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":29},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":336,"col":17},"end":{"line":336,"col":22}},"generated_from_span":null},"id":812,"kind":{"StorageLive":28},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":336,"col":17},"end":{"line":336,"col":22}},"generated_from_span":null},"id":813,"kind":{"Assign":[{"kind":{"Local":28},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":29},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":336,"col":57},"end":{"line":336,"col":58}},"generated_from_span":null},"id":814,"kind":{"StorageDead":34},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":336,"col":57},"end":{"line":336,"col":58}},"generated_from_span":null},"id":815,"kind":{"StorageDead":33},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":336,"col":57},"end":{"line":336,"col":58}},"generated_from_span":null},"id":816,"kind":{"StorageDead":29},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":337,"col":26},"end":{"line":337,"col":57}},"generated_from_span":null},"id":817,"kind":{"StorageLive":38},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":337,"col":30},"end":{"line":337,"col":32}},"generated_from_span":null},"id":818,"kind":{"StorageLive":39},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":337,"col":30},"end":{"line":337,"col":32}},"generated_from_span":null},"id":819,"kind":{"Assign":[{"kind":{"Local":39},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":4},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":337,"col":34},"end":{"line":337,"col":35}},"generated_from_span":null},"id":820,"kind":{"StorageLive":40},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":337,"col":34},"end":{"line":337,"col":35}},"generated_from_span":null},"id":821,"kind":{"Assign":[{"kind":{"Local":40},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":9},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":337,"col":37},"end":{"line":337,"col":49}},"generated_from_span":null},"id":822,"kind":{"StorageLive":41},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":337,"col":37},"end":{"line":337,"col":44}},"generated_from_span":null},"id":823,"kind":{"StorageLive":42},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":337,"col":37},"end":{"line":337,"col":44}},"generated_from_span":null},"id":824,"kind":{"Assign":[{"kind":{"Local":42},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":0,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":337,"col":47},"end":{"line":337,"col":48}},"generated_from_span":null},"id":825,"kind":{"StorageLive":43},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":337,"col":47},"end":{"line":337,"col":48}},"generated_from_span":null},"id":826,"kind":{"Assign":[{"kind":{"Local":43},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":337,"col":37},"end":{"line":337,"col":49}},"generated_from_span":null},"id":4121,"kind":{"StorageLive":195},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":337,"col":37},"end":{"line":337,"col":49}},"generated_from_span":null},"id":4122,"kind":{"Assign":[{"kind":{"Local":195},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":42},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":337,"col":37},"end":{"line":337,"col":49}},"generated_from_span":null},"id":4123,"kind":{"StorageLive":196},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":337,"col":37},"end":{"line":337,"col":49}},"generated_from_span":null},"id":4124,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":195},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":43},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":196},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":337,"col":37},"end":{"line":337,"col":49}},"generated_from_span":null},"id":829,"kind":{"Assign":[{"kind":{"Local":41},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":196},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":337,"col":51},"end":{"line":337,"col":56}},"generated_from_span":null},"id":830,"kind":{"StorageLive":44},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":337,"col":51},"end":{"line":337,"col":56}},"generated_from_span":null},"id":831,"kind":{"Assign":[{"kind":{"Local":44},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":28},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":337,"col":26},"end":{"line":337,"col":57}},"generated_from_span":null},"id":832,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":39},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":40},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":41},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":44},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":38},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":337,"col":56},"end":{"line":337,"col":57}},"generated_from_span":null},"id":833,"kind":{"StorageDead":44},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":337,"col":56},"end":{"line":337,"col":57}},"generated_from_span":null},"id":834,"kind":{"StorageDead":41},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":337,"col":56},"end":{"line":337,"col":57}},"generated_from_span":null},"id":835,"kind":{"StorageDead":40},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":337,"col":56},"end":{"line":337,"col":57}},"generated_from_span":null},"id":836,"kind":{"StorageDead":39},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":337,"col":13},"end":{"line":337,"col":15}},"generated_from_span":null},"id":837,"kind":{"StorageLive":36},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":337,"col":13},"end":{"line":337,"col":15}},"generated_from_span":null},"id":838,"kind":{"Assign":[{"kind":{"Local":36},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":38},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":337,"col":17},"end":{"line":337,"col":22}},"generated_from_span":null},"id":839,"kind":{"StorageLive":37},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":337,"col":17},"end":{"line":337,"col":22}},"generated_from_span":null},"id":840,"kind":{"Assign":[{"kind":{"Local":37},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":38},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":337,"col":57},"end":{"line":337,"col":58}},"generated_from_span":null},"id":841,"kind":{"StorageDead":43},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":337,"col":57},"end":{"line":337,"col":58}},"generated_from_span":null},"id":842,"kind":{"StorageDead":42},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":337,"col":57},"end":{"line":337,"col":58}},"generated_from_span":null},"id":843,"kind":{"StorageDead":38},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":338,"col":27},"end":{"line":338,"col":44}},"generated_from_span":null},"id":844,"kind":{"StorageLive":47},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":338,"col":31},"end":{"line":338,"col":33}},"generated_from_span":null},"id":845,"kind":{"StorageLive":48},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":338,"col":31},"end":{"line":338,"col":33}},"generated_from_span":null},"id":846,"kind":{"Assign":[{"kind":{"Local":48},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":5},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":338,"col":38},"end":{"line":338,"col":43}},"generated_from_span":null},"id":847,"kind":{"StorageLive":49},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":338,"col":38},"end":{"line":338,"col":43}},"generated_from_span":null},"id":848,"kind":{"Assign":[{"kind":{"Local":49},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":37},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":338,"col":27},"end":{"line":338,"col":44}},"generated_from_span":null},"id":849,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":212}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":48},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":49},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":47},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":338,"col":43},"end":{"line":338,"col":44}},"generated_from_span":null},"id":850,"kind":{"StorageDead":49},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":338,"col":43},"end":{"line":338,"col":44}},"generated_from_span":null},"id":851,"kind":{"StorageDead":48},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":338,"col":13},"end":{"line":338,"col":15}},"generated_from_span":null},"id":852,"kind":{"StorageLive":45},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":338,"col":13},"end":{"line":338,"col":15}},"generated_from_span":null},"id":853,"kind":{"Assign":[{"kind":{"Local":45},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":47},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":338,"col":17},"end":{"line":338,"col":23}},"generated_from_span":null},"id":854,"kind":{"StorageLive":46},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":338,"col":17},"end":{"line":338,"col":23}},"generated_from_span":null},"id":855,"kind":{"Assign":[{"kind":{"Local":46},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":47},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":338,"col":44},"end":{"line":338,"col":45}},"generated_from_span":null},"id":856,"kind":{"StorageDead":47},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":340,"col":12},"end":{"line":340,"col":13}},"generated_from_span":null},"id":857,"kind":{"StorageLive":50},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":340,"col":16},"end":{"line":340,"col":18}},"generated_from_span":null},"id":858,"kind":{"StorageLive":51},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":340,"col":16},"end":{"line":340,"col":18}},"generated_from_span":null},"id":859,"kind":{"Assign":[{"kind":{"Local":51},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":18},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":340,"col":16},"end":{"line":340,"col":36}},"generated_from_span":null},"id":860,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":210}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":51},"ty":{"Deduplicated":1072}}},{"Copy":{"kind":{"Global":{"id":1,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":50},"ty":{"Deduplicated":1072}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":340,"col":35},"end":{"line":340,"col":36}},"generated_from_span":null},"id":861,"kind":{"StorageDead":51},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":341,"col":25},"end":{"line":341,"col":52}},"generated_from_span":null},"id":862,"kind":{"StorageLive":53},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":341,"col":29},"end":{"line":341,"col":31}},"generated_from_span":null},"id":863,"kind":{"StorageLive":54},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":341,"col":29},"end":{"line":341,"col":31}},"generated_from_span":null},"id":864,"kind":{"Assign":[{"kind":{"Local":54},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":18},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":341,"col":33},"end":{"line":341,"col":34}},"generated_from_span":null},"id":865,"kind":{"StorageLive":55},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":341,"col":33},"end":{"line":341,"col":34}},"generated_from_span":null},"id":866,"kind":{"Assign":[{"kind":{"Local":55},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":50},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":341,"col":36},"end":{"line":341,"col":48}},"generated_from_span":null},"id":867,"kind":{"StorageLive":56},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":341,"col":36},"end":{"line":341,"col":43}},"generated_from_span":null},"id":868,"kind":{"StorageLive":57},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":341,"col":36},"end":{"line":341,"col":43}},"generated_from_span":null},"id":869,"kind":{"Assign":[{"kind":{"Local":57},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":0,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":341,"col":46},"end":{"line":341,"col":47}},"generated_from_span":null},"id":870,"kind":{"StorageLive":58},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":341,"col":46},"end":{"line":341,"col":47}},"generated_from_span":null},"id":871,"kind":{"Assign":[{"kind":{"Local":58},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":341,"col":36},"end":{"line":341,"col":48}},"generated_from_span":null},"id":4125,"kind":{"StorageLive":197},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":341,"col":36},"end":{"line":341,"col":48}},"generated_from_span":null},"id":4126,"kind":{"Assign":[{"kind":{"Local":197},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":57},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":341,"col":36},"end":{"line":341,"col":48}},"generated_from_span":null},"id":4127,"kind":{"StorageLive":198},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":341,"col":36},"end":{"line":341,"col":48}},"generated_from_span":null},"id":4128,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":197},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":58},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":198},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":341,"col":36},"end":{"line":341,"col":48}},"generated_from_span":null},"id":874,"kind":{"Assign":[{"kind":{"Local":56},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":198},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":341,"col":25},"end":{"line":341,"col":52}},"generated_from_span":null},"id":875,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":54},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":55},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":56},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":53},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":341,"col":51},"end":{"line":341,"col":52}},"generated_from_span":null},"id":876,"kind":{"StorageDead":56},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":341,"col":51},"end":{"line":341,"col":52}},"generated_from_span":null},"id":877,"kind":{"StorageDead":55},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":341,"col":51},"end":{"line":341,"col":52}},"generated_from_span":null},"id":878,"kind":{"StorageDead":54},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":341,"col":16},"end":{"line":341,"col":21}},"generated_from_span":null},"id":879,"kind":{"StorageLive":52},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":341,"col":16},"end":{"line":341,"col":21}},"generated_from_span":null},"id":880,"kind":{"Assign":[{"kind":{"Local":52},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":53},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":341,"col":52},"end":{"line":341,"col":53}},"generated_from_span":null},"id":881,"kind":{"StorageDead":58},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":341,"col":52},"end":{"line":341,"col":53}},"generated_from_span":null},"id":882,"kind":{"StorageDead":57},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":341,"col":52},"end":{"line":341,"col":53}},"generated_from_span":null},"id":883,"kind":{"StorageDead":53},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":342,"col":26},"end":{"line":342,"col":57}},"generated_from_span":null},"id":884,"kind":{"StorageLive":61},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":342,"col":30},"end":{"line":342,"col":32}},"generated_from_span":null},"id":885,"kind":{"StorageLive":62},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":342,"col":30},"end":{"line":342,"col":32}},"generated_from_span":null},"id":886,"kind":{"Assign":[{"kind":{"Local":62},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":27},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":342,"col":34},"end":{"line":342,"col":35}},"generated_from_span":null},"id":887,"kind":{"StorageLive":63},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":342,"col":34},"end":{"line":342,"col":35}},"generated_from_span":null},"id":888,"kind":{"Assign":[{"kind":{"Local":63},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":50},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":342,"col":37},"end":{"line":342,"col":49}},"generated_from_span":null},"id":889,"kind":{"StorageLive":64},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":342,"col":37},"end":{"line":342,"col":44}},"generated_from_span":null},"id":890,"kind":{"StorageLive":65},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":342,"col":37},"end":{"line":342,"col":44}},"generated_from_span":null},"id":891,"kind":{"Assign":[{"kind":{"Local":65},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":0,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":342,"col":47},"end":{"line":342,"col":48}},"generated_from_span":null},"id":892,"kind":{"StorageLive":66},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":342,"col":47},"end":{"line":342,"col":48}},"generated_from_span":null},"id":893,"kind":{"Assign":[{"kind":{"Local":66},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":342,"col":37},"end":{"line":342,"col":49}},"generated_from_span":null},"id":4129,"kind":{"StorageLive":199},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":342,"col":37},"end":{"line":342,"col":49}},"generated_from_span":null},"id":4130,"kind":{"Assign":[{"kind":{"Local":199},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":65},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":342,"col":37},"end":{"line":342,"col":49}},"generated_from_span":null},"id":4131,"kind":{"StorageLive":200},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":342,"col":37},"end":{"line":342,"col":49}},"generated_from_span":null},"id":4132,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":199},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":66},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":200},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":342,"col":37},"end":{"line":342,"col":49}},"generated_from_span":null},"id":896,"kind":{"Assign":[{"kind":{"Local":64},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":200},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":342,"col":51},"end":{"line":342,"col":56}},"generated_from_span":null},"id":897,"kind":{"StorageLive":67},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":342,"col":51},"end":{"line":342,"col":56}},"generated_from_span":null},"id":898,"kind":{"Assign":[{"kind":{"Local":67},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":52},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":342,"col":26},"end":{"line":342,"col":57}},"generated_from_span":null},"id":899,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":62},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":63},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":64},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":67},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":61},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":342,"col":56},"end":{"line":342,"col":57}},"generated_from_span":null},"id":900,"kind":{"StorageDead":67},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":342,"col":56},"end":{"line":342,"col":57}},"generated_from_span":null},"id":901,"kind":{"StorageDead":64},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":342,"col":56},"end":{"line":342,"col":57}},"generated_from_span":null},"id":902,"kind":{"StorageDead":63},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":342,"col":56},"end":{"line":342,"col":57}},"generated_from_span":null},"id":903,"kind":{"StorageDead":62},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":342,"col":13},"end":{"line":342,"col":15}},"generated_from_span":null},"id":904,"kind":{"StorageLive":59},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":342,"col":13},"end":{"line":342,"col":15}},"generated_from_span":null},"id":905,"kind":{"Assign":[{"kind":{"Local":59},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":61},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":342,"col":17},"end":{"line":342,"col":22}},"generated_from_span":null},"id":906,"kind":{"StorageLive":60},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":342,"col":17},"end":{"line":342,"col":22}},"generated_from_span":null},"id":907,"kind":{"Assign":[{"kind":{"Local":60},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":61},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":342,"col":57},"end":{"line":342,"col":58}},"generated_from_span":null},"id":908,"kind":{"StorageDead":66},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":342,"col":57},"end":{"line":342,"col":58}},"generated_from_span":null},"id":909,"kind":{"StorageDead":65},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":342,"col":57},"end":{"line":342,"col":58}},"generated_from_span":null},"id":910,"kind":{"StorageDead":61},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":343,"col":26},"end":{"line":343,"col":57}},"generated_from_span":null},"id":911,"kind":{"StorageLive":70},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":343,"col":30},"end":{"line":343,"col":32}},"generated_from_span":null},"id":912,"kind":{"StorageLive":71},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":343,"col":30},"end":{"line":343,"col":32}},"generated_from_span":null},"id":913,"kind":{"Assign":[{"kind":{"Local":71},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":36},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":343,"col":34},"end":{"line":343,"col":35}},"generated_from_span":null},"id":914,"kind":{"StorageLive":72},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":343,"col":34},"end":{"line":343,"col":35}},"generated_from_span":null},"id":915,"kind":{"Assign":[{"kind":{"Local":72},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":50},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":343,"col":37},"end":{"line":343,"col":49}},"generated_from_span":null},"id":916,"kind":{"StorageLive":73},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":343,"col":37},"end":{"line":343,"col":44}},"generated_from_span":null},"id":917,"kind":{"StorageLive":74},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":343,"col":37},"end":{"line":343,"col":44}},"generated_from_span":null},"id":918,"kind":{"Assign":[{"kind":{"Local":74},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":0,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":343,"col":47},"end":{"line":343,"col":48}},"generated_from_span":null},"id":919,"kind":{"StorageLive":75},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":343,"col":47},"end":{"line":343,"col":48}},"generated_from_span":null},"id":920,"kind":{"Assign":[{"kind":{"Local":75},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":343,"col":37},"end":{"line":343,"col":49}},"generated_from_span":null},"id":4133,"kind":{"StorageLive":201},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":343,"col":37},"end":{"line":343,"col":49}},"generated_from_span":null},"id":4134,"kind":{"Assign":[{"kind":{"Local":201},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":74},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":343,"col":37},"end":{"line":343,"col":49}},"generated_from_span":null},"id":4135,"kind":{"StorageLive":202},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":343,"col":37},"end":{"line":343,"col":49}},"generated_from_span":null},"id":4136,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":201},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":75},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":202},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":343,"col":37},"end":{"line":343,"col":49}},"generated_from_span":null},"id":923,"kind":{"Assign":[{"kind":{"Local":73},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":202},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":343,"col":51},"end":{"line":343,"col":56}},"generated_from_span":null},"id":924,"kind":{"StorageLive":76},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":343,"col":51},"end":{"line":343,"col":56}},"generated_from_span":null},"id":925,"kind":{"Assign":[{"kind":{"Local":76},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":60},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":343,"col":26},"end":{"line":343,"col":57}},"generated_from_span":null},"id":926,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":71},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":72},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":73},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":76},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":70},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":343,"col":56},"end":{"line":343,"col":57}},"generated_from_span":null},"id":927,"kind":{"StorageDead":76},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":343,"col":56},"end":{"line":343,"col":57}},"generated_from_span":null},"id":928,"kind":{"StorageDead":73},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":343,"col":56},"end":{"line":343,"col":57}},"generated_from_span":null},"id":929,"kind":{"StorageDead":72},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":343,"col":56},"end":{"line":343,"col":57}},"generated_from_span":null},"id":930,"kind":{"StorageDead":71},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":343,"col":13},"end":{"line":343,"col":15}},"generated_from_span":null},"id":931,"kind":{"StorageLive":68},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":343,"col":13},"end":{"line":343,"col":15}},"generated_from_span":null},"id":932,"kind":{"Assign":[{"kind":{"Local":68},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":70},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":343,"col":17},"end":{"line":343,"col":22}},"generated_from_span":null},"id":933,"kind":{"StorageLive":69},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":343,"col":17},"end":{"line":343,"col":22}},"generated_from_span":null},"id":934,"kind":{"Assign":[{"kind":{"Local":69},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":70},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":343,"col":57},"end":{"line":343,"col":58}},"generated_from_span":null},"id":935,"kind":{"StorageDead":75},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":343,"col":57},"end":{"line":343,"col":58}},"generated_from_span":null},"id":936,"kind":{"StorageDead":74},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":343,"col":57},"end":{"line":343,"col":58}},"generated_from_span":null},"id":937,"kind":{"StorageDead":70},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":344,"col":26},"end":{"line":344,"col":57}},"generated_from_span":null},"id":938,"kind":{"StorageLive":79},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":344,"col":30},"end":{"line":344,"col":32}},"generated_from_span":null},"id":939,"kind":{"StorageLive":80},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":344,"col":30},"end":{"line":344,"col":32}},"generated_from_span":null},"id":940,"kind":{"Assign":[{"kind":{"Local":80},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":45},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":344,"col":34},"end":{"line":344,"col":35}},"generated_from_span":null},"id":941,"kind":{"StorageLive":81},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":344,"col":34},"end":{"line":344,"col":35}},"generated_from_span":null},"id":942,"kind":{"Assign":[{"kind":{"Local":81},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":50},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":344,"col":37},"end":{"line":344,"col":49}},"generated_from_span":null},"id":943,"kind":{"StorageLive":82},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":344,"col":37},"end":{"line":344,"col":44}},"generated_from_span":null},"id":944,"kind":{"StorageLive":83},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":344,"col":37},"end":{"line":344,"col":44}},"generated_from_span":null},"id":945,"kind":{"Assign":[{"kind":{"Local":83},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":0,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":344,"col":47},"end":{"line":344,"col":48}},"generated_from_span":null},"id":946,"kind":{"StorageLive":84},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":344,"col":47},"end":{"line":344,"col":48}},"generated_from_span":null},"id":947,"kind":{"Assign":[{"kind":{"Local":84},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":344,"col":37},"end":{"line":344,"col":49}},"generated_from_span":null},"id":4137,"kind":{"StorageLive":203},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":344,"col":37},"end":{"line":344,"col":49}},"generated_from_span":null},"id":4138,"kind":{"Assign":[{"kind":{"Local":203},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":83},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":344,"col":37},"end":{"line":344,"col":49}},"generated_from_span":null},"id":4139,"kind":{"StorageLive":204},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":344,"col":37},"end":{"line":344,"col":49}},"generated_from_span":null},"id":4140,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":203},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":84},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":204},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":344,"col":37},"end":{"line":344,"col":49}},"generated_from_span":null},"id":950,"kind":{"Assign":[{"kind":{"Local":82},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":204},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":344,"col":51},"end":{"line":344,"col":56}},"generated_from_span":null},"id":951,"kind":{"StorageLive":85},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":344,"col":51},"end":{"line":344,"col":56}},"generated_from_span":null},"id":952,"kind":{"Assign":[{"kind":{"Local":85},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":69},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":344,"col":26},"end":{"line":344,"col":57}},"generated_from_span":null},"id":953,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":80},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":81},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":82},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":85},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":79},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":344,"col":56},"end":{"line":344,"col":57}},"generated_from_span":null},"id":954,"kind":{"StorageDead":85},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":344,"col":56},"end":{"line":344,"col":57}},"generated_from_span":null},"id":955,"kind":{"StorageDead":82},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":344,"col":56},"end":{"line":344,"col":57}},"generated_from_span":null},"id":956,"kind":{"StorageDead":81},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":344,"col":56},"end":{"line":344,"col":57}},"generated_from_span":null},"id":957,"kind":{"StorageDead":80},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":344,"col":13},"end":{"line":344,"col":15}},"generated_from_span":null},"id":958,"kind":{"StorageLive":77},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":344,"col":13},"end":{"line":344,"col":15}},"generated_from_span":null},"id":959,"kind":{"Assign":[{"kind":{"Local":77},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":79},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":344,"col":17},"end":{"line":344,"col":22}},"generated_from_span":null},"id":960,"kind":{"StorageLive":78},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":344,"col":17},"end":{"line":344,"col":22}},"generated_from_span":null},"id":961,"kind":{"Assign":[{"kind":{"Local":78},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":79},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":344,"col":57},"end":{"line":344,"col":58}},"generated_from_span":null},"id":962,"kind":{"StorageDead":84},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":344,"col":57},"end":{"line":344,"col":58}},"generated_from_span":null},"id":963,"kind":{"StorageDead":83},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":344,"col":57},"end":{"line":344,"col":58}},"generated_from_span":null},"id":964,"kind":{"StorageDead":79},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":345,"col":27},"end":{"line":345,"col":49}},"generated_from_span":null},"id":965,"kind":{"StorageLive":88},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":345,"col":31},"end":{"line":345,"col":33}},"generated_from_span":null},"id":966,"kind":{"StorageLive":89},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":345,"col":31},"end":{"line":345,"col":33}},"generated_from_span":null},"id":967,"kind":{"Assign":[{"kind":{"Local":89},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":6},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":345,"col":35},"end":{"line":345,"col":41}},"generated_from_span":null},"id":968,"kind":{"StorageLive":90},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":345,"col":35},"end":{"line":345,"col":41}},"generated_from_span":null},"id":969,"kind":{"Assign":[{"kind":{"Local":90},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":46},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":345,"col":43},"end":{"line":345,"col":48}},"generated_from_span":null},"id":970,"kind":{"StorageLive":91},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":345,"col":43},"end":{"line":345,"col":48}},"generated_from_span":null},"id":971,"kind":{"Assign":[{"kind":{"Local":91},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":78},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":345,"col":27},"end":{"line":345,"col":49}},"generated_from_span":null},"id":972,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":212}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":89},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":90},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":91},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":88},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":345,"col":48},"end":{"line":345,"col":49}},"generated_from_span":null},"id":973,"kind":{"StorageDead":91},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":345,"col":48},"end":{"line":345,"col":49}},"generated_from_span":null},"id":974,"kind":{"StorageDead":90},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":345,"col":48},"end":{"line":345,"col":49}},"generated_from_span":null},"id":975,"kind":{"StorageDead":89},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":345,"col":13},"end":{"line":345,"col":15}},"generated_from_span":null},"id":976,"kind":{"StorageLive":86},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":345,"col":13},"end":{"line":345,"col":15}},"generated_from_span":null},"id":977,"kind":{"Assign":[{"kind":{"Local":86},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":88},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":345,"col":17},"end":{"line":345,"col":23}},"generated_from_span":null},"id":978,"kind":{"StorageLive":87},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":345,"col":17},"end":{"line":345,"col":23}},"generated_from_span":null},"id":979,"kind":{"Assign":[{"kind":{"Local":87},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":88},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":345,"col":49},"end":{"line":345,"col":50}},"generated_from_span":null},"id":980,"kind":{"StorageDead":88},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":347,"col":12},"end":{"line":347,"col":13}},"generated_from_span":null},"id":981,"kind":{"StorageLive":92},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":347,"col":16},"end":{"line":347,"col":18}},"generated_from_span":null},"id":982,"kind":{"StorageLive":93},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":347,"col":16},"end":{"line":347,"col":18}},"generated_from_span":null},"id":983,"kind":{"Assign":[{"kind":{"Local":93},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":59},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":347,"col":16},"end":{"line":347,"col":36}},"generated_from_span":null},"id":984,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":210}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":93},"ty":{"Deduplicated":1072}}},{"Copy":{"kind":{"Global":{"id":1,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":92},"ty":{"Deduplicated":1072}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":347,"col":35},"end":{"line":347,"col":36}},"generated_from_span":null},"id":985,"kind":{"StorageDead":93},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":348,"col":25},"end":{"line":348,"col":52}},"generated_from_span":null},"id":986,"kind":{"StorageLive":95},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":348,"col":29},"end":{"line":348,"col":31}},"generated_from_span":null},"id":987,"kind":{"StorageLive":96},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":348,"col":29},"end":{"line":348,"col":31}},"generated_from_span":null},"id":988,"kind":{"Assign":[{"kind":{"Local":96},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":59},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":348,"col":33},"end":{"line":348,"col":34}},"generated_from_span":null},"id":989,"kind":{"StorageLive":97},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":348,"col":33},"end":{"line":348,"col":34}},"generated_from_span":null},"id":990,"kind":{"Assign":[{"kind":{"Local":97},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":92},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":348,"col":36},"end":{"line":348,"col":48}},"generated_from_span":null},"id":991,"kind":{"StorageLive":98},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":348,"col":36},"end":{"line":348,"col":43}},"generated_from_span":null},"id":992,"kind":{"StorageLive":99},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":348,"col":36},"end":{"line":348,"col":43}},"generated_from_span":null},"id":993,"kind":{"Assign":[{"kind":{"Local":99},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":0,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":348,"col":46},"end":{"line":348,"col":47}},"generated_from_span":null},"id":994,"kind":{"StorageLive":100},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":348,"col":46},"end":{"line":348,"col":47}},"generated_from_span":null},"id":995,"kind":{"Assign":[{"kind":{"Local":100},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":348,"col":36},"end":{"line":348,"col":48}},"generated_from_span":null},"id":4141,"kind":{"StorageLive":205},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":348,"col":36},"end":{"line":348,"col":48}},"generated_from_span":null},"id":4142,"kind":{"Assign":[{"kind":{"Local":205},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":99},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":348,"col":36},"end":{"line":348,"col":48}},"generated_from_span":null},"id":4143,"kind":{"StorageLive":206},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":348,"col":36},"end":{"line":348,"col":48}},"generated_from_span":null},"id":4144,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":205},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":100},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":206},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":348,"col":36},"end":{"line":348,"col":48}},"generated_from_span":null},"id":998,"kind":{"Assign":[{"kind":{"Local":98},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":206},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":348,"col":25},"end":{"line":348,"col":52}},"generated_from_span":null},"id":999,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":96},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":97},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":98},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":95},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":348,"col":51},"end":{"line":348,"col":52}},"generated_from_span":null},"id":1000,"kind":{"StorageDead":98},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":348,"col":51},"end":{"line":348,"col":52}},"generated_from_span":null},"id":1001,"kind":{"StorageDead":97},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":348,"col":51},"end":{"line":348,"col":52}},"generated_from_span":null},"id":1002,"kind":{"StorageDead":96},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":348,"col":16},"end":{"line":348,"col":21}},"generated_from_span":null},"id":1003,"kind":{"StorageLive":94},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":348,"col":16},"end":{"line":348,"col":21}},"generated_from_span":null},"id":1004,"kind":{"Assign":[{"kind":{"Local":94},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":95},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":348,"col":52},"end":{"line":348,"col":53}},"generated_from_span":null},"id":1005,"kind":{"StorageDead":100},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":348,"col":52},"end":{"line":348,"col":53}},"generated_from_span":null},"id":1006,"kind":{"StorageDead":99},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":348,"col":52},"end":{"line":348,"col":53}},"generated_from_span":null},"id":1007,"kind":{"StorageDead":95},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":349,"col":26},"end":{"line":349,"col":57}},"generated_from_span":null},"id":1008,"kind":{"StorageLive":103},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":349,"col":30},"end":{"line":349,"col":32}},"generated_from_span":null},"id":1009,"kind":{"StorageLive":104},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":349,"col":30},"end":{"line":349,"col":32}},"generated_from_span":null},"id":1010,"kind":{"Assign":[{"kind":{"Local":104},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":68},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":349,"col":34},"end":{"line":349,"col":35}},"generated_from_span":null},"id":1011,"kind":{"StorageLive":105},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":349,"col":34},"end":{"line":349,"col":35}},"generated_from_span":null},"id":1012,"kind":{"Assign":[{"kind":{"Local":105},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":92},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":349,"col":37},"end":{"line":349,"col":49}},"generated_from_span":null},"id":1013,"kind":{"StorageLive":106},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":349,"col":37},"end":{"line":349,"col":44}},"generated_from_span":null},"id":1014,"kind":{"StorageLive":107},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":349,"col":37},"end":{"line":349,"col":44}},"generated_from_span":null},"id":1015,"kind":{"Assign":[{"kind":{"Local":107},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":0,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":349,"col":47},"end":{"line":349,"col":48}},"generated_from_span":null},"id":1016,"kind":{"StorageLive":108},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":349,"col":47},"end":{"line":349,"col":48}},"generated_from_span":null},"id":1017,"kind":{"Assign":[{"kind":{"Local":108},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":349,"col":37},"end":{"line":349,"col":49}},"generated_from_span":null},"id":4145,"kind":{"StorageLive":207},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":349,"col":37},"end":{"line":349,"col":49}},"generated_from_span":null},"id":4146,"kind":{"Assign":[{"kind":{"Local":207},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":107},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":349,"col":37},"end":{"line":349,"col":49}},"generated_from_span":null},"id":4147,"kind":{"StorageLive":208},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":349,"col":37},"end":{"line":349,"col":49}},"generated_from_span":null},"id":4148,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":207},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":108},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":208},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":349,"col":37},"end":{"line":349,"col":49}},"generated_from_span":null},"id":1020,"kind":{"Assign":[{"kind":{"Local":106},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":208},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":349,"col":51},"end":{"line":349,"col":56}},"generated_from_span":null},"id":1021,"kind":{"StorageLive":109},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":349,"col":51},"end":{"line":349,"col":56}},"generated_from_span":null},"id":1022,"kind":{"Assign":[{"kind":{"Local":109},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":94},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":349,"col":26},"end":{"line":349,"col":57}},"generated_from_span":null},"id":1023,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":104},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":105},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":106},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":109},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":103},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":349,"col":56},"end":{"line":349,"col":57}},"generated_from_span":null},"id":1024,"kind":{"StorageDead":109},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":349,"col":56},"end":{"line":349,"col":57}},"generated_from_span":null},"id":1025,"kind":{"StorageDead":106},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":349,"col":56},"end":{"line":349,"col":57}},"generated_from_span":null},"id":1026,"kind":{"StorageDead":105},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":349,"col":56},"end":{"line":349,"col":57}},"generated_from_span":null},"id":1027,"kind":{"StorageDead":104},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":349,"col":13},"end":{"line":349,"col":15}},"generated_from_span":null},"id":1028,"kind":{"StorageLive":101},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":349,"col":13},"end":{"line":349,"col":15}},"generated_from_span":null},"id":1029,"kind":{"Assign":[{"kind":{"Local":101},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":103},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":349,"col":17},"end":{"line":349,"col":22}},"generated_from_span":null},"id":1030,"kind":{"StorageLive":102},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":349,"col":17},"end":{"line":349,"col":22}},"generated_from_span":null},"id":1031,"kind":{"Assign":[{"kind":{"Local":102},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":103},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":349,"col":57},"end":{"line":349,"col":58}},"generated_from_span":null},"id":1032,"kind":{"StorageDead":108},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":349,"col":57},"end":{"line":349,"col":58}},"generated_from_span":null},"id":1033,"kind":{"StorageDead":107},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":349,"col":57},"end":{"line":349,"col":58}},"generated_from_span":null},"id":1034,"kind":{"StorageDead":103},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":350,"col":26},"end":{"line":350,"col":57}},"generated_from_span":null},"id":1035,"kind":{"StorageLive":112},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":350,"col":30},"end":{"line":350,"col":32}},"generated_from_span":null},"id":1036,"kind":{"StorageLive":113},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":350,"col":30},"end":{"line":350,"col":32}},"generated_from_span":null},"id":1037,"kind":{"Assign":[{"kind":{"Local":113},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":77},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":350,"col":34},"end":{"line":350,"col":35}},"generated_from_span":null},"id":1038,"kind":{"StorageLive":114},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":350,"col":34},"end":{"line":350,"col":35}},"generated_from_span":null},"id":1039,"kind":{"Assign":[{"kind":{"Local":114},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":92},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":350,"col":37},"end":{"line":350,"col":49}},"generated_from_span":null},"id":1040,"kind":{"StorageLive":115},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":350,"col":37},"end":{"line":350,"col":44}},"generated_from_span":null},"id":1041,"kind":{"StorageLive":116},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":350,"col":37},"end":{"line":350,"col":44}},"generated_from_span":null},"id":1042,"kind":{"Assign":[{"kind":{"Local":116},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":0,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":350,"col":47},"end":{"line":350,"col":48}},"generated_from_span":null},"id":1043,"kind":{"StorageLive":117},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":350,"col":47},"end":{"line":350,"col":48}},"generated_from_span":null},"id":1044,"kind":{"Assign":[{"kind":{"Local":117},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":350,"col":37},"end":{"line":350,"col":49}},"generated_from_span":null},"id":4149,"kind":{"StorageLive":209},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":350,"col":37},"end":{"line":350,"col":49}},"generated_from_span":null},"id":4150,"kind":{"Assign":[{"kind":{"Local":209},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":116},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":350,"col":37},"end":{"line":350,"col":49}},"generated_from_span":null},"id":4151,"kind":{"StorageLive":210},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":350,"col":37},"end":{"line":350,"col":49}},"generated_from_span":null},"id":4152,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":209},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":117},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":210},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":350,"col":37},"end":{"line":350,"col":49}},"generated_from_span":null},"id":1047,"kind":{"Assign":[{"kind":{"Local":115},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":210},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":350,"col":51},"end":{"line":350,"col":56}},"generated_from_span":null},"id":1048,"kind":{"StorageLive":118},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":350,"col":51},"end":{"line":350,"col":56}},"generated_from_span":null},"id":1049,"kind":{"Assign":[{"kind":{"Local":118},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":102},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":350,"col":26},"end":{"line":350,"col":57}},"generated_from_span":null},"id":1050,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":113},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":114},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":115},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":118},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":112},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":350,"col":56},"end":{"line":350,"col":57}},"generated_from_span":null},"id":1051,"kind":{"StorageDead":118},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":350,"col":56},"end":{"line":350,"col":57}},"generated_from_span":null},"id":1052,"kind":{"StorageDead":115},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":350,"col":56},"end":{"line":350,"col":57}},"generated_from_span":null},"id":1053,"kind":{"StorageDead":114},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":350,"col":56},"end":{"line":350,"col":57}},"generated_from_span":null},"id":1054,"kind":{"StorageDead":113},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":350,"col":13},"end":{"line":350,"col":15}},"generated_from_span":null},"id":1055,"kind":{"StorageLive":110},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":350,"col":13},"end":{"line":350,"col":15}},"generated_from_span":null},"id":1056,"kind":{"Assign":[{"kind":{"Local":110},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":112},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":350,"col":17},"end":{"line":350,"col":22}},"generated_from_span":null},"id":1057,"kind":{"StorageLive":111},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":350,"col":17},"end":{"line":350,"col":22}},"generated_from_span":null},"id":1058,"kind":{"Assign":[{"kind":{"Local":111},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":112},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":350,"col":57},"end":{"line":350,"col":58}},"generated_from_span":null},"id":1059,"kind":{"StorageDead":117},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":350,"col":57},"end":{"line":350,"col":58}},"generated_from_span":null},"id":1060,"kind":{"StorageDead":116},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":350,"col":57},"end":{"line":350,"col":58}},"generated_from_span":null},"id":1061,"kind":{"StorageDead":112},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":351,"col":26},"end":{"line":351,"col":57}},"generated_from_span":null},"id":1062,"kind":{"StorageLive":121},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":351,"col":30},"end":{"line":351,"col":32}},"generated_from_span":null},"id":1063,"kind":{"StorageLive":122},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":351,"col":30},"end":{"line":351,"col":32}},"generated_from_span":null},"id":1064,"kind":{"Assign":[{"kind":{"Local":122},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":86},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":351,"col":34},"end":{"line":351,"col":35}},"generated_from_span":null},"id":1065,"kind":{"StorageLive":123},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":351,"col":34},"end":{"line":351,"col":35}},"generated_from_span":null},"id":1066,"kind":{"Assign":[{"kind":{"Local":123},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":92},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":351,"col":37},"end":{"line":351,"col":49}},"generated_from_span":null},"id":1067,"kind":{"StorageLive":124},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":351,"col":37},"end":{"line":351,"col":44}},"generated_from_span":null},"id":1068,"kind":{"StorageLive":125},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":351,"col":37},"end":{"line":351,"col":44}},"generated_from_span":null},"id":1069,"kind":{"Assign":[{"kind":{"Local":125},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":0,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":351,"col":47},"end":{"line":351,"col":48}},"generated_from_span":null},"id":1070,"kind":{"StorageLive":126},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":351,"col":47},"end":{"line":351,"col":48}},"generated_from_span":null},"id":1071,"kind":{"Assign":[{"kind":{"Local":126},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":351,"col":37},"end":{"line":351,"col":49}},"generated_from_span":null},"id":4153,"kind":{"StorageLive":211},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":351,"col":37},"end":{"line":351,"col":49}},"generated_from_span":null},"id":4154,"kind":{"Assign":[{"kind":{"Local":211},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":125},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":351,"col":37},"end":{"line":351,"col":49}},"generated_from_span":null},"id":4155,"kind":{"StorageLive":212},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":351,"col":37},"end":{"line":351,"col":49}},"generated_from_span":null},"id":4156,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":211},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":126},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":212},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":351,"col":37},"end":{"line":351,"col":49}},"generated_from_span":null},"id":1074,"kind":{"Assign":[{"kind":{"Local":124},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":212},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":351,"col":51},"end":{"line":351,"col":56}},"generated_from_span":null},"id":1075,"kind":{"StorageLive":127},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":351,"col":51},"end":{"line":351,"col":56}},"generated_from_span":null},"id":1076,"kind":{"Assign":[{"kind":{"Local":127},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":111},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":351,"col":26},"end":{"line":351,"col":57}},"generated_from_span":null},"id":1077,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":122},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":123},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":124},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":127},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":121},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":351,"col":56},"end":{"line":351,"col":57}},"generated_from_span":null},"id":1078,"kind":{"StorageDead":127},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":351,"col":56},"end":{"line":351,"col":57}},"generated_from_span":null},"id":1079,"kind":{"StorageDead":124},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":351,"col":56},"end":{"line":351,"col":57}},"generated_from_span":null},"id":1080,"kind":{"StorageDead":123},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":351,"col":56},"end":{"line":351,"col":57}},"generated_from_span":null},"id":1081,"kind":{"StorageDead":122},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":351,"col":13},"end":{"line":351,"col":15}},"generated_from_span":null},"id":1082,"kind":{"StorageLive":119},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":351,"col":13},"end":{"line":351,"col":15}},"generated_from_span":null},"id":1083,"kind":{"Assign":[{"kind":{"Local":119},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":121},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":351,"col":17},"end":{"line":351,"col":22}},"generated_from_span":null},"id":1084,"kind":{"StorageLive":120},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":351,"col":17},"end":{"line":351,"col":22}},"generated_from_span":null},"id":1085,"kind":{"Assign":[{"kind":{"Local":120},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":121},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":351,"col":57},"end":{"line":351,"col":58}},"generated_from_span":null},"id":1086,"kind":{"StorageDead":126},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":351,"col":57},"end":{"line":351,"col":58}},"generated_from_span":null},"id":1087,"kind":{"StorageDead":125},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":351,"col":57},"end":{"line":351,"col":58}},"generated_from_span":null},"id":1088,"kind":{"StorageDead":121},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":352,"col":27},"end":{"line":352,"col":49}},"generated_from_span":null},"id":1089,"kind":{"StorageLive":130},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":352,"col":31},"end":{"line":352,"col":33}},"generated_from_span":null},"id":1090,"kind":{"StorageLive":131},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":352,"col":31},"end":{"line":352,"col":33}},"generated_from_span":null},"id":1091,"kind":{"Assign":[{"kind":{"Local":131},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":7},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":352,"col":35},"end":{"line":352,"col":41}},"generated_from_span":null},"id":1092,"kind":{"StorageLive":132},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":352,"col":35},"end":{"line":352,"col":41}},"generated_from_span":null},"id":1093,"kind":{"Assign":[{"kind":{"Local":132},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":87},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":352,"col":43},"end":{"line":352,"col":48}},"generated_from_span":null},"id":1094,"kind":{"StorageLive":133},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":352,"col":43},"end":{"line":352,"col":48}},"generated_from_span":null},"id":1095,"kind":{"Assign":[{"kind":{"Local":133},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":120},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":352,"col":27},"end":{"line":352,"col":49}},"generated_from_span":null},"id":1096,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":212}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":131},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":132},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":133},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":130},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":352,"col":48},"end":{"line":352,"col":49}},"generated_from_span":null},"id":1097,"kind":{"StorageDead":133},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":352,"col":48},"end":{"line":352,"col":49}},"generated_from_span":null},"id":1098,"kind":{"StorageDead":132},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":352,"col":48},"end":{"line":352,"col":49}},"generated_from_span":null},"id":1099,"kind":{"StorageDead":131},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":352,"col":13},"end":{"line":352,"col":15}},"generated_from_span":null},"id":1100,"kind":{"StorageLive":128},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":352,"col":13},"end":{"line":352,"col":15}},"generated_from_span":null},"id":1101,"kind":{"Assign":[{"kind":{"Local":128},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":130},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":352,"col":17},"end":{"line":352,"col":23}},"generated_from_span":null},"id":1102,"kind":{"StorageLive":129},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":352,"col":17},"end":{"line":352,"col":23}},"generated_from_span":null},"id":1103,"kind":{"Assign":[{"kind":{"Local":129},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":130},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":352,"col":49},"end":{"line":352,"col":50}},"generated_from_span":null},"id":1104,"kind":{"StorageDead":130},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":354,"col":12},"end":{"line":354,"col":13}},"generated_from_span":null},"id":1105,"kind":{"StorageLive":134},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":354,"col":16},"end":{"line":354,"col":18}},"generated_from_span":null},"id":1106,"kind":{"StorageLive":135},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":354,"col":16},"end":{"line":354,"col":18}},"generated_from_span":null},"id":1107,"kind":{"Assign":[{"kind":{"Local":135},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":101},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":354,"col":16},"end":{"line":354,"col":36}},"generated_from_span":null},"id":1108,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":210}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":135},"ty":{"Deduplicated":1072}}},{"Copy":{"kind":{"Global":{"id":1,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":134},"ty":{"Deduplicated":1072}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":354,"col":35},"end":{"line":354,"col":36}},"generated_from_span":null},"id":1109,"kind":{"StorageDead":135},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":355,"col":25},"end":{"line":355,"col":52}},"generated_from_span":null},"id":1110,"kind":{"StorageLive":137},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":355,"col":29},"end":{"line":355,"col":31}},"generated_from_span":null},"id":1111,"kind":{"StorageLive":138},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":355,"col":29},"end":{"line":355,"col":31}},"generated_from_span":null},"id":1112,"kind":{"Assign":[{"kind":{"Local":138},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":101},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":355,"col":33},"end":{"line":355,"col":34}},"generated_from_span":null},"id":1113,"kind":{"StorageLive":139},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":355,"col":33},"end":{"line":355,"col":34}},"generated_from_span":null},"id":1114,"kind":{"Assign":[{"kind":{"Local":139},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":134},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":355,"col":36},"end":{"line":355,"col":48}},"generated_from_span":null},"id":1115,"kind":{"StorageLive":140},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":355,"col":36},"end":{"line":355,"col":43}},"generated_from_span":null},"id":1116,"kind":{"StorageLive":141},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":355,"col":36},"end":{"line":355,"col":43}},"generated_from_span":null},"id":1117,"kind":{"Assign":[{"kind":{"Local":141},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":0,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":355,"col":46},"end":{"line":355,"col":47}},"generated_from_span":null},"id":1118,"kind":{"StorageLive":142},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":355,"col":46},"end":{"line":355,"col":47}},"generated_from_span":null},"id":1119,"kind":{"Assign":[{"kind":{"Local":142},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":355,"col":36},"end":{"line":355,"col":48}},"generated_from_span":null},"id":4157,"kind":{"StorageLive":213},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":355,"col":36},"end":{"line":355,"col":48}},"generated_from_span":null},"id":4158,"kind":{"Assign":[{"kind":{"Local":213},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":141},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":355,"col":36},"end":{"line":355,"col":48}},"generated_from_span":null},"id":4159,"kind":{"StorageLive":214},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":355,"col":36},"end":{"line":355,"col":48}},"generated_from_span":null},"id":4160,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":213},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":142},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":214},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":355,"col":36},"end":{"line":355,"col":48}},"generated_from_span":null},"id":1122,"kind":{"Assign":[{"kind":{"Local":140},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":214},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":355,"col":25},"end":{"line":355,"col":52}},"generated_from_span":null},"id":1123,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":138},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":139},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":140},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":137},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":355,"col":51},"end":{"line":355,"col":52}},"generated_from_span":null},"id":1124,"kind":{"StorageDead":140},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":355,"col":51},"end":{"line":355,"col":52}},"generated_from_span":null},"id":1125,"kind":{"StorageDead":139},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":355,"col":51},"end":{"line":355,"col":52}},"generated_from_span":null},"id":1126,"kind":{"StorageDead":138},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":355,"col":16},"end":{"line":355,"col":21}},"generated_from_span":null},"id":1127,"kind":{"StorageLive":136},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":355,"col":16},"end":{"line":355,"col":21}},"generated_from_span":null},"id":1128,"kind":{"Assign":[{"kind":{"Local":136},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":137},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":355,"col":52},"end":{"line":355,"col":53}},"generated_from_span":null},"id":1129,"kind":{"StorageDead":142},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":355,"col":52},"end":{"line":355,"col":53}},"generated_from_span":null},"id":1130,"kind":{"StorageDead":141},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":355,"col":52},"end":{"line":355,"col":53}},"generated_from_span":null},"id":1131,"kind":{"StorageDead":137},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":356,"col":26},"end":{"line":356,"col":57}},"generated_from_span":null},"id":1132,"kind":{"StorageLive":145},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":356,"col":30},"end":{"line":356,"col":32}},"generated_from_span":null},"id":1133,"kind":{"StorageLive":146},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":356,"col":30},"end":{"line":356,"col":32}},"generated_from_span":null},"id":1134,"kind":{"Assign":[{"kind":{"Local":146},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":110},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":356,"col":34},"end":{"line":356,"col":35}},"generated_from_span":null},"id":1135,"kind":{"StorageLive":147},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":356,"col":34},"end":{"line":356,"col":35}},"generated_from_span":null},"id":1136,"kind":{"Assign":[{"kind":{"Local":147},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":134},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":356,"col":37},"end":{"line":356,"col":49}},"generated_from_span":null},"id":1137,"kind":{"StorageLive":148},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":356,"col":37},"end":{"line":356,"col":44}},"generated_from_span":null},"id":1138,"kind":{"StorageLive":149},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":356,"col":37},"end":{"line":356,"col":44}},"generated_from_span":null},"id":1139,"kind":{"Assign":[{"kind":{"Local":149},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":0,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":356,"col":47},"end":{"line":356,"col":48}},"generated_from_span":null},"id":1140,"kind":{"StorageLive":150},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":356,"col":47},"end":{"line":356,"col":48}},"generated_from_span":null},"id":1141,"kind":{"Assign":[{"kind":{"Local":150},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":356,"col":37},"end":{"line":356,"col":49}},"generated_from_span":null},"id":4161,"kind":{"StorageLive":215},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":356,"col":37},"end":{"line":356,"col":49}},"generated_from_span":null},"id":4162,"kind":{"Assign":[{"kind":{"Local":215},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":149},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":356,"col":37},"end":{"line":356,"col":49}},"generated_from_span":null},"id":4163,"kind":{"StorageLive":216},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":356,"col":37},"end":{"line":356,"col":49}},"generated_from_span":null},"id":4164,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":215},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":150},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":216},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":356,"col":37},"end":{"line":356,"col":49}},"generated_from_span":null},"id":1144,"kind":{"Assign":[{"kind":{"Local":148},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":216},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":356,"col":51},"end":{"line":356,"col":56}},"generated_from_span":null},"id":1145,"kind":{"StorageLive":151},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":356,"col":51},"end":{"line":356,"col":56}},"generated_from_span":null},"id":1146,"kind":{"Assign":[{"kind":{"Local":151},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":136},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":356,"col":26},"end":{"line":356,"col":57}},"generated_from_span":null},"id":1147,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":146},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":147},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":148},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":151},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":145},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":356,"col":56},"end":{"line":356,"col":57}},"generated_from_span":null},"id":1148,"kind":{"StorageDead":151},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":356,"col":56},"end":{"line":356,"col":57}},"generated_from_span":null},"id":1149,"kind":{"StorageDead":148},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":356,"col":56},"end":{"line":356,"col":57}},"generated_from_span":null},"id":1150,"kind":{"StorageDead":147},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":356,"col":56},"end":{"line":356,"col":57}},"generated_from_span":null},"id":1151,"kind":{"StorageDead":146},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":356,"col":13},"end":{"line":356,"col":15}},"generated_from_span":null},"id":1152,"kind":{"StorageLive":143},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":356,"col":13},"end":{"line":356,"col":15}},"generated_from_span":null},"id":1153,"kind":{"Assign":[{"kind":{"Local":143},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":145},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":356,"col":17},"end":{"line":356,"col":22}},"generated_from_span":null},"id":1154,"kind":{"StorageLive":144},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":356,"col":17},"end":{"line":356,"col":22}},"generated_from_span":null},"id":1155,"kind":{"Assign":[{"kind":{"Local":144},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":145},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":356,"col":57},"end":{"line":356,"col":58}},"generated_from_span":null},"id":1156,"kind":{"StorageDead":150},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":356,"col":57},"end":{"line":356,"col":58}},"generated_from_span":null},"id":1157,"kind":{"StorageDead":149},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":356,"col":57},"end":{"line":356,"col":58}},"generated_from_span":null},"id":1158,"kind":{"StorageDead":145},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":357,"col":26},"end":{"line":357,"col":57}},"generated_from_span":null},"id":1159,"kind":{"StorageLive":154},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":357,"col":30},"end":{"line":357,"col":32}},"generated_from_span":null},"id":1160,"kind":{"StorageLive":155},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":357,"col":30},"end":{"line":357,"col":32}},"generated_from_span":null},"id":1161,"kind":{"Assign":[{"kind":{"Local":155},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":119},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":357,"col":34},"end":{"line":357,"col":35}},"generated_from_span":null},"id":1162,"kind":{"StorageLive":156},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":357,"col":34},"end":{"line":357,"col":35}},"generated_from_span":null},"id":1163,"kind":{"Assign":[{"kind":{"Local":156},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":134},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":357,"col":37},"end":{"line":357,"col":49}},"generated_from_span":null},"id":1164,"kind":{"StorageLive":157},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":357,"col":37},"end":{"line":357,"col":44}},"generated_from_span":null},"id":1165,"kind":{"StorageLive":158},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":357,"col":37},"end":{"line":357,"col":44}},"generated_from_span":null},"id":1166,"kind":{"Assign":[{"kind":{"Local":158},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":0,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":357,"col":47},"end":{"line":357,"col":48}},"generated_from_span":null},"id":1167,"kind":{"StorageLive":159},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":357,"col":47},"end":{"line":357,"col":48}},"generated_from_span":null},"id":1168,"kind":{"Assign":[{"kind":{"Local":159},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":357,"col":37},"end":{"line":357,"col":49}},"generated_from_span":null},"id":4165,"kind":{"StorageLive":217},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":357,"col":37},"end":{"line":357,"col":49}},"generated_from_span":null},"id":4166,"kind":{"Assign":[{"kind":{"Local":217},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":158},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":357,"col":37},"end":{"line":357,"col":49}},"generated_from_span":null},"id":4167,"kind":{"StorageLive":218},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":357,"col":37},"end":{"line":357,"col":49}},"generated_from_span":null},"id":4168,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":217},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":159},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":218},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":357,"col":37},"end":{"line":357,"col":49}},"generated_from_span":null},"id":1171,"kind":{"Assign":[{"kind":{"Local":157},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":218},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":357,"col":51},"end":{"line":357,"col":56}},"generated_from_span":null},"id":1172,"kind":{"StorageLive":160},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":357,"col":51},"end":{"line":357,"col":56}},"generated_from_span":null},"id":1173,"kind":{"Assign":[{"kind":{"Local":160},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":144},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":357,"col":26},"end":{"line":357,"col":57}},"generated_from_span":null},"id":1174,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":155},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":156},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":157},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":160},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":154},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":357,"col":56},"end":{"line":357,"col":57}},"generated_from_span":null},"id":1175,"kind":{"StorageDead":160},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":357,"col":56},"end":{"line":357,"col":57}},"generated_from_span":null},"id":1176,"kind":{"StorageDead":157},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":357,"col":56},"end":{"line":357,"col":57}},"generated_from_span":null},"id":1177,"kind":{"StorageDead":156},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":357,"col":56},"end":{"line":357,"col":57}},"generated_from_span":null},"id":1178,"kind":{"StorageDead":155},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":357,"col":13},"end":{"line":357,"col":15}},"generated_from_span":null},"id":1179,"kind":{"StorageLive":152},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":357,"col":13},"end":{"line":357,"col":15}},"generated_from_span":null},"id":1180,"kind":{"Assign":[{"kind":{"Local":152},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":154},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":357,"col":17},"end":{"line":357,"col":22}},"generated_from_span":null},"id":1181,"kind":{"StorageLive":153},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":357,"col":17},"end":{"line":357,"col":22}},"generated_from_span":null},"id":1182,"kind":{"Assign":[{"kind":{"Local":153},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":154},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":357,"col":57},"end":{"line":357,"col":58}},"generated_from_span":null},"id":1183,"kind":{"StorageDead":159},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":357,"col":57},"end":{"line":357,"col":58}},"generated_from_span":null},"id":1184,"kind":{"StorageDead":158},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":357,"col":57},"end":{"line":357,"col":58}},"generated_from_span":null},"id":1185,"kind":{"StorageDead":154},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":358,"col":26},"end":{"line":358,"col":57}},"generated_from_span":null},"id":1186,"kind":{"StorageLive":163},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":358,"col":30},"end":{"line":358,"col":32}},"generated_from_span":null},"id":1187,"kind":{"StorageLive":164},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":358,"col":30},"end":{"line":358,"col":32}},"generated_from_span":null},"id":1188,"kind":{"Assign":[{"kind":{"Local":164},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":128},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":358,"col":34},"end":{"line":358,"col":35}},"generated_from_span":null},"id":1189,"kind":{"StorageLive":165},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":358,"col":34},"end":{"line":358,"col":35}},"generated_from_span":null},"id":1190,"kind":{"Assign":[{"kind":{"Local":165},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":134},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":358,"col":37},"end":{"line":358,"col":49}},"generated_from_span":null},"id":1191,"kind":{"StorageLive":166},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":358,"col":37},"end":{"line":358,"col":44}},"generated_from_span":null},"id":1192,"kind":{"StorageLive":167},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":358,"col":37},"end":{"line":358,"col":44}},"generated_from_span":null},"id":1193,"kind":{"Assign":[{"kind":{"Local":167},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":0,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":358,"col":47},"end":{"line":358,"col":48}},"generated_from_span":null},"id":1194,"kind":{"StorageLive":168},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":358,"col":47},"end":{"line":358,"col":48}},"generated_from_span":null},"id":1195,"kind":{"Assign":[{"kind":{"Local":168},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":358,"col":37},"end":{"line":358,"col":49}},"generated_from_span":null},"id":4169,"kind":{"StorageLive":219},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":358,"col":37},"end":{"line":358,"col":49}},"generated_from_span":null},"id":4170,"kind":{"Assign":[{"kind":{"Local":219},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":167},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":358,"col":37},"end":{"line":358,"col":49}},"generated_from_span":null},"id":4171,"kind":{"StorageLive":220},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":358,"col":37},"end":{"line":358,"col":49}},"generated_from_span":null},"id":4172,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":219},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":168},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":220},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":358,"col":37},"end":{"line":358,"col":49}},"generated_from_span":null},"id":1198,"kind":{"Assign":[{"kind":{"Local":166},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":220},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":358,"col":51},"end":{"line":358,"col":56}},"generated_from_span":null},"id":1199,"kind":{"StorageLive":169},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":358,"col":51},"end":{"line":358,"col":56}},"generated_from_span":null},"id":1200,"kind":{"Assign":[{"kind":{"Local":169},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":153},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":358,"col":26},"end":{"line":358,"col":57}},"generated_from_span":null},"id":1201,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":164},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":165},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":166},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":169},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":163},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":358,"col":56},"end":{"line":358,"col":57}},"generated_from_span":null},"id":1202,"kind":{"StorageDead":169},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":358,"col":56},"end":{"line":358,"col":57}},"generated_from_span":null},"id":1203,"kind":{"StorageDead":166},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":358,"col":56},"end":{"line":358,"col":57}},"generated_from_span":null},"id":1204,"kind":{"StorageDead":165},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":358,"col":56},"end":{"line":358,"col":57}},"generated_from_span":null},"id":1205,"kind":{"StorageDead":164},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":358,"col":13},"end":{"line":358,"col":15}},"generated_from_span":null},"id":1206,"kind":{"StorageLive":161},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":358,"col":13},"end":{"line":358,"col":15}},"generated_from_span":null},"id":1207,"kind":{"Assign":[{"kind":{"Local":161},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":163},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":358,"col":17},"end":{"line":358,"col":22}},"generated_from_span":null},"id":1208,"kind":{"StorageLive":162},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":358,"col":17},"end":{"line":358,"col":22}},"generated_from_span":null},"id":1209,"kind":{"Assign":[{"kind":{"Local":162},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":163},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":358,"col":57},"end":{"line":358,"col":58}},"generated_from_span":null},"id":1210,"kind":{"StorageDead":168},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":358,"col":57},"end":{"line":358,"col":58}},"generated_from_span":null},"id":1211,"kind":{"StorageDead":167},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":358,"col":57},"end":{"line":358,"col":58}},"generated_from_span":null},"id":1212,"kind":{"StorageDead":163},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":359,"col":22},"end":{"line":359,"col":44}},"generated_from_span":null},"id":1213,"kind":{"StorageLive":171},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":359,"col":26},"end":{"line":359,"col":28}},"generated_from_span":null},"id":1214,"kind":{"StorageLive":172},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":359,"col":26},"end":{"line":359,"col":28}},"generated_from_span":null},"id":1215,"kind":{"Assign":[{"kind":{"Local":172},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":8},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":359,"col":30},"end":{"line":359,"col":36}},"generated_from_span":null},"id":1216,"kind":{"StorageLive":173},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":359,"col":30},"end":{"line":359,"col":36}},"generated_from_span":null},"id":1217,"kind":{"Assign":[{"kind":{"Local":173},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":129},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":359,"col":38},"end":{"line":359,"col":43}},"generated_from_span":null},"id":1218,"kind":{"StorageLive":174},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":359,"col":38},"end":{"line":359,"col":43}},"generated_from_span":null},"id":1219,"kind":{"Assign":[{"kind":{"Local":174},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":162},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":359,"col":22},"end":{"line":359,"col":44}},"generated_from_span":null},"id":1220,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":212}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":172},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":173},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":174},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":171},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"id":1221,"kind":{"StorageLive":186},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":362,"col":36},"end":{"line":362,"col":44}},"generated_from_span":null},"id":1222,"kind":{"StorageLive":187},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":362,"col":37},"end":{"line":362,"col":44}},"generated_from_span":null},"id":1223,"kind":{"StorageLive":188},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":362,"col":37},"end":{"line":362,"col":44}},"generated_from_span":null},"id":1224,"kind":{"Assign":[{"kind":{"Local":188},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":0,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":["Result may be within MODULUS of the correct value"]},{"span":{"data":{"file_id":2,"beg":{"line":362,"col":36},"end":{"line":362,"col":44}},"generated_from_span":null},"id":1225,"kind":{"Assign":[{"kind":{"Local":187},"ty":{"Deduplicated":7195}},{"Ref":{"place":{"kind":{"Local":188},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":362,"col":36},"end":{"line":362,"col":44}},"generated_from_span":null},"id":1226,"kind":{"Assign":[{"kind":{"Local":186},"ty":{"Deduplicated":2402}},{"Use":[{"Move":{"kind":{"Local":187},"ty":{"Deduplicated":7195}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":359,"col":43},"end":{"line":359,"col":44}},"generated_from_span":null},"id":1227,"kind":{"StorageDead":174},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":359,"col":43},"end":{"line":359,"col":44}},"generated_from_span":null},"id":1228,"kind":{"StorageDead":173},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":359,"col":43},"end":{"line":359,"col":44}},"generated_from_span":null},"id":1229,"kind":{"StorageDead":172},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":359,"col":13},"end":{"line":359,"col":15}},"generated_from_span":null},"id":1230,"kind":{"StorageLive":170},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":359,"col":13},"end":{"line":359,"col":15}},"generated_from_span":null},"id":1231,"kind":{"Assign":[{"kind":{"Local":170},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":171},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":359,"col":44},"end":{"line":359,"col":45}},"generated_from_span":null},"id":1232,"kind":{"StorageDead":171},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":362,"col":8},"end":{"line":362,"col":31}},"generated_from_span":null},"id":1233,"kind":{"StorageLive":175},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":362,"col":8},"end":{"line":362,"col":31}},"generated_from_span":null},"id":1234,"kind":{"StorageLive":176},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":362,"col":10},"end":{"line":362,"col":30}},"generated_from_span":null},"id":1235,"kind":{"StorageLive":177},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":362,"col":13},"end":{"line":362,"col":29}},"generated_from_span":null},"id":1236,"kind":{"StorageLive":178},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":362,"col":14},"end":{"line":362,"col":16}},"generated_from_span":null},"id":1237,"kind":{"StorageLive":179},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":362,"col":14},"end":{"line":362,"col":16}},"generated_from_span":null},"id":1238,"kind":{"Assign":[{"kind":{"Local":179},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":143},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":362,"col":18},"end":{"line":362,"col":20}},"generated_from_span":null},"id":1239,"kind":{"StorageLive":180},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":362,"col":18},"end":{"line":362,"col":20}},"generated_from_span":null},"id":1240,"kind":{"Assign":[{"kind":{"Local":180},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":152},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":362,"col":22},"end":{"line":362,"col":24}},"generated_from_span":null},"id":1241,"kind":{"StorageLive":181},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":362,"col":22},"end":{"line":362,"col":24}},"generated_from_span":null},"id":1242,"kind":{"Assign":[{"kind":{"Local":181},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":161},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":362,"col":26},"end":{"line":362,"col":28}},"generated_from_span":null},"id":1243,"kind":{"StorageLive":182},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":362,"col":26},"end":{"line":362,"col":28}},"generated_from_span":null},"id":1244,"kind":{"Assign":[{"kind":{"Local":182},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":170},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":362,"col":13},"end":{"line":362,"col":29}},"generated_from_span":null},"id":1245,"kind":{"Assign":[{"kind":{"Local":178},"ty":{"Deduplicated":1074}},{"Aggregate":[{"Array":[{"Deduplicated":1072},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}]},[{"Move":{"kind":{"Local":179},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":180},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":181},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":182},"ty":{"Deduplicated":1072}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":362,"col":28},"end":{"line":362,"col":29}},"generated_from_span":null},"id":1246,"kind":{"StorageDead":182},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":362,"col":28},"end":{"line":362,"col":29}},"generated_from_span":null},"id":1247,"kind":{"StorageDead":181},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":362,"col":28},"end":{"line":362,"col":29}},"generated_from_span":null},"id":1248,"kind":{"StorageDead":180},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":362,"col":28},"end":{"line":362,"col":29}},"generated_from_span":null},"id":1249,"kind":{"StorageDead":179},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":362,"col":10},"end":{"line":362,"col":30}},"generated_from_span":null},"id":1250,"kind":{"Assign":[{"kind":{"Local":177},"ty":{"Deduplicated":1079}},{"Aggregate":[{"Adt":[{"id":{"Adt":0},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[{"Move":{"kind":{"Local":178},"ty":{"Deduplicated":1074}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":362,"col":29},"end":{"line":362,"col":30}},"generated_from_span":null},"id":1251,"kind":{"StorageDead":178},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":362,"col":8},"end":{"line":362,"col":31}},"generated_from_span":null},"id":1252,"kind":{"Assign":[{"kind":{"Local":176},"ty":{"Deduplicated":2355}},{"Ref":{"place":{"kind":{"Local":177},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":362,"col":8},"end":{"line":362,"col":31}},"generated_from_span":null},"id":1253,"kind":{"Assign":[{"kind":{"Local":175},"ty":{"Deduplicated":2302}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":176},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":362,"col":36},"end":{"line":362,"col":44}},"generated_from_span":null},"id":1254,"kind":{"StorageLive":183},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":362,"col":36},"end":{"line":362,"col":44}},"generated_from_span":null},"id":1255,"kind":{"StorageLive":184},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":362,"col":36},"end":{"line":362,"col":44}},"generated_from_span":null},"id":1256,"kind":{"Assign":[{"kind":{"Local":185},"ty":{"Deduplicated":2401}},{"Use":[{"Move":{"kind":{"Local":186},"ty":{"Deduplicated":2402}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":362,"col":36},"end":{"line":362,"col":44}},"generated_from_span":null},"id":1257,"kind":{"Assign":[{"kind":{"Local":184},"ty":{"Deduplicated":2471}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":185},"ty":{"Deduplicated":2401}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":362,"col":36},"end":{"line":362,"col":44}},"generated_from_span":null},"id":1258,"kind":{"Assign":[{"kind":{"Local":183},"ty":{"Deduplicated":2470}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":184},"ty":{"Deduplicated":2471}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":362,"col":8},"end":{"line":362,"col":45}},"generated_from_span":null},"id":1259,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":75}},"generics":{"regions":[{"Body":9},{"Body":10}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":175},"ty":{"Deduplicated":2302}}},{"Move":{"kind":{"Local":183},"ty":{"Deduplicated":2470}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":362,"col":44},"end":{"line":362,"col":45}},"generated_from_span":null},"id":1260,"kind":{"StorageDead":183},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":362,"col":44},"end":{"line":362,"col":45}},"generated_from_span":null},"id":1261,"kind":{"StorageDead":175},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1262,"kind":{"StorageDead":170},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1263,"kind":{"StorageDead":162},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1264,"kind":{"StorageDead":161},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1265,"kind":{"StorageDead":153},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1266,"kind":{"StorageDead":152},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1267,"kind":{"StorageDead":144},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1268,"kind":{"StorageDead":143},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1269,"kind":{"StorageDead":136},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1270,"kind":{"StorageDead":134},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1271,"kind":{"StorageDead":129},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1272,"kind":{"StorageDead":128},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1273,"kind":{"StorageDead":120},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1274,"kind":{"StorageDead":119},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1275,"kind":{"StorageDead":111},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1276,"kind":{"StorageDead":110},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1277,"kind":{"StorageDead":102},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1278,"kind":{"StorageDead":101},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1279,"kind":{"StorageDead":94},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1280,"kind":{"StorageDead":92},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1281,"kind":{"StorageDead":87},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1282,"kind":{"StorageDead":86},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1283,"kind":{"StorageDead":78},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1284,"kind":{"StorageDead":77},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1285,"kind":{"StorageDead":69},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1286,"kind":{"StorageDead":68},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1287,"kind":{"StorageDead":60},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1288,"kind":{"StorageDead":59},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1289,"kind":{"StorageDead":52},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1290,"kind":{"StorageDead":50},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1291,"kind":{"StorageDead":46},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1292,"kind":{"StorageDead":45},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1293,"kind":{"StorageDead":37},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1294,"kind":{"StorageDead":36},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1295,"kind":{"StorageDead":28},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1296,"kind":{"StorageDead":27},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1297,"kind":{"StorageDead":19},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1298,"kind":{"StorageDead":18},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1299,"kind":{"StorageDead":11},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1300,"kind":{"StorageDead":9},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1301,"kind":{"StorageDead":184},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1302,"kind":{"StorageDead":177},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":4},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1303,"kind":{"StorageDead":176},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":363,"col":5},"end":{"line":363,"col":5}},"generated_from_span":null},"id":1304,"kind":"Return","comments_before":[]}]},"comments":[[332,["The Montgomery reduction here is based on Algorithm 14.32 in","Handbook of Applied Cryptography","<http://cacr.uwaterloo.ca/hac/about/chap14.pdf>."]],[362,["Result may be within MODULUS of the correct value"]]]}}},{"def_id":74,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":1079},"kind":"InherentImplBlock"}}},{"Ident":["mul",0]}],"span":{"data":{"file_id":2,"beg":{"line":367,"col":4},"end":{"line":370,"col":5}},"generated_from_span":null},"source_text":"pub const fn mul(&self, rhs: &Self) -> Self {\n let u = self.mul_unreduced(rhs);\n Fp::montgomery_reduce(u[0], u[1], u[2], u[3], u[4], u[5], u[6], u[7])\n }","attr_info":{"attributes":[{"DocComment":" Multiplies `rhs` by `self`, returning the result."}],"inline":"Hint","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":8297},{"Deduplicated":8298}],"output":{"Deduplicated":1079}},"src":"TopLevel","is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":367,"col":4},"end":{"line":370,"col":5}},"generated_from_span":null},"bound_body_regions":9,"locals":{"arg_count":2,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":367,"col":43},"end":{"line":367,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":"self","span":{"data":{"file_id":2,"beg":{"line":367,"col":21},"end":{"line":367,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":2302}},{"index":2,"name":"rhs","span":{"data":{"file_id":2,"beg":{"line":367,"col":28},"end":{"line":367,"col":31}},"generated_from_span":null},"ty":{"Deduplicated":2355}},{"index":3,"name":"u","span":{"data":{"file_id":2,"beg":{"line":368,"col":12},"end":{"line":368,"col":13}},"generated_from_span":null},"ty":{"Deduplicated":4585}},{"index":4,"name":null,"span":{"data":{"file_id":2,"beg":{"line":368,"col":16},"end":{"line":368,"col":20}},"generated_from_span":null},"ty":{"Deduplicated":2470}},{"index":5,"name":null,"span":{"data":{"file_id":2,"beg":{"line":368,"col":35},"end":{"line":368,"col":38}},"generated_from_span":null},"ty":{"Deduplicated":2471}},{"index":6,"name":null,"span":{"data":{"file_id":2,"beg":{"line":369,"col":30},"end":{"line":369,"col":34}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":7,"name":null,"span":{"data":{"file_id":2,"beg":{"line":369,"col":32},"end":{"line":369,"col":33}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":8,"name":null,"span":{"data":{"file_id":2,"beg":{"line":369,"col":36},"end":{"line":369,"col":40}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":9,"name":null,"span":{"data":{"file_id":2,"beg":{"line":369,"col":38},"end":{"line":369,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":10,"name":null,"span":{"data":{"file_id":2,"beg":{"line":369,"col":42},"end":{"line":369,"col":46}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":11,"name":null,"span":{"data":{"file_id":2,"beg":{"line":369,"col":44},"end":{"line":369,"col":45}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":12,"name":null,"span":{"data":{"file_id":2,"beg":{"line":369,"col":48},"end":{"line":369,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":13,"name":null,"span":{"data":{"file_id":2,"beg":{"line":369,"col":50},"end":{"line":369,"col":51}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":14,"name":null,"span":{"data":{"file_id":2,"beg":{"line":369,"col":54},"end":{"line":369,"col":58}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":15,"name":null,"span":{"data":{"file_id":2,"beg":{"line":369,"col":56},"end":{"line":369,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":16,"name":null,"span":{"data":{"file_id":2,"beg":{"line":369,"col":60},"end":{"line":369,"col":64}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":17,"name":null,"span":{"data":{"file_id":2,"beg":{"line":369,"col":62},"end":{"line":369,"col":63}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":18,"name":null,"span":{"data":{"file_id":2,"beg":{"line":369,"col":66},"end":{"line":369,"col":70}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":19,"name":null,"span":{"data":{"file_id":2,"beg":{"line":369,"col":68},"end":{"line":369,"col":69}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":20,"name":null,"span":{"data":{"file_id":2,"beg":{"line":369,"col":72},"end":{"line":369,"col":76}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":21,"name":null,"span":{"data":{"file_id":2,"beg":{"line":369,"col":74},"end":{"line":369,"col":75}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":22,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7282}},{"index":23,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":24,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7282}},{"index":25,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":26,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7282}},{"index":27,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":28,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7282}},{"index":29,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":30,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7282}},{"index":31,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":32,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7282}},{"index":33,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":34,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7282}},{"index":35,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":36,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7282}},{"index":37,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":368,"col":12},"end":{"line":370,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":368,"col":12},"end":{"line":368,"col":13}},"generated_from_span":null},"id":1313,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":368,"col":16},"end":{"line":368,"col":20}},"generated_from_span":null},"id":1314,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":368,"col":16},"end":{"line":368,"col":20}},"generated_from_span":null},"id":1315,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":2470}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":368,"col":35},"end":{"line":368,"col":38}},"generated_from_span":null},"id":1316,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":368,"col":35},"end":{"line":368,"col":38}},"generated_from_span":null},"id":1317,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":2471}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":368,"col":16},"end":{"line":368,"col":39}},"generated_from_span":null},"id":1318,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":78}},"generics":{"regions":[{"Body":7},{"Body":8}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":2470}}},{"Move":{"kind":{"Local":5},"ty":{"Deduplicated":2471}}}],"dest":{"kind":{"Local":3},"ty":{"Deduplicated":4585}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":368,"col":38},"end":{"line":368,"col":39}},"generated_from_span":null},"id":1319,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":368,"col":38},"end":{"line":368,"col":39}},"generated_from_span":null},"id":1320,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":30},"end":{"line":369,"col":34}},"generated_from_span":null},"id":1321,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":32},"end":{"line":369,"col":33}},"generated_from_span":null},"id":1322,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":32},"end":{"line":369,"col":33}},"generated_from_span":null},"id":1323,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":30},"end":{"line":369,"col":34}},"generated_from_span":null},"id":4173,"kind":{"StorageLive":22},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":30},"end":{"line":369,"col":34}},"generated_from_span":null},"id":4174,"kind":{"Assign":[{"kind":{"Local":22},"ty":{"Deduplicated":7282}},{"Ref":{"place":{"kind":{"Local":3},"ty":{"Deduplicated":4585}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":30},"end":{"line":369,"col":34}},"generated_from_span":null},"id":4175,"kind":{"StorageLive":23},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":30},"end":{"line":369,"col":34}},"generated_from_span":null},"id":4176,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":22},"ty":{"Deduplicated":7282}}},{"Copy":{"kind":{"Local":7},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":23},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":30},"end":{"line":369,"col":34}},"generated_from_span":null},"id":1326,"kind":{"Assign":[{"kind":{"Local":6},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":23},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":36},"end":{"line":369,"col":40}},"generated_from_span":null},"id":1327,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":38},"end":{"line":369,"col":39}},"generated_from_span":null},"id":1328,"kind":{"StorageLive":9},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":38},"end":{"line":369,"col":39}},"generated_from_span":null},"id":1329,"kind":{"Assign":[{"kind":{"Local":9},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":36},"end":{"line":369,"col":40}},"generated_from_span":null},"id":4177,"kind":{"StorageLive":24},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":36},"end":{"line":369,"col":40}},"generated_from_span":null},"id":4178,"kind":{"Assign":[{"kind":{"Local":24},"ty":{"Deduplicated":7282}},{"Ref":{"place":{"kind":{"Local":3},"ty":{"Deduplicated":4585}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":36},"end":{"line":369,"col":40}},"generated_from_span":null},"id":4179,"kind":{"StorageLive":25},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":36},"end":{"line":369,"col":40}},"generated_from_span":null},"id":4180,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":24},"ty":{"Deduplicated":7282}}},{"Copy":{"kind":{"Local":9},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":25},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":36},"end":{"line":369,"col":40}},"generated_from_span":null},"id":1332,"kind":{"Assign":[{"kind":{"Local":8},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":25},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":42},"end":{"line":369,"col":46}},"generated_from_span":null},"id":1333,"kind":{"StorageLive":10},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":44},"end":{"line":369,"col":45}},"generated_from_span":null},"id":1334,"kind":{"StorageLive":11},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":44},"end":{"line":369,"col":45}},"generated_from_span":null},"id":1335,"kind":{"Assign":[{"kind":{"Local":11},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":42},"end":{"line":369,"col":46}},"generated_from_span":null},"id":4181,"kind":{"StorageLive":26},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":42},"end":{"line":369,"col":46}},"generated_from_span":null},"id":4182,"kind":{"Assign":[{"kind":{"Local":26},"ty":{"Deduplicated":7282}},{"Ref":{"place":{"kind":{"Local":3},"ty":{"Deduplicated":4585}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":42},"end":{"line":369,"col":46}},"generated_from_span":null},"id":4183,"kind":{"StorageLive":27},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":42},"end":{"line":369,"col":46}},"generated_from_span":null},"id":4184,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":26},"ty":{"Deduplicated":7282}}},{"Copy":{"kind":{"Local":11},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":27},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":42},"end":{"line":369,"col":46}},"generated_from_span":null},"id":1338,"kind":{"Assign":[{"kind":{"Local":10},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":27},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":48},"end":{"line":369,"col":52}},"generated_from_span":null},"id":1339,"kind":{"StorageLive":12},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":50},"end":{"line":369,"col":51}},"generated_from_span":null},"id":1340,"kind":{"StorageLive":13},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":50},"end":{"line":369,"col":51}},"generated_from_span":null},"id":1341,"kind":{"Assign":[{"kind":{"Local":13},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":48},"end":{"line":369,"col":52}},"generated_from_span":null},"id":4185,"kind":{"StorageLive":28},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":48},"end":{"line":369,"col":52}},"generated_from_span":null},"id":4186,"kind":{"Assign":[{"kind":{"Local":28},"ty":{"Deduplicated":7282}},{"Ref":{"place":{"kind":{"Local":3},"ty":{"Deduplicated":4585}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":48},"end":{"line":369,"col":52}},"generated_from_span":null},"id":4187,"kind":{"StorageLive":29},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":48},"end":{"line":369,"col":52}},"generated_from_span":null},"id":4188,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":28},"ty":{"Deduplicated":7282}}},{"Copy":{"kind":{"Local":13},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":29},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":48},"end":{"line":369,"col":52}},"generated_from_span":null},"id":1344,"kind":{"Assign":[{"kind":{"Local":12},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":29},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":54},"end":{"line":369,"col":58}},"generated_from_span":null},"id":1345,"kind":{"StorageLive":14},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":56},"end":{"line":369,"col":57}},"generated_from_span":null},"id":1346,"kind":{"StorageLive":15},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":56},"end":{"line":369,"col":57}},"generated_from_span":null},"id":1347,"kind":{"Assign":[{"kind":{"Local":15},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":54},"end":{"line":369,"col":58}},"generated_from_span":null},"id":4189,"kind":{"StorageLive":30},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":54},"end":{"line":369,"col":58}},"generated_from_span":null},"id":4190,"kind":{"Assign":[{"kind":{"Local":30},"ty":{"Deduplicated":7282}},{"Ref":{"place":{"kind":{"Local":3},"ty":{"Deduplicated":4585}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":54},"end":{"line":369,"col":58}},"generated_from_span":null},"id":4191,"kind":{"StorageLive":31},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":54},"end":{"line":369,"col":58}},"generated_from_span":null},"id":4192,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":30},"ty":{"Deduplicated":7282}}},{"Copy":{"kind":{"Local":15},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":31},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":54},"end":{"line":369,"col":58}},"generated_from_span":null},"id":1350,"kind":{"Assign":[{"kind":{"Local":14},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":31},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":60},"end":{"line":369,"col":64}},"generated_from_span":null},"id":1351,"kind":{"StorageLive":16},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":62},"end":{"line":369,"col":63}},"generated_from_span":null},"id":1352,"kind":{"StorageLive":17},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":62},"end":{"line":369,"col":63}},"generated_from_span":null},"id":1353,"kind":{"Assign":[{"kind":{"Local":17},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","5"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":60},"end":{"line":369,"col":64}},"generated_from_span":null},"id":4193,"kind":{"StorageLive":32},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":60},"end":{"line":369,"col":64}},"generated_from_span":null},"id":4194,"kind":{"Assign":[{"kind":{"Local":32},"ty":{"Deduplicated":7282}},{"Ref":{"place":{"kind":{"Local":3},"ty":{"Deduplicated":4585}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":60},"end":{"line":369,"col":64}},"generated_from_span":null},"id":4195,"kind":{"StorageLive":33},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":60},"end":{"line":369,"col":64}},"generated_from_span":null},"id":4196,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":32},"ty":{"Deduplicated":7282}}},{"Copy":{"kind":{"Local":17},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":33},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":60},"end":{"line":369,"col":64}},"generated_from_span":null},"id":1356,"kind":{"Assign":[{"kind":{"Local":16},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":33},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":66},"end":{"line":369,"col":70}},"generated_from_span":null},"id":1357,"kind":{"StorageLive":18},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":68},"end":{"line":369,"col":69}},"generated_from_span":null},"id":1358,"kind":{"StorageLive":19},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":68},"end":{"line":369,"col":69}},"generated_from_span":null},"id":1359,"kind":{"Assign":[{"kind":{"Local":19},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","6"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":66},"end":{"line":369,"col":70}},"generated_from_span":null},"id":4197,"kind":{"StorageLive":34},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":66},"end":{"line":369,"col":70}},"generated_from_span":null},"id":4198,"kind":{"Assign":[{"kind":{"Local":34},"ty":{"Deduplicated":7282}},{"Ref":{"place":{"kind":{"Local":3},"ty":{"Deduplicated":4585}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":66},"end":{"line":369,"col":70}},"generated_from_span":null},"id":4199,"kind":{"StorageLive":35},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":66},"end":{"line":369,"col":70}},"generated_from_span":null},"id":4200,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":34},"ty":{"Deduplicated":7282}}},{"Copy":{"kind":{"Local":19},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":35},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":66},"end":{"line":369,"col":70}},"generated_from_span":null},"id":1362,"kind":{"Assign":[{"kind":{"Local":18},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":35},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":72},"end":{"line":369,"col":76}},"generated_from_span":null},"id":1363,"kind":{"StorageLive":20},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":74},"end":{"line":369,"col":75}},"generated_from_span":null},"id":1364,"kind":{"StorageLive":21},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":74},"end":{"line":369,"col":75}},"generated_from_span":null},"id":1365,"kind":{"Assign":[{"kind":{"Local":21},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","7"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":72},"end":{"line":369,"col":76}},"generated_from_span":null},"id":4201,"kind":{"StorageLive":36},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":72},"end":{"line":369,"col":76}},"generated_from_span":null},"id":4202,"kind":{"Assign":[{"kind":{"Local":36},"ty":{"Deduplicated":7282}},{"Ref":{"place":{"kind":{"Local":3},"ty":{"Deduplicated":4585}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":72},"end":{"line":369,"col":76}},"generated_from_span":null},"id":4203,"kind":{"StorageLive":37},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":72},"end":{"line":369,"col":76}},"generated_from_span":null},"id":4204,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":36},"ty":{"Deduplicated":7282}}},{"Copy":{"kind":{"Local":21},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":37},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":72},"end":{"line":369,"col":76}},"generated_from_span":null},"id":1368,"kind":{"Assign":[{"kind":{"Local":20},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":37},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":8},"end":{"line":369,"col":77}},"generated_from_span":null},"id":1369,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":73}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":6},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":8},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":10},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":12},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":14},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":16},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":18},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":20},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":76},"end":{"line":369,"col":77}},"generated_from_span":null},"id":1370,"kind":{"StorageDead":20},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":76},"end":{"line":369,"col":77}},"generated_from_span":null},"id":1371,"kind":{"StorageDead":18},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":76},"end":{"line":369,"col":77}},"generated_from_span":null},"id":1372,"kind":{"StorageDead":16},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":76},"end":{"line":369,"col":77}},"generated_from_span":null},"id":1373,"kind":{"StorageDead":14},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":76},"end":{"line":369,"col":77}},"generated_from_span":null},"id":1374,"kind":{"StorageDead":12},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":76},"end":{"line":369,"col":77}},"generated_from_span":null},"id":1375,"kind":{"StorageDead":10},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":76},"end":{"line":369,"col":77}},"generated_from_span":null},"id":1376,"kind":{"StorageDead":8},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":369,"col":76},"end":{"line":369,"col":77}},"generated_from_span":null},"id":1377,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":370,"col":4},"end":{"line":370,"col":5}},"generated_from_span":null},"id":1378,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":370,"col":4},"end":{"line":370,"col":5}},"generated_from_span":null},"id":1379,"kind":{"StorageDead":21},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":370,"col":4},"end":{"line":370,"col":5}},"generated_from_span":null},"id":1380,"kind":{"StorageDead":19},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":370,"col":4},"end":{"line":370,"col":5}},"generated_from_span":null},"id":1381,"kind":{"StorageDead":17},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":370,"col":4},"end":{"line":370,"col":5}},"generated_from_span":null},"id":1382,"kind":{"StorageDead":15},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":370,"col":4},"end":{"line":370,"col":5}},"generated_from_span":null},"id":1383,"kind":{"StorageDead":13},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":370,"col":4},"end":{"line":370,"col":5}},"generated_from_span":null},"id":1384,"kind":{"StorageDead":11},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":370,"col":4},"end":{"line":370,"col":5}},"generated_from_span":null},"id":1385,"kind":{"StorageDead":9},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":370,"col":4},"end":{"line":370,"col":5}},"generated_from_span":null},"id":1386,"kind":{"StorageDead":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":370,"col":5},"end":{"line":370,"col":5}},"generated_from_span":null},"id":1387,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":75,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":1079},"kind":"InherentImplBlock"}}},{"Ident":["sub",0]}],"span":{"data":{"file_id":2,"beg":{"line":374,"col":4},"end":{"line":388,"col":5}},"generated_from_span":null},"source_text":"pub const fn sub(&self, rhs: &Self) -> Self {\n let (d0, borrow) = sbb(self.0[0], rhs.0[0], 0);\n let (d1, borrow) = sbb(self.0[1], rhs.0[1], borrow);\n let (d2, borrow) = sbb(self.0[2], rhs.0[2], borrow);\n let (d3, borrow) = sbb(self.0[3], rhs.0[3], borrow);\n\n // If underflow occurred on the final limb, borrow = 0xfff...fff, otherwise\n // borrow = 0x000...000. Thus, we use it as a mask to conditionally add the modulus.\n let (d0, carry) = adc(d0, MODULUS.0[0] & borrow, 0);\n let (d1, carry) = adc(d1, MODULUS.0[1] & borrow, carry);\n let (d2, carry) = adc(d2, MODULUS.0[2] & borrow, carry);\n let (d3, _) = adc(d3, MODULUS.0[3] & borrow, carry);\n\n Fp([d0, d1, d2, d3])\n }","attr_info":{"attributes":[{"DocComment":" Subtracts `rhs` from `self`, returning the result."}],"inline":"Hint","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":8297},{"Deduplicated":8298}],"output":{"Deduplicated":1079}},"src":"TopLevel","is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":374,"col":4},"end":{"line":388,"col":5}},"generated_from_span":null},"bound_body_regions":3,"locals":{"arg_count":2,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":374,"col":43},"end":{"line":374,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":"self","span":{"data":{"file_id":2,"beg":{"line":374,"col":21},"end":{"line":374,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":2302}},{"index":2,"name":"rhs","span":{"data":{"file_id":2,"beg":{"line":374,"col":28},"end":{"line":374,"col":31}},"generated_from_span":null},"ty":{"Deduplicated":2355}},{"index":3,"name":"d0","span":{"data":{"file_id":2,"beg":{"line":375,"col":13},"end":{"line":375,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":4,"name":"borrow","span":{"data":{"file_id":2,"beg":{"line":375,"col":17},"end":{"line":375,"col":23}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":5,"name":null,"span":{"data":{"file_id":2,"beg":{"line":375,"col":27},"end":{"line":375,"col":54}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":6,"name":null,"span":{"data":{"file_id":2,"beg":{"line":375,"col":31},"end":{"line":375,"col":40}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":7,"name":null,"span":{"data":{"file_id":2,"beg":{"line":375,"col":38},"end":{"line":375,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":8,"name":null,"span":{"data":{"file_id":2,"beg":{"line":375,"col":42},"end":{"line":375,"col":50}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":9,"name":null,"span":{"data":{"file_id":2,"beg":{"line":375,"col":48},"end":{"line":375,"col":49}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":10,"name":"d1","span":{"data":{"file_id":2,"beg":{"line":376,"col":13},"end":{"line":376,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":11,"name":"borrow","span":{"data":{"file_id":2,"beg":{"line":376,"col":17},"end":{"line":376,"col":23}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":12,"name":null,"span":{"data":{"file_id":2,"beg":{"line":376,"col":27},"end":{"line":376,"col":59}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":13,"name":null,"span":{"data":{"file_id":2,"beg":{"line":376,"col":31},"end":{"line":376,"col":40}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":14,"name":null,"span":{"data":{"file_id":2,"beg":{"line":376,"col":38},"end":{"line":376,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":15,"name":null,"span":{"data":{"file_id":2,"beg":{"line":376,"col":42},"end":{"line":376,"col":50}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":16,"name":null,"span":{"data":{"file_id":2,"beg":{"line":376,"col":48},"end":{"line":376,"col":49}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":17,"name":null,"span":{"data":{"file_id":2,"beg":{"line":376,"col":52},"end":{"line":376,"col":58}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":18,"name":"d2","span":{"data":{"file_id":2,"beg":{"line":377,"col":13},"end":{"line":377,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":19,"name":"borrow","span":{"data":{"file_id":2,"beg":{"line":377,"col":17},"end":{"line":377,"col":23}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":20,"name":null,"span":{"data":{"file_id":2,"beg":{"line":377,"col":27},"end":{"line":377,"col":59}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":21,"name":null,"span":{"data":{"file_id":2,"beg":{"line":377,"col":31},"end":{"line":377,"col":40}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":22,"name":null,"span":{"data":{"file_id":2,"beg":{"line":377,"col":38},"end":{"line":377,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":23,"name":null,"span":{"data":{"file_id":2,"beg":{"line":377,"col":42},"end":{"line":377,"col":50}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":24,"name":null,"span":{"data":{"file_id":2,"beg":{"line":377,"col":48},"end":{"line":377,"col":49}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":25,"name":null,"span":{"data":{"file_id":2,"beg":{"line":377,"col":52},"end":{"line":377,"col":58}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":26,"name":"d3","span":{"data":{"file_id":2,"beg":{"line":378,"col":13},"end":{"line":378,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":27,"name":"borrow","span":{"data":{"file_id":2,"beg":{"line":378,"col":17},"end":{"line":378,"col":23}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":28,"name":null,"span":{"data":{"file_id":2,"beg":{"line":378,"col":27},"end":{"line":378,"col":59}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":29,"name":null,"span":{"data":{"file_id":2,"beg":{"line":378,"col":31},"end":{"line":378,"col":40}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":30,"name":null,"span":{"data":{"file_id":2,"beg":{"line":378,"col":38},"end":{"line":378,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":31,"name":null,"span":{"data":{"file_id":2,"beg":{"line":378,"col":42},"end":{"line":378,"col":50}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":32,"name":null,"span":{"data":{"file_id":2,"beg":{"line":378,"col":48},"end":{"line":378,"col":49}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":33,"name":null,"span":{"data":{"file_id":2,"beg":{"line":378,"col":52},"end":{"line":378,"col":58}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":34,"name":"d0","span":{"data":{"file_id":2,"beg":{"line":382,"col":13},"end":{"line":382,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":35,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":382,"col":17},"end":{"line":382,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":36,"name":null,"span":{"data":{"file_id":2,"beg":{"line":382,"col":26},"end":{"line":382,"col":59}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":37,"name":null,"span":{"data":{"file_id":2,"beg":{"line":382,"col":30},"end":{"line":382,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":38,"name":null,"span":{"data":{"file_id":2,"beg":{"line":382,"col":34},"end":{"line":382,"col":55}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":39,"name":null,"span":{"data":{"file_id":2,"beg":{"line":382,"col":34},"end":{"line":382,"col":46}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":40,"name":null,"span":{"data":{"file_id":2,"beg":{"line":382,"col":34},"end":{"line":382,"col":41}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":41,"name":null,"span":{"data":{"file_id":2,"beg":{"line":382,"col":44},"end":{"line":382,"col":45}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":42,"name":null,"span":{"data":{"file_id":2,"beg":{"line":382,"col":49},"end":{"line":382,"col":55}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":43,"name":"d1","span":{"data":{"file_id":2,"beg":{"line":383,"col":13},"end":{"line":383,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":44,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":383,"col":17},"end":{"line":383,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":45,"name":null,"span":{"data":{"file_id":2,"beg":{"line":383,"col":26},"end":{"line":383,"col":63}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":46,"name":null,"span":{"data":{"file_id":2,"beg":{"line":383,"col":30},"end":{"line":383,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":47,"name":null,"span":{"data":{"file_id":2,"beg":{"line":383,"col":34},"end":{"line":383,"col":55}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":48,"name":null,"span":{"data":{"file_id":2,"beg":{"line":383,"col":34},"end":{"line":383,"col":46}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":49,"name":null,"span":{"data":{"file_id":2,"beg":{"line":383,"col":34},"end":{"line":383,"col":41}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":50,"name":null,"span":{"data":{"file_id":2,"beg":{"line":383,"col":44},"end":{"line":383,"col":45}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":51,"name":null,"span":{"data":{"file_id":2,"beg":{"line":383,"col":49},"end":{"line":383,"col":55}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":52,"name":null,"span":{"data":{"file_id":2,"beg":{"line":383,"col":57},"end":{"line":383,"col":62}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":53,"name":"d2","span":{"data":{"file_id":2,"beg":{"line":384,"col":13},"end":{"line":384,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":54,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":384,"col":17},"end":{"line":384,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":55,"name":null,"span":{"data":{"file_id":2,"beg":{"line":384,"col":26},"end":{"line":384,"col":63}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":56,"name":null,"span":{"data":{"file_id":2,"beg":{"line":384,"col":30},"end":{"line":384,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":57,"name":null,"span":{"data":{"file_id":2,"beg":{"line":384,"col":34},"end":{"line":384,"col":55}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":58,"name":null,"span":{"data":{"file_id":2,"beg":{"line":384,"col":34},"end":{"line":384,"col":46}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":59,"name":null,"span":{"data":{"file_id":2,"beg":{"line":384,"col":34},"end":{"line":384,"col":41}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":60,"name":null,"span":{"data":{"file_id":2,"beg":{"line":384,"col":44},"end":{"line":384,"col":45}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":61,"name":null,"span":{"data":{"file_id":2,"beg":{"line":384,"col":49},"end":{"line":384,"col":55}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":62,"name":null,"span":{"data":{"file_id":2,"beg":{"line":384,"col":57},"end":{"line":384,"col":62}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":63,"name":"d3","span":{"data":{"file_id":2,"beg":{"line":385,"col":13},"end":{"line":385,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":64,"name":null,"span":{"data":{"file_id":2,"beg":{"line":385,"col":22},"end":{"line":385,"col":59}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":65,"name":null,"span":{"data":{"file_id":2,"beg":{"line":385,"col":26},"end":{"line":385,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":66,"name":null,"span":{"data":{"file_id":2,"beg":{"line":385,"col":30},"end":{"line":385,"col":51}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":67,"name":null,"span":{"data":{"file_id":2,"beg":{"line":385,"col":30},"end":{"line":385,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":68,"name":null,"span":{"data":{"file_id":2,"beg":{"line":385,"col":30},"end":{"line":385,"col":37}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":69,"name":null,"span":{"data":{"file_id":2,"beg":{"line":385,"col":40},"end":{"line":385,"col":41}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":70,"name":null,"span":{"data":{"file_id":2,"beg":{"line":385,"col":45},"end":{"line":385,"col":51}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":71,"name":null,"span":{"data":{"file_id":2,"beg":{"line":385,"col":53},"end":{"line":385,"col":58}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":72,"name":null,"span":{"data":{"file_id":2,"beg":{"line":387,"col":11},"end":{"line":387,"col":27}},"generated_from_span":null},"ty":{"Deduplicated":1074}},{"index":73,"name":null,"span":{"data":{"file_id":2,"beg":{"line":387,"col":12},"end":{"line":387,"col":14}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":74,"name":null,"span":{"data":{"file_id":2,"beg":{"line":387,"col":16},"end":{"line":387,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":75,"name":null,"span":{"data":{"file_id":2,"beg":{"line":387,"col":20},"end":{"line":387,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":76,"name":null,"span":{"data":{"file_id":2,"beg":{"line":387,"col":24},"end":{"line":387,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":77,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":78,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":79,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":80,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":81,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":82,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":83,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":84,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":85,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":86,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":87,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":88,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":89,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":90,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":91,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":92,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":93,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":94,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":95,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":96,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":97,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":98,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":99,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":100,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":375,"col":13},"end":{"line":388,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":375,"col":27},"end":{"line":375,"col":54}},"generated_from_span":null},"id":1400,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":375,"col":31},"end":{"line":375,"col":40}},"generated_from_span":null},"id":1401,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":375,"col":38},"end":{"line":375,"col":39}},"generated_from_span":null},"id":1402,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":375,"col":38},"end":{"line":375,"col":39}},"generated_from_span":null},"id":1403,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":375,"col":31},"end":{"line":375,"col":40}},"generated_from_span":null},"id":4205,"kind":{"StorageLive":77},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":375,"col":31},"end":{"line":375,"col":40}},"generated_from_span":null},"id":4206,"kind":{"Assign":[{"kind":{"Local":77},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":375,"col":31},"end":{"line":375,"col":40}},"generated_from_span":null},"id":4207,"kind":{"StorageLive":78},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":375,"col":31},"end":{"line":375,"col":40}},"generated_from_span":null},"id":4208,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":77},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":7},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":78},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":375,"col":31},"end":{"line":375,"col":40}},"generated_from_span":null},"id":1406,"kind":{"Assign":[{"kind":{"Local":6},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":78},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":375,"col":42},"end":{"line":375,"col":50}},"generated_from_span":null},"id":1407,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":375,"col":48},"end":{"line":375,"col":49}},"generated_from_span":null},"id":1408,"kind":{"StorageLive":9},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":375,"col":48},"end":{"line":375,"col":49}},"generated_from_span":null},"id":1409,"kind":{"Assign":[{"kind":{"Local":9},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":375,"col":42},"end":{"line":375,"col":50}},"generated_from_span":null},"id":4209,"kind":{"StorageLive":79},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":375,"col":42},"end":{"line":375,"col":50}},"generated_from_span":null},"id":4210,"kind":{"Assign":[{"kind":{"Local":79},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":375,"col":42},"end":{"line":375,"col":50}},"generated_from_span":null},"id":4211,"kind":{"StorageLive":80},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":375,"col":42},"end":{"line":375,"col":50}},"generated_from_span":null},"id":4212,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":79},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":9},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":80},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":375,"col":42},"end":{"line":375,"col":50}},"generated_from_span":null},"id":1412,"kind":{"Assign":[{"kind":{"Local":8},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":80},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":375,"col":27},"end":{"line":375,"col":54}},"generated_from_span":null},"id":1413,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":213}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":6},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":8},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":5},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":375,"col":53},"end":{"line":375,"col":54}},"generated_from_span":null},"id":1414,"kind":{"StorageDead":8},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":375,"col":53},"end":{"line":375,"col":54}},"generated_from_span":null},"id":1415,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":375,"col":13},"end":{"line":375,"col":15}},"generated_from_span":null},"id":1416,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":375,"col":13},"end":{"line":375,"col":15}},"generated_from_span":null},"id":1417,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":5},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":375,"col":17},"end":{"line":375,"col":23}},"generated_from_span":null},"id":1418,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":375,"col":17},"end":{"line":375,"col":23}},"generated_from_span":null},"id":1419,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":5},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":375,"col":54},"end":{"line":375,"col":55}},"generated_from_span":null},"id":1420,"kind":{"StorageDead":9},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":375,"col":54},"end":{"line":375,"col":55}},"generated_from_span":null},"id":1421,"kind":{"StorageDead":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":375,"col":54},"end":{"line":375,"col":55}},"generated_from_span":null},"id":1422,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":376,"col":27},"end":{"line":376,"col":59}},"generated_from_span":null},"id":1423,"kind":{"StorageLive":12},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":376,"col":31},"end":{"line":376,"col":40}},"generated_from_span":null},"id":1424,"kind":{"StorageLive":13},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":376,"col":38},"end":{"line":376,"col":39}},"generated_from_span":null},"id":1425,"kind":{"StorageLive":14},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":376,"col":38},"end":{"line":376,"col":39}},"generated_from_span":null},"id":1426,"kind":{"Assign":[{"kind":{"Local":14},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":376,"col":31},"end":{"line":376,"col":40}},"generated_from_span":null},"id":4213,"kind":{"StorageLive":81},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":376,"col":31},"end":{"line":376,"col":40}},"generated_from_span":null},"id":4214,"kind":{"Assign":[{"kind":{"Local":81},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":376,"col":31},"end":{"line":376,"col":40}},"generated_from_span":null},"id":4215,"kind":{"StorageLive":82},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":376,"col":31},"end":{"line":376,"col":40}},"generated_from_span":null},"id":4216,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":81},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":14},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":82},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":376,"col":31},"end":{"line":376,"col":40}},"generated_from_span":null},"id":1429,"kind":{"Assign":[{"kind":{"Local":13},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":82},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":376,"col":42},"end":{"line":376,"col":50}},"generated_from_span":null},"id":1430,"kind":{"StorageLive":15},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":376,"col":48},"end":{"line":376,"col":49}},"generated_from_span":null},"id":1431,"kind":{"StorageLive":16},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":376,"col":48},"end":{"line":376,"col":49}},"generated_from_span":null},"id":1432,"kind":{"Assign":[{"kind":{"Local":16},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":376,"col":42},"end":{"line":376,"col":50}},"generated_from_span":null},"id":4217,"kind":{"StorageLive":83},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":376,"col":42},"end":{"line":376,"col":50}},"generated_from_span":null},"id":4218,"kind":{"Assign":[{"kind":{"Local":83},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":376,"col":42},"end":{"line":376,"col":50}},"generated_from_span":null},"id":4219,"kind":{"StorageLive":84},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":376,"col":42},"end":{"line":376,"col":50}},"generated_from_span":null},"id":4220,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":83},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":16},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":84},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":376,"col":42},"end":{"line":376,"col":50}},"generated_from_span":null},"id":1435,"kind":{"Assign":[{"kind":{"Local":15},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":84},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":376,"col":52},"end":{"line":376,"col":58}},"generated_from_span":null},"id":1436,"kind":{"StorageLive":17},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":376,"col":52},"end":{"line":376,"col":58}},"generated_from_span":null},"id":1437,"kind":{"Assign":[{"kind":{"Local":17},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":4},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":376,"col":27},"end":{"line":376,"col":59}},"generated_from_span":null},"id":1438,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":213}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":13},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":15},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":17},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":12},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":376,"col":58},"end":{"line":376,"col":59}},"generated_from_span":null},"id":1439,"kind":{"StorageDead":17},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":376,"col":58},"end":{"line":376,"col":59}},"generated_from_span":null},"id":1440,"kind":{"StorageDead":15},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":376,"col":58},"end":{"line":376,"col":59}},"generated_from_span":null},"id":1441,"kind":{"StorageDead":13},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":376,"col":13},"end":{"line":376,"col":15}},"generated_from_span":null},"id":1442,"kind":{"StorageLive":10},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":376,"col":13},"end":{"line":376,"col":15}},"generated_from_span":null},"id":1443,"kind":{"Assign":[{"kind":{"Local":10},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":12},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":376,"col":17},"end":{"line":376,"col":23}},"generated_from_span":null},"id":1444,"kind":{"StorageLive":11},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":376,"col":17},"end":{"line":376,"col":23}},"generated_from_span":null},"id":1445,"kind":{"Assign":[{"kind":{"Local":11},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":12},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":376,"col":59},"end":{"line":376,"col":60}},"generated_from_span":null},"id":1446,"kind":{"StorageDead":16},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":376,"col":59},"end":{"line":376,"col":60}},"generated_from_span":null},"id":1447,"kind":{"StorageDead":14},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":376,"col":59},"end":{"line":376,"col":60}},"generated_from_span":null},"id":1448,"kind":{"StorageDead":12},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":377,"col":27},"end":{"line":377,"col":59}},"generated_from_span":null},"id":1449,"kind":{"StorageLive":20},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":377,"col":31},"end":{"line":377,"col":40}},"generated_from_span":null},"id":1450,"kind":{"StorageLive":21},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":377,"col":38},"end":{"line":377,"col":39}},"generated_from_span":null},"id":1451,"kind":{"StorageLive":22},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":377,"col":38},"end":{"line":377,"col":39}},"generated_from_span":null},"id":1452,"kind":{"Assign":[{"kind":{"Local":22},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":377,"col":31},"end":{"line":377,"col":40}},"generated_from_span":null},"id":4221,"kind":{"StorageLive":85},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":377,"col":31},"end":{"line":377,"col":40}},"generated_from_span":null},"id":4222,"kind":{"Assign":[{"kind":{"Local":85},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":377,"col":31},"end":{"line":377,"col":40}},"generated_from_span":null},"id":4223,"kind":{"StorageLive":86},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":377,"col":31},"end":{"line":377,"col":40}},"generated_from_span":null},"id":4224,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":85},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":22},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":86},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":377,"col":31},"end":{"line":377,"col":40}},"generated_from_span":null},"id":1455,"kind":{"Assign":[{"kind":{"Local":21},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":86},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":377,"col":42},"end":{"line":377,"col":50}},"generated_from_span":null},"id":1456,"kind":{"StorageLive":23},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":377,"col":48},"end":{"line":377,"col":49}},"generated_from_span":null},"id":1457,"kind":{"StorageLive":24},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":377,"col":48},"end":{"line":377,"col":49}},"generated_from_span":null},"id":1458,"kind":{"Assign":[{"kind":{"Local":24},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":377,"col":42},"end":{"line":377,"col":50}},"generated_from_span":null},"id":4225,"kind":{"StorageLive":87},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":377,"col":42},"end":{"line":377,"col":50}},"generated_from_span":null},"id":4226,"kind":{"Assign":[{"kind":{"Local":87},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":377,"col":42},"end":{"line":377,"col":50}},"generated_from_span":null},"id":4227,"kind":{"StorageLive":88},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":377,"col":42},"end":{"line":377,"col":50}},"generated_from_span":null},"id":4228,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":87},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":24},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":88},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":377,"col":42},"end":{"line":377,"col":50}},"generated_from_span":null},"id":1461,"kind":{"Assign":[{"kind":{"Local":23},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":88},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":377,"col":52},"end":{"line":377,"col":58}},"generated_from_span":null},"id":1462,"kind":{"StorageLive":25},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":377,"col":52},"end":{"line":377,"col":58}},"generated_from_span":null},"id":1463,"kind":{"Assign":[{"kind":{"Local":25},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":11},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":377,"col":27},"end":{"line":377,"col":59}},"generated_from_span":null},"id":1464,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":213}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":21},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":23},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":25},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":20},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":377,"col":58},"end":{"line":377,"col":59}},"generated_from_span":null},"id":1465,"kind":{"StorageDead":25},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":377,"col":58},"end":{"line":377,"col":59}},"generated_from_span":null},"id":1466,"kind":{"StorageDead":23},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":377,"col":58},"end":{"line":377,"col":59}},"generated_from_span":null},"id":1467,"kind":{"StorageDead":21},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":377,"col":13},"end":{"line":377,"col":15}},"generated_from_span":null},"id":1468,"kind":{"StorageLive":18},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":377,"col":13},"end":{"line":377,"col":15}},"generated_from_span":null},"id":1469,"kind":{"Assign":[{"kind":{"Local":18},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":20},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":377,"col":17},"end":{"line":377,"col":23}},"generated_from_span":null},"id":1470,"kind":{"StorageLive":19},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":377,"col":17},"end":{"line":377,"col":23}},"generated_from_span":null},"id":1471,"kind":{"Assign":[{"kind":{"Local":19},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":20},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":377,"col":59},"end":{"line":377,"col":60}},"generated_from_span":null},"id":1472,"kind":{"StorageDead":24},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":377,"col":59},"end":{"line":377,"col":60}},"generated_from_span":null},"id":1473,"kind":{"StorageDead":22},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":377,"col":59},"end":{"line":377,"col":60}},"generated_from_span":null},"id":1474,"kind":{"StorageDead":20},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":378,"col":27},"end":{"line":378,"col":59}},"generated_from_span":null},"id":1475,"kind":{"StorageLive":28},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":378,"col":31},"end":{"line":378,"col":40}},"generated_from_span":null},"id":1476,"kind":{"StorageLive":29},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":378,"col":38},"end":{"line":378,"col":39}},"generated_from_span":null},"id":1477,"kind":{"StorageLive":30},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":378,"col":38},"end":{"line":378,"col":39}},"generated_from_span":null},"id":1478,"kind":{"Assign":[{"kind":{"Local":30},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":378,"col":31},"end":{"line":378,"col":40}},"generated_from_span":null},"id":4229,"kind":{"StorageLive":89},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":378,"col":31},"end":{"line":378,"col":40}},"generated_from_span":null},"id":4230,"kind":{"Assign":[{"kind":{"Local":89},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":378,"col":31},"end":{"line":378,"col":40}},"generated_from_span":null},"id":4231,"kind":{"StorageLive":90},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":378,"col":31},"end":{"line":378,"col":40}},"generated_from_span":null},"id":4232,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":89},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":30},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":90},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":378,"col":31},"end":{"line":378,"col":40}},"generated_from_span":null},"id":1481,"kind":{"Assign":[{"kind":{"Local":29},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":90},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":378,"col":42},"end":{"line":378,"col":50}},"generated_from_span":null},"id":1482,"kind":{"StorageLive":31},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":378,"col":48},"end":{"line":378,"col":49}},"generated_from_span":null},"id":1483,"kind":{"StorageLive":32},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":378,"col":48},"end":{"line":378,"col":49}},"generated_from_span":null},"id":1484,"kind":{"Assign":[{"kind":{"Local":32},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":378,"col":42},"end":{"line":378,"col":50}},"generated_from_span":null},"id":4233,"kind":{"StorageLive":91},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":378,"col":42},"end":{"line":378,"col":50}},"generated_from_span":null},"id":4234,"kind":{"Assign":[{"kind":{"Local":91},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":378,"col":42},"end":{"line":378,"col":50}},"generated_from_span":null},"id":4235,"kind":{"StorageLive":92},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":378,"col":42},"end":{"line":378,"col":50}},"generated_from_span":null},"id":4236,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":91},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":32},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":92},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":378,"col":42},"end":{"line":378,"col":50}},"generated_from_span":null},"id":1487,"kind":{"Assign":[{"kind":{"Local":31},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":92},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":378,"col":52},"end":{"line":378,"col":58}},"generated_from_span":null},"id":1488,"kind":{"StorageLive":33},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":378,"col":52},"end":{"line":378,"col":58}},"generated_from_span":null},"id":1489,"kind":{"Assign":[{"kind":{"Local":33},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":19},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":378,"col":27},"end":{"line":378,"col":59}},"generated_from_span":null},"id":1490,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":213}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":29},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":31},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":33},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":28},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":378,"col":58},"end":{"line":378,"col":59}},"generated_from_span":null},"id":1491,"kind":{"StorageDead":33},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":378,"col":58},"end":{"line":378,"col":59}},"generated_from_span":null},"id":1492,"kind":{"StorageDead":31},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":378,"col":58},"end":{"line":378,"col":59}},"generated_from_span":null},"id":1493,"kind":{"StorageDead":29},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":378,"col":13},"end":{"line":378,"col":15}},"generated_from_span":null},"id":1494,"kind":{"StorageLive":26},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":378,"col":13},"end":{"line":378,"col":15}},"generated_from_span":null},"id":1495,"kind":{"Assign":[{"kind":{"Local":26},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":28},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":378,"col":17},"end":{"line":378,"col":23}},"generated_from_span":null},"id":1496,"kind":{"StorageLive":27},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":378,"col":17},"end":{"line":378,"col":23}},"generated_from_span":null},"id":1497,"kind":{"Assign":[{"kind":{"Local":27},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":28},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":378,"col":59},"end":{"line":378,"col":60}},"generated_from_span":null},"id":1498,"kind":{"StorageDead":32},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":378,"col":59},"end":{"line":378,"col":60}},"generated_from_span":null},"id":1499,"kind":{"StorageDead":30},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":378,"col":59},"end":{"line":378,"col":60}},"generated_from_span":null},"id":1500,"kind":{"StorageDead":28},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":382,"col":26},"end":{"line":382,"col":59}},"generated_from_span":null},"id":1501,"kind":{"StorageLive":36},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":382,"col":30},"end":{"line":382,"col":32}},"generated_from_span":null},"id":1502,"kind":{"StorageLive":37},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":382,"col":30},"end":{"line":382,"col":32}},"generated_from_span":null},"id":1503,"kind":{"Assign":[{"kind":{"Local":37},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":3},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":["If underflow occurred on the final limb, borrow = 0xfff...fff, otherwise","borrow = 0x000...000. Thus, we use it as a mask to conditionally add the modulus."]},{"span":{"data":{"file_id":2,"beg":{"line":382,"col":34},"end":{"line":382,"col":55}},"generated_from_span":null},"id":1504,"kind":{"StorageLive":38},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":382,"col":34},"end":{"line":382,"col":46}},"generated_from_span":null},"id":1505,"kind":{"StorageLive":39},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":382,"col":34},"end":{"line":382,"col":41}},"generated_from_span":null},"id":1506,"kind":{"StorageLive":40},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":382,"col":34},"end":{"line":382,"col":41}},"generated_from_span":null},"id":1507,"kind":{"Assign":[{"kind":{"Local":40},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":0,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":382,"col":44},"end":{"line":382,"col":45}},"generated_from_span":null},"id":1508,"kind":{"StorageLive":41},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":382,"col":44},"end":{"line":382,"col":45}},"generated_from_span":null},"id":1509,"kind":{"Assign":[{"kind":{"Local":41},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":382,"col":34},"end":{"line":382,"col":46}},"generated_from_span":null},"id":4237,"kind":{"StorageLive":93},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":382,"col":34},"end":{"line":382,"col":46}},"generated_from_span":null},"id":4238,"kind":{"Assign":[{"kind":{"Local":93},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":40},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":382,"col":34},"end":{"line":382,"col":46}},"generated_from_span":null},"id":4239,"kind":{"StorageLive":94},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":382,"col":34},"end":{"line":382,"col":46}},"generated_from_span":null},"id":4240,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":93},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":41},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":94},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":382,"col":34},"end":{"line":382,"col":46}},"generated_from_span":null},"id":1512,"kind":{"Assign":[{"kind":{"Local":39},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":94},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":382,"col":49},"end":{"line":382,"col":55}},"generated_from_span":null},"id":1513,"kind":{"StorageLive":42},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":382,"col":49},"end":{"line":382,"col":55}},"generated_from_span":null},"id":1514,"kind":{"Assign":[{"kind":{"Local":42},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":27},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":382,"col":34},"end":{"line":382,"col":55}},"generated_from_span":null},"id":1515,"kind":{"Assign":[{"kind":{"Local":38},"ty":{"Deduplicated":1072}},{"BinaryOp":["BitAnd",{"Move":{"kind":{"Local":39},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":42},"ty":{"Deduplicated":1072}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":382,"col":54},"end":{"line":382,"col":55}},"generated_from_span":null},"id":1516,"kind":{"StorageDead":42},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":382,"col":54},"end":{"line":382,"col":55}},"generated_from_span":null},"id":1517,"kind":{"StorageDead":39},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":382,"col":26},"end":{"line":382,"col":59}},"generated_from_span":null},"id":1518,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":212}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":37},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":38},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":36},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":382,"col":58},"end":{"line":382,"col":59}},"generated_from_span":null},"id":1519,"kind":{"StorageDead":38},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":382,"col":58},"end":{"line":382,"col":59}},"generated_from_span":null},"id":1520,"kind":{"StorageDead":37},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":382,"col":13},"end":{"line":382,"col":15}},"generated_from_span":null},"id":1521,"kind":{"StorageLive":34},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":382,"col":13},"end":{"line":382,"col":15}},"generated_from_span":null},"id":1522,"kind":{"Assign":[{"kind":{"Local":34},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":36},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":382,"col":17},"end":{"line":382,"col":22}},"generated_from_span":null},"id":1523,"kind":{"StorageLive":35},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":382,"col":17},"end":{"line":382,"col":22}},"generated_from_span":null},"id":1524,"kind":{"Assign":[{"kind":{"Local":35},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":36},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":382,"col":59},"end":{"line":382,"col":60}},"generated_from_span":null},"id":1525,"kind":{"StorageDead":41},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":382,"col":59},"end":{"line":382,"col":60}},"generated_from_span":null},"id":1526,"kind":{"StorageDead":40},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":382,"col":59},"end":{"line":382,"col":60}},"generated_from_span":null},"id":1527,"kind":{"StorageDead":36},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":383,"col":26},"end":{"line":383,"col":63}},"generated_from_span":null},"id":1528,"kind":{"StorageLive":45},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":383,"col":30},"end":{"line":383,"col":32}},"generated_from_span":null},"id":1529,"kind":{"StorageLive":46},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":383,"col":30},"end":{"line":383,"col":32}},"generated_from_span":null},"id":1530,"kind":{"Assign":[{"kind":{"Local":46},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":10},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":383,"col":34},"end":{"line":383,"col":55}},"generated_from_span":null},"id":1531,"kind":{"StorageLive":47},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":383,"col":34},"end":{"line":383,"col":46}},"generated_from_span":null},"id":1532,"kind":{"StorageLive":48},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":383,"col":34},"end":{"line":383,"col":41}},"generated_from_span":null},"id":1533,"kind":{"StorageLive":49},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":383,"col":34},"end":{"line":383,"col":41}},"generated_from_span":null},"id":1534,"kind":{"Assign":[{"kind":{"Local":49},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":0,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":383,"col":44},"end":{"line":383,"col":45}},"generated_from_span":null},"id":1535,"kind":{"StorageLive":50},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":383,"col":44},"end":{"line":383,"col":45}},"generated_from_span":null},"id":1536,"kind":{"Assign":[{"kind":{"Local":50},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":383,"col":34},"end":{"line":383,"col":46}},"generated_from_span":null},"id":4241,"kind":{"StorageLive":95},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":383,"col":34},"end":{"line":383,"col":46}},"generated_from_span":null},"id":4242,"kind":{"Assign":[{"kind":{"Local":95},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":49},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":383,"col":34},"end":{"line":383,"col":46}},"generated_from_span":null},"id":4243,"kind":{"StorageLive":96},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":383,"col":34},"end":{"line":383,"col":46}},"generated_from_span":null},"id":4244,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":95},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":50},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":96},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":383,"col":34},"end":{"line":383,"col":46}},"generated_from_span":null},"id":1539,"kind":{"Assign":[{"kind":{"Local":48},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":96},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":383,"col":49},"end":{"line":383,"col":55}},"generated_from_span":null},"id":1540,"kind":{"StorageLive":51},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":383,"col":49},"end":{"line":383,"col":55}},"generated_from_span":null},"id":1541,"kind":{"Assign":[{"kind":{"Local":51},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":27},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":383,"col":34},"end":{"line":383,"col":55}},"generated_from_span":null},"id":1542,"kind":{"Assign":[{"kind":{"Local":47},"ty":{"Deduplicated":1072}},{"BinaryOp":["BitAnd",{"Move":{"kind":{"Local":48},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":51},"ty":{"Deduplicated":1072}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":383,"col":54},"end":{"line":383,"col":55}},"generated_from_span":null},"id":1543,"kind":{"StorageDead":51},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":383,"col":54},"end":{"line":383,"col":55}},"generated_from_span":null},"id":1544,"kind":{"StorageDead":48},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":383,"col":57},"end":{"line":383,"col":62}},"generated_from_span":null},"id":1545,"kind":{"StorageLive":52},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":383,"col":57},"end":{"line":383,"col":62}},"generated_from_span":null},"id":1546,"kind":{"Assign":[{"kind":{"Local":52},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":35},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":383,"col":26},"end":{"line":383,"col":63}},"generated_from_span":null},"id":1547,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":212}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":46},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":47},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":52},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":45},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":383,"col":62},"end":{"line":383,"col":63}},"generated_from_span":null},"id":1548,"kind":{"StorageDead":52},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":383,"col":62},"end":{"line":383,"col":63}},"generated_from_span":null},"id":1549,"kind":{"StorageDead":47},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":383,"col":62},"end":{"line":383,"col":63}},"generated_from_span":null},"id":1550,"kind":{"StorageDead":46},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":383,"col":13},"end":{"line":383,"col":15}},"generated_from_span":null},"id":1551,"kind":{"StorageLive":43},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":383,"col":13},"end":{"line":383,"col":15}},"generated_from_span":null},"id":1552,"kind":{"Assign":[{"kind":{"Local":43},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":45},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":383,"col":17},"end":{"line":383,"col":22}},"generated_from_span":null},"id":1553,"kind":{"StorageLive":44},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":383,"col":17},"end":{"line":383,"col":22}},"generated_from_span":null},"id":1554,"kind":{"Assign":[{"kind":{"Local":44},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":45},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":383,"col":63},"end":{"line":383,"col":64}},"generated_from_span":null},"id":1555,"kind":{"StorageDead":50},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":383,"col":63},"end":{"line":383,"col":64}},"generated_from_span":null},"id":1556,"kind":{"StorageDead":49},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":383,"col":63},"end":{"line":383,"col":64}},"generated_from_span":null},"id":1557,"kind":{"StorageDead":45},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":384,"col":26},"end":{"line":384,"col":63}},"generated_from_span":null},"id":1558,"kind":{"StorageLive":55},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":384,"col":30},"end":{"line":384,"col":32}},"generated_from_span":null},"id":1559,"kind":{"StorageLive":56},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":384,"col":30},"end":{"line":384,"col":32}},"generated_from_span":null},"id":1560,"kind":{"Assign":[{"kind":{"Local":56},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":18},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":384,"col":34},"end":{"line":384,"col":55}},"generated_from_span":null},"id":1561,"kind":{"StorageLive":57},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":384,"col":34},"end":{"line":384,"col":46}},"generated_from_span":null},"id":1562,"kind":{"StorageLive":58},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":384,"col":34},"end":{"line":384,"col":41}},"generated_from_span":null},"id":1563,"kind":{"StorageLive":59},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":384,"col":34},"end":{"line":384,"col":41}},"generated_from_span":null},"id":1564,"kind":{"Assign":[{"kind":{"Local":59},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":0,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":384,"col":44},"end":{"line":384,"col":45}},"generated_from_span":null},"id":1565,"kind":{"StorageLive":60},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":384,"col":44},"end":{"line":384,"col":45}},"generated_from_span":null},"id":1566,"kind":{"Assign":[{"kind":{"Local":60},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":384,"col":34},"end":{"line":384,"col":46}},"generated_from_span":null},"id":4245,"kind":{"StorageLive":97},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":384,"col":34},"end":{"line":384,"col":46}},"generated_from_span":null},"id":4246,"kind":{"Assign":[{"kind":{"Local":97},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":59},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":384,"col":34},"end":{"line":384,"col":46}},"generated_from_span":null},"id":4247,"kind":{"StorageLive":98},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":384,"col":34},"end":{"line":384,"col":46}},"generated_from_span":null},"id":4248,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":97},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":60},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":98},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":384,"col":34},"end":{"line":384,"col":46}},"generated_from_span":null},"id":1569,"kind":{"Assign":[{"kind":{"Local":58},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":98},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":384,"col":49},"end":{"line":384,"col":55}},"generated_from_span":null},"id":1570,"kind":{"StorageLive":61},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":384,"col":49},"end":{"line":384,"col":55}},"generated_from_span":null},"id":1571,"kind":{"Assign":[{"kind":{"Local":61},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":27},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":384,"col":34},"end":{"line":384,"col":55}},"generated_from_span":null},"id":1572,"kind":{"Assign":[{"kind":{"Local":57},"ty":{"Deduplicated":1072}},{"BinaryOp":["BitAnd",{"Move":{"kind":{"Local":58},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":61},"ty":{"Deduplicated":1072}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":384,"col":54},"end":{"line":384,"col":55}},"generated_from_span":null},"id":1573,"kind":{"StorageDead":61},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":384,"col":54},"end":{"line":384,"col":55}},"generated_from_span":null},"id":1574,"kind":{"StorageDead":58},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":384,"col":57},"end":{"line":384,"col":62}},"generated_from_span":null},"id":1575,"kind":{"StorageLive":62},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":384,"col":57},"end":{"line":384,"col":62}},"generated_from_span":null},"id":1576,"kind":{"Assign":[{"kind":{"Local":62},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":44},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":384,"col":26},"end":{"line":384,"col":63}},"generated_from_span":null},"id":1577,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":212}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":56},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":57},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":62},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":55},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":384,"col":62},"end":{"line":384,"col":63}},"generated_from_span":null},"id":1578,"kind":{"StorageDead":62},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":384,"col":62},"end":{"line":384,"col":63}},"generated_from_span":null},"id":1579,"kind":{"StorageDead":57},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":384,"col":62},"end":{"line":384,"col":63}},"generated_from_span":null},"id":1580,"kind":{"StorageDead":56},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":384,"col":13},"end":{"line":384,"col":15}},"generated_from_span":null},"id":1581,"kind":{"StorageLive":53},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":384,"col":13},"end":{"line":384,"col":15}},"generated_from_span":null},"id":1582,"kind":{"Assign":[{"kind":{"Local":53},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":55},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":384,"col":17},"end":{"line":384,"col":22}},"generated_from_span":null},"id":1583,"kind":{"StorageLive":54},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":384,"col":17},"end":{"line":384,"col":22}},"generated_from_span":null},"id":1584,"kind":{"Assign":[{"kind":{"Local":54},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":55},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":384,"col":63},"end":{"line":384,"col":64}},"generated_from_span":null},"id":1585,"kind":{"StorageDead":60},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":384,"col":63},"end":{"line":384,"col":64}},"generated_from_span":null},"id":1586,"kind":{"StorageDead":59},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":384,"col":63},"end":{"line":384,"col":64}},"generated_from_span":null},"id":1587,"kind":{"StorageDead":55},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":385,"col":22},"end":{"line":385,"col":59}},"generated_from_span":null},"id":1588,"kind":{"StorageLive":64},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":385,"col":26},"end":{"line":385,"col":28}},"generated_from_span":null},"id":1589,"kind":{"StorageLive":65},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":385,"col":26},"end":{"line":385,"col":28}},"generated_from_span":null},"id":1590,"kind":{"Assign":[{"kind":{"Local":65},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":26},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":385,"col":30},"end":{"line":385,"col":51}},"generated_from_span":null},"id":1591,"kind":{"StorageLive":66},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":385,"col":30},"end":{"line":385,"col":42}},"generated_from_span":null},"id":1592,"kind":{"StorageLive":67},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":385,"col":30},"end":{"line":385,"col":37}},"generated_from_span":null},"id":1593,"kind":{"StorageLive":68},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":385,"col":30},"end":{"line":385,"col":37}},"generated_from_span":null},"id":1594,"kind":{"Assign":[{"kind":{"Local":68},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":0,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":385,"col":40},"end":{"line":385,"col":41}},"generated_from_span":null},"id":1595,"kind":{"StorageLive":69},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":385,"col":40},"end":{"line":385,"col":41}},"generated_from_span":null},"id":1596,"kind":{"Assign":[{"kind":{"Local":69},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":385,"col":30},"end":{"line":385,"col":42}},"generated_from_span":null},"id":4249,"kind":{"StorageLive":99},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":385,"col":30},"end":{"line":385,"col":42}},"generated_from_span":null},"id":4250,"kind":{"Assign":[{"kind":{"Local":99},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":68},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":385,"col":30},"end":{"line":385,"col":42}},"generated_from_span":null},"id":4251,"kind":{"StorageLive":100},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":385,"col":30},"end":{"line":385,"col":42}},"generated_from_span":null},"id":4252,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":99},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":69},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":100},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":385,"col":30},"end":{"line":385,"col":42}},"generated_from_span":null},"id":1599,"kind":{"Assign":[{"kind":{"Local":67},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":100},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":385,"col":45},"end":{"line":385,"col":51}},"generated_from_span":null},"id":1600,"kind":{"StorageLive":70},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":385,"col":45},"end":{"line":385,"col":51}},"generated_from_span":null},"id":1601,"kind":{"Assign":[{"kind":{"Local":70},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":27},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":385,"col":30},"end":{"line":385,"col":51}},"generated_from_span":null},"id":1602,"kind":{"Assign":[{"kind":{"Local":66},"ty":{"Deduplicated":1072}},{"BinaryOp":["BitAnd",{"Move":{"kind":{"Local":67},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":70},"ty":{"Deduplicated":1072}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":385,"col":50},"end":{"line":385,"col":51}},"generated_from_span":null},"id":1603,"kind":{"StorageDead":70},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":385,"col":50},"end":{"line":385,"col":51}},"generated_from_span":null},"id":1604,"kind":{"StorageDead":67},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":385,"col":53},"end":{"line":385,"col":58}},"generated_from_span":null},"id":1605,"kind":{"StorageLive":71},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":385,"col":53},"end":{"line":385,"col":58}},"generated_from_span":null},"id":1606,"kind":{"Assign":[{"kind":{"Local":71},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":54},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":385,"col":22},"end":{"line":385,"col":59}},"generated_from_span":null},"id":1607,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":212}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":65},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":66},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":71},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":64},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":385,"col":58},"end":{"line":385,"col":59}},"generated_from_span":null},"id":1608,"kind":{"StorageDead":71},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":385,"col":58},"end":{"line":385,"col":59}},"generated_from_span":null},"id":1609,"kind":{"StorageDead":66},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":385,"col":58},"end":{"line":385,"col":59}},"generated_from_span":null},"id":1610,"kind":{"StorageDead":65},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":385,"col":13},"end":{"line":385,"col":15}},"generated_from_span":null},"id":1611,"kind":{"StorageLive":63},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":385,"col":13},"end":{"line":385,"col":15}},"generated_from_span":null},"id":1612,"kind":{"Assign":[{"kind":{"Local":63},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":64},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":385,"col":59},"end":{"line":385,"col":60}},"generated_from_span":null},"id":1613,"kind":{"StorageDead":69},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":385,"col":59},"end":{"line":385,"col":60}},"generated_from_span":null},"id":1614,"kind":{"StorageDead":68},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":385,"col":59},"end":{"line":385,"col":60}},"generated_from_span":null},"id":1615,"kind":{"StorageDead":64},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":387,"col":11},"end":{"line":387,"col":27}},"generated_from_span":null},"id":1616,"kind":{"StorageLive":72},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":387,"col":12},"end":{"line":387,"col":14}},"generated_from_span":null},"id":1617,"kind":{"StorageLive":73},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":387,"col":12},"end":{"line":387,"col":14}},"generated_from_span":null},"id":1618,"kind":{"Assign":[{"kind":{"Local":73},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":34},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":387,"col":16},"end":{"line":387,"col":18}},"generated_from_span":null},"id":1619,"kind":{"StorageLive":74},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":387,"col":16},"end":{"line":387,"col":18}},"generated_from_span":null},"id":1620,"kind":{"Assign":[{"kind":{"Local":74},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":43},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":387,"col":20},"end":{"line":387,"col":22}},"generated_from_span":null},"id":1621,"kind":{"StorageLive":75},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":387,"col":20},"end":{"line":387,"col":22}},"generated_from_span":null},"id":1622,"kind":{"Assign":[{"kind":{"Local":75},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":53},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":387,"col":24},"end":{"line":387,"col":26}},"generated_from_span":null},"id":1623,"kind":{"StorageLive":76},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":387,"col":24},"end":{"line":387,"col":26}},"generated_from_span":null},"id":1624,"kind":{"Assign":[{"kind":{"Local":76},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":63},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":387,"col":11},"end":{"line":387,"col":27}},"generated_from_span":null},"id":1625,"kind":{"Assign":[{"kind":{"Local":72},"ty":{"Deduplicated":1074}},{"Aggregate":[{"Array":[{"Deduplicated":1072},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}]},[{"Move":{"kind":{"Local":73},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":74},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":75},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":76},"ty":{"Deduplicated":1072}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":387,"col":26},"end":{"line":387,"col":27}},"generated_from_span":null},"id":1626,"kind":{"StorageDead":76},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":387,"col":26},"end":{"line":387,"col":27}},"generated_from_span":null},"id":1627,"kind":{"StorageDead":75},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":387,"col":26},"end":{"line":387,"col":27}},"generated_from_span":null},"id":1628,"kind":{"StorageDead":74},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":387,"col":26},"end":{"line":387,"col":27}},"generated_from_span":null},"id":1629,"kind":{"StorageDead":73},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":387,"col":8},"end":{"line":387,"col":28}},"generated_from_span":null},"id":1630,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1079}},{"Aggregate":[{"Adt":[{"id":{"Adt":0},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[{"Move":{"kind":{"Local":72},"ty":{"Deduplicated":1074}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":387,"col":27},"end":{"line":387,"col":28}},"generated_from_span":null},"id":1631,"kind":{"StorageDead":72},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":388,"col":4},"end":{"line":388,"col":5}},"generated_from_span":null},"id":1632,"kind":{"StorageDead":63},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":388,"col":4},"end":{"line":388,"col":5}},"generated_from_span":null},"id":1633,"kind":{"StorageDead":54},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":388,"col":4},"end":{"line":388,"col":5}},"generated_from_span":null},"id":1634,"kind":{"StorageDead":53},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":388,"col":4},"end":{"line":388,"col":5}},"generated_from_span":null},"id":1635,"kind":{"StorageDead":44},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":388,"col":4},"end":{"line":388,"col":5}},"generated_from_span":null},"id":1636,"kind":{"StorageDead":43},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":388,"col":4},"end":{"line":388,"col":5}},"generated_from_span":null},"id":1637,"kind":{"StorageDead":35},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":388,"col":4},"end":{"line":388,"col":5}},"generated_from_span":null},"id":1638,"kind":{"StorageDead":34},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":388,"col":4},"end":{"line":388,"col":5}},"generated_from_span":null},"id":1639,"kind":{"StorageDead":27},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":388,"col":4},"end":{"line":388,"col":5}},"generated_from_span":null},"id":1640,"kind":{"StorageDead":26},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":388,"col":4},"end":{"line":388,"col":5}},"generated_from_span":null},"id":1641,"kind":{"StorageDead":19},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":388,"col":4},"end":{"line":388,"col":5}},"generated_from_span":null},"id":1642,"kind":{"StorageDead":18},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":388,"col":4},"end":{"line":388,"col":5}},"generated_from_span":null},"id":1643,"kind":{"StorageDead":11},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":388,"col":4},"end":{"line":388,"col":5}},"generated_from_span":null},"id":1644,"kind":{"StorageDead":10},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":388,"col":4},"end":{"line":388,"col":5}},"generated_from_span":null},"id":1645,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":388,"col":4},"end":{"line":388,"col":5}},"generated_from_span":null},"id":1646,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":388,"col":5},"end":{"line":388,"col":5}},"generated_from_span":null},"id":1647,"kind":"Return","comments_before":[]}]},"comments":[[382,["If underflow occurred on the final limb, borrow = 0xfff...fff, otherwise","borrow = 0x000...000. Thus, we use it as a mask to conditionally add the modulus."]]]}}},{"def_id":76,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":1079},"kind":"InherentImplBlock"}}},{"Ident":["add",0]}],"span":{"data":{"file_id":2,"beg":{"line":392,"col":4},"end":{"line":401,"col":5}},"generated_from_span":null},"source_text":"pub const fn add(&self, rhs: &Self) -> Self {\n let (d0, carry) = adc(self.0[0], rhs.0[0], 0);\n let (d1, carry) = adc(self.0[1], rhs.0[1], carry);\n let (d2, carry) = adc(self.0[2], rhs.0[2], carry);\n let (d3, _) = adc(self.0[3], rhs.0[3], carry);\n\n // Attempt to subtract the modulus, to ensure the value\n // is smaller than the modulus.\n (&Fp([d0, d1, d2, d3])).sub(&MODULUS)\n }","attr_info":{"attributes":[{"DocComment":" Adds `rhs` to `self`, returning the result."}],"inline":"Hint","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":8297},{"Deduplicated":8298}],"output":{"Deduplicated":1079}},"src":"TopLevel","is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":392,"col":4},"end":{"line":401,"col":5}},"generated_from_span":null},"bound_body_regions":14,"locals":{"arg_count":2,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":392,"col":43},"end":{"line":392,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":"self","span":{"data":{"file_id":2,"beg":{"line":392,"col":21},"end":{"line":392,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":2302}},{"index":2,"name":"rhs","span":{"data":{"file_id":2,"beg":{"line":392,"col":28},"end":{"line":392,"col":31}},"generated_from_span":null},"ty":{"Deduplicated":2355}},{"index":3,"name":"d0","span":{"data":{"file_id":2,"beg":{"line":393,"col":13},"end":{"line":393,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":4,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":393,"col":17},"end":{"line":393,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":5,"name":null,"span":{"data":{"file_id":2,"beg":{"line":393,"col":26},"end":{"line":393,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":6,"name":null,"span":{"data":{"file_id":2,"beg":{"line":393,"col":30},"end":{"line":393,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":7,"name":null,"span":{"data":{"file_id":2,"beg":{"line":393,"col":37},"end":{"line":393,"col":38}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":8,"name":null,"span":{"data":{"file_id":2,"beg":{"line":393,"col":41},"end":{"line":393,"col":49}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":9,"name":null,"span":{"data":{"file_id":2,"beg":{"line":393,"col":47},"end":{"line":393,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":10,"name":"d1","span":{"data":{"file_id":2,"beg":{"line":394,"col":13},"end":{"line":394,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":11,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":394,"col":17},"end":{"line":394,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":12,"name":null,"span":{"data":{"file_id":2,"beg":{"line":394,"col":26},"end":{"line":394,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":13,"name":null,"span":{"data":{"file_id":2,"beg":{"line":394,"col":30},"end":{"line":394,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":14,"name":null,"span":{"data":{"file_id":2,"beg":{"line":394,"col":37},"end":{"line":394,"col":38}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":15,"name":null,"span":{"data":{"file_id":2,"beg":{"line":394,"col":41},"end":{"line":394,"col":49}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":16,"name":null,"span":{"data":{"file_id":2,"beg":{"line":394,"col":47},"end":{"line":394,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":17,"name":null,"span":{"data":{"file_id":2,"beg":{"line":394,"col":51},"end":{"line":394,"col":56}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":18,"name":"d2","span":{"data":{"file_id":2,"beg":{"line":395,"col":13},"end":{"line":395,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":19,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":395,"col":17},"end":{"line":395,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":20,"name":null,"span":{"data":{"file_id":2,"beg":{"line":395,"col":26},"end":{"line":395,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":21,"name":null,"span":{"data":{"file_id":2,"beg":{"line":395,"col":30},"end":{"line":395,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":22,"name":null,"span":{"data":{"file_id":2,"beg":{"line":395,"col":37},"end":{"line":395,"col":38}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":23,"name":null,"span":{"data":{"file_id":2,"beg":{"line":395,"col":41},"end":{"line":395,"col":49}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":24,"name":null,"span":{"data":{"file_id":2,"beg":{"line":395,"col":47},"end":{"line":395,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":25,"name":null,"span":{"data":{"file_id":2,"beg":{"line":395,"col":51},"end":{"line":395,"col":56}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":26,"name":"d3","span":{"data":{"file_id":2,"beg":{"line":396,"col":13},"end":{"line":396,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":27,"name":null,"span":{"data":{"file_id":2,"beg":{"line":396,"col":22},"end":{"line":396,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":28,"name":null,"span":{"data":{"file_id":2,"beg":{"line":396,"col":26},"end":{"line":396,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":29,"name":null,"span":{"data":{"file_id":2,"beg":{"line":396,"col":33},"end":{"line":396,"col":34}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":30,"name":null,"span":{"data":{"file_id":2,"beg":{"line":396,"col":37},"end":{"line":396,"col":45}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":31,"name":null,"span":{"data":{"file_id":2,"beg":{"line":396,"col":43},"end":{"line":396,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":32,"name":null,"span":{"data":{"file_id":2,"beg":{"line":396,"col":47},"end":{"line":396,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":33,"name":null,"span":{"data":{"file_id":2,"beg":{"line":400,"col":8},"end":{"line":400,"col":31}},"generated_from_span":null},"ty":{"Deduplicated":2470}},{"index":34,"name":null,"span":{"data":{"file_id":2,"beg":{"line":400,"col":8},"end":{"line":400,"col":31}},"generated_from_span":null},"ty":{"Deduplicated":2471}},{"index":35,"name":null,"span":{"data":{"file_id":2,"beg":{"line":400,"col":10},"end":{"line":400,"col":30}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":36,"name":null,"span":{"data":{"file_id":2,"beg":{"line":400,"col":13},"end":{"line":400,"col":29}},"generated_from_span":null},"ty":{"Deduplicated":1074}},{"index":37,"name":null,"span":{"data":{"file_id":2,"beg":{"line":400,"col":14},"end":{"line":400,"col":16}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":38,"name":null,"span":{"data":{"file_id":2,"beg":{"line":400,"col":18},"end":{"line":400,"col":20}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":39,"name":null,"span":{"data":{"file_id":2,"beg":{"line":400,"col":22},"end":{"line":400,"col":24}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":40,"name":null,"span":{"data":{"file_id":2,"beg":{"line":400,"col":26},"end":{"line":400,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":41,"name":null,"span":{"data":{"file_id":2,"beg":{"line":400,"col":36},"end":{"line":400,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":2401}},{"index":42,"name":null,"span":{"data":{"file_id":2,"beg":{"line":400,"col":36},"end":{"line":400,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":2402}},{"index":43,"name":null,"span":{"data":{"file_id":2,"beg":{"line":400,"col":36},"end":{"line":400,"col":44}},"generated_from_span":null},"ty":{"HashConsedValue":[4748,{"Ref":[{"Body":7},{"Deduplicated":1079},"Shared"]}]}},{"index":44,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"HashConsedValue":[7196,{"Ref":[{"Body":8},{"Deduplicated":1079},"Shared"]}]}},{"index":45,"name":null,"span":{"data":{"file_id":2,"beg":{"line":400,"col":36},"end":{"line":400,"col":44}},"generated_from_span":null},"ty":{"HashConsedValue":[7197,{"Ref":[{"Body":13},{"Deduplicated":1079},"Shared"]}]}},{"index":46,"name":null,"span":{"data":{"file_id":2,"beg":{"line":400,"col":37},"end":{"line":400,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":47,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":48,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":49,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":50,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":51,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":52,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":53,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":54,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":55,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":56,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":57,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":58,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":59,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":60,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":61,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":62,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":393,"col":13},"end":{"line":396,"col":53}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":393,"col":26},"end":{"line":393,"col":53}},"generated_from_span":null},"id":1656,"kind":{"StorageLive":43},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":393,"col":26},"end":{"line":393,"col":53}},"generated_from_span":null},"id":1657,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":393,"col":30},"end":{"line":393,"col":39}},"generated_from_span":null},"id":1658,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":393,"col":37},"end":{"line":393,"col":38}},"generated_from_span":null},"id":1659,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":393,"col":37},"end":{"line":393,"col":38}},"generated_from_span":null},"id":1660,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":393,"col":30},"end":{"line":393,"col":39}},"generated_from_span":null},"id":4253,"kind":{"StorageLive":47},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":393,"col":30},"end":{"line":393,"col":39}},"generated_from_span":null},"id":4254,"kind":{"Assign":[{"kind":{"Local":47},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":393,"col":30},"end":{"line":393,"col":39}},"generated_from_span":null},"id":4255,"kind":{"StorageLive":48},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":393,"col":30},"end":{"line":393,"col":39}},"generated_from_span":null},"id":4256,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":47},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":7},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":48},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":393,"col":30},"end":{"line":393,"col":39}},"generated_from_span":null},"id":1663,"kind":{"Assign":[{"kind":{"Local":6},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":48},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":393,"col":41},"end":{"line":393,"col":49}},"generated_from_span":null},"id":1664,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":393,"col":47},"end":{"line":393,"col":48}},"generated_from_span":null},"id":1665,"kind":{"StorageLive":9},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":393,"col":47},"end":{"line":393,"col":48}},"generated_from_span":null},"id":1666,"kind":{"Assign":[{"kind":{"Local":9},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":393,"col":41},"end":{"line":393,"col":49}},"generated_from_span":null},"id":4257,"kind":{"StorageLive":49},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":393,"col":41},"end":{"line":393,"col":49}},"generated_from_span":null},"id":4258,"kind":{"Assign":[{"kind":{"Local":49},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":393,"col":41},"end":{"line":393,"col":49}},"generated_from_span":null},"id":4259,"kind":{"StorageLive":50},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":393,"col":41},"end":{"line":393,"col":49}},"generated_from_span":null},"id":4260,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":49},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":9},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":50},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":393,"col":41},"end":{"line":393,"col":49}},"generated_from_span":null},"id":1669,"kind":{"Assign":[{"kind":{"Local":8},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":50},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":393,"col":26},"end":{"line":393,"col":53}},"generated_from_span":null},"id":1670,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":212}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":6},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":8},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":5},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":393,"col":52},"end":{"line":393,"col":53}},"generated_from_span":null},"id":1671,"kind":{"StorageDead":8},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":393,"col":52},"end":{"line":393,"col":53}},"generated_from_span":null},"id":1672,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":393,"col":13},"end":{"line":393,"col":15}},"generated_from_span":null},"id":1673,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":393,"col":13},"end":{"line":393,"col":15}},"generated_from_span":null},"id":1674,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":5},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":393,"col":17},"end":{"line":393,"col":22}},"generated_from_span":null},"id":1675,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":393,"col":17},"end":{"line":393,"col":22}},"generated_from_span":null},"id":1676,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":5},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":393,"col":53},"end":{"line":393,"col":54}},"generated_from_span":null},"id":1677,"kind":{"StorageDead":9},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":393,"col":53},"end":{"line":393,"col":54}},"generated_from_span":null},"id":1678,"kind":{"StorageDead":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":393,"col":53},"end":{"line":393,"col":54}},"generated_from_span":null},"id":1679,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":394,"col":26},"end":{"line":394,"col":57}},"generated_from_span":null},"id":1680,"kind":{"StorageLive":12},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":394,"col":30},"end":{"line":394,"col":39}},"generated_from_span":null},"id":1681,"kind":{"StorageLive":13},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":394,"col":37},"end":{"line":394,"col":38}},"generated_from_span":null},"id":1682,"kind":{"StorageLive":14},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":394,"col":37},"end":{"line":394,"col":38}},"generated_from_span":null},"id":1683,"kind":{"Assign":[{"kind":{"Local":14},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":394,"col":30},"end":{"line":394,"col":39}},"generated_from_span":null},"id":4261,"kind":{"StorageLive":51},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":394,"col":30},"end":{"line":394,"col":39}},"generated_from_span":null},"id":4262,"kind":{"Assign":[{"kind":{"Local":51},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":394,"col":30},"end":{"line":394,"col":39}},"generated_from_span":null},"id":4263,"kind":{"StorageLive":52},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":394,"col":30},"end":{"line":394,"col":39}},"generated_from_span":null},"id":4264,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":51},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":14},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":52},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":394,"col":30},"end":{"line":394,"col":39}},"generated_from_span":null},"id":1686,"kind":{"Assign":[{"kind":{"Local":13},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":52},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":394,"col":41},"end":{"line":394,"col":49}},"generated_from_span":null},"id":1687,"kind":{"StorageLive":15},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":394,"col":47},"end":{"line":394,"col":48}},"generated_from_span":null},"id":1688,"kind":{"StorageLive":16},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":394,"col":47},"end":{"line":394,"col":48}},"generated_from_span":null},"id":1689,"kind":{"Assign":[{"kind":{"Local":16},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":394,"col":41},"end":{"line":394,"col":49}},"generated_from_span":null},"id":4265,"kind":{"StorageLive":53},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":394,"col":41},"end":{"line":394,"col":49}},"generated_from_span":null},"id":4266,"kind":{"Assign":[{"kind":{"Local":53},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":394,"col":41},"end":{"line":394,"col":49}},"generated_from_span":null},"id":4267,"kind":{"StorageLive":54},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":394,"col":41},"end":{"line":394,"col":49}},"generated_from_span":null},"id":4268,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":53},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":16},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":54},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":394,"col":41},"end":{"line":394,"col":49}},"generated_from_span":null},"id":1692,"kind":{"Assign":[{"kind":{"Local":15},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":54},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":394,"col":51},"end":{"line":394,"col":56}},"generated_from_span":null},"id":1693,"kind":{"StorageLive":17},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":394,"col":51},"end":{"line":394,"col":56}},"generated_from_span":null},"id":1694,"kind":{"Assign":[{"kind":{"Local":17},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":4},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":394,"col":26},"end":{"line":394,"col":57}},"generated_from_span":null},"id":1695,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":212}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":13},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":15},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":17},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":12},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":394,"col":56},"end":{"line":394,"col":57}},"generated_from_span":null},"id":1696,"kind":{"StorageDead":17},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":394,"col":56},"end":{"line":394,"col":57}},"generated_from_span":null},"id":1697,"kind":{"StorageDead":15},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":394,"col":56},"end":{"line":394,"col":57}},"generated_from_span":null},"id":1698,"kind":{"StorageDead":13},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":394,"col":13},"end":{"line":394,"col":15}},"generated_from_span":null},"id":1699,"kind":{"StorageLive":10},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":394,"col":13},"end":{"line":394,"col":15}},"generated_from_span":null},"id":1700,"kind":{"Assign":[{"kind":{"Local":10},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":12},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":394,"col":17},"end":{"line":394,"col":22}},"generated_from_span":null},"id":1701,"kind":{"StorageLive":11},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":394,"col":17},"end":{"line":394,"col":22}},"generated_from_span":null},"id":1702,"kind":{"Assign":[{"kind":{"Local":11},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":12},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":394,"col":57},"end":{"line":394,"col":58}},"generated_from_span":null},"id":1703,"kind":{"StorageDead":16},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":394,"col":57},"end":{"line":394,"col":58}},"generated_from_span":null},"id":1704,"kind":{"StorageDead":14},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":394,"col":57},"end":{"line":394,"col":58}},"generated_from_span":null},"id":1705,"kind":{"StorageDead":12},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":395,"col":26},"end":{"line":395,"col":57}},"generated_from_span":null},"id":1706,"kind":{"StorageLive":20},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":395,"col":30},"end":{"line":395,"col":39}},"generated_from_span":null},"id":1707,"kind":{"StorageLive":21},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":395,"col":37},"end":{"line":395,"col":38}},"generated_from_span":null},"id":1708,"kind":{"StorageLive":22},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":395,"col":37},"end":{"line":395,"col":38}},"generated_from_span":null},"id":1709,"kind":{"Assign":[{"kind":{"Local":22},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":395,"col":30},"end":{"line":395,"col":39}},"generated_from_span":null},"id":4269,"kind":{"StorageLive":55},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":395,"col":30},"end":{"line":395,"col":39}},"generated_from_span":null},"id":4270,"kind":{"Assign":[{"kind":{"Local":55},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":395,"col":30},"end":{"line":395,"col":39}},"generated_from_span":null},"id":4271,"kind":{"StorageLive":56},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":395,"col":30},"end":{"line":395,"col":39}},"generated_from_span":null},"id":4272,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":55},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":22},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":56},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":395,"col":30},"end":{"line":395,"col":39}},"generated_from_span":null},"id":1712,"kind":{"Assign":[{"kind":{"Local":21},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":56},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":395,"col":41},"end":{"line":395,"col":49}},"generated_from_span":null},"id":1713,"kind":{"StorageLive":23},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":395,"col":47},"end":{"line":395,"col":48}},"generated_from_span":null},"id":1714,"kind":{"StorageLive":24},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":395,"col":47},"end":{"line":395,"col":48}},"generated_from_span":null},"id":1715,"kind":{"Assign":[{"kind":{"Local":24},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":395,"col":41},"end":{"line":395,"col":49}},"generated_from_span":null},"id":4273,"kind":{"StorageLive":57},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":395,"col":41},"end":{"line":395,"col":49}},"generated_from_span":null},"id":4274,"kind":{"Assign":[{"kind":{"Local":57},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":395,"col":41},"end":{"line":395,"col":49}},"generated_from_span":null},"id":4275,"kind":{"StorageLive":58},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":395,"col":41},"end":{"line":395,"col":49}},"generated_from_span":null},"id":4276,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":57},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":24},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":58},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":395,"col":41},"end":{"line":395,"col":49}},"generated_from_span":null},"id":1718,"kind":{"Assign":[{"kind":{"Local":23},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":58},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":395,"col":51},"end":{"line":395,"col":56}},"generated_from_span":null},"id":1719,"kind":{"StorageLive":25},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":395,"col":51},"end":{"line":395,"col":56}},"generated_from_span":null},"id":1720,"kind":{"Assign":[{"kind":{"Local":25},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":11},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":395,"col":26},"end":{"line":395,"col":57}},"generated_from_span":null},"id":1721,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":212}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":21},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":23},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":25},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":20},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":395,"col":56},"end":{"line":395,"col":57}},"generated_from_span":null},"id":1722,"kind":{"StorageDead":25},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":395,"col":56},"end":{"line":395,"col":57}},"generated_from_span":null},"id":1723,"kind":{"StorageDead":23},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":395,"col":56},"end":{"line":395,"col":57}},"generated_from_span":null},"id":1724,"kind":{"StorageDead":21},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":395,"col":13},"end":{"line":395,"col":15}},"generated_from_span":null},"id":1725,"kind":{"StorageLive":18},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":395,"col":13},"end":{"line":395,"col":15}},"generated_from_span":null},"id":1726,"kind":{"Assign":[{"kind":{"Local":18},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":20},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":395,"col":17},"end":{"line":395,"col":22}},"generated_from_span":null},"id":1727,"kind":{"StorageLive":19},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":395,"col":17},"end":{"line":395,"col":22}},"generated_from_span":null},"id":1728,"kind":{"Assign":[{"kind":{"Local":19},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":20},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":395,"col":57},"end":{"line":395,"col":58}},"generated_from_span":null},"id":1729,"kind":{"StorageDead":24},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":395,"col":57},"end":{"line":395,"col":58}},"generated_from_span":null},"id":1730,"kind":{"StorageDead":22},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":395,"col":57},"end":{"line":395,"col":58}},"generated_from_span":null},"id":1731,"kind":{"StorageDead":20},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":396,"col":22},"end":{"line":396,"col":53}},"generated_from_span":null},"id":1732,"kind":{"StorageLive":27},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":396,"col":26},"end":{"line":396,"col":35}},"generated_from_span":null},"id":1733,"kind":{"StorageLive":28},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":396,"col":33},"end":{"line":396,"col":34}},"generated_from_span":null},"id":1734,"kind":{"StorageLive":29},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":396,"col":33},"end":{"line":396,"col":34}},"generated_from_span":null},"id":1735,"kind":{"Assign":[{"kind":{"Local":29},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":396,"col":26},"end":{"line":396,"col":35}},"generated_from_span":null},"id":4277,"kind":{"StorageLive":59},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":396,"col":26},"end":{"line":396,"col":35}},"generated_from_span":null},"id":4278,"kind":{"Assign":[{"kind":{"Local":59},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":396,"col":26},"end":{"line":396,"col":35}},"generated_from_span":null},"id":4279,"kind":{"StorageLive":60},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":396,"col":26},"end":{"line":396,"col":35}},"generated_from_span":null},"id":4280,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":59},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":29},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":60},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":396,"col":26},"end":{"line":396,"col":35}},"generated_from_span":null},"id":1738,"kind":{"Assign":[{"kind":{"Local":28},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":60},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":396,"col":37},"end":{"line":396,"col":45}},"generated_from_span":null},"id":1739,"kind":{"StorageLive":30},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":396,"col":43},"end":{"line":396,"col":44}},"generated_from_span":null},"id":1740,"kind":{"StorageLive":31},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":396,"col":43},"end":{"line":396,"col":44}},"generated_from_span":null},"id":1741,"kind":{"Assign":[{"kind":{"Local":31},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":396,"col":37},"end":{"line":396,"col":45}},"generated_from_span":null},"id":4281,"kind":{"StorageLive":61},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":396,"col":37},"end":{"line":396,"col":45}},"generated_from_span":null},"id":4282,"kind":{"Assign":[{"kind":{"Local":61},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":396,"col":37},"end":{"line":396,"col":45}},"generated_from_span":null},"id":4283,"kind":{"StorageLive":62},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":396,"col":37},"end":{"line":396,"col":45}},"generated_from_span":null},"id":4284,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":61},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":31},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":62},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":396,"col":37},"end":{"line":396,"col":45}},"generated_from_span":null},"id":1744,"kind":{"Assign":[{"kind":{"Local":30},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":62},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":396,"col":47},"end":{"line":396,"col":52}},"generated_from_span":null},"id":1745,"kind":{"StorageLive":32},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":396,"col":47},"end":{"line":396,"col":52}},"generated_from_span":null},"id":1746,"kind":{"Assign":[{"kind":{"Local":32},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":19},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":396,"col":22},"end":{"line":396,"col":53}},"generated_from_span":null},"id":1747,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":212}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":28},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":30},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":32},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":27},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"id":1748,"kind":{"StorageLive":44},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":400,"col":36},"end":{"line":400,"col":44}},"generated_from_span":null},"id":1749,"kind":{"StorageLive":45},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":400,"col":37},"end":{"line":400,"col":44}},"generated_from_span":null},"id":1750,"kind":{"StorageLive":46},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":400,"col":37},"end":{"line":400,"col":44}},"generated_from_span":null},"id":1751,"kind":{"Assign":[{"kind":{"Local":46},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":0,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":["Attempt to subtract the modulus, to ensure the value","is smaller than the modulus."]},{"span":{"data":{"file_id":2,"beg":{"line":400,"col":36},"end":{"line":400,"col":44}},"generated_from_span":null},"id":1752,"kind":{"Assign":[{"kind":{"Local":45},"ty":{"Deduplicated":7197}},{"Ref":{"place":{"kind":{"Local":46},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":400,"col":36},"end":{"line":400,"col":44}},"generated_from_span":null},"id":1753,"kind":{"Assign":[{"kind":{"Local":44},"ty":{"Deduplicated":7196}},{"Use":[{"Move":{"kind":{"Local":45},"ty":{"Deduplicated":7197}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":396,"col":52},"end":{"line":396,"col":53}},"generated_from_span":null},"id":1754,"kind":{"StorageDead":32},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":396,"col":52},"end":{"line":396,"col":53}},"generated_from_span":null},"id":1755,"kind":{"StorageDead":30},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":396,"col":52},"end":{"line":396,"col":53}},"generated_from_span":null},"id":1756,"kind":{"StorageDead":28},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":396,"col":13},"end":{"line":396,"col":15}},"generated_from_span":null},"id":1757,"kind":{"StorageLive":26},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":396,"col":13},"end":{"line":396,"col":15}},"generated_from_span":null},"id":1758,"kind":{"Assign":[{"kind":{"Local":26},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":27},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":396,"col":53},"end":{"line":396,"col":54}},"generated_from_span":null},"id":1759,"kind":{"StorageDead":31},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":396,"col":53},"end":{"line":396,"col":54}},"generated_from_span":null},"id":1760,"kind":{"StorageDead":29},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":396,"col":53},"end":{"line":396,"col":54}},"generated_from_span":null},"id":1761,"kind":{"StorageDead":27},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":400,"col":8},"end":{"line":400,"col":31}},"generated_from_span":null},"id":1762,"kind":{"StorageLive":33},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":400,"col":8},"end":{"line":400,"col":31}},"generated_from_span":null},"id":1763,"kind":{"StorageLive":34},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":400,"col":10},"end":{"line":400,"col":30}},"generated_from_span":null},"id":1764,"kind":{"StorageLive":35},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":400,"col":13},"end":{"line":400,"col":29}},"generated_from_span":null},"id":1765,"kind":{"StorageLive":36},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":400,"col":14},"end":{"line":400,"col":16}},"generated_from_span":null},"id":1766,"kind":{"StorageLive":37},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":400,"col":14},"end":{"line":400,"col":16}},"generated_from_span":null},"id":1767,"kind":{"Assign":[{"kind":{"Local":37},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":3},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":400,"col":18},"end":{"line":400,"col":20}},"generated_from_span":null},"id":1768,"kind":{"StorageLive":38},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":400,"col":18},"end":{"line":400,"col":20}},"generated_from_span":null},"id":1769,"kind":{"Assign":[{"kind":{"Local":38},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":10},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":400,"col":22},"end":{"line":400,"col":24}},"generated_from_span":null},"id":1770,"kind":{"StorageLive":39},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":400,"col":22},"end":{"line":400,"col":24}},"generated_from_span":null},"id":1771,"kind":{"Assign":[{"kind":{"Local":39},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":18},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":400,"col":26},"end":{"line":400,"col":28}},"generated_from_span":null},"id":1772,"kind":{"StorageLive":40},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":400,"col":26},"end":{"line":400,"col":28}},"generated_from_span":null},"id":1773,"kind":{"Assign":[{"kind":{"Local":40},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":26},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":400,"col":13},"end":{"line":400,"col":29}},"generated_from_span":null},"id":1774,"kind":{"Assign":[{"kind":{"Local":36},"ty":{"Deduplicated":1074}},{"Aggregate":[{"Array":[{"Deduplicated":1072},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}]},[{"Move":{"kind":{"Local":37},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":38},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":39},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":40},"ty":{"Deduplicated":1072}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":400,"col":28},"end":{"line":400,"col":29}},"generated_from_span":null},"id":1775,"kind":{"StorageDead":40},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":400,"col":28},"end":{"line":400,"col":29}},"generated_from_span":null},"id":1776,"kind":{"StorageDead":39},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":400,"col":28},"end":{"line":400,"col":29}},"generated_from_span":null},"id":1777,"kind":{"StorageDead":38},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":400,"col":28},"end":{"line":400,"col":29}},"generated_from_span":null},"id":1778,"kind":{"StorageDead":37},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":400,"col":10},"end":{"line":400,"col":30}},"generated_from_span":null},"id":1779,"kind":{"Assign":[{"kind":{"Local":35},"ty":{"Deduplicated":1079}},{"Aggregate":[{"Adt":[{"id":{"Adt":0},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[{"Move":{"kind":{"Local":36},"ty":{"Deduplicated":1074}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":400,"col":29},"end":{"line":400,"col":30}},"generated_from_span":null},"id":1780,"kind":{"StorageDead":36},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":400,"col":8},"end":{"line":400,"col":31}},"generated_from_span":null},"id":1781,"kind":{"Assign":[{"kind":{"Local":34},"ty":{"Deduplicated":2471}},{"Ref":{"place":{"kind":{"Local":35},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":400,"col":8},"end":{"line":400,"col":31}},"generated_from_span":null},"id":1782,"kind":{"Assign":[{"kind":{"Local":33},"ty":{"Deduplicated":2470}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":34},"ty":{"Deduplicated":2471}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":400,"col":36},"end":{"line":400,"col":44}},"generated_from_span":null},"id":1783,"kind":{"StorageLive":41},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":400,"col":36},"end":{"line":400,"col":44}},"generated_from_span":null},"id":1784,"kind":{"StorageLive":42},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":400,"col":36},"end":{"line":400,"col":44}},"generated_from_span":null},"id":1785,"kind":{"Assign":[{"kind":{"Local":43},"ty":{"Deduplicated":4748}},{"Use":[{"Move":{"kind":{"Local":44},"ty":{"Deduplicated":7196}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":400,"col":36},"end":{"line":400,"col":44}},"generated_from_span":null},"id":1786,"kind":{"Assign":[{"kind":{"Local":42},"ty":{"Deduplicated":2402}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":43},"ty":{"Deduplicated":4748}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":400,"col":36},"end":{"line":400,"col":44}},"generated_from_span":null},"id":1787,"kind":{"Assign":[{"kind":{"Local":41},"ty":{"Deduplicated":2401}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":42},"ty":{"Deduplicated":2402}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":400,"col":8},"end":{"line":400,"col":45}},"generated_from_span":null},"id":1788,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":75}},"generics":{"regions":[{"Body":11},{"Body":12}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":33},"ty":{"Deduplicated":2470}}},{"Move":{"kind":{"Local":41},"ty":{"Deduplicated":2401}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":400,"col":44},"end":{"line":400,"col":45}},"generated_from_span":null},"id":1789,"kind":{"StorageDead":41},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":400,"col":44},"end":{"line":400,"col":45}},"generated_from_span":null},"id":1790,"kind":{"StorageDead":33},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":401,"col":4},"end":{"line":401,"col":5}},"generated_from_span":null},"id":1791,"kind":{"StorageDead":26},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":401,"col":4},"end":{"line":401,"col":5}},"generated_from_span":null},"id":1792,"kind":{"StorageDead":19},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":401,"col":4},"end":{"line":401,"col":5}},"generated_from_span":null},"id":1793,"kind":{"StorageDead":18},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":401,"col":4},"end":{"line":401,"col":5}},"generated_from_span":null},"id":1794,"kind":{"StorageDead":11},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":401,"col":4},"end":{"line":401,"col":5}},"generated_from_span":null},"id":1795,"kind":{"StorageDead":10},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":401,"col":4},"end":{"line":401,"col":5}},"generated_from_span":null},"id":1796,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":401,"col":4},"end":{"line":401,"col":5}},"generated_from_span":null},"id":1797,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":401,"col":4},"end":{"line":401,"col":5}},"generated_from_span":null},"id":1798,"kind":{"StorageDead":42},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":401,"col":4},"end":{"line":401,"col":5}},"generated_from_span":null},"id":1799,"kind":{"StorageDead":35},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":401,"col":4},"end":{"line":401,"col":5}},"generated_from_span":null},"id":1800,"kind":{"StorageDead":34},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":401,"col":5},"end":{"line":401,"col":5}},"generated_from_span":null},"id":1801,"kind":"Return","comments_before":[]}]},"comments":[[400,["Attempt to subtract the modulus, to ensure the value","is smaller than the modulus."]]]}}},{"def_id":77,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":1079},"kind":"InherentImplBlock"}}},{"Ident":["neg",0]}],"span":{"data":{"file_id":2,"beg":{"line":405,"col":4},"end":{"line":419,"col":5}},"generated_from_span":null},"source_text":"pub const fn neg(&self) -> Self {\n // Subtract `self` from `MODULUS` to negate. Ignore the final\n // borrow because it cannot underflow; self is guaranteed to\n // be in the field.\n let (d0, borrow) = sbb(MODULUS.0[0], self.0[0], 0);\n let (d1, borrow) = sbb(MODULUS.0[1], self.0[1], borrow);\n let (d2, borrow) = sbb(MODULUS.0[2], self.0[2], borrow);\n let (d3, _) = sbb(MODULUS.0[3], self.0[3], borrow);\n\n // `tmp` could be `MODULUS` if `self` was zero. Create a mask that is\n // zero if `self` was zero, and `u64::max_value()` if self was nonzero.\n let mask = (((self.0[0] | self.0[1] | self.0[2] | self.0[3]) == 0) as u64).wrapping_sub(1);\n\n Fp([d0 & mask, d1 & mask, d2 & mask, d3 & mask])\n }","attr_info":{"attributes":[{"DocComment":" Negates `self`."}],"inline":"Hint","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":8297}],"output":{"Deduplicated":1079}},"src":"TopLevel","is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":405,"col":4},"end":{"line":419,"col":5}},"generated_from_span":null},"bound_body_regions":2,"locals":{"arg_count":1,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":405,"col":31},"end":{"line":405,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":"self","span":{"data":{"file_id":2,"beg":{"line":405,"col":21},"end":{"line":405,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":2302}},{"index":2,"name":"d0","span":{"data":{"file_id":2,"beg":{"line":409,"col":13},"end":{"line":409,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":3,"name":"borrow","span":{"data":{"file_id":2,"beg":{"line":409,"col":17},"end":{"line":409,"col":23}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":4,"name":null,"span":{"data":{"file_id":2,"beg":{"line":409,"col":27},"end":{"line":409,"col":58}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":5,"name":null,"span":{"data":{"file_id":2,"beg":{"line":409,"col":31},"end":{"line":409,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":6,"name":null,"span":{"data":{"file_id":2,"beg":{"line":409,"col":31},"end":{"line":409,"col":38}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":7,"name":null,"span":{"data":{"file_id":2,"beg":{"line":409,"col":41},"end":{"line":409,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":8,"name":null,"span":{"data":{"file_id":2,"beg":{"line":409,"col":45},"end":{"line":409,"col":54}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":9,"name":null,"span":{"data":{"file_id":2,"beg":{"line":409,"col":52},"end":{"line":409,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":10,"name":"d1","span":{"data":{"file_id":2,"beg":{"line":410,"col":13},"end":{"line":410,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":11,"name":"borrow","span":{"data":{"file_id":2,"beg":{"line":410,"col":17},"end":{"line":410,"col":23}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":12,"name":null,"span":{"data":{"file_id":2,"beg":{"line":410,"col":27},"end":{"line":410,"col":63}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":13,"name":null,"span":{"data":{"file_id":2,"beg":{"line":410,"col":31},"end":{"line":410,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":14,"name":null,"span":{"data":{"file_id":2,"beg":{"line":410,"col":31},"end":{"line":410,"col":38}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":15,"name":null,"span":{"data":{"file_id":2,"beg":{"line":410,"col":41},"end":{"line":410,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":16,"name":null,"span":{"data":{"file_id":2,"beg":{"line":410,"col":45},"end":{"line":410,"col":54}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":17,"name":null,"span":{"data":{"file_id":2,"beg":{"line":410,"col":52},"end":{"line":410,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":18,"name":null,"span":{"data":{"file_id":2,"beg":{"line":410,"col":56},"end":{"line":410,"col":62}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":19,"name":"d2","span":{"data":{"file_id":2,"beg":{"line":411,"col":13},"end":{"line":411,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":20,"name":"borrow","span":{"data":{"file_id":2,"beg":{"line":411,"col":17},"end":{"line":411,"col":23}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":21,"name":null,"span":{"data":{"file_id":2,"beg":{"line":411,"col":27},"end":{"line":411,"col":63}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":22,"name":null,"span":{"data":{"file_id":2,"beg":{"line":411,"col":31},"end":{"line":411,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":23,"name":null,"span":{"data":{"file_id":2,"beg":{"line":411,"col":31},"end":{"line":411,"col":38}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":24,"name":null,"span":{"data":{"file_id":2,"beg":{"line":411,"col":41},"end":{"line":411,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":25,"name":null,"span":{"data":{"file_id":2,"beg":{"line":411,"col":45},"end":{"line":411,"col":54}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":26,"name":null,"span":{"data":{"file_id":2,"beg":{"line":411,"col":52},"end":{"line":411,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":27,"name":null,"span":{"data":{"file_id":2,"beg":{"line":411,"col":56},"end":{"line":411,"col":62}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":28,"name":"d3","span":{"data":{"file_id":2,"beg":{"line":412,"col":13},"end":{"line":412,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":29,"name":null,"span":{"data":{"file_id":2,"beg":{"line":412,"col":22},"end":{"line":412,"col":58}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":30,"name":null,"span":{"data":{"file_id":2,"beg":{"line":412,"col":26},"end":{"line":412,"col":38}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":31,"name":null,"span":{"data":{"file_id":2,"beg":{"line":412,"col":26},"end":{"line":412,"col":33}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":32,"name":null,"span":{"data":{"file_id":2,"beg":{"line":412,"col":36},"end":{"line":412,"col":37}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":33,"name":null,"span":{"data":{"file_id":2,"beg":{"line":412,"col":40},"end":{"line":412,"col":49}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":34,"name":null,"span":{"data":{"file_id":2,"beg":{"line":412,"col":47},"end":{"line":412,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":35,"name":null,"span":{"data":{"file_id":2,"beg":{"line":412,"col":51},"end":{"line":412,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":36,"name":"mask","span":{"data":{"file_id":2,"beg":{"line":416,"col":12},"end":{"line":416,"col":16}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":37,"name":null,"span":{"data":{"file_id":2,"beg":{"line":416,"col":19},"end":{"line":416,"col":82}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":38,"name":null,"span":{"data":{"file_id":2,"beg":{"line":416,"col":20},"end":{"line":416,"col":74}},"generated_from_span":null},"ty":{"Deduplicated":1225}},{"index":39,"name":null,"span":{"data":{"file_id":2,"beg":{"line":416,"col":21},"end":{"line":416,"col":68}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":40,"name":null,"span":{"data":{"file_id":2,"beg":{"line":416,"col":22},"end":{"line":416,"col":55}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":41,"name":null,"span":{"data":{"file_id":2,"beg":{"line":416,"col":22},"end":{"line":416,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":42,"name":null,"span":{"data":{"file_id":2,"beg":{"line":416,"col":22},"end":{"line":416,"col":31}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":43,"name":null,"span":{"data":{"file_id":2,"beg":{"line":416,"col":29},"end":{"line":416,"col":30}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":44,"name":null,"span":{"data":{"file_id":2,"beg":{"line":416,"col":34},"end":{"line":416,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":45,"name":null,"span":{"data":{"file_id":2,"beg":{"line":416,"col":41},"end":{"line":416,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":46,"name":null,"span":{"data":{"file_id":2,"beg":{"line":416,"col":46},"end":{"line":416,"col":55}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":47,"name":null,"span":{"data":{"file_id":2,"beg":{"line":416,"col":53},"end":{"line":416,"col":54}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":48,"name":null,"span":{"data":{"file_id":2,"beg":{"line":416,"col":58},"end":{"line":416,"col":67}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":49,"name":null,"span":{"data":{"file_id":2,"beg":{"line":416,"col":65},"end":{"line":416,"col":66}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":50,"name":null,"span":{"data":{"file_id":2,"beg":{"line":418,"col":11},"end":{"line":418,"col":55}},"generated_from_span":null},"ty":{"Deduplicated":1074}},{"index":51,"name":null,"span":{"data":{"file_id":2,"beg":{"line":418,"col":12},"end":{"line":418,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":52,"name":null,"span":{"data":{"file_id":2,"beg":{"line":418,"col":12},"end":{"line":418,"col":14}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":53,"name":null,"span":{"data":{"file_id":2,"beg":{"line":418,"col":17},"end":{"line":418,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":54,"name":null,"span":{"data":{"file_id":2,"beg":{"line":418,"col":23},"end":{"line":418,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":55,"name":null,"span":{"data":{"file_id":2,"beg":{"line":418,"col":23},"end":{"line":418,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":56,"name":null,"span":{"data":{"file_id":2,"beg":{"line":418,"col":28},"end":{"line":418,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":57,"name":null,"span":{"data":{"file_id":2,"beg":{"line":418,"col":34},"end":{"line":418,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":58,"name":null,"span":{"data":{"file_id":2,"beg":{"line":418,"col":34},"end":{"line":418,"col":36}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":59,"name":null,"span":{"data":{"file_id":2,"beg":{"line":418,"col":39},"end":{"line":418,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":60,"name":null,"span":{"data":{"file_id":2,"beg":{"line":418,"col":45},"end":{"line":418,"col":54}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":61,"name":null,"span":{"data":{"file_id":2,"beg":{"line":418,"col":45},"end":{"line":418,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":62,"name":null,"span":{"data":{"file_id":2,"beg":{"line":418,"col":50},"end":{"line":418,"col":54}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":63,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":64,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":65,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":66,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":67,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":68,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":69,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":70,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":71,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":72,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":73,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":74,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":75,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":76,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":77,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":78,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":79,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":80,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":81,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":82,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":83,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":84,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":85,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":86,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":409,"col":13},"end":{"line":419,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":409,"col":27},"end":{"line":409,"col":58}},"generated_from_span":null},"id":1814,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":409,"col":31},"end":{"line":409,"col":43}},"generated_from_span":null},"id":1815,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":409,"col":31},"end":{"line":409,"col":38}},"generated_from_span":null},"id":1816,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":409,"col":31},"end":{"line":409,"col":38}},"generated_from_span":null},"id":1817,"kind":{"Assign":[{"kind":{"Local":6},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":0,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":["Subtract `self` from `MODULUS` to negate. Ignore the final","borrow because it cannot underflow; self is guaranteed to","be in the field."]},{"span":{"data":{"file_id":2,"beg":{"line":409,"col":41},"end":{"line":409,"col":42}},"generated_from_span":null},"id":1818,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":409,"col":41},"end":{"line":409,"col":42}},"generated_from_span":null},"id":1819,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":409,"col":31},"end":{"line":409,"col":43}},"generated_from_span":null},"id":4285,"kind":{"StorageLive":63},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":409,"col":31},"end":{"line":409,"col":43}},"generated_from_span":null},"id":4286,"kind":{"Assign":[{"kind":{"Local":63},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":6},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":409,"col":31},"end":{"line":409,"col":43}},"generated_from_span":null},"id":4287,"kind":{"StorageLive":64},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":409,"col":31},"end":{"line":409,"col":43}},"generated_from_span":null},"id":4288,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":63},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":7},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":64},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":409,"col":31},"end":{"line":409,"col":43}},"generated_from_span":null},"id":1822,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":64},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":409,"col":45},"end":{"line":409,"col":54}},"generated_from_span":null},"id":1823,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":409,"col":52},"end":{"line":409,"col":53}},"generated_from_span":null},"id":1824,"kind":{"StorageLive":9},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":409,"col":52},"end":{"line":409,"col":53}},"generated_from_span":null},"id":1825,"kind":{"Assign":[{"kind":{"Local":9},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":409,"col":45},"end":{"line":409,"col":54}},"generated_from_span":null},"id":4289,"kind":{"StorageLive":65},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":409,"col":45},"end":{"line":409,"col":54}},"generated_from_span":null},"id":4290,"kind":{"Assign":[{"kind":{"Local":65},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":409,"col":45},"end":{"line":409,"col":54}},"generated_from_span":null},"id":4291,"kind":{"StorageLive":66},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":409,"col":45},"end":{"line":409,"col":54}},"generated_from_span":null},"id":4292,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":65},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":9},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":66},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":409,"col":45},"end":{"line":409,"col":54}},"generated_from_span":null},"id":1828,"kind":{"Assign":[{"kind":{"Local":8},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":66},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":409,"col":27},"end":{"line":409,"col":58}},"generated_from_span":null},"id":1829,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":213}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":5},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":8},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":4},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":409,"col":57},"end":{"line":409,"col":58}},"generated_from_span":null},"id":1830,"kind":{"StorageDead":8},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":409,"col":57},"end":{"line":409,"col":58}},"generated_from_span":null},"id":1831,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":409,"col":13},"end":{"line":409,"col":15}},"generated_from_span":null},"id":1832,"kind":{"StorageLive":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":409,"col":13},"end":{"line":409,"col":15}},"generated_from_span":null},"id":1833,"kind":{"Assign":[{"kind":{"Local":2},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":4},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":409,"col":17},"end":{"line":409,"col":23}},"generated_from_span":null},"id":1834,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":409,"col":17},"end":{"line":409,"col":23}},"generated_from_span":null},"id":1835,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":4},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":409,"col":58},"end":{"line":409,"col":59}},"generated_from_span":null},"id":1836,"kind":{"StorageDead":9},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":409,"col":58},"end":{"line":409,"col":59}},"generated_from_span":null},"id":1837,"kind":{"StorageDead":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":409,"col":58},"end":{"line":409,"col":59}},"generated_from_span":null},"id":1838,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":409,"col":58},"end":{"line":409,"col":59}},"generated_from_span":null},"id":1839,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":410,"col":27},"end":{"line":410,"col":63}},"generated_from_span":null},"id":1840,"kind":{"StorageLive":12},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":410,"col":31},"end":{"line":410,"col":43}},"generated_from_span":null},"id":1841,"kind":{"StorageLive":13},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":410,"col":31},"end":{"line":410,"col":38}},"generated_from_span":null},"id":1842,"kind":{"StorageLive":14},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":410,"col":31},"end":{"line":410,"col":38}},"generated_from_span":null},"id":1843,"kind":{"Assign":[{"kind":{"Local":14},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":0,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":410,"col":41},"end":{"line":410,"col":42}},"generated_from_span":null},"id":1844,"kind":{"StorageLive":15},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":410,"col":41},"end":{"line":410,"col":42}},"generated_from_span":null},"id":1845,"kind":{"Assign":[{"kind":{"Local":15},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":410,"col":31},"end":{"line":410,"col":43}},"generated_from_span":null},"id":4293,"kind":{"StorageLive":67},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":410,"col":31},"end":{"line":410,"col":43}},"generated_from_span":null},"id":4294,"kind":{"Assign":[{"kind":{"Local":67},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":14},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":410,"col":31},"end":{"line":410,"col":43}},"generated_from_span":null},"id":4295,"kind":{"StorageLive":68},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":410,"col":31},"end":{"line":410,"col":43}},"generated_from_span":null},"id":4296,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":67},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":15},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":68},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":410,"col":31},"end":{"line":410,"col":43}},"generated_from_span":null},"id":1848,"kind":{"Assign":[{"kind":{"Local":13},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":68},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":410,"col":45},"end":{"line":410,"col":54}},"generated_from_span":null},"id":1849,"kind":{"StorageLive":16},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":410,"col":52},"end":{"line":410,"col":53}},"generated_from_span":null},"id":1850,"kind":{"StorageLive":17},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":410,"col":52},"end":{"line":410,"col":53}},"generated_from_span":null},"id":1851,"kind":{"Assign":[{"kind":{"Local":17},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":410,"col":45},"end":{"line":410,"col":54}},"generated_from_span":null},"id":4297,"kind":{"StorageLive":69},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":410,"col":45},"end":{"line":410,"col":54}},"generated_from_span":null},"id":4298,"kind":{"Assign":[{"kind":{"Local":69},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":410,"col":45},"end":{"line":410,"col":54}},"generated_from_span":null},"id":4299,"kind":{"StorageLive":70},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":410,"col":45},"end":{"line":410,"col":54}},"generated_from_span":null},"id":4300,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":69},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":17},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":70},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":410,"col":45},"end":{"line":410,"col":54}},"generated_from_span":null},"id":1854,"kind":{"Assign":[{"kind":{"Local":16},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":70},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":410,"col":56},"end":{"line":410,"col":62}},"generated_from_span":null},"id":1855,"kind":{"StorageLive":18},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":410,"col":56},"end":{"line":410,"col":62}},"generated_from_span":null},"id":1856,"kind":{"Assign":[{"kind":{"Local":18},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":3},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":410,"col":27},"end":{"line":410,"col":63}},"generated_from_span":null},"id":1857,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":213}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":13},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":16},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":18},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":12},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":410,"col":62},"end":{"line":410,"col":63}},"generated_from_span":null},"id":1858,"kind":{"StorageDead":18},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":410,"col":62},"end":{"line":410,"col":63}},"generated_from_span":null},"id":1859,"kind":{"StorageDead":16},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":410,"col":62},"end":{"line":410,"col":63}},"generated_from_span":null},"id":1860,"kind":{"StorageDead":13},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":410,"col":13},"end":{"line":410,"col":15}},"generated_from_span":null},"id":1861,"kind":{"StorageLive":10},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":410,"col":13},"end":{"line":410,"col":15}},"generated_from_span":null},"id":1862,"kind":{"Assign":[{"kind":{"Local":10},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":12},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":410,"col":17},"end":{"line":410,"col":23}},"generated_from_span":null},"id":1863,"kind":{"StorageLive":11},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":410,"col":17},"end":{"line":410,"col":23}},"generated_from_span":null},"id":1864,"kind":{"Assign":[{"kind":{"Local":11},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":12},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":410,"col":63},"end":{"line":410,"col":64}},"generated_from_span":null},"id":1865,"kind":{"StorageDead":17},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":410,"col":63},"end":{"line":410,"col":64}},"generated_from_span":null},"id":1866,"kind":{"StorageDead":15},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":410,"col":63},"end":{"line":410,"col":64}},"generated_from_span":null},"id":1867,"kind":{"StorageDead":14},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":410,"col":63},"end":{"line":410,"col":64}},"generated_from_span":null},"id":1868,"kind":{"StorageDead":12},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":411,"col":27},"end":{"line":411,"col":63}},"generated_from_span":null},"id":1869,"kind":{"StorageLive":21},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":411,"col":31},"end":{"line":411,"col":43}},"generated_from_span":null},"id":1870,"kind":{"StorageLive":22},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":411,"col":31},"end":{"line":411,"col":38}},"generated_from_span":null},"id":1871,"kind":{"StorageLive":23},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":411,"col":31},"end":{"line":411,"col":38}},"generated_from_span":null},"id":1872,"kind":{"Assign":[{"kind":{"Local":23},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":0,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":411,"col":41},"end":{"line":411,"col":42}},"generated_from_span":null},"id":1873,"kind":{"StorageLive":24},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":411,"col":41},"end":{"line":411,"col":42}},"generated_from_span":null},"id":1874,"kind":{"Assign":[{"kind":{"Local":24},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":411,"col":31},"end":{"line":411,"col":43}},"generated_from_span":null},"id":4301,"kind":{"StorageLive":71},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":411,"col":31},"end":{"line":411,"col":43}},"generated_from_span":null},"id":4302,"kind":{"Assign":[{"kind":{"Local":71},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":23},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":411,"col":31},"end":{"line":411,"col":43}},"generated_from_span":null},"id":4303,"kind":{"StorageLive":72},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":411,"col":31},"end":{"line":411,"col":43}},"generated_from_span":null},"id":4304,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":71},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":24},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":72},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":411,"col":31},"end":{"line":411,"col":43}},"generated_from_span":null},"id":1877,"kind":{"Assign":[{"kind":{"Local":22},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":72},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":411,"col":45},"end":{"line":411,"col":54}},"generated_from_span":null},"id":1878,"kind":{"StorageLive":25},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":411,"col":52},"end":{"line":411,"col":53}},"generated_from_span":null},"id":1879,"kind":{"StorageLive":26},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":411,"col":52},"end":{"line":411,"col":53}},"generated_from_span":null},"id":1880,"kind":{"Assign":[{"kind":{"Local":26},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":411,"col":45},"end":{"line":411,"col":54}},"generated_from_span":null},"id":4305,"kind":{"StorageLive":73},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":411,"col":45},"end":{"line":411,"col":54}},"generated_from_span":null},"id":4306,"kind":{"Assign":[{"kind":{"Local":73},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":411,"col":45},"end":{"line":411,"col":54}},"generated_from_span":null},"id":4307,"kind":{"StorageLive":74},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":411,"col":45},"end":{"line":411,"col":54}},"generated_from_span":null},"id":4308,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":73},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":26},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":74},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":411,"col":45},"end":{"line":411,"col":54}},"generated_from_span":null},"id":1883,"kind":{"Assign":[{"kind":{"Local":25},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":74},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":411,"col":56},"end":{"line":411,"col":62}},"generated_from_span":null},"id":1884,"kind":{"StorageLive":27},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":411,"col":56},"end":{"line":411,"col":62}},"generated_from_span":null},"id":1885,"kind":{"Assign":[{"kind":{"Local":27},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":11},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":411,"col":27},"end":{"line":411,"col":63}},"generated_from_span":null},"id":1886,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":213}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":22},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":25},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":27},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":21},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":411,"col":62},"end":{"line":411,"col":63}},"generated_from_span":null},"id":1887,"kind":{"StorageDead":27},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":411,"col":62},"end":{"line":411,"col":63}},"generated_from_span":null},"id":1888,"kind":{"StorageDead":25},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":411,"col":62},"end":{"line":411,"col":63}},"generated_from_span":null},"id":1889,"kind":{"StorageDead":22},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":411,"col":13},"end":{"line":411,"col":15}},"generated_from_span":null},"id":1890,"kind":{"StorageLive":19},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":411,"col":13},"end":{"line":411,"col":15}},"generated_from_span":null},"id":1891,"kind":{"Assign":[{"kind":{"Local":19},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":21},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":411,"col":17},"end":{"line":411,"col":23}},"generated_from_span":null},"id":1892,"kind":{"StorageLive":20},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":411,"col":17},"end":{"line":411,"col":23}},"generated_from_span":null},"id":1893,"kind":{"Assign":[{"kind":{"Local":20},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":21},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":411,"col":63},"end":{"line":411,"col":64}},"generated_from_span":null},"id":1894,"kind":{"StorageDead":26},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":411,"col":63},"end":{"line":411,"col":64}},"generated_from_span":null},"id":1895,"kind":{"StorageDead":24},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":411,"col":63},"end":{"line":411,"col":64}},"generated_from_span":null},"id":1896,"kind":{"StorageDead":23},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":411,"col":63},"end":{"line":411,"col":64}},"generated_from_span":null},"id":1897,"kind":{"StorageDead":21},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":412,"col":22},"end":{"line":412,"col":58}},"generated_from_span":null},"id":1898,"kind":{"StorageLive":29},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":412,"col":26},"end":{"line":412,"col":38}},"generated_from_span":null},"id":1899,"kind":{"StorageLive":30},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":412,"col":26},"end":{"line":412,"col":33}},"generated_from_span":null},"id":1900,"kind":{"StorageLive":31},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":412,"col":26},"end":{"line":412,"col":33}},"generated_from_span":null},"id":1901,"kind":{"Assign":[{"kind":{"Local":31},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":0,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":412,"col":36},"end":{"line":412,"col":37}},"generated_from_span":null},"id":1902,"kind":{"StorageLive":32},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":412,"col":36},"end":{"line":412,"col":37}},"generated_from_span":null},"id":1903,"kind":{"Assign":[{"kind":{"Local":32},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":412,"col":26},"end":{"line":412,"col":38}},"generated_from_span":null},"id":4309,"kind":{"StorageLive":75},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":412,"col":26},"end":{"line":412,"col":38}},"generated_from_span":null},"id":4310,"kind":{"Assign":[{"kind":{"Local":75},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":31},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":412,"col":26},"end":{"line":412,"col":38}},"generated_from_span":null},"id":4311,"kind":{"StorageLive":76},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":412,"col":26},"end":{"line":412,"col":38}},"generated_from_span":null},"id":4312,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":75},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":32},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":76},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":412,"col":26},"end":{"line":412,"col":38}},"generated_from_span":null},"id":1906,"kind":{"Assign":[{"kind":{"Local":30},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":76},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":412,"col":40},"end":{"line":412,"col":49}},"generated_from_span":null},"id":1907,"kind":{"StorageLive":33},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":412,"col":47},"end":{"line":412,"col":48}},"generated_from_span":null},"id":1908,"kind":{"StorageLive":34},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":412,"col":47},"end":{"line":412,"col":48}},"generated_from_span":null},"id":1909,"kind":{"Assign":[{"kind":{"Local":34},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":412,"col":40},"end":{"line":412,"col":49}},"generated_from_span":null},"id":4313,"kind":{"StorageLive":77},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":412,"col":40},"end":{"line":412,"col":49}},"generated_from_span":null},"id":4314,"kind":{"Assign":[{"kind":{"Local":77},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":412,"col":40},"end":{"line":412,"col":49}},"generated_from_span":null},"id":4315,"kind":{"StorageLive":78},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":412,"col":40},"end":{"line":412,"col":49}},"generated_from_span":null},"id":4316,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":77},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":34},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":78},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":412,"col":40},"end":{"line":412,"col":49}},"generated_from_span":null},"id":1912,"kind":{"Assign":[{"kind":{"Local":33},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":78},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":412,"col":51},"end":{"line":412,"col":57}},"generated_from_span":null},"id":1913,"kind":{"StorageLive":35},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":412,"col":51},"end":{"line":412,"col":57}},"generated_from_span":null},"id":1914,"kind":{"Assign":[{"kind":{"Local":35},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":20},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":412,"col":22},"end":{"line":412,"col":58}},"generated_from_span":null},"id":1915,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":213}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":30},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":33},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":35},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":29},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":412,"col":57},"end":{"line":412,"col":58}},"generated_from_span":null},"id":1916,"kind":{"StorageDead":35},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":412,"col":57},"end":{"line":412,"col":58}},"generated_from_span":null},"id":1917,"kind":{"StorageDead":33},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":412,"col":57},"end":{"line":412,"col":58}},"generated_from_span":null},"id":1918,"kind":{"StorageDead":30},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":412,"col":13},"end":{"line":412,"col":15}},"generated_from_span":null},"id":1919,"kind":{"StorageLive":28},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":412,"col":13},"end":{"line":412,"col":15}},"generated_from_span":null},"id":1920,"kind":{"Assign":[{"kind":{"Local":28},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":29},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":412,"col":58},"end":{"line":412,"col":59}},"generated_from_span":null},"id":1921,"kind":{"StorageDead":34},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":412,"col":58},"end":{"line":412,"col":59}},"generated_from_span":null},"id":1922,"kind":{"StorageDead":32},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":412,"col":58},"end":{"line":412,"col":59}},"generated_from_span":null},"id":1923,"kind":{"StorageDead":31},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":412,"col":58},"end":{"line":412,"col":59}},"generated_from_span":null},"id":1924,"kind":{"StorageDead":29},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":12},"end":{"line":416,"col":16}},"generated_from_span":null},"id":1925,"kind":{"StorageLive":36},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":19},"end":{"line":416,"col":82}},"generated_from_span":null},"id":1926,"kind":{"StorageLive":37},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":20},"end":{"line":416,"col":74}},"generated_from_span":null},"id":1927,"kind":{"StorageLive":38},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":21},"end":{"line":416,"col":68}},"generated_from_span":null},"id":1928,"kind":{"StorageLive":39},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":22},"end":{"line":416,"col":55}},"generated_from_span":null},"id":1929,"kind":{"StorageLive":40},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":22},"end":{"line":416,"col":43}},"generated_from_span":null},"id":1930,"kind":{"StorageLive":41},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":22},"end":{"line":416,"col":31}},"generated_from_span":null},"id":1931,"kind":{"StorageLive":42},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":29},"end":{"line":416,"col":30}},"generated_from_span":null},"id":1932,"kind":{"StorageLive":43},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":29},"end":{"line":416,"col":30}},"generated_from_span":null},"id":1933,"kind":{"Assign":[{"kind":{"Local":43},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":["`tmp` could be `MODULUS` if `self` was zero. Create a mask that is","zero if `self` was zero, and `u64::max_value()` if self was nonzero."]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":22},"end":{"line":416,"col":31}},"generated_from_span":null},"id":4317,"kind":{"StorageLive":79},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":22},"end":{"line":416,"col":31}},"generated_from_span":null},"id":4318,"kind":{"Assign":[{"kind":{"Local":79},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":22},"end":{"line":416,"col":31}},"generated_from_span":null},"id":4319,"kind":{"StorageLive":80},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":22},"end":{"line":416,"col":31}},"generated_from_span":null},"id":4320,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":79},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":43},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":80},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":22},"end":{"line":416,"col":31}},"generated_from_span":null},"id":1936,"kind":{"Assign":[{"kind":{"Local":42},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":80},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":34},"end":{"line":416,"col":43}},"generated_from_span":null},"id":1937,"kind":{"StorageLive":44},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":41},"end":{"line":416,"col":42}},"generated_from_span":null},"id":1938,"kind":{"StorageLive":45},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":41},"end":{"line":416,"col":42}},"generated_from_span":null},"id":1939,"kind":{"Assign":[{"kind":{"Local":45},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":34},"end":{"line":416,"col":43}},"generated_from_span":null},"id":4321,"kind":{"StorageLive":81},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":34},"end":{"line":416,"col":43}},"generated_from_span":null},"id":4322,"kind":{"Assign":[{"kind":{"Local":81},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":34},"end":{"line":416,"col":43}},"generated_from_span":null},"id":4323,"kind":{"StorageLive":82},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":34},"end":{"line":416,"col":43}},"generated_from_span":null},"id":4324,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":81},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":45},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":82},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":34},"end":{"line":416,"col":43}},"generated_from_span":null},"id":1942,"kind":{"Assign":[{"kind":{"Local":44},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":82},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":22},"end":{"line":416,"col":43}},"generated_from_span":null},"id":1943,"kind":{"Assign":[{"kind":{"Local":41},"ty":{"Deduplicated":1072}},{"BinaryOp":["BitOr",{"Move":{"kind":{"Local":42},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":44},"ty":{"Deduplicated":1072}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":42},"end":{"line":416,"col":43}},"generated_from_span":null},"id":1944,"kind":{"StorageDead":44},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":42},"end":{"line":416,"col":43}},"generated_from_span":null},"id":1945,"kind":{"StorageDead":42},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":46},"end":{"line":416,"col":55}},"generated_from_span":null},"id":1946,"kind":{"StorageLive":46},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":53},"end":{"line":416,"col":54}},"generated_from_span":null},"id":1947,"kind":{"StorageLive":47},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":53},"end":{"line":416,"col":54}},"generated_from_span":null},"id":1948,"kind":{"Assign":[{"kind":{"Local":47},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":46},"end":{"line":416,"col":55}},"generated_from_span":null},"id":4325,"kind":{"StorageLive":83},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":46},"end":{"line":416,"col":55}},"generated_from_span":null},"id":4326,"kind":{"Assign":[{"kind":{"Local":83},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":46},"end":{"line":416,"col":55}},"generated_from_span":null},"id":4327,"kind":{"StorageLive":84},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":46},"end":{"line":416,"col":55}},"generated_from_span":null},"id":4328,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":83},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":47},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":84},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":46},"end":{"line":416,"col":55}},"generated_from_span":null},"id":1951,"kind":{"Assign":[{"kind":{"Local":46},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":84},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":22},"end":{"line":416,"col":55}},"generated_from_span":null},"id":1952,"kind":{"Assign":[{"kind":{"Local":40},"ty":{"Deduplicated":1072}},{"BinaryOp":["BitOr",{"Move":{"kind":{"Local":41},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":46},"ty":{"Deduplicated":1072}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":54},"end":{"line":416,"col":55}},"generated_from_span":null},"id":1953,"kind":{"StorageDead":46},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":54},"end":{"line":416,"col":55}},"generated_from_span":null},"id":1954,"kind":{"StorageDead":41},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":58},"end":{"line":416,"col":67}},"generated_from_span":null},"id":1955,"kind":{"StorageLive":48},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":65},"end":{"line":416,"col":66}},"generated_from_span":null},"id":1956,"kind":{"StorageLive":49},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":65},"end":{"line":416,"col":66}},"generated_from_span":null},"id":1957,"kind":{"Assign":[{"kind":{"Local":49},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":58},"end":{"line":416,"col":67}},"generated_from_span":null},"id":4329,"kind":{"StorageLive":85},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":58},"end":{"line":416,"col":67}},"generated_from_span":null},"id":4330,"kind":{"Assign":[{"kind":{"Local":85},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":58},"end":{"line":416,"col":67}},"generated_from_span":null},"id":4331,"kind":{"StorageLive":86},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":58},"end":{"line":416,"col":67}},"generated_from_span":null},"id":4332,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":85},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":49},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":86},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":58},"end":{"line":416,"col":67}},"generated_from_span":null},"id":1960,"kind":{"Assign":[{"kind":{"Local":48},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":86},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":21},"end":{"line":416,"col":68}},"generated_from_span":null},"id":1961,"kind":{"Assign":[{"kind":{"Local":39},"ty":{"Deduplicated":1072}},{"BinaryOp":["BitOr",{"Move":{"kind":{"Local":40},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":48},"ty":{"Deduplicated":1072}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":67},"end":{"line":416,"col":68}},"generated_from_span":null},"id":1962,"kind":{"StorageDead":48},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":67},"end":{"line":416,"col":68}},"generated_from_span":null},"id":1963,"kind":{"StorageDead":40},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":20},"end":{"line":416,"col":74}},"generated_from_span":null},"id":1964,"kind":{"Assign":[{"kind":{"Local":38},"ty":{"Deduplicated":1225}},{"BinaryOp":["Eq",{"Move":{"kind":{"Local":39},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":73},"end":{"line":416,"col":74}},"generated_from_span":null},"id":1965,"kind":{"StorageDead":39},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":19},"end":{"line":416,"col":82}},"generated_from_span":null},"id":1966,"kind":{"Assign":[{"kind":{"Local":37},"ty":{"Deduplicated":1072}},{"UnaryOp":[{"Cast":{"Scalar":["Bool",{"UInt":"U64"}]}},{"Move":{"kind":{"Local":38},"ty":{"Deduplicated":1225}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":81},"end":{"line":416,"col":82}},"generated_from_span":null},"id":1967,"kind":{"StorageDead":38},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":19},"end":{"line":416,"col":98}},"generated_from_span":null},"id":1968,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":214}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":37},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","1"]}}},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":36},"ty":{"Deduplicated":1072}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":97},"end":{"line":416,"col":98}},"generated_from_span":null},"id":1969,"kind":{"StorageDead":37},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":98},"end":{"line":416,"col":99}},"generated_from_span":null},"id":1970,"kind":{"StorageDead":49},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":98},"end":{"line":416,"col":99}},"generated_from_span":null},"id":1971,"kind":{"StorageDead":47},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":98},"end":{"line":416,"col":99}},"generated_from_span":null},"id":1972,"kind":{"StorageDead":45},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":416,"col":98},"end":{"line":416,"col":99}},"generated_from_span":null},"id":1973,"kind":{"StorageDead":43},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":11},"end":{"line":418,"col":55}},"generated_from_span":null},"id":1974,"kind":{"StorageLive":50},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":12},"end":{"line":418,"col":21}},"generated_from_span":null},"id":1975,"kind":{"StorageLive":51},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":12},"end":{"line":418,"col":14}},"generated_from_span":null},"id":1976,"kind":{"StorageLive":52},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":12},"end":{"line":418,"col":14}},"generated_from_span":null},"id":1977,"kind":{"Assign":[{"kind":{"Local":52},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":2},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":17},"end":{"line":418,"col":21}},"generated_from_span":null},"id":1978,"kind":{"StorageLive":53},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":17},"end":{"line":418,"col":21}},"generated_from_span":null},"id":1979,"kind":{"Assign":[{"kind":{"Local":53},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":36},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":12},"end":{"line":418,"col":21}},"generated_from_span":null},"id":1980,"kind":{"Assign":[{"kind":{"Local":51},"ty":{"Deduplicated":1072}},{"BinaryOp":["BitAnd",{"Move":{"kind":{"Local":52},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":53},"ty":{"Deduplicated":1072}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":20},"end":{"line":418,"col":21}},"generated_from_span":null},"id":1981,"kind":{"StorageDead":53},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":20},"end":{"line":418,"col":21}},"generated_from_span":null},"id":1982,"kind":{"StorageDead":52},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":23},"end":{"line":418,"col":32}},"generated_from_span":null},"id":1983,"kind":{"StorageLive":54},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":23},"end":{"line":418,"col":25}},"generated_from_span":null},"id":1984,"kind":{"StorageLive":55},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":23},"end":{"line":418,"col":25}},"generated_from_span":null},"id":1985,"kind":{"Assign":[{"kind":{"Local":55},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":10},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":28},"end":{"line":418,"col":32}},"generated_from_span":null},"id":1986,"kind":{"StorageLive":56},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":28},"end":{"line":418,"col":32}},"generated_from_span":null},"id":1987,"kind":{"Assign":[{"kind":{"Local":56},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":36},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":23},"end":{"line":418,"col":32}},"generated_from_span":null},"id":1988,"kind":{"Assign":[{"kind":{"Local":54},"ty":{"Deduplicated":1072}},{"BinaryOp":["BitAnd",{"Move":{"kind":{"Local":55},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":56},"ty":{"Deduplicated":1072}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":31},"end":{"line":418,"col":32}},"generated_from_span":null},"id":1989,"kind":{"StorageDead":56},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":31},"end":{"line":418,"col":32}},"generated_from_span":null},"id":1990,"kind":{"StorageDead":55},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":34},"end":{"line":418,"col":43}},"generated_from_span":null},"id":1991,"kind":{"StorageLive":57},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":34},"end":{"line":418,"col":36}},"generated_from_span":null},"id":1992,"kind":{"StorageLive":58},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":34},"end":{"line":418,"col":36}},"generated_from_span":null},"id":1993,"kind":{"Assign":[{"kind":{"Local":58},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":19},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":39},"end":{"line":418,"col":43}},"generated_from_span":null},"id":1994,"kind":{"StorageLive":59},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":39},"end":{"line":418,"col":43}},"generated_from_span":null},"id":1995,"kind":{"Assign":[{"kind":{"Local":59},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":36},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":34},"end":{"line":418,"col":43}},"generated_from_span":null},"id":1996,"kind":{"Assign":[{"kind":{"Local":57},"ty":{"Deduplicated":1072}},{"BinaryOp":["BitAnd",{"Move":{"kind":{"Local":58},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":59},"ty":{"Deduplicated":1072}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":42},"end":{"line":418,"col":43}},"generated_from_span":null},"id":1997,"kind":{"StorageDead":59},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":42},"end":{"line":418,"col":43}},"generated_from_span":null},"id":1998,"kind":{"StorageDead":58},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":45},"end":{"line":418,"col":54}},"generated_from_span":null},"id":1999,"kind":{"StorageLive":60},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":45},"end":{"line":418,"col":47}},"generated_from_span":null},"id":2000,"kind":{"StorageLive":61},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":45},"end":{"line":418,"col":47}},"generated_from_span":null},"id":2001,"kind":{"Assign":[{"kind":{"Local":61},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":28},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":50},"end":{"line":418,"col":54}},"generated_from_span":null},"id":2002,"kind":{"StorageLive":62},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":50},"end":{"line":418,"col":54}},"generated_from_span":null},"id":2003,"kind":{"Assign":[{"kind":{"Local":62},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":36},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":45},"end":{"line":418,"col":54}},"generated_from_span":null},"id":2004,"kind":{"Assign":[{"kind":{"Local":60},"ty":{"Deduplicated":1072}},{"BinaryOp":["BitAnd",{"Move":{"kind":{"Local":61},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":62},"ty":{"Deduplicated":1072}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":53},"end":{"line":418,"col":54}},"generated_from_span":null},"id":2005,"kind":{"StorageDead":62},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":53},"end":{"line":418,"col":54}},"generated_from_span":null},"id":2006,"kind":{"StorageDead":61},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":11},"end":{"line":418,"col":55}},"generated_from_span":null},"id":2007,"kind":{"Assign":[{"kind":{"Local":50},"ty":{"Deduplicated":1074}},{"Aggregate":[{"Array":[{"Deduplicated":1072},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}]},[{"Move":{"kind":{"Local":51},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":54},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":57},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":60},"ty":{"Deduplicated":1072}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":54},"end":{"line":418,"col":55}},"generated_from_span":null},"id":2008,"kind":{"StorageDead":60},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":54},"end":{"line":418,"col":55}},"generated_from_span":null},"id":2009,"kind":{"StorageDead":57},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":54},"end":{"line":418,"col":55}},"generated_from_span":null},"id":2010,"kind":{"StorageDead":54},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":54},"end":{"line":418,"col":55}},"generated_from_span":null},"id":2011,"kind":{"StorageDead":51},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":8},"end":{"line":418,"col":56}},"generated_from_span":null},"id":2012,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1079}},{"Aggregate":[{"Adt":[{"id":{"Adt":0},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[{"Move":{"kind":{"Local":50},"ty":{"Deduplicated":1074}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":418,"col":55},"end":{"line":418,"col":56}},"generated_from_span":null},"id":2013,"kind":{"StorageDead":50},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":419,"col":4},"end":{"line":419,"col":5}},"generated_from_span":null},"id":2014,"kind":{"StorageDead":36},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":419,"col":4},"end":{"line":419,"col":5}},"generated_from_span":null},"id":2015,"kind":{"StorageDead":28},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":419,"col":4},"end":{"line":419,"col":5}},"generated_from_span":null},"id":2016,"kind":{"StorageDead":20},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":419,"col":4},"end":{"line":419,"col":5}},"generated_from_span":null},"id":2017,"kind":{"StorageDead":19},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":419,"col":4},"end":{"line":419,"col":5}},"generated_from_span":null},"id":2018,"kind":{"StorageDead":11},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":419,"col":4},"end":{"line":419,"col":5}},"generated_from_span":null},"id":2019,"kind":{"StorageDead":10},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":419,"col":4},"end":{"line":419,"col":5}},"generated_from_span":null},"id":2020,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":419,"col":4},"end":{"line":419,"col":5}},"generated_from_span":null},"id":2021,"kind":{"StorageDead":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":419,"col":5},"end":{"line":419,"col":5}},"generated_from_span":null},"id":2022,"kind":"Return","comments_before":[]}]},"comments":[[409,["Subtract `self` from `MODULUS` to negate. Ignore the final","borrow because it cannot underflow; self is guaranteed to","be in the field."]],[416,["`tmp` could be `MODULUS` if `self` was zero. Create a mask that is","zero if `self` was zero, and `u64::max_value()` if self was nonzero."]]]}}},{"def_id":78,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":1079},"kind":"InherentImplBlock"}}},{"Ident":["mul_unreduced",0]}],"span":{"data":{"file_id":2,"beg":{"line":423,"col":4},"end":{"line":447,"col":5}},"generated_from_span":null},"source_text":"pub(crate) const fn mul_unreduced(&self, rhs: &Self) -> [u64; 8] {\n // Schoolbook multiplication\n\n let (r0, carry) = mac(0, self.0[0], rhs.0[0], 0);\n let (r1, carry) = mac(0, self.0[0], rhs.0[1], carry);\n let (r2, carry) = mac(0, self.0[0], rhs.0[2], carry);\n let (r3, r4) = mac(0, self.0[0], rhs.0[3], carry);\n\n let (r1, carry) = mac(r1, self.0[1], rhs.0[0], 0);\n let (r2, carry) = mac(r2, self.0[1], rhs.0[1], carry);\n let (r3, carry) = mac(r3, self.0[1], rhs.0[2], carry);\n let (r4, r5) = mac(r4, self.0[1], rhs.0[3], carry);\n\n let (r2, carry) = mac(r2, self.0[2], rhs.0[0], 0);\n let (r3, carry) = mac(r3, self.0[2], rhs.0[1], carry);\n let (r4, carry) = mac(r4, self.0[2], rhs.0[2], carry);\n let (r5, r6) = mac(r5, self.0[2], rhs.0[3], carry);\n\n let (r3, carry) = mac(r3, self.0[3], rhs.0[0], 0);\n let (r4, carry) = mac(r4, self.0[3], rhs.0[1], carry);\n let (r5, carry) = mac(r5, self.0[3], rhs.0[2], carry);\n let (r6, r7) = mac(r6, self.0[3], rhs.0[3], carry);\n\n [r0, r1, r2, r3, r4, r5, r6, r7]\n }","attr_info":{"attributes":[{"DocComment":" Multiplies `rhs` by `self`, returning the unreduced 512-bit product."}],"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":8297},{"Deduplicated":8298}],"output":{"Deduplicated":4585}},"src":"TopLevel","is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":423,"col":4},"end":{"line":447,"col":5}},"generated_from_span":null},"bound_body_regions":3,"locals":{"arg_count":2,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":423,"col":60},"end":{"line":423,"col":68}},"generated_from_span":null},"ty":{"Deduplicated":4585}},{"index":1,"name":"self","span":{"data":{"file_id":2,"beg":{"line":423,"col":38},"end":{"line":423,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":2302}},{"index":2,"name":"rhs","span":{"data":{"file_id":2,"beg":{"line":423,"col":45},"end":{"line":423,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":2355}},{"index":3,"name":"r0","span":{"data":{"file_id":2,"beg":{"line":426,"col":13},"end":{"line":426,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":4,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":426,"col":17},"end":{"line":426,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":5,"name":null,"span":{"data":{"file_id":2,"beg":{"line":426,"col":26},"end":{"line":426,"col":56}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":6,"name":null,"span":{"data":{"file_id":2,"beg":{"line":426,"col":33},"end":{"line":426,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":7,"name":null,"span":{"data":{"file_id":2,"beg":{"line":426,"col":40},"end":{"line":426,"col":41}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":8,"name":null,"span":{"data":{"file_id":2,"beg":{"line":426,"col":44},"end":{"line":426,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":9,"name":null,"span":{"data":{"file_id":2,"beg":{"line":426,"col":50},"end":{"line":426,"col":51}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":10,"name":"r1","span":{"data":{"file_id":2,"beg":{"line":427,"col":13},"end":{"line":427,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":11,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":427,"col":17},"end":{"line":427,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":12,"name":null,"span":{"data":{"file_id":2,"beg":{"line":427,"col":26},"end":{"line":427,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":13,"name":null,"span":{"data":{"file_id":2,"beg":{"line":427,"col":33},"end":{"line":427,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":14,"name":null,"span":{"data":{"file_id":2,"beg":{"line":427,"col":40},"end":{"line":427,"col":41}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":15,"name":null,"span":{"data":{"file_id":2,"beg":{"line":427,"col":44},"end":{"line":427,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":16,"name":null,"span":{"data":{"file_id":2,"beg":{"line":427,"col":50},"end":{"line":427,"col":51}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":17,"name":null,"span":{"data":{"file_id":2,"beg":{"line":427,"col":54},"end":{"line":427,"col":59}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":18,"name":"r2","span":{"data":{"file_id":2,"beg":{"line":428,"col":13},"end":{"line":428,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":19,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":428,"col":17},"end":{"line":428,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":20,"name":null,"span":{"data":{"file_id":2,"beg":{"line":428,"col":26},"end":{"line":428,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":21,"name":null,"span":{"data":{"file_id":2,"beg":{"line":428,"col":33},"end":{"line":428,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":22,"name":null,"span":{"data":{"file_id":2,"beg":{"line":428,"col":40},"end":{"line":428,"col":41}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":23,"name":null,"span":{"data":{"file_id":2,"beg":{"line":428,"col":44},"end":{"line":428,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":24,"name":null,"span":{"data":{"file_id":2,"beg":{"line":428,"col":50},"end":{"line":428,"col":51}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":25,"name":null,"span":{"data":{"file_id":2,"beg":{"line":428,"col":54},"end":{"line":428,"col":59}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":26,"name":"r3","span":{"data":{"file_id":2,"beg":{"line":429,"col":13},"end":{"line":429,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":27,"name":"r4","span":{"data":{"file_id":2,"beg":{"line":429,"col":17},"end":{"line":429,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":28,"name":null,"span":{"data":{"file_id":2,"beg":{"line":429,"col":23},"end":{"line":429,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":29,"name":null,"span":{"data":{"file_id":2,"beg":{"line":429,"col":30},"end":{"line":429,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":30,"name":null,"span":{"data":{"file_id":2,"beg":{"line":429,"col":37},"end":{"line":429,"col":38}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":31,"name":null,"span":{"data":{"file_id":2,"beg":{"line":429,"col":41},"end":{"line":429,"col":49}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":32,"name":null,"span":{"data":{"file_id":2,"beg":{"line":429,"col":47},"end":{"line":429,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":33,"name":null,"span":{"data":{"file_id":2,"beg":{"line":429,"col":51},"end":{"line":429,"col":56}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":34,"name":"r1","span":{"data":{"file_id":2,"beg":{"line":431,"col":13},"end":{"line":431,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":35,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":431,"col":17},"end":{"line":431,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":36,"name":null,"span":{"data":{"file_id":2,"beg":{"line":431,"col":26},"end":{"line":431,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":37,"name":null,"span":{"data":{"file_id":2,"beg":{"line":431,"col":30},"end":{"line":431,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":38,"name":null,"span":{"data":{"file_id":2,"beg":{"line":431,"col":34},"end":{"line":431,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":39,"name":null,"span":{"data":{"file_id":2,"beg":{"line":431,"col":41},"end":{"line":431,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":40,"name":null,"span":{"data":{"file_id":2,"beg":{"line":431,"col":45},"end":{"line":431,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":41,"name":null,"span":{"data":{"file_id":2,"beg":{"line":431,"col":51},"end":{"line":431,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":42,"name":"r2","span":{"data":{"file_id":2,"beg":{"line":432,"col":13},"end":{"line":432,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":43,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":432,"col":17},"end":{"line":432,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":44,"name":null,"span":{"data":{"file_id":2,"beg":{"line":432,"col":26},"end":{"line":432,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":45,"name":null,"span":{"data":{"file_id":2,"beg":{"line":432,"col":30},"end":{"line":432,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":46,"name":null,"span":{"data":{"file_id":2,"beg":{"line":432,"col":34},"end":{"line":432,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":47,"name":null,"span":{"data":{"file_id":2,"beg":{"line":432,"col":41},"end":{"line":432,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":48,"name":null,"span":{"data":{"file_id":2,"beg":{"line":432,"col":45},"end":{"line":432,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":49,"name":null,"span":{"data":{"file_id":2,"beg":{"line":432,"col":51},"end":{"line":432,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":50,"name":null,"span":{"data":{"file_id":2,"beg":{"line":432,"col":55},"end":{"line":432,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":51,"name":"r3","span":{"data":{"file_id":2,"beg":{"line":433,"col":13},"end":{"line":433,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":52,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":433,"col":17},"end":{"line":433,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":53,"name":null,"span":{"data":{"file_id":2,"beg":{"line":433,"col":26},"end":{"line":433,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":54,"name":null,"span":{"data":{"file_id":2,"beg":{"line":433,"col":30},"end":{"line":433,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":55,"name":null,"span":{"data":{"file_id":2,"beg":{"line":433,"col":34},"end":{"line":433,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":56,"name":null,"span":{"data":{"file_id":2,"beg":{"line":433,"col":41},"end":{"line":433,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":57,"name":null,"span":{"data":{"file_id":2,"beg":{"line":433,"col":45},"end":{"line":433,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":58,"name":null,"span":{"data":{"file_id":2,"beg":{"line":433,"col":51},"end":{"line":433,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":59,"name":null,"span":{"data":{"file_id":2,"beg":{"line":433,"col":55},"end":{"line":433,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":60,"name":"r4","span":{"data":{"file_id":2,"beg":{"line":434,"col":13},"end":{"line":434,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":61,"name":"r5","span":{"data":{"file_id":2,"beg":{"line":434,"col":17},"end":{"line":434,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":62,"name":null,"span":{"data":{"file_id":2,"beg":{"line":434,"col":23},"end":{"line":434,"col":58}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":63,"name":null,"span":{"data":{"file_id":2,"beg":{"line":434,"col":27},"end":{"line":434,"col":29}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":64,"name":null,"span":{"data":{"file_id":2,"beg":{"line":434,"col":31},"end":{"line":434,"col":40}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":65,"name":null,"span":{"data":{"file_id":2,"beg":{"line":434,"col":38},"end":{"line":434,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":66,"name":null,"span":{"data":{"file_id":2,"beg":{"line":434,"col":42},"end":{"line":434,"col":50}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":67,"name":null,"span":{"data":{"file_id":2,"beg":{"line":434,"col":48},"end":{"line":434,"col":49}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":68,"name":null,"span":{"data":{"file_id":2,"beg":{"line":434,"col":52},"end":{"line":434,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":69,"name":"r2","span":{"data":{"file_id":2,"beg":{"line":436,"col":13},"end":{"line":436,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":70,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":436,"col":17},"end":{"line":436,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":71,"name":null,"span":{"data":{"file_id":2,"beg":{"line":436,"col":26},"end":{"line":436,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":72,"name":null,"span":{"data":{"file_id":2,"beg":{"line":436,"col":30},"end":{"line":436,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":73,"name":null,"span":{"data":{"file_id":2,"beg":{"line":436,"col":34},"end":{"line":436,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":74,"name":null,"span":{"data":{"file_id":2,"beg":{"line":436,"col":41},"end":{"line":436,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":75,"name":null,"span":{"data":{"file_id":2,"beg":{"line":436,"col":45},"end":{"line":436,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":76,"name":null,"span":{"data":{"file_id":2,"beg":{"line":436,"col":51},"end":{"line":436,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":77,"name":"r3","span":{"data":{"file_id":2,"beg":{"line":437,"col":13},"end":{"line":437,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":78,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":437,"col":17},"end":{"line":437,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":79,"name":null,"span":{"data":{"file_id":2,"beg":{"line":437,"col":26},"end":{"line":437,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":80,"name":null,"span":{"data":{"file_id":2,"beg":{"line":437,"col":30},"end":{"line":437,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":81,"name":null,"span":{"data":{"file_id":2,"beg":{"line":437,"col":34},"end":{"line":437,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":82,"name":null,"span":{"data":{"file_id":2,"beg":{"line":437,"col":41},"end":{"line":437,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":83,"name":null,"span":{"data":{"file_id":2,"beg":{"line":437,"col":45},"end":{"line":437,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":84,"name":null,"span":{"data":{"file_id":2,"beg":{"line":437,"col":51},"end":{"line":437,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":85,"name":null,"span":{"data":{"file_id":2,"beg":{"line":437,"col":55},"end":{"line":437,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":86,"name":"r4","span":{"data":{"file_id":2,"beg":{"line":438,"col":13},"end":{"line":438,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":87,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":438,"col":17},"end":{"line":438,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":88,"name":null,"span":{"data":{"file_id":2,"beg":{"line":438,"col":26},"end":{"line":438,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":89,"name":null,"span":{"data":{"file_id":2,"beg":{"line":438,"col":30},"end":{"line":438,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":90,"name":null,"span":{"data":{"file_id":2,"beg":{"line":438,"col":34},"end":{"line":438,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":91,"name":null,"span":{"data":{"file_id":2,"beg":{"line":438,"col":41},"end":{"line":438,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":92,"name":null,"span":{"data":{"file_id":2,"beg":{"line":438,"col":45},"end":{"line":438,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":93,"name":null,"span":{"data":{"file_id":2,"beg":{"line":438,"col":51},"end":{"line":438,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":94,"name":null,"span":{"data":{"file_id":2,"beg":{"line":438,"col":55},"end":{"line":438,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":95,"name":"r5","span":{"data":{"file_id":2,"beg":{"line":439,"col":13},"end":{"line":439,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":96,"name":"r6","span":{"data":{"file_id":2,"beg":{"line":439,"col":17},"end":{"line":439,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":97,"name":null,"span":{"data":{"file_id":2,"beg":{"line":439,"col":23},"end":{"line":439,"col":58}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":98,"name":null,"span":{"data":{"file_id":2,"beg":{"line":439,"col":27},"end":{"line":439,"col":29}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":99,"name":null,"span":{"data":{"file_id":2,"beg":{"line":439,"col":31},"end":{"line":439,"col":40}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":100,"name":null,"span":{"data":{"file_id":2,"beg":{"line":439,"col":38},"end":{"line":439,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":101,"name":null,"span":{"data":{"file_id":2,"beg":{"line":439,"col":42},"end":{"line":439,"col":50}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":102,"name":null,"span":{"data":{"file_id":2,"beg":{"line":439,"col":48},"end":{"line":439,"col":49}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":103,"name":null,"span":{"data":{"file_id":2,"beg":{"line":439,"col":52},"end":{"line":439,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":104,"name":"r3","span":{"data":{"file_id":2,"beg":{"line":441,"col":13},"end":{"line":441,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":105,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":441,"col":17},"end":{"line":441,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":106,"name":null,"span":{"data":{"file_id":2,"beg":{"line":441,"col":26},"end":{"line":441,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":107,"name":null,"span":{"data":{"file_id":2,"beg":{"line":441,"col":30},"end":{"line":441,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":108,"name":null,"span":{"data":{"file_id":2,"beg":{"line":441,"col":34},"end":{"line":441,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":109,"name":null,"span":{"data":{"file_id":2,"beg":{"line":441,"col":41},"end":{"line":441,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":110,"name":null,"span":{"data":{"file_id":2,"beg":{"line":441,"col":45},"end":{"line":441,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":111,"name":null,"span":{"data":{"file_id":2,"beg":{"line":441,"col":51},"end":{"line":441,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":112,"name":"r4","span":{"data":{"file_id":2,"beg":{"line":442,"col":13},"end":{"line":442,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":113,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":442,"col":17},"end":{"line":442,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":114,"name":null,"span":{"data":{"file_id":2,"beg":{"line":442,"col":26},"end":{"line":442,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":115,"name":null,"span":{"data":{"file_id":2,"beg":{"line":442,"col":30},"end":{"line":442,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":116,"name":null,"span":{"data":{"file_id":2,"beg":{"line":442,"col":34},"end":{"line":442,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":117,"name":null,"span":{"data":{"file_id":2,"beg":{"line":442,"col":41},"end":{"line":442,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":118,"name":null,"span":{"data":{"file_id":2,"beg":{"line":442,"col":45},"end":{"line":442,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":119,"name":null,"span":{"data":{"file_id":2,"beg":{"line":442,"col":51},"end":{"line":442,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":120,"name":null,"span":{"data":{"file_id":2,"beg":{"line":442,"col":55},"end":{"line":442,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":121,"name":"r5","span":{"data":{"file_id":2,"beg":{"line":443,"col":13},"end":{"line":443,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":122,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":443,"col":17},"end":{"line":443,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":123,"name":null,"span":{"data":{"file_id":2,"beg":{"line":443,"col":26},"end":{"line":443,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":124,"name":null,"span":{"data":{"file_id":2,"beg":{"line":443,"col":30},"end":{"line":443,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":125,"name":null,"span":{"data":{"file_id":2,"beg":{"line":443,"col":34},"end":{"line":443,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":126,"name":null,"span":{"data":{"file_id":2,"beg":{"line":443,"col":41},"end":{"line":443,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":127,"name":null,"span":{"data":{"file_id":2,"beg":{"line":443,"col":45},"end":{"line":443,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":128,"name":null,"span":{"data":{"file_id":2,"beg":{"line":443,"col":51},"end":{"line":443,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":129,"name":null,"span":{"data":{"file_id":2,"beg":{"line":443,"col":55},"end":{"line":443,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":130,"name":"r6","span":{"data":{"file_id":2,"beg":{"line":444,"col":13},"end":{"line":444,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":131,"name":"r7","span":{"data":{"file_id":2,"beg":{"line":444,"col":17},"end":{"line":444,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":132,"name":null,"span":{"data":{"file_id":2,"beg":{"line":444,"col":23},"end":{"line":444,"col":58}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":133,"name":null,"span":{"data":{"file_id":2,"beg":{"line":444,"col":27},"end":{"line":444,"col":29}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":134,"name":null,"span":{"data":{"file_id":2,"beg":{"line":444,"col":31},"end":{"line":444,"col":40}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":135,"name":null,"span":{"data":{"file_id":2,"beg":{"line":444,"col":38},"end":{"line":444,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":136,"name":null,"span":{"data":{"file_id":2,"beg":{"line":444,"col":42},"end":{"line":444,"col":50}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":137,"name":null,"span":{"data":{"file_id":2,"beg":{"line":444,"col":48},"end":{"line":444,"col":49}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":138,"name":null,"span":{"data":{"file_id":2,"beg":{"line":444,"col":52},"end":{"line":444,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":139,"name":null,"span":{"data":{"file_id":2,"beg":{"line":446,"col":9},"end":{"line":446,"col":11}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":140,"name":null,"span":{"data":{"file_id":2,"beg":{"line":446,"col":13},"end":{"line":446,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":141,"name":null,"span":{"data":{"file_id":2,"beg":{"line":446,"col":17},"end":{"line":446,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":142,"name":null,"span":{"data":{"file_id":2,"beg":{"line":446,"col":21},"end":{"line":446,"col":23}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":143,"name":null,"span":{"data":{"file_id":2,"beg":{"line":446,"col":25},"end":{"line":446,"col":27}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":144,"name":null,"span":{"data":{"file_id":2,"beg":{"line":446,"col":29},"end":{"line":446,"col":31}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":145,"name":null,"span":{"data":{"file_id":2,"beg":{"line":446,"col":33},"end":{"line":446,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":146,"name":null,"span":{"data":{"file_id":2,"beg":{"line":446,"col":37},"end":{"line":446,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"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":6167}},{"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":7281}},{"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":6167}},{"index":150,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":151,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"index":186,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":187,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":188,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":189,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":190,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":191,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":192,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":193,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":194,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":426,"col":13},"end":{"line":447,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":426,"col":26},"end":{"line":426,"col":56}},"generated_from_span":null},"id":2055,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":426,"col":33},"end":{"line":426,"col":42}},"generated_from_span":null},"id":2056,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":426,"col":40},"end":{"line":426,"col":41}},"generated_from_span":null},"id":2057,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":426,"col":40},"end":{"line":426,"col":41}},"generated_from_span":null},"id":2058,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":["Schoolbook multiplication"]},{"span":{"data":{"file_id":2,"beg":{"line":426,"col":33},"end":{"line":426,"col":42}},"generated_from_span":null},"id":4333,"kind":{"StorageLive":147},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":426,"col":33},"end":{"line":426,"col":42}},"generated_from_span":null},"id":4334,"kind":{"Assign":[{"kind":{"Local":147},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":426,"col":33},"end":{"line":426,"col":42}},"generated_from_span":null},"id":4335,"kind":{"StorageLive":148},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":426,"col":33},"end":{"line":426,"col":42}},"generated_from_span":null},"id":4336,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":147},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":7},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":148},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":426,"col":33},"end":{"line":426,"col":42}},"generated_from_span":null},"id":2061,"kind":{"Assign":[{"kind":{"Local":6},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":148},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":426,"col":44},"end":{"line":426,"col":52}},"generated_from_span":null},"id":2062,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":426,"col":50},"end":{"line":426,"col":51}},"generated_from_span":null},"id":2063,"kind":{"StorageLive":9},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":426,"col":50},"end":{"line":426,"col":51}},"generated_from_span":null},"id":2064,"kind":{"Assign":[{"kind":{"Local":9},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":426,"col":44},"end":{"line":426,"col":52}},"generated_from_span":null},"id":4337,"kind":{"StorageLive":149},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":426,"col":44},"end":{"line":426,"col":52}},"generated_from_span":null},"id":4338,"kind":{"Assign":[{"kind":{"Local":149},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":426,"col":44},"end":{"line":426,"col":52}},"generated_from_span":null},"id":4339,"kind":{"StorageLive":150},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":426,"col":44},"end":{"line":426,"col":52}},"generated_from_span":null},"id":4340,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":149},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":9},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":150},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":426,"col":44},"end":{"line":426,"col":52}},"generated_from_span":null},"id":2067,"kind":{"Assign":[{"kind":{"Local":8},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":150},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":426,"col":26},"end":{"line":426,"col":56}},"generated_from_span":null},"id":2068,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":6},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":8},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":5},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":426,"col":55},"end":{"line":426,"col":56}},"generated_from_span":null},"id":2069,"kind":{"StorageDead":8},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":426,"col":55},"end":{"line":426,"col":56}},"generated_from_span":null},"id":2070,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":426,"col":13},"end":{"line":426,"col":15}},"generated_from_span":null},"id":2071,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":426,"col":13},"end":{"line":426,"col":15}},"generated_from_span":null},"id":2072,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":5},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":426,"col":17},"end":{"line":426,"col":22}},"generated_from_span":null},"id":2073,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":426,"col":17},"end":{"line":426,"col":22}},"generated_from_span":null},"id":2074,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":5},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":426,"col":56},"end":{"line":426,"col":57}},"generated_from_span":null},"id":2075,"kind":{"StorageDead":9},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":426,"col":56},"end":{"line":426,"col":57}},"generated_from_span":null},"id":2076,"kind":{"StorageDead":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":426,"col":56},"end":{"line":426,"col":57}},"generated_from_span":null},"id":2077,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":427,"col":26},"end":{"line":427,"col":60}},"generated_from_span":null},"id":2078,"kind":{"StorageLive":12},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":427,"col":33},"end":{"line":427,"col":42}},"generated_from_span":null},"id":2079,"kind":{"StorageLive":13},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":427,"col":40},"end":{"line":427,"col":41}},"generated_from_span":null},"id":2080,"kind":{"StorageLive":14},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":427,"col":40},"end":{"line":427,"col":41}},"generated_from_span":null},"id":2081,"kind":{"Assign":[{"kind":{"Local":14},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":427,"col":33},"end":{"line":427,"col":42}},"generated_from_span":null},"id":4341,"kind":{"StorageLive":151},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":427,"col":33},"end":{"line":427,"col":42}},"generated_from_span":null},"id":4342,"kind":{"Assign":[{"kind":{"Local":151},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":427,"col":33},"end":{"line":427,"col":42}},"generated_from_span":null},"id":4343,"kind":{"StorageLive":152},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":427,"col":33},"end":{"line":427,"col":42}},"generated_from_span":null},"id":4344,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":151},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":14},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":152},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":427,"col":33},"end":{"line":427,"col":42}},"generated_from_span":null},"id":2084,"kind":{"Assign":[{"kind":{"Local":13},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":152},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":427,"col":44},"end":{"line":427,"col":52}},"generated_from_span":null},"id":2085,"kind":{"StorageLive":15},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":427,"col":50},"end":{"line":427,"col":51}},"generated_from_span":null},"id":2086,"kind":{"StorageLive":16},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":427,"col":50},"end":{"line":427,"col":51}},"generated_from_span":null},"id":2087,"kind":{"Assign":[{"kind":{"Local":16},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":427,"col":44},"end":{"line":427,"col":52}},"generated_from_span":null},"id":4345,"kind":{"StorageLive":153},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":427,"col":44},"end":{"line":427,"col":52}},"generated_from_span":null},"id":4346,"kind":{"Assign":[{"kind":{"Local":153},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":427,"col":44},"end":{"line":427,"col":52}},"generated_from_span":null},"id":4347,"kind":{"StorageLive":154},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":427,"col":44},"end":{"line":427,"col":52}},"generated_from_span":null},"id":4348,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":153},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":16},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":154},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":427,"col":44},"end":{"line":427,"col":52}},"generated_from_span":null},"id":2090,"kind":{"Assign":[{"kind":{"Local":15},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":154},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":427,"col":54},"end":{"line":427,"col":59}},"generated_from_span":null},"id":2091,"kind":{"StorageLive":17},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":427,"col":54},"end":{"line":427,"col":59}},"generated_from_span":null},"id":2092,"kind":{"Assign":[{"kind":{"Local":17},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":4},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":427,"col":26},"end":{"line":427,"col":60}},"generated_from_span":null},"id":2093,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":13},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":15},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":17},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":12},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":427,"col":59},"end":{"line":427,"col":60}},"generated_from_span":null},"id":2094,"kind":{"StorageDead":17},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":427,"col":59},"end":{"line":427,"col":60}},"generated_from_span":null},"id":2095,"kind":{"StorageDead":15},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":427,"col":59},"end":{"line":427,"col":60}},"generated_from_span":null},"id":2096,"kind":{"StorageDead":13},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":427,"col":13},"end":{"line":427,"col":15}},"generated_from_span":null},"id":2097,"kind":{"StorageLive":10},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":427,"col":13},"end":{"line":427,"col":15}},"generated_from_span":null},"id":2098,"kind":{"Assign":[{"kind":{"Local":10},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":12},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":427,"col":17},"end":{"line":427,"col":22}},"generated_from_span":null},"id":2099,"kind":{"StorageLive":11},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":427,"col":17},"end":{"line":427,"col":22}},"generated_from_span":null},"id":2100,"kind":{"Assign":[{"kind":{"Local":11},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":12},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":427,"col":60},"end":{"line":427,"col":61}},"generated_from_span":null},"id":2101,"kind":{"StorageDead":16},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":427,"col":60},"end":{"line":427,"col":61}},"generated_from_span":null},"id":2102,"kind":{"StorageDead":14},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":427,"col":60},"end":{"line":427,"col":61}},"generated_from_span":null},"id":2103,"kind":{"StorageDead":12},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":428,"col":26},"end":{"line":428,"col":60}},"generated_from_span":null},"id":2104,"kind":{"StorageLive":20},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":428,"col":33},"end":{"line":428,"col":42}},"generated_from_span":null},"id":2105,"kind":{"StorageLive":21},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":428,"col":40},"end":{"line":428,"col":41}},"generated_from_span":null},"id":2106,"kind":{"StorageLive":22},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":428,"col":40},"end":{"line":428,"col":41}},"generated_from_span":null},"id":2107,"kind":{"Assign":[{"kind":{"Local":22},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":428,"col":33},"end":{"line":428,"col":42}},"generated_from_span":null},"id":4349,"kind":{"StorageLive":155},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":428,"col":33},"end":{"line":428,"col":42}},"generated_from_span":null},"id":4350,"kind":{"Assign":[{"kind":{"Local":155},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":428,"col":33},"end":{"line":428,"col":42}},"generated_from_span":null},"id":4351,"kind":{"StorageLive":156},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":428,"col":33},"end":{"line":428,"col":42}},"generated_from_span":null},"id":4352,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":155},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":22},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":156},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":428,"col":33},"end":{"line":428,"col":42}},"generated_from_span":null},"id":2110,"kind":{"Assign":[{"kind":{"Local":21},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":156},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":428,"col":44},"end":{"line":428,"col":52}},"generated_from_span":null},"id":2111,"kind":{"StorageLive":23},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":428,"col":50},"end":{"line":428,"col":51}},"generated_from_span":null},"id":2112,"kind":{"StorageLive":24},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":428,"col":50},"end":{"line":428,"col":51}},"generated_from_span":null},"id":2113,"kind":{"Assign":[{"kind":{"Local":24},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":428,"col":44},"end":{"line":428,"col":52}},"generated_from_span":null},"id":4353,"kind":{"StorageLive":157},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":428,"col":44},"end":{"line":428,"col":52}},"generated_from_span":null},"id":4354,"kind":{"Assign":[{"kind":{"Local":157},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":428,"col":44},"end":{"line":428,"col":52}},"generated_from_span":null},"id":4355,"kind":{"StorageLive":158},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":428,"col":44},"end":{"line":428,"col":52}},"generated_from_span":null},"id":4356,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":157},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":24},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":158},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":428,"col":44},"end":{"line":428,"col":52}},"generated_from_span":null},"id":2116,"kind":{"Assign":[{"kind":{"Local":23},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":158},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":428,"col":54},"end":{"line":428,"col":59}},"generated_from_span":null},"id":2117,"kind":{"StorageLive":25},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":428,"col":54},"end":{"line":428,"col":59}},"generated_from_span":null},"id":2118,"kind":{"Assign":[{"kind":{"Local":25},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":11},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":428,"col":26},"end":{"line":428,"col":60}},"generated_from_span":null},"id":2119,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":21},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":23},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":25},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":20},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":428,"col":59},"end":{"line":428,"col":60}},"generated_from_span":null},"id":2120,"kind":{"StorageDead":25},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":428,"col":59},"end":{"line":428,"col":60}},"generated_from_span":null},"id":2121,"kind":{"StorageDead":23},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":428,"col":59},"end":{"line":428,"col":60}},"generated_from_span":null},"id":2122,"kind":{"StorageDead":21},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":428,"col":13},"end":{"line":428,"col":15}},"generated_from_span":null},"id":2123,"kind":{"StorageLive":18},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":428,"col":13},"end":{"line":428,"col":15}},"generated_from_span":null},"id":2124,"kind":{"Assign":[{"kind":{"Local":18},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":20},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":428,"col":17},"end":{"line":428,"col":22}},"generated_from_span":null},"id":2125,"kind":{"StorageLive":19},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":428,"col":17},"end":{"line":428,"col":22}},"generated_from_span":null},"id":2126,"kind":{"Assign":[{"kind":{"Local":19},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":20},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":428,"col":60},"end":{"line":428,"col":61}},"generated_from_span":null},"id":2127,"kind":{"StorageDead":24},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":428,"col":60},"end":{"line":428,"col":61}},"generated_from_span":null},"id":2128,"kind":{"StorageDead":22},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":428,"col":60},"end":{"line":428,"col":61}},"generated_from_span":null},"id":2129,"kind":{"StorageDead":20},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":429,"col":23},"end":{"line":429,"col":57}},"generated_from_span":null},"id":2130,"kind":{"StorageLive":28},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":429,"col":30},"end":{"line":429,"col":39}},"generated_from_span":null},"id":2131,"kind":{"StorageLive":29},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":429,"col":37},"end":{"line":429,"col":38}},"generated_from_span":null},"id":2132,"kind":{"StorageLive":30},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":429,"col":37},"end":{"line":429,"col":38}},"generated_from_span":null},"id":2133,"kind":{"Assign":[{"kind":{"Local":30},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":429,"col":30},"end":{"line":429,"col":39}},"generated_from_span":null},"id":4357,"kind":{"StorageLive":159},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":429,"col":30},"end":{"line":429,"col":39}},"generated_from_span":null},"id":4358,"kind":{"Assign":[{"kind":{"Local":159},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":429,"col":30},"end":{"line":429,"col":39}},"generated_from_span":null},"id":4359,"kind":{"StorageLive":160},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":429,"col":30},"end":{"line":429,"col":39}},"generated_from_span":null},"id":4360,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":159},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":30},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":160},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":429,"col":30},"end":{"line":429,"col":39}},"generated_from_span":null},"id":2136,"kind":{"Assign":[{"kind":{"Local":29},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":160},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":429,"col":41},"end":{"line":429,"col":49}},"generated_from_span":null},"id":2137,"kind":{"StorageLive":31},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":429,"col":47},"end":{"line":429,"col":48}},"generated_from_span":null},"id":2138,"kind":{"StorageLive":32},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":429,"col":47},"end":{"line":429,"col":48}},"generated_from_span":null},"id":2139,"kind":{"Assign":[{"kind":{"Local":32},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":429,"col":41},"end":{"line":429,"col":49}},"generated_from_span":null},"id":4361,"kind":{"StorageLive":161},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":429,"col":41},"end":{"line":429,"col":49}},"generated_from_span":null},"id":4362,"kind":{"Assign":[{"kind":{"Local":161},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":429,"col":41},"end":{"line":429,"col":49}},"generated_from_span":null},"id":4363,"kind":{"StorageLive":162},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":429,"col":41},"end":{"line":429,"col":49}},"generated_from_span":null},"id":4364,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":161},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":32},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":162},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":429,"col":41},"end":{"line":429,"col":49}},"generated_from_span":null},"id":2142,"kind":{"Assign":[{"kind":{"Local":31},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":162},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":429,"col":51},"end":{"line":429,"col":56}},"generated_from_span":null},"id":2143,"kind":{"StorageLive":33},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":429,"col":51},"end":{"line":429,"col":56}},"generated_from_span":null},"id":2144,"kind":{"Assign":[{"kind":{"Local":33},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":19},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":429,"col":23},"end":{"line":429,"col":57}},"generated_from_span":null},"id":2145,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":29},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":31},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":33},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":28},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":429,"col":56},"end":{"line":429,"col":57}},"generated_from_span":null},"id":2146,"kind":{"StorageDead":33},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":429,"col":56},"end":{"line":429,"col":57}},"generated_from_span":null},"id":2147,"kind":{"StorageDead":31},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":429,"col":56},"end":{"line":429,"col":57}},"generated_from_span":null},"id":2148,"kind":{"StorageDead":29},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":429,"col":13},"end":{"line":429,"col":15}},"generated_from_span":null},"id":2149,"kind":{"StorageLive":26},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":429,"col":13},"end":{"line":429,"col":15}},"generated_from_span":null},"id":2150,"kind":{"Assign":[{"kind":{"Local":26},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":28},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":429,"col":17},"end":{"line":429,"col":19}},"generated_from_span":null},"id":2151,"kind":{"StorageLive":27},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":429,"col":17},"end":{"line":429,"col":19}},"generated_from_span":null},"id":2152,"kind":{"Assign":[{"kind":{"Local":27},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":28},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":429,"col":57},"end":{"line":429,"col":58}},"generated_from_span":null},"id":2153,"kind":{"StorageDead":32},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":429,"col":57},"end":{"line":429,"col":58}},"generated_from_span":null},"id":2154,"kind":{"StorageDead":30},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":429,"col":57},"end":{"line":429,"col":58}},"generated_from_span":null},"id":2155,"kind":{"StorageDead":28},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":431,"col":26},"end":{"line":431,"col":57}},"generated_from_span":null},"id":2156,"kind":{"StorageLive":36},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":431,"col":30},"end":{"line":431,"col":32}},"generated_from_span":null},"id":2157,"kind":{"StorageLive":37},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":431,"col":30},"end":{"line":431,"col":32}},"generated_from_span":null},"id":2158,"kind":{"Assign":[{"kind":{"Local":37},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":10},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":431,"col":34},"end":{"line":431,"col":43}},"generated_from_span":null},"id":2159,"kind":{"StorageLive":38},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":431,"col":41},"end":{"line":431,"col":42}},"generated_from_span":null},"id":2160,"kind":{"StorageLive":39},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":431,"col":41},"end":{"line":431,"col":42}},"generated_from_span":null},"id":2161,"kind":{"Assign":[{"kind":{"Local":39},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":431,"col":34},"end":{"line":431,"col":43}},"generated_from_span":null},"id":4365,"kind":{"StorageLive":163},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":431,"col":34},"end":{"line":431,"col":43}},"generated_from_span":null},"id":4366,"kind":{"Assign":[{"kind":{"Local":163},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":431,"col":34},"end":{"line":431,"col":43}},"generated_from_span":null},"id":4367,"kind":{"StorageLive":164},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":431,"col":34},"end":{"line":431,"col":43}},"generated_from_span":null},"id":4368,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":163},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":39},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":164},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":431,"col":34},"end":{"line":431,"col":43}},"generated_from_span":null},"id":2164,"kind":{"Assign":[{"kind":{"Local":38},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":164},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":431,"col":45},"end":{"line":431,"col":53}},"generated_from_span":null},"id":2165,"kind":{"StorageLive":40},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":431,"col":51},"end":{"line":431,"col":52}},"generated_from_span":null},"id":2166,"kind":{"StorageLive":41},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":431,"col":51},"end":{"line":431,"col":52}},"generated_from_span":null},"id":2167,"kind":{"Assign":[{"kind":{"Local":41},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":431,"col":45},"end":{"line":431,"col":53}},"generated_from_span":null},"id":4369,"kind":{"StorageLive":165},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":431,"col":45},"end":{"line":431,"col":53}},"generated_from_span":null},"id":4370,"kind":{"Assign":[{"kind":{"Local":165},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":431,"col":45},"end":{"line":431,"col":53}},"generated_from_span":null},"id":4371,"kind":{"StorageLive":166},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":431,"col":45},"end":{"line":431,"col":53}},"generated_from_span":null},"id":4372,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":165},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":41},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":166},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":431,"col":45},"end":{"line":431,"col":53}},"generated_from_span":null},"id":2170,"kind":{"Assign":[{"kind":{"Local":40},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":166},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":431,"col":26},"end":{"line":431,"col":57}},"generated_from_span":null},"id":2171,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":37},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":38},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":40},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":36},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":431,"col":56},"end":{"line":431,"col":57}},"generated_from_span":null},"id":2172,"kind":{"StorageDead":40},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":431,"col":56},"end":{"line":431,"col":57}},"generated_from_span":null},"id":2173,"kind":{"StorageDead":38},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":431,"col":56},"end":{"line":431,"col":57}},"generated_from_span":null},"id":2174,"kind":{"StorageDead":37},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":431,"col":13},"end":{"line":431,"col":15}},"generated_from_span":null},"id":2175,"kind":{"StorageLive":34},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":431,"col":13},"end":{"line":431,"col":15}},"generated_from_span":null},"id":2176,"kind":{"Assign":[{"kind":{"Local":34},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":36},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":431,"col":17},"end":{"line":431,"col":22}},"generated_from_span":null},"id":2177,"kind":{"StorageLive":35},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":431,"col":17},"end":{"line":431,"col":22}},"generated_from_span":null},"id":2178,"kind":{"Assign":[{"kind":{"Local":35},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":36},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":431,"col":57},"end":{"line":431,"col":58}},"generated_from_span":null},"id":2179,"kind":{"StorageDead":41},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":431,"col":57},"end":{"line":431,"col":58}},"generated_from_span":null},"id":2180,"kind":{"StorageDead":39},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":431,"col":57},"end":{"line":431,"col":58}},"generated_from_span":null},"id":2181,"kind":{"StorageDead":36},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":432,"col":26},"end":{"line":432,"col":61}},"generated_from_span":null},"id":2182,"kind":{"StorageLive":44},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":432,"col":30},"end":{"line":432,"col":32}},"generated_from_span":null},"id":2183,"kind":{"StorageLive":45},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":432,"col":30},"end":{"line":432,"col":32}},"generated_from_span":null},"id":2184,"kind":{"Assign":[{"kind":{"Local":45},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":18},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":432,"col":34},"end":{"line":432,"col":43}},"generated_from_span":null},"id":2185,"kind":{"StorageLive":46},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":432,"col":41},"end":{"line":432,"col":42}},"generated_from_span":null},"id":2186,"kind":{"StorageLive":47},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":432,"col":41},"end":{"line":432,"col":42}},"generated_from_span":null},"id":2187,"kind":{"Assign":[{"kind":{"Local":47},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":432,"col":34},"end":{"line":432,"col":43}},"generated_from_span":null},"id":4373,"kind":{"StorageLive":167},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":432,"col":34},"end":{"line":432,"col":43}},"generated_from_span":null},"id":4374,"kind":{"Assign":[{"kind":{"Local":167},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":432,"col":34},"end":{"line":432,"col":43}},"generated_from_span":null},"id":4375,"kind":{"StorageLive":168},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":432,"col":34},"end":{"line":432,"col":43}},"generated_from_span":null},"id":4376,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":167},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":47},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":168},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":432,"col":34},"end":{"line":432,"col":43}},"generated_from_span":null},"id":2190,"kind":{"Assign":[{"kind":{"Local":46},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":168},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":432,"col":45},"end":{"line":432,"col":53}},"generated_from_span":null},"id":2191,"kind":{"StorageLive":48},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":432,"col":51},"end":{"line":432,"col":52}},"generated_from_span":null},"id":2192,"kind":{"StorageLive":49},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":432,"col":51},"end":{"line":432,"col":52}},"generated_from_span":null},"id":2193,"kind":{"Assign":[{"kind":{"Local":49},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":432,"col":45},"end":{"line":432,"col":53}},"generated_from_span":null},"id":4377,"kind":{"StorageLive":169},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":432,"col":45},"end":{"line":432,"col":53}},"generated_from_span":null},"id":4378,"kind":{"Assign":[{"kind":{"Local":169},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":432,"col":45},"end":{"line":432,"col":53}},"generated_from_span":null},"id":4379,"kind":{"StorageLive":170},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":432,"col":45},"end":{"line":432,"col":53}},"generated_from_span":null},"id":4380,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":169},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":49},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":170},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":432,"col":45},"end":{"line":432,"col":53}},"generated_from_span":null},"id":2196,"kind":{"Assign":[{"kind":{"Local":48},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":170},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":432,"col":55},"end":{"line":432,"col":60}},"generated_from_span":null},"id":2197,"kind":{"StorageLive":50},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":432,"col":55},"end":{"line":432,"col":60}},"generated_from_span":null},"id":2198,"kind":{"Assign":[{"kind":{"Local":50},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":35},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":432,"col":26},"end":{"line":432,"col":61}},"generated_from_span":null},"id":2199,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":45},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":46},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":48},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":50},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":44},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":432,"col":60},"end":{"line":432,"col":61}},"generated_from_span":null},"id":2200,"kind":{"StorageDead":50},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":432,"col":60},"end":{"line":432,"col":61}},"generated_from_span":null},"id":2201,"kind":{"StorageDead":48},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":432,"col":60},"end":{"line":432,"col":61}},"generated_from_span":null},"id":2202,"kind":{"StorageDead":46},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":432,"col":60},"end":{"line":432,"col":61}},"generated_from_span":null},"id":2203,"kind":{"StorageDead":45},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":432,"col":13},"end":{"line":432,"col":15}},"generated_from_span":null},"id":2204,"kind":{"StorageLive":42},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":432,"col":13},"end":{"line":432,"col":15}},"generated_from_span":null},"id":2205,"kind":{"Assign":[{"kind":{"Local":42},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":44},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":432,"col":17},"end":{"line":432,"col":22}},"generated_from_span":null},"id":2206,"kind":{"StorageLive":43},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":432,"col":17},"end":{"line":432,"col":22}},"generated_from_span":null},"id":2207,"kind":{"Assign":[{"kind":{"Local":43},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":44},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":432,"col":61},"end":{"line":432,"col":62}},"generated_from_span":null},"id":2208,"kind":{"StorageDead":49},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":432,"col":61},"end":{"line":432,"col":62}},"generated_from_span":null},"id":2209,"kind":{"StorageDead":47},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":432,"col":61},"end":{"line":432,"col":62}},"generated_from_span":null},"id":2210,"kind":{"StorageDead":44},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":433,"col":26},"end":{"line":433,"col":61}},"generated_from_span":null},"id":2211,"kind":{"StorageLive":53},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":433,"col":30},"end":{"line":433,"col":32}},"generated_from_span":null},"id":2212,"kind":{"StorageLive":54},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":433,"col":30},"end":{"line":433,"col":32}},"generated_from_span":null},"id":2213,"kind":{"Assign":[{"kind":{"Local":54},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":26},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":433,"col":34},"end":{"line":433,"col":43}},"generated_from_span":null},"id":2214,"kind":{"StorageLive":55},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":433,"col":41},"end":{"line":433,"col":42}},"generated_from_span":null},"id":2215,"kind":{"StorageLive":56},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":433,"col":41},"end":{"line":433,"col":42}},"generated_from_span":null},"id":2216,"kind":{"Assign":[{"kind":{"Local":56},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":433,"col":34},"end":{"line":433,"col":43}},"generated_from_span":null},"id":4381,"kind":{"StorageLive":171},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":433,"col":34},"end":{"line":433,"col":43}},"generated_from_span":null},"id":4382,"kind":{"Assign":[{"kind":{"Local":171},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":433,"col":34},"end":{"line":433,"col":43}},"generated_from_span":null},"id":4383,"kind":{"StorageLive":172},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":433,"col":34},"end":{"line":433,"col":43}},"generated_from_span":null},"id":4384,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":171},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":56},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":172},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":433,"col":34},"end":{"line":433,"col":43}},"generated_from_span":null},"id":2219,"kind":{"Assign":[{"kind":{"Local":55},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":172},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":433,"col":45},"end":{"line":433,"col":53}},"generated_from_span":null},"id":2220,"kind":{"StorageLive":57},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":433,"col":51},"end":{"line":433,"col":52}},"generated_from_span":null},"id":2221,"kind":{"StorageLive":58},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":433,"col":51},"end":{"line":433,"col":52}},"generated_from_span":null},"id":2222,"kind":{"Assign":[{"kind":{"Local":58},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":433,"col":45},"end":{"line":433,"col":53}},"generated_from_span":null},"id":4385,"kind":{"StorageLive":173},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":433,"col":45},"end":{"line":433,"col":53}},"generated_from_span":null},"id":4386,"kind":{"Assign":[{"kind":{"Local":173},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":433,"col":45},"end":{"line":433,"col":53}},"generated_from_span":null},"id":4387,"kind":{"StorageLive":174},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":433,"col":45},"end":{"line":433,"col":53}},"generated_from_span":null},"id":4388,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":173},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":58},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":174},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":433,"col":45},"end":{"line":433,"col":53}},"generated_from_span":null},"id":2225,"kind":{"Assign":[{"kind":{"Local":57},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":174},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":433,"col":55},"end":{"line":433,"col":60}},"generated_from_span":null},"id":2226,"kind":{"StorageLive":59},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":433,"col":55},"end":{"line":433,"col":60}},"generated_from_span":null},"id":2227,"kind":{"Assign":[{"kind":{"Local":59},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":43},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":433,"col":26},"end":{"line":433,"col":61}},"generated_from_span":null},"id":2228,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":54},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":55},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":57},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":59},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":53},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":433,"col":60},"end":{"line":433,"col":61}},"generated_from_span":null},"id":2229,"kind":{"StorageDead":59},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":433,"col":60},"end":{"line":433,"col":61}},"generated_from_span":null},"id":2230,"kind":{"StorageDead":57},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":433,"col":60},"end":{"line":433,"col":61}},"generated_from_span":null},"id":2231,"kind":{"StorageDead":55},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":433,"col":60},"end":{"line":433,"col":61}},"generated_from_span":null},"id":2232,"kind":{"StorageDead":54},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":433,"col":13},"end":{"line":433,"col":15}},"generated_from_span":null},"id":2233,"kind":{"StorageLive":51},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":433,"col":13},"end":{"line":433,"col":15}},"generated_from_span":null},"id":2234,"kind":{"Assign":[{"kind":{"Local":51},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":53},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":433,"col":17},"end":{"line":433,"col":22}},"generated_from_span":null},"id":2235,"kind":{"StorageLive":52},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":433,"col":17},"end":{"line":433,"col":22}},"generated_from_span":null},"id":2236,"kind":{"Assign":[{"kind":{"Local":52},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":53},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":433,"col":61},"end":{"line":433,"col":62}},"generated_from_span":null},"id":2237,"kind":{"StorageDead":58},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":433,"col":61},"end":{"line":433,"col":62}},"generated_from_span":null},"id":2238,"kind":{"StorageDead":56},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":433,"col":61},"end":{"line":433,"col":62}},"generated_from_span":null},"id":2239,"kind":{"StorageDead":53},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":434,"col":23},"end":{"line":434,"col":58}},"generated_from_span":null},"id":2240,"kind":{"StorageLive":62},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":434,"col":27},"end":{"line":434,"col":29}},"generated_from_span":null},"id":2241,"kind":{"StorageLive":63},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":434,"col":27},"end":{"line":434,"col":29}},"generated_from_span":null},"id":2242,"kind":{"Assign":[{"kind":{"Local":63},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":27},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":434,"col":31},"end":{"line":434,"col":40}},"generated_from_span":null},"id":2243,"kind":{"StorageLive":64},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":434,"col":38},"end":{"line":434,"col":39}},"generated_from_span":null},"id":2244,"kind":{"StorageLive":65},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":434,"col":38},"end":{"line":434,"col":39}},"generated_from_span":null},"id":2245,"kind":{"Assign":[{"kind":{"Local":65},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":434,"col":31},"end":{"line":434,"col":40}},"generated_from_span":null},"id":4389,"kind":{"StorageLive":175},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":434,"col":31},"end":{"line":434,"col":40}},"generated_from_span":null},"id":4390,"kind":{"Assign":[{"kind":{"Local":175},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":434,"col":31},"end":{"line":434,"col":40}},"generated_from_span":null},"id":4391,"kind":{"StorageLive":176},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":434,"col":31},"end":{"line":434,"col":40}},"generated_from_span":null},"id":4392,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":175},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":65},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":176},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":434,"col":31},"end":{"line":434,"col":40}},"generated_from_span":null},"id":2248,"kind":{"Assign":[{"kind":{"Local":64},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":176},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":434,"col":42},"end":{"line":434,"col":50}},"generated_from_span":null},"id":2249,"kind":{"StorageLive":66},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":434,"col":48},"end":{"line":434,"col":49}},"generated_from_span":null},"id":2250,"kind":{"StorageLive":67},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":434,"col":48},"end":{"line":434,"col":49}},"generated_from_span":null},"id":2251,"kind":{"Assign":[{"kind":{"Local":67},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":434,"col":42},"end":{"line":434,"col":50}},"generated_from_span":null},"id":4393,"kind":{"StorageLive":177},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":434,"col":42},"end":{"line":434,"col":50}},"generated_from_span":null},"id":4394,"kind":{"Assign":[{"kind":{"Local":177},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":434,"col":42},"end":{"line":434,"col":50}},"generated_from_span":null},"id":4395,"kind":{"StorageLive":178},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":434,"col":42},"end":{"line":434,"col":50}},"generated_from_span":null},"id":4396,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":177},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":67},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":178},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":434,"col":42},"end":{"line":434,"col":50}},"generated_from_span":null},"id":2254,"kind":{"Assign":[{"kind":{"Local":66},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":178},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":434,"col":52},"end":{"line":434,"col":57}},"generated_from_span":null},"id":2255,"kind":{"StorageLive":68},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":434,"col":52},"end":{"line":434,"col":57}},"generated_from_span":null},"id":2256,"kind":{"Assign":[{"kind":{"Local":68},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":52},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":434,"col":23},"end":{"line":434,"col":58}},"generated_from_span":null},"id":2257,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":63},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":64},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":66},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":68},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":62},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":434,"col":57},"end":{"line":434,"col":58}},"generated_from_span":null},"id":2258,"kind":{"StorageDead":68},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":434,"col":57},"end":{"line":434,"col":58}},"generated_from_span":null},"id":2259,"kind":{"StorageDead":66},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":434,"col":57},"end":{"line":434,"col":58}},"generated_from_span":null},"id":2260,"kind":{"StorageDead":64},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":434,"col":57},"end":{"line":434,"col":58}},"generated_from_span":null},"id":2261,"kind":{"StorageDead":63},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":434,"col":13},"end":{"line":434,"col":15}},"generated_from_span":null},"id":2262,"kind":{"StorageLive":60},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":434,"col":13},"end":{"line":434,"col":15}},"generated_from_span":null},"id":2263,"kind":{"Assign":[{"kind":{"Local":60},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":62},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":434,"col":17},"end":{"line":434,"col":19}},"generated_from_span":null},"id":2264,"kind":{"StorageLive":61},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":434,"col":17},"end":{"line":434,"col":19}},"generated_from_span":null},"id":2265,"kind":{"Assign":[{"kind":{"Local":61},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":62},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":434,"col":58},"end":{"line":434,"col":59}},"generated_from_span":null},"id":2266,"kind":{"StorageDead":67},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":434,"col":58},"end":{"line":434,"col":59}},"generated_from_span":null},"id":2267,"kind":{"StorageDead":65},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":434,"col":58},"end":{"line":434,"col":59}},"generated_from_span":null},"id":2268,"kind":{"StorageDead":62},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":436,"col":26},"end":{"line":436,"col":57}},"generated_from_span":null},"id":2269,"kind":{"StorageLive":71},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":436,"col":30},"end":{"line":436,"col":32}},"generated_from_span":null},"id":2270,"kind":{"StorageLive":72},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":436,"col":30},"end":{"line":436,"col":32}},"generated_from_span":null},"id":2271,"kind":{"Assign":[{"kind":{"Local":72},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":42},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":436,"col":34},"end":{"line":436,"col":43}},"generated_from_span":null},"id":2272,"kind":{"StorageLive":73},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":436,"col":41},"end":{"line":436,"col":42}},"generated_from_span":null},"id":2273,"kind":{"StorageLive":74},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":436,"col":41},"end":{"line":436,"col":42}},"generated_from_span":null},"id":2274,"kind":{"Assign":[{"kind":{"Local":74},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":436,"col":34},"end":{"line":436,"col":43}},"generated_from_span":null},"id":4397,"kind":{"StorageLive":179},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":436,"col":34},"end":{"line":436,"col":43}},"generated_from_span":null},"id":4398,"kind":{"Assign":[{"kind":{"Local":179},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":436,"col":34},"end":{"line":436,"col":43}},"generated_from_span":null},"id":4399,"kind":{"StorageLive":180},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":436,"col":34},"end":{"line":436,"col":43}},"generated_from_span":null},"id":4400,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":179},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":74},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":180},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":436,"col":34},"end":{"line":436,"col":43}},"generated_from_span":null},"id":2277,"kind":{"Assign":[{"kind":{"Local":73},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":180},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":436,"col":45},"end":{"line":436,"col":53}},"generated_from_span":null},"id":2278,"kind":{"StorageLive":75},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":436,"col":51},"end":{"line":436,"col":52}},"generated_from_span":null},"id":2279,"kind":{"StorageLive":76},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":436,"col":51},"end":{"line":436,"col":52}},"generated_from_span":null},"id":2280,"kind":{"Assign":[{"kind":{"Local":76},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":436,"col":45},"end":{"line":436,"col":53}},"generated_from_span":null},"id":4401,"kind":{"StorageLive":181},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":436,"col":45},"end":{"line":436,"col":53}},"generated_from_span":null},"id":4402,"kind":{"Assign":[{"kind":{"Local":181},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":436,"col":45},"end":{"line":436,"col":53}},"generated_from_span":null},"id":4403,"kind":{"StorageLive":182},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":436,"col":45},"end":{"line":436,"col":53}},"generated_from_span":null},"id":4404,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":181},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":76},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":182},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":436,"col":45},"end":{"line":436,"col":53}},"generated_from_span":null},"id":2283,"kind":{"Assign":[{"kind":{"Local":75},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":182},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":436,"col":26},"end":{"line":436,"col":57}},"generated_from_span":null},"id":2284,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":72},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":73},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":75},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":71},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":436,"col":56},"end":{"line":436,"col":57}},"generated_from_span":null},"id":2285,"kind":{"StorageDead":75},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":436,"col":56},"end":{"line":436,"col":57}},"generated_from_span":null},"id":2286,"kind":{"StorageDead":73},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":436,"col":56},"end":{"line":436,"col":57}},"generated_from_span":null},"id":2287,"kind":{"StorageDead":72},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":436,"col":13},"end":{"line":436,"col":15}},"generated_from_span":null},"id":2288,"kind":{"StorageLive":69},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":436,"col":13},"end":{"line":436,"col":15}},"generated_from_span":null},"id":2289,"kind":{"Assign":[{"kind":{"Local":69},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":71},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":436,"col":17},"end":{"line":436,"col":22}},"generated_from_span":null},"id":2290,"kind":{"StorageLive":70},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":436,"col":17},"end":{"line":436,"col":22}},"generated_from_span":null},"id":2291,"kind":{"Assign":[{"kind":{"Local":70},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":71},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":436,"col":57},"end":{"line":436,"col":58}},"generated_from_span":null},"id":2292,"kind":{"StorageDead":76},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":436,"col":57},"end":{"line":436,"col":58}},"generated_from_span":null},"id":2293,"kind":{"StorageDead":74},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":436,"col":57},"end":{"line":436,"col":58}},"generated_from_span":null},"id":2294,"kind":{"StorageDead":71},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":437,"col":26},"end":{"line":437,"col":61}},"generated_from_span":null},"id":2295,"kind":{"StorageLive":79},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":437,"col":30},"end":{"line":437,"col":32}},"generated_from_span":null},"id":2296,"kind":{"StorageLive":80},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":437,"col":30},"end":{"line":437,"col":32}},"generated_from_span":null},"id":2297,"kind":{"Assign":[{"kind":{"Local":80},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":51},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":437,"col":34},"end":{"line":437,"col":43}},"generated_from_span":null},"id":2298,"kind":{"StorageLive":81},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":437,"col":41},"end":{"line":437,"col":42}},"generated_from_span":null},"id":2299,"kind":{"StorageLive":82},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":437,"col":41},"end":{"line":437,"col":42}},"generated_from_span":null},"id":2300,"kind":{"Assign":[{"kind":{"Local":82},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":437,"col":34},"end":{"line":437,"col":43}},"generated_from_span":null},"id":4405,"kind":{"StorageLive":183},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":437,"col":34},"end":{"line":437,"col":43}},"generated_from_span":null},"id":4406,"kind":{"Assign":[{"kind":{"Local":183},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":437,"col":34},"end":{"line":437,"col":43}},"generated_from_span":null},"id":4407,"kind":{"StorageLive":184},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":437,"col":34},"end":{"line":437,"col":43}},"generated_from_span":null},"id":4408,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":183},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":82},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":184},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":437,"col":34},"end":{"line":437,"col":43}},"generated_from_span":null},"id":2303,"kind":{"Assign":[{"kind":{"Local":81},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":184},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":437,"col":45},"end":{"line":437,"col":53}},"generated_from_span":null},"id":2304,"kind":{"StorageLive":83},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":437,"col":51},"end":{"line":437,"col":52}},"generated_from_span":null},"id":2305,"kind":{"StorageLive":84},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":437,"col":51},"end":{"line":437,"col":52}},"generated_from_span":null},"id":2306,"kind":{"Assign":[{"kind":{"Local":84},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":437,"col":45},"end":{"line":437,"col":53}},"generated_from_span":null},"id":4409,"kind":{"StorageLive":185},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":437,"col":45},"end":{"line":437,"col":53}},"generated_from_span":null},"id":4410,"kind":{"Assign":[{"kind":{"Local":185},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":437,"col":45},"end":{"line":437,"col":53}},"generated_from_span":null},"id":4411,"kind":{"StorageLive":186},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":437,"col":45},"end":{"line":437,"col":53}},"generated_from_span":null},"id":4412,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":185},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":84},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":186},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":437,"col":45},"end":{"line":437,"col":53}},"generated_from_span":null},"id":2309,"kind":{"Assign":[{"kind":{"Local":83},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":186},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":437,"col":55},"end":{"line":437,"col":60}},"generated_from_span":null},"id":2310,"kind":{"StorageLive":85},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":437,"col":55},"end":{"line":437,"col":60}},"generated_from_span":null},"id":2311,"kind":{"Assign":[{"kind":{"Local":85},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":70},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":437,"col":26},"end":{"line":437,"col":61}},"generated_from_span":null},"id":2312,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":80},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":81},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":83},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":85},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":79},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":437,"col":60},"end":{"line":437,"col":61}},"generated_from_span":null},"id":2313,"kind":{"StorageDead":85},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":437,"col":60},"end":{"line":437,"col":61}},"generated_from_span":null},"id":2314,"kind":{"StorageDead":83},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":437,"col":60},"end":{"line":437,"col":61}},"generated_from_span":null},"id":2315,"kind":{"StorageDead":81},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":437,"col":60},"end":{"line":437,"col":61}},"generated_from_span":null},"id":2316,"kind":{"StorageDead":80},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":437,"col":13},"end":{"line":437,"col":15}},"generated_from_span":null},"id":2317,"kind":{"StorageLive":77},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":437,"col":13},"end":{"line":437,"col":15}},"generated_from_span":null},"id":2318,"kind":{"Assign":[{"kind":{"Local":77},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":79},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":437,"col":17},"end":{"line":437,"col":22}},"generated_from_span":null},"id":2319,"kind":{"StorageLive":78},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":437,"col":17},"end":{"line":437,"col":22}},"generated_from_span":null},"id":2320,"kind":{"Assign":[{"kind":{"Local":78},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":79},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":437,"col":61},"end":{"line":437,"col":62}},"generated_from_span":null},"id":2321,"kind":{"StorageDead":84},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":437,"col":61},"end":{"line":437,"col":62}},"generated_from_span":null},"id":2322,"kind":{"StorageDead":82},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":437,"col":61},"end":{"line":437,"col":62}},"generated_from_span":null},"id":2323,"kind":{"StorageDead":79},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":438,"col":26},"end":{"line":438,"col":61}},"generated_from_span":null},"id":2324,"kind":{"StorageLive":88},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":438,"col":30},"end":{"line":438,"col":32}},"generated_from_span":null},"id":2325,"kind":{"StorageLive":89},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":438,"col":30},"end":{"line":438,"col":32}},"generated_from_span":null},"id":2326,"kind":{"Assign":[{"kind":{"Local":89},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":60},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":438,"col":34},"end":{"line":438,"col":43}},"generated_from_span":null},"id":2327,"kind":{"StorageLive":90},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":438,"col":41},"end":{"line":438,"col":42}},"generated_from_span":null},"id":2328,"kind":{"StorageLive":91},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":438,"col":41},"end":{"line":438,"col":42}},"generated_from_span":null},"id":2329,"kind":{"Assign":[{"kind":{"Local":91},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":438,"col":34},"end":{"line":438,"col":43}},"generated_from_span":null},"id":4413,"kind":{"StorageLive":187},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":438,"col":34},"end":{"line":438,"col":43}},"generated_from_span":null},"id":4414,"kind":{"Assign":[{"kind":{"Local":187},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":438,"col":34},"end":{"line":438,"col":43}},"generated_from_span":null},"id":4415,"kind":{"StorageLive":188},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":438,"col":34},"end":{"line":438,"col":43}},"generated_from_span":null},"id":4416,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":187},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":91},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":188},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":438,"col":34},"end":{"line":438,"col":43}},"generated_from_span":null},"id":2332,"kind":{"Assign":[{"kind":{"Local":90},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":188},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":438,"col":45},"end":{"line":438,"col":53}},"generated_from_span":null},"id":2333,"kind":{"StorageLive":92},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":438,"col":51},"end":{"line":438,"col":52}},"generated_from_span":null},"id":2334,"kind":{"StorageLive":93},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":438,"col":51},"end":{"line":438,"col":52}},"generated_from_span":null},"id":2335,"kind":{"Assign":[{"kind":{"Local":93},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":438,"col":45},"end":{"line":438,"col":53}},"generated_from_span":null},"id":4417,"kind":{"StorageLive":189},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":438,"col":45},"end":{"line":438,"col":53}},"generated_from_span":null},"id":4418,"kind":{"Assign":[{"kind":{"Local":189},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":438,"col":45},"end":{"line":438,"col":53}},"generated_from_span":null},"id":4419,"kind":{"StorageLive":190},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":438,"col":45},"end":{"line":438,"col":53}},"generated_from_span":null},"id":4420,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":189},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":93},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":190},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":438,"col":45},"end":{"line":438,"col":53}},"generated_from_span":null},"id":2338,"kind":{"Assign":[{"kind":{"Local":92},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":190},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":438,"col":55},"end":{"line":438,"col":60}},"generated_from_span":null},"id":2339,"kind":{"StorageLive":94},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":438,"col":55},"end":{"line":438,"col":60}},"generated_from_span":null},"id":2340,"kind":{"Assign":[{"kind":{"Local":94},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":78},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":438,"col":26},"end":{"line":438,"col":61}},"generated_from_span":null},"id":2341,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":89},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":90},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":92},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":94},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":88},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":438,"col":60},"end":{"line":438,"col":61}},"generated_from_span":null},"id":2342,"kind":{"StorageDead":94},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":438,"col":60},"end":{"line":438,"col":61}},"generated_from_span":null},"id":2343,"kind":{"StorageDead":92},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":438,"col":60},"end":{"line":438,"col":61}},"generated_from_span":null},"id":2344,"kind":{"StorageDead":90},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":438,"col":60},"end":{"line":438,"col":61}},"generated_from_span":null},"id":2345,"kind":{"StorageDead":89},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":438,"col":13},"end":{"line":438,"col":15}},"generated_from_span":null},"id":2346,"kind":{"StorageLive":86},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":438,"col":13},"end":{"line":438,"col":15}},"generated_from_span":null},"id":2347,"kind":{"Assign":[{"kind":{"Local":86},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":88},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":438,"col":17},"end":{"line":438,"col":22}},"generated_from_span":null},"id":2348,"kind":{"StorageLive":87},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":438,"col":17},"end":{"line":438,"col":22}},"generated_from_span":null},"id":2349,"kind":{"Assign":[{"kind":{"Local":87},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":88},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":438,"col":61},"end":{"line":438,"col":62}},"generated_from_span":null},"id":2350,"kind":{"StorageDead":93},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":438,"col":61},"end":{"line":438,"col":62}},"generated_from_span":null},"id":2351,"kind":{"StorageDead":91},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":438,"col":61},"end":{"line":438,"col":62}},"generated_from_span":null},"id":2352,"kind":{"StorageDead":88},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":439,"col":23},"end":{"line":439,"col":58}},"generated_from_span":null},"id":2353,"kind":{"StorageLive":97},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":439,"col":27},"end":{"line":439,"col":29}},"generated_from_span":null},"id":2354,"kind":{"StorageLive":98},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":439,"col":27},"end":{"line":439,"col":29}},"generated_from_span":null},"id":2355,"kind":{"Assign":[{"kind":{"Local":98},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":61},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":439,"col":31},"end":{"line":439,"col":40}},"generated_from_span":null},"id":2356,"kind":{"StorageLive":99},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":439,"col":38},"end":{"line":439,"col":39}},"generated_from_span":null},"id":2357,"kind":{"StorageLive":100},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":439,"col":38},"end":{"line":439,"col":39}},"generated_from_span":null},"id":2358,"kind":{"Assign":[{"kind":{"Local":100},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":439,"col":31},"end":{"line":439,"col":40}},"generated_from_span":null},"id":4421,"kind":{"StorageLive":191},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":439,"col":31},"end":{"line":439,"col":40}},"generated_from_span":null},"id":4422,"kind":{"Assign":[{"kind":{"Local":191},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":439,"col":31},"end":{"line":439,"col":40}},"generated_from_span":null},"id":4423,"kind":{"StorageLive":192},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":439,"col":31},"end":{"line":439,"col":40}},"generated_from_span":null},"id":4424,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":191},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":100},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":192},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":439,"col":31},"end":{"line":439,"col":40}},"generated_from_span":null},"id":2361,"kind":{"Assign":[{"kind":{"Local":99},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":192},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":439,"col":42},"end":{"line":439,"col":50}},"generated_from_span":null},"id":2362,"kind":{"StorageLive":101},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":439,"col":48},"end":{"line":439,"col":49}},"generated_from_span":null},"id":2363,"kind":{"StorageLive":102},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":439,"col":48},"end":{"line":439,"col":49}},"generated_from_span":null},"id":2364,"kind":{"Assign":[{"kind":{"Local":102},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":439,"col":42},"end":{"line":439,"col":50}},"generated_from_span":null},"id":4425,"kind":{"StorageLive":193},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":439,"col":42},"end":{"line":439,"col":50}},"generated_from_span":null},"id":4426,"kind":{"Assign":[{"kind":{"Local":193},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":439,"col":42},"end":{"line":439,"col":50}},"generated_from_span":null},"id":4427,"kind":{"StorageLive":194},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":439,"col":42},"end":{"line":439,"col":50}},"generated_from_span":null},"id":4428,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":193},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":102},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":194},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":439,"col":42},"end":{"line":439,"col":50}},"generated_from_span":null},"id":2367,"kind":{"Assign":[{"kind":{"Local":101},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":194},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":439,"col":52},"end":{"line":439,"col":57}},"generated_from_span":null},"id":2368,"kind":{"StorageLive":103},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":439,"col":52},"end":{"line":439,"col":57}},"generated_from_span":null},"id":2369,"kind":{"Assign":[{"kind":{"Local":103},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":87},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":439,"col":23},"end":{"line":439,"col":58}},"generated_from_span":null},"id":2370,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":98},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":99},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":101},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":103},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":97},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":439,"col":57},"end":{"line":439,"col":58}},"generated_from_span":null},"id":2371,"kind":{"StorageDead":103},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":439,"col":57},"end":{"line":439,"col":58}},"generated_from_span":null},"id":2372,"kind":{"StorageDead":101},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":439,"col":57},"end":{"line":439,"col":58}},"generated_from_span":null},"id":2373,"kind":{"StorageDead":99},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":439,"col":57},"end":{"line":439,"col":58}},"generated_from_span":null},"id":2374,"kind":{"StorageDead":98},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":439,"col":13},"end":{"line":439,"col":15}},"generated_from_span":null},"id":2375,"kind":{"StorageLive":95},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":439,"col":13},"end":{"line":439,"col":15}},"generated_from_span":null},"id":2376,"kind":{"Assign":[{"kind":{"Local":95},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":97},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":439,"col":17},"end":{"line":439,"col":19}},"generated_from_span":null},"id":2377,"kind":{"StorageLive":96},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":439,"col":17},"end":{"line":439,"col":19}},"generated_from_span":null},"id":2378,"kind":{"Assign":[{"kind":{"Local":96},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":97},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":439,"col":58},"end":{"line":439,"col":59}},"generated_from_span":null},"id":2379,"kind":{"StorageDead":102},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":439,"col":58},"end":{"line":439,"col":59}},"generated_from_span":null},"id":2380,"kind":{"StorageDead":100},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":439,"col":58},"end":{"line":439,"col":59}},"generated_from_span":null},"id":2381,"kind":{"StorageDead":97},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":441,"col":26},"end":{"line":441,"col":57}},"generated_from_span":null},"id":2382,"kind":{"StorageLive":106},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":441,"col":30},"end":{"line":441,"col":32}},"generated_from_span":null},"id":2383,"kind":{"StorageLive":107},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":441,"col":30},"end":{"line":441,"col":32}},"generated_from_span":null},"id":2384,"kind":{"Assign":[{"kind":{"Local":107},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":77},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":441,"col":34},"end":{"line":441,"col":43}},"generated_from_span":null},"id":2385,"kind":{"StorageLive":108},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":441,"col":41},"end":{"line":441,"col":42}},"generated_from_span":null},"id":2386,"kind":{"StorageLive":109},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":441,"col":41},"end":{"line":441,"col":42}},"generated_from_span":null},"id":2387,"kind":{"Assign":[{"kind":{"Local":109},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":441,"col":34},"end":{"line":441,"col":43}},"generated_from_span":null},"id":4429,"kind":{"StorageLive":195},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":441,"col":34},"end":{"line":441,"col":43}},"generated_from_span":null},"id":4430,"kind":{"Assign":[{"kind":{"Local":195},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":441,"col":34},"end":{"line":441,"col":43}},"generated_from_span":null},"id":4431,"kind":{"StorageLive":196},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":441,"col":34},"end":{"line":441,"col":43}},"generated_from_span":null},"id":4432,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":195},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":109},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":196},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":441,"col":34},"end":{"line":441,"col":43}},"generated_from_span":null},"id":2390,"kind":{"Assign":[{"kind":{"Local":108},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":196},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":441,"col":45},"end":{"line":441,"col":53}},"generated_from_span":null},"id":2391,"kind":{"StorageLive":110},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":441,"col":51},"end":{"line":441,"col":52}},"generated_from_span":null},"id":2392,"kind":{"StorageLive":111},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":441,"col":51},"end":{"line":441,"col":52}},"generated_from_span":null},"id":2393,"kind":{"Assign":[{"kind":{"Local":111},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":441,"col":45},"end":{"line":441,"col":53}},"generated_from_span":null},"id":4433,"kind":{"StorageLive":197},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":441,"col":45},"end":{"line":441,"col":53}},"generated_from_span":null},"id":4434,"kind":{"Assign":[{"kind":{"Local":197},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":441,"col":45},"end":{"line":441,"col":53}},"generated_from_span":null},"id":4435,"kind":{"StorageLive":198},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":441,"col":45},"end":{"line":441,"col":53}},"generated_from_span":null},"id":4436,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":197},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":111},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":198},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":441,"col":45},"end":{"line":441,"col":53}},"generated_from_span":null},"id":2396,"kind":{"Assign":[{"kind":{"Local":110},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":198},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":441,"col":26},"end":{"line":441,"col":57}},"generated_from_span":null},"id":2397,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":107},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":108},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":110},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":106},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":441,"col":56},"end":{"line":441,"col":57}},"generated_from_span":null},"id":2398,"kind":{"StorageDead":110},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":441,"col":56},"end":{"line":441,"col":57}},"generated_from_span":null},"id":2399,"kind":{"StorageDead":108},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":441,"col":56},"end":{"line":441,"col":57}},"generated_from_span":null},"id":2400,"kind":{"StorageDead":107},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":441,"col":13},"end":{"line":441,"col":15}},"generated_from_span":null},"id":2401,"kind":{"StorageLive":104},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":441,"col":13},"end":{"line":441,"col":15}},"generated_from_span":null},"id":2402,"kind":{"Assign":[{"kind":{"Local":104},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":106},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":441,"col":17},"end":{"line":441,"col":22}},"generated_from_span":null},"id":2403,"kind":{"StorageLive":105},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":441,"col":17},"end":{"line":441,"col":22}},"generated_from_span":null},"id":2404,"kind":{"Assign":[{"kind":{"Local":105},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":106},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":441,"col":57},"end":{"line":441,"col":58}},"generated_from_span":null},"id":2405,"kind":{"StorageDead":111},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":441,"col":57},"end":{"line":441,"col":58}},"generated_from_span":null},"id":2406,"kind":{"StorageDead":109},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":441,"col":57},"end":{"line":441,"col":58}},"generated_from_span":null},"id":2407,"kind":{"StorageDead":106},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":442,"col":26},"end":{"line":442,"col":61}},"generated_from_span":null},"id":2408,"kind":{"StorageLive":114},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":442,"col":30},"end":{"line":442,"col":32}},"generated_from_span":null},"id":2409,"kind":{"StorageLive":115},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":442,"col":30},"end":{"line":442,"col":32}},"generated_from_span":null},"id":2410,"kind":{"Assign":[{"kind":{"Local":115},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":86},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":442,"col":34},"end":{"line":442,"col":43}},"generated_from_span":null},"id":2411,"kind":{"StorageLive":116},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":442,"col":41},"end":{"line":442,"col":42}},"generated_from_span":null},"id":2412,"kind":{"StorageLive":117},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":442,"col":41},"end":{"line":442,"col":42}},"generated_from_span":null},"id":2413,"kind":{"Assign":[{"kind":{"Local":117},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":442,"col":34},"end":{"line":442,"col":43}},"generated_from_span":null},"id":4437,"kind":{"StorageLive":199},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":442,"col":34},"end":{"line":442,"col":43}},"generated_from_span":null},"id":4438,"kind":{"Assign":[{"kind":{"Local":199},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":442,"col":34},"end":{"line":442,"col":43}},"generated_from_span":null},"id":4439,"kind":{"StorageLive":200},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":442,"col":34},"end":{"line":442,"col":43}},"generated_from_span":null},"id":4440,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":199},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":117},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":200},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":442,"col":34},"end":{"line":442,"col":43}},"generated_from_span":null},"id":2416,"kind":{"Assign":[{"kind":{"Local":116},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":200},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":442,"col":45},"end":{"line":442,"col":53}},"generated_from_span":null},"id":2417,"kind":{"StorageLive":118},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":442,"col":51},"end":{"line":442,"col":52}},"generated_from_span":null},"id":2418,"kind":{"StorageLive":119},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":442,"col":51},"end":{"line":442,"col":52}},"generated_from_span":null},"id":2419,"kind":{"Assign":[{"kind":{"Local":119},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":442,"col":45},"end":{"line":442,"col":53}},"generated_from_span":null},"id":4441,"kind":{"StorageLive":201},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":442,"col":45},"end":{"line":442,"col":53}},"generated_from_span":null},"id":4442,"kind":{"Assign":[{"kind":{"Local":201},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":442,"col":45},"end":{"line":442,"col":53}},"generated_from_span":null},"id":4443,"kind":{"StorageLive":202},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":442,"col":45},"end":{"line":442,"col":53}},"generated_from_span":null},"id":4444,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":201},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":119},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":202},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":442,"col":45},"end":{"line":442,"col":53}},"generated_from_span":null},"id":2422,"kind":{"Assign":[{"kind":{"Local":118},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":202},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":442,"col":55},"end":{"line":442,"col":60}},"generated_from_span":null},"id":2423,"kind":{"StorageLive":120},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":442,"col":55},"end":{"line":442,"col":60}},"generated_from_span":null},"id":2424,"kind":{"Assign":[{"kind":{"Local":120},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":105},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":442,"col":26},"end":{"line":442,"col":61}},"generated_from_span":null},"id":2425,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":115},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":116},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":118},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":120},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":114},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":442,"col":60},"end":{"line":442,"col":61}},"generated_from_span":null},"id":2426,"kind":{"StorageDead":120},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":442,"col":60},"end":{"line":442,"col":61}},"generated_from_span":null},"id":2427,"kind":{"StorageDead":118},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":442,"col":60},"end":{"line":442,"col":61}},"generated_from_span":null},"id":2428,"kind":{"StorageDead":116},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":442,"col":60},"end":{"line":442,"col":61}},"generated_from_span":null},"id":2429,"kind":{"StorageDead":115},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":442,"col":13},"end":{"line":442,"col":15}},"generated_from_span":null},"id":2430,"kind":{"StorageLive":112},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":442,"col":13},"end":{"line":442,"col":15}},"generated_from_span":null},"id":2431,"kind":{"Assign":[{"kind":{"Local":112},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":114},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":442,"col":17},"end":{"line":442,"col":22}},"generated_from_span":null},"id":2432,"kind":{"StorageLive":113},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":442,"col":17},"end":{"line":442,"col":22}},"generated_from_span":null},"id":2433,"kind":{"Assign":[{"kind":{"Local":113},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":114},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":442,"col":61},"end":{"line":442,"col":62}},"generated_from_span":null},"id":2434,"kind":{"StorageDead":119},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":442,"col":61},"end":{"line":442,"col":62}},"generated_from_span":null},"id":2435,"kind":{"StorageDead":117},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":442,"col":61},"end":{"line":442,"col":62}},"generated_from_span":null},"id":2436,"kind":{"StorageDead":114},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":443,"col":26},"end":{"line":443,"col":61}},"generated_from_span":null},"id":2437,"kind":{"StorageLive":123},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":443,"col":30},"end":{"line":443,"col":32}},"generated_from_span":null},"id":2438,"kind":{"StorageLive":124},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":443,"col":30},"end":{"line":443,"col":32}},"generated_from_span":null},"id":2439,"kind":{"Assign":[{"kind":{"Local":124},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":95},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":443,"col":34},"end":{"line":443,"col":43}},"generated_from_span":null},"id":2440,"kind":{"StorageLive":125},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":443,"col":41},"end":{"line":443,"col":42}},"generated_from_span":null},"id":2441,"kind":{"StorageLive":126},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":443,"col":41},"end":{"line":443,"col":42}},"generated_from_span":null},"id":2442,"kind":{"Assign":[{"kind":{"Local":126},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":443,"col":34},"end":{"line":443,"col":43}},"generated_from_span":null},"id":4445,"kind":{"StorageLive":203},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":443,"col":34},"end":{"line":443,"col":43}},"generated_from_span":null},"id":4446,"kind":{"Assign":[{"kind":{"Local":203},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":443,"col":34},"end":{"line":443,"col":43}},"generated_from_span":null},"id":4447,"kind":{"StorageLive":204},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":443,"col":34},"end":{"line":443,"col":43}},"generated_from_span":null},"id":4448,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":203},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":126},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":204},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":443,"col":34},"end":{"line":443,"col":43}},"generated_from_span":null},"id":2445,"kind":{"Assign":[{"kind":{"Local":125},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":204},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":443,"col":45},"end":{"line":443,"col":53}},"generated_from_span":null},"id":2446,"kind":{"StorageLive":127},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":443,"col":51},"end":{"line":443,"col":52}},"generated_from_span":null},"id":2447,"kind":{"StorageLive":128},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":443,"col":51},"end":{"line":443,"col":52}},"generated_from_span":null},"id":2448,"kind":{"Assign":[{"kind":{"Local":128},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":443,"col":45},"end":{"line":443,"col":53}},"generated_from_span":null},"id":4449,"kind":{"StorageLive":205},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":443,"col":45},"end":{"line":443,"col":53}},"generated_from_span":null},"id":4450,"kind":{"Assign":[{"kind":{"Local":205},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":443,"col":45},"end":{"line":443,"col":53}},"generated_from_span":null},"id":4451,"kind":{"StorageLive":206},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":443,"col":45},"end":{"line":443,"col":53}},"generated_from_span":null},"id":4452,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":205},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":128},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":206},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":443,"col":45},"end":{"line":443,"col":53}},"generated_from_span":null},"id":2451,"kind":{"Assign":[{"kind":{"Local":127},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":206},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":443,"col":55},"end":{"line":443,"col":60}},"generated_from_span":null},"id":2452,"kind":{"StorageLive":129},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":443,"col":55},"end":{"line":443,"col":60}},"generated_from_span":null},"id":2453,"kind":{"Assign":[{"kind":{"Local":129},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":113},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":443,"col":26},"end":{"line":443,"col":61}},"generated_from_span":null},"id":2454,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":124},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":125},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":127},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":129},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":123},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":443,"col":60},"end":{"line":443,"col":61}},"generated_from_span":null},"id":2455,"kind":{"StorageDead":129},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":443,"col":60},"end":{"line":443,"col":61}},"generated_from_span":null},"id":2456,"kind":{"StorageDead":127},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":443,"col":60},"end":{"line":443,"col":61}},"generated_from_span":null},"id":2457,"kind":{"StorageDead":125},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":443,"col":60},"end":{"line":443,"col":61}},"generated_from_span":null},"id":2458,"kind":{"StorageDead":124},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":443,"col":13},"end":{"line":443,"col":15}},"generated_from_span":null},"id":2459,"kind":{"StorageLive":121},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":443,"col":13},"end":{"line":443,"col":15}},"generated_from_span":null},"id":2460,"kind":{"Assign":[{"kind":{"Local":121},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":123},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":443,"col":17},"end":{"line":443,"col":22}},"generated_from_span":null},"id":2461,"kind":{"StorageLive":122},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":443,"col":17},"end":{"line":443,"col":22}},"generated_from_span":null},"id":2462,"kind":{"Assign":[{"kind":{"Local":122},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":123},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":443,"col":61},"end":{"line":443,"col":62}},"generated_from_span":null},"id":2463,"kind":{"StorageDead":128},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":443,"col":61},"end":{"line":443,"col":62}},"generated_from_span":null},"id":2464,"kind":{"StorageDead":126},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":443,"col":61},"end":{"line":443,"col":62}},"generated_from_span":null},"id":2465,"kind":{"StorageDead":123},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":444,"col":23},"end":{"line":444,"col":58}},"generated_from_span":null},"id":2466,"kind":{"StorageLive":132},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":444,"col":27},"end":{"line":444,"col":29}},"generated_from_span":null},"id":2467,"kind":{"StorageLive":133},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":444,"col":27},"end":{"line":444,"col":29}},"generated_from_span":null},"id":2468,"kind":{"Assign":[{"kind":{"Local":133},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":96},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":444,"col":31},"end":{"line":444,"col":40}},"generated_from_span":null},"id":2469,"kind":{"StorageLive":134},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":444,"col":38},"end":{"line":444,"col":39}},"generated_from_span":null},"id":2470,"kind":{"StorageLive":135},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":444,"col":38},"end":{"line":444,"col":39}},"generated_from_span":null},"id":2471,"kind":{"Assign":[{"kind":{"Local":135},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":444,"col":31},"end":{"line":444,"col":40}},"generated_from_span":null},"id":4453,"kind":{"StorageLive":207},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":444,"col":31},"end":{"line":444,"col":40}},"generated_from_span":null},"id":4454,"kind":{"Assign":[{"kind":{"Local":207},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":444,"col":31},"end":{"line":444,"col":40}},"generated_from_span":null},"id":4455,"kind":{"StorageLive":208},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":444,"col":31},"end":{"line":444,"col":40}},"generated_from_span":null},"id":4456,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":207},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":135},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":208},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":444,"col":31},"end":{"line":444,"col":40}},"generated_from_span":null},"id":2474,"kind":{"Assign":[{"kind":{"Local":134},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":208},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":444,"col":42},"end":{"line":444,"col":50}},"generated_from_span":null},"id":2475,"kind":{"StorageLive":136},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":444,"col":48},"end":{"line":444,"col":49}},"generated_from_span":null},"id":2476,"kind":{"StorageLive":137},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":444,"col":48},"end":{"line":444,"col":49}},"generated_from_span":null},"id":2477,"kind":{"Assign":[{"kind":{"Local":137},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":444,"col":42},"end":{"line":444,"col":50}},"generated_from_span":null},"id":4457,"kind":{"StorageLive":209},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":444,"col":42},"end":{"line":444,"col":50}},"generated_from_span":null},"id":4458,"kind":{"Assign":[{"kind":{"Local":209},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":444,"col":42},"end":{"line":444,"col":50}},"generated_from_span":null},"id":4459,"kind":{"StorageLive":210},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":444,"col":42},"end":{"line":444,"col":50}},"generated_from_span":null},"id":4460,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":209},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":137},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":210},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":444,"col":42},"end":{"line":444,"col":50}},"generated_from_span":null},"id":2480,"kind":{"Assign":[{"kind":{"Local":136},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":210},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":444,"col":52},"end":{"line":444,"col":57}},"generated_from_span":null},"id":2481,"kind":{"StorageLive":138},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":444,"col":52},"end":{"line":444,"col":57}},"generated_from_span":null},"id":2482,"kind":{"Assign":[{"kind":{"Local":138},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":122},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":444,"col":23},"end":{"line":444,"col":58}},"generated_from_span":null},"id":2483,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":133},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":134},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":136},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":138},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":132},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":444,"col":57},"end":{"line":444,"col":58}},"generated_from_span":null},"id":2484,"kind":{"StorageDead":138},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":444,"col":57},"end":{"line":444,"col":58}},"generated_from_span":null},"id":2485,"kind":{"StorageDead":136},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":444,"col":57},"end":{"line":444,"col":58}},"generated_from_span":null},"id":2486,"kind":{"StorageDead":134},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":444,"col":57},"end":{"line":444,"col":58}},"generated_from_span":null},"id":2487,"kind":{"StorageDead":133},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":444,"col":13},"end":{"line":444,"col":15}},"generated_from_span":null},"id":2488,"kind":{"StorageLive":130},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":444,"col":13},"end":{"line":444,"col":15}},"generated_from_span":null},"id":2489,"kind":{"Assign":[{"kind":{"Local":130},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":132},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":444,"col":17},"end":{"line":444,"col":19}},"generated_from_span":null},"id":2490,"kind":{"StorageLive":131},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":444,"col":17},"end":{"line":444,"col":19}},"generated_from_span":null},"id":2491,"kind":{"Assign":[{"kind":{"Local":131},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":132},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":444,"col":58},"end":{"line":444,"col":59}},"generated_from_span":null},"id":2492,"kind":{"StorageDead":137},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":444,"col":58},"end":{"line":444,"col":59}},"generated_from_span":null},"id":2493,"kind":{"StorageDead":135},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":444,"col":58},"end":{"line":444,"col":59}},"generated_from_span":null},"id":2494,"kind":{"StorageDead":132},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":446,"col":9},"end":{"line":446,"col":11}},"generated_from_span":null},"id":2495,"kind":{"StorageLive":139},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":446,"col":9},"end":{"line":446,"col":11}},"generated_from_span":null},"id":2496,"kind":{"Assign":[{"kind":{"Local":139},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":3},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":446,"col":13},"end":{"line":446,"col":15}},"generated_from_span":null},"id":2497,"kind":{"StorageLive":140},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":446,"col":13},"end":{"line":446,"col":15}},"generated_from_span":null},"id":2498,"kind":{"Assign":[{"kind":{"Local":140},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":34},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":446,"col":17},"end":{"line":446,"col":19}},"generated_from_span":null},"id":2499,"kind":{"StorageLive":141},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":446,"col":17},"end":{"line":446,"col":19}},"generated_from_span":null},"id":2500,"kind":{"Assign":[{"kind":{"Local":141},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":69},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":446,"col":21},"end":{"line":446,"col":23}},"generated_from_span":null},"id":2501,"kind":{"StorageLive":142},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":446,"col":21},"end":{"line":446,"col":23}},"generated_from_span":null},"id":2502,"kind":{"Assign":[{"kind":{"Local":142},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":104},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":446,"col":25},"end":{"line":446,"col":27}},"generated_from_span":null},"id":2503,"kind":{"StorageLive":143},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":446,"col":25},"end":{"line":446,"col":27}},"generated_from_span":null},"id":2504,"kind":{"Assign":[{"kind":{"Local":143},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":112},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":446,"col":29},"end":{"line":446,"col":31}},"generated_from_span":null},"id":2505,"kind":{"StorageLive":144},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":446,"col":29},"end":{"line":446,"col":31}},"generated_from_span":null},"id":2506,"kind":{"Assign":[{"kind":{"Local":144},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":121},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":446,"col":33},"end":{"line":446,"col":35}},"generated_from_span":null},"id":2507,"kind":{"StorageLive":145},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":446,"col":33},"end":{"line":446,"col":35}},"generated_from_span":null},"id":2508,"kind":{"Assign":[{"kind":{"Local":145},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":130},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":446,"col":37},"end":{"line":446,"col":39}},"generated_from_span":null},"id":2509,"kind":{"StorageLive":146},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":446,"col":37},"end":{"line":446,"col":39}},"generated_from_span":null},"id":2510,"kind":{"Assign":[{"kind":{"Local":146},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":131},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":446,"col":8},"end":{"line":446,"col":40}},"generated_from_span":null},"id":2511,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":4585}},{"Aggregate":[{"Array":[{"Deduplicated":1072},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}]},[{"Move":{"kind":{"Local":139},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":140},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":141},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":142},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":143},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":144},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":145},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":146},"ty":{"Deduplicated":1072}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":446,"col":39},"end":{"line":446,"col":40}},"generated_from_span":null},"id":2512,"kind":{"StorageDead":146},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":446,"col":39},"end":{"line":446,"col":40}},"generated_from_span":null},"id":2513,"kind":{"StorageDead":145},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":446,"col":39},"end":{"line":446,"col":40}},"generated_from_span":null},"id":2514,"kind":{"StorageDead":144},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":446,"col":39},"end":{"line":446,"col":40}},"generated_from_span":null},"id":2515,"kind":{"StorageDead":143},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":446,"col":39},"end":{"line":446,"col":40}},"generated_from_span":null},"id":2516,"kind":{"StorageDead":142},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":446,"col":39},"end":{"line":446,"col":40}},"generated_from_span":null},"id":2517,"kind":{"StorageDead":141},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":446,"col":39},"end":{"line":446,"col":40}},"generated_from_span":null},"id":2518,"kind":{"StorageDead":140},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":446,"col":39},"end":{"line":446,"col":40}},"generated_from_span":null},"id":2519,"kind":{"StorageDead":139},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":447,"col":4},"end":{"line":447,"col":5}},"generated_from_span":null},"id":2520,"kind":{"StorageDead":131},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":447,"col":4},"end":{"line":447,"col":5}},"generated_from_span":null},"id":2521,"kind":{"StorageDead":130},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":447,"col":4},"end":{"line":447,"col":5}},"generated_from_span":null},"id":2522,"kind":{"StorageDead":122},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":447,"col":4},"end":{"line":447,"col":5}},"generated_from_span":null},"id":2523,"kind":{"StorageDead":121},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":447,"col":4},"end":{"line":447,"col":5}},"generated_from_span":null},"id":2524,"kind":{"StorageDead":113},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":447,"col":4},"end":{"line":447,"col":5}},"generated_from_span":null},"id":2525,"kind":{"StorageDead":112},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":447,"col":4},"end":{"line":447,"col":5}},"generated_from_span":null},"id":2526,"kind":{"StorageDead":105},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":447,"col":4},"end":{"line":447,"col":5}},"generated_from_span":null},"id":2527,"kind":{"StorageDead":104},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":447,"col":4},"end":{"line":447,"col":5}},"generated_from_span":null},"id":2528,"kind":{"StorageDead":96},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":447,"col":4},"end":{"line":447,"col":5}},"generated_from_span":null},"id":2529,"kind":{"StorageDead":95},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":447,"col":4},"end":{"line":447,"col":5}},"generated_from_span":null},"id":2530,"kind":{"StorageDead":87},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":447,"col":4},"end":{"line":447,"col":5}},"generated_from_span":null},"id":2531,"kind":{"StorageDead":86},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":447,"col":4},"end":{"line":447,"col":5}},"generated_from_span":null},"id":2532,"kind":{"StorageDead":78},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":447,"col":4},"end":{"line":447,"col":5}},"generated_from_span":null},"id":2533,"kind":{"StorageDead":77},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":447,"col":4},"end":{"line":447,"col":5}},"generated_from_span":null},"id":2534,"kind":{"StorageDead":70},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":447,"col":4},"end":{"line":447,"col":5}},"generated_from_span":null},"id":2535,"kind":{"StorageDead":69},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":447,"col":4},"end":{"line":447,"col":5}},"generated_from_span":null},"id":2536,"kind":{"StorageDead":61},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":447,"col":4},"end":{"line":447,"col":5}},"generated_from_span":null},"id":2537,"kind":{"StorageDead":60},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":447,"col":4},"end":{"line":447,"col":5}},"generated_from_span":null},"id":2538,"kind":{"StorageDead":52},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":447,"col":4},"end":{"line":447,"col":5}},"generated_from_span":null},"id":2539,"kind":{"StorageDead":51},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":447,"col":4},"end":{"line":447,"col":5}},"generated_from_span":null},"id":2540,"kind":{"StorageDead":43},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":447,"col":4},"end":{"line":447,"col":5}},"generated_from_span":null},"id":2541,"kind":{"StorageDead":42},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":447,"col":4},"end":{"line":447,"col":5}},"generated_from_span":null},"id":2542,"kind":{"StorageDead":35},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":447,"col":4},"end":{"line":447,"col":5}},"generated_from_span":null},"id":2543,"kind":{"StorageDead":34},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":447,"col":4},"end":{"line":447,"col":5}},"generated_from_span":null},"id":2544,"kind":{"StorageDead":27},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":447,"col":4},"end":{"line":447,"col":5}},"generated_from_span":null},"id":2545,"kind":{"StorageDead":26},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":447,"col":4},"end":{"line":447,"col":5}},"generated_from_span":null},"id":2546,"kind":{"StorageDead":19},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":447,"col":4},"end":{"line":447,"col":5}},"generated_from_span":null},"id":2547,"kind":{"StorageDead":18},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":447,"col":4},"end":{"line":447,"col":5}},"generated_from_span":null},"id":2548,"kind":{"StorageDead":11},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":447,"col":4},"end":{"line":447,"col":5}},"generated_from_span":null},"id":2549,"kind":{"StorageDead":10},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":447,"col":4},"end":{"line":447,"col":5}},"generated_from_span":null},"id":2550,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":447,"col":4},"end":{"line":447,"col":5}},"generated_from_span":null},"id":2551,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":447,"col":5},"end":{"line":447,"col":5}},"generated_from_span":null},"id":2552,"kind":"Return","comments_before":[]}]},"comments":[[425,["Schoolbook multiplication"]]]}}},{"def_id":79,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":1079},"kind":"InherentImplBlock"}}},{"Ident":["square_unreduced",0]}],"span":{"data":{"file_id":2,"beg":{"line":451,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"source_text":"pub(crate) const fn square_unreduced(&self) -> [u64; 8] {\n let (r1, carry) = mac(0, self.0[0], self.0[1], 0);\n let (r2, carry) = mac(0, self.0[0], self.0[2], carry);\n let (r3, r4) = mac(0, self.0[0], self.0[3], carry);\n\n let (r3, carry) = mac(r3, self.0[1], self.0[2], 0);\n let (r4, r5) = mac(r4, self.0[1], self.0[3], carry);\n\n let (r5, r6) = mac(r5, self.0[2], self.0[3], 0);\n\n let r7 = r6 >> 63;\n let r6 = (r6 << 1) | (r5 >> 63);\n let r5 = (r5 << 1) | (r4 >> 63);\n let r4 = (r4 << 1) | (r3 >> 63);\n let r3 = (r3 << 1) | (r2 >> 63);\n let r2 = (r2 << 1) | (r1 >> 63);\n let r1 = r1 << 1;\n\n let (r0, carry) = mac(0, self.0[0], self.0[0], 0);\n let (r1, carry) = adc(0, r1, carry);\n let (r2, carry) = mac(r2, self.0[1], self.0[1], carry);\n let (r3, carry) = adc(0, r3, carry);\n let (r4, carry) = mac(r4, self.0[2], self.0[2], carry);\n let (r5, carry) = adc(0, r5, carry);\n let (r6, carry) = mac(r6, self.0[3], self.0[3], carry);\n let (r7, _) = adc(0, r7, carry);\n\n [r0, r1, r2, r3, r4, r5, r6, r7]\n }","attr_info":{"attributes":[{"DocComment":" Squares this element, returning the unreduced 512-bit product."}],"inline":"Hint","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":8297}],"output":{"Deduplicated":4585}},"src":"TopLevel","is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":451,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"bound_body_regions":2,"locals":{"arg_count":1,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":451,"col":51},"end":{"line":451,"col":59}},"generated_from_span":null},"ty":{"Deduplicated":4585}},{"index":1,"name":"self","span":{"data":{"file_id":2,"beg":{"line":451,"col":41},"end":{"line":451,"col":46}},"generated_from_span":null},"ty":{"Deduplicated":2302}},{"index":2,"name":"r1","span":{"data":{"file_id":2,"beg":{"line":452,"col":13},"end":{"line":452,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":3,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":452,"col":17},"end":{"line":452,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":4,"name":null,"span":{"data":{"file_id":2,"beg":{"line":452,"col":26},"end":{"line":452,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":5,"name":null,"span":{"data":{"file_id":2,"beg":{"line":452,"col":33},"end":{"line":452,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":6,"name":null,"span":{"data":{"file_id":2,"beg":{"line":452,"col":40},"end":{"line":452,"col":41}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":7,"name":null,"span":{"data":{"file_id":2,"beg":{"line":452,"col":44},"end":{"line":452,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":8,"name":null,"span":{"data":{"file_id":2,"beg":{"line":452,"col":51},"end":{"line":452,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":9,"name":"r2","span":{"data":{"file_id":2,"beg":{"line":453,"col":13},"end":{"line":453,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":10,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":453,"col":17},"end":{"line":453,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":11,"name":null,"span":{"data":{"file_id":2,"beg":{"line":453,"col":26},"end":{"line":453,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":12,"name":null,"span":{"data":{"file_id":2,"beg":{"line":453,"col":33},"end":{"line":453,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":13,"name":null,"span":{"data":{"file_id":2,"beg":{"line":453,"col":40},"end":{"line":453,"col":41}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":14,"name":null,"span":{"data":{"file_id":2,"beg":{"line":453,"col":44},"end":{"line":453,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":15,"name":null,"span":{"data":{"file_id":2,"beg":{"line":453,"col":51},"end":{"line":453,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":16,"name":null,"span":{"data":{"file_id":2,"beg":{"line":453,"col":55},"end":{"line":453,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":17,"name":"r3","span":{"data":{"file_id":2,"beg":{"line":454,"col":13},"end":{"line":454,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":18,"name":"r4","span":{"data":{"file_id":2,"beg":{"line":454,"col":17},"end":{"line":454,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":19,"name":null,"span":{"data":{"file_id":2,"beg":{"line":454,"col":23},"end":{"line":454,"col":58}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":20,"name":null,"span":{"data":{"file_id":2,"beg":{"line":454,"col":30},"end":{"line":454,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":21,"name":null,"span":{"data":{"file_id":2,"beg":{"line":454,"col":37},"end":{"line":454,"col":38}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":22,"name":null,"span":{"data":{"file_id":2,"beg":{"line":454,"col":41},"end":{"line":454,"col":50}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":23,"name":null,"span":{"data":{"file_id":2,"beg":{"line":454,"col":48},"end":{"line":454,"col":49}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":24,"name":null,"span":{"data":{"file_id":2,"beg":{"line":454,"col":52},"end":{"line":454,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":25,"name":"r3","span":{"data":{"file_id":2,"beg":{"line":456,"col":13},"end":{"line":456,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":26,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":456,"col":17},"end":{"line":456,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":27,"name":null,"span":{"data":{"file_id":2,"beg":{"line":456,"col":26},"end":{"line":456,"col":58}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":28,"name":null,"span":{"data":{"file_id":2,"beg":{"line":456,"col":30},"end":{"line":456,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":29,"name":null,"span":{"data":{"file_id":2,"beg":{"line":456,"col":34},"end":{"line":456,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":30,"name":null,"span":{"data":{"file_id":2,"beg":{"line":456,"col":41},"end":{"line":456,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":31,"name":null,"span":{"data":{"file_id":2,"beg":{"line":456,"col":45},"end":{"line":456,"col":54}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":32,"name":null,"span":{"data":{"file_id":2,"beg":{"line":456,"col":52},"end":{"line":456,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":33,"name":"r4","span":{"data":{"file_id":2,"beg":{"line":457,"col":13},"end":{"line":457,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":34,"name":"r5","span":{"data":{"file_id":2,"beg":{"line":457,"col":17},"end":{"line":457,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":35,"name":null,"span":{"data":{"file_id":2,"beg":{"line":457,"col":23},"end":{"line":457,"col":59}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":36,"name":null,"span":{"data":{"file_id":2,"beg":{"line":457,"col":27},"end":{"line":457,"col":29}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":37,"name":null,"span":{"data":{"file_id":2,"beg":{"line":457,"col":31},"end":{"line":457,"col":40}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":38,"name":null,"span":{"data":{"file_id":2,"beg":{"line":457,"col":38},"end":{"line":457,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":39,"name":null,"span":{"data":{"file_id":2,"beg":{"line":457,"col":42},"end":{"line":457,"col":51}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":40,"name":null,"span":{"data":{"file_id":2,"beg":{"line":457,"col":49},"end":{"line":457,"col":50}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":41,"name":null,"span":{"data":{"file_id":2,"beg":{"line":457,"col":53},"end":{"line":457,"col":58}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":42,"name":"r5","span":{"data":{"file_id":2,"beg":{"line":459,"col":13},"end":{"line":459,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":43,"name":"r6","span":{"data":{"file_id":2,"beg":{"line":459,"col":17},"end":{"line":459,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":44,"name":null,"span":{"data":{"file_id":2,"beg":{"line":459,"col":23},"end":{"line":459,"col":55}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":45,"name":null,"span":{"data":{"file_id":2,"beg":{"line":459,"col":27},"end":{"line":459,"col":29}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":46,"name":null,"span":{"data":{"file_id":2,"beg":{"line":459,"col":31},"end":{"line":459,"col":40}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":47,"name":null,"span":{"data":{"file_id":2,"beg":{"line":459,"col":38},"end":{"line":459,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":48,"name":null,"span":{"data":{"file_id":2,"beg":{"line":459,"col":42},"end":{"line":459,"col":51}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":49,"name":null,"span":{"data":{"file_id":2,"beg":{"line":459,"col":49},"end":{"line":459,"col":50}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":50,"name":"r7","span":{"data":{"file_id":2,"beg":{"line":461,"col":12},"end":{"line":461,"col":14}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":51,"name":null,"span":{"data":{"file_id":2,"beg":{"line":461,"col":17},"end":{"line":461,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":52,"name":"r6","span":{"data":{"file_id":2,"beg":{"line":462,"col":12},"end":{"line":462,"col":14}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":53,"name":null,"span":{"data":{"file_id":2,"beg":{"line":462,"col":17},"end":{"line":462,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":54,"name":null,"span":{"data":{"file_id":2,"beg":{"line":462,"col":18},"end":{"line":462,"col":20}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":55,"name":null,"span":{"data":{"file_id":2,"beg":{"line":462,"col":29},"end":{"line":462,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":56,"name":null,"span":{"data":{"file_id":2,"beg":{"line":462,"col":30},"end":{"line":462,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":57,"name":"r5","span":{"data":{"file_id":2,"beg":{"line":463,"col":12},"end":{"line":463,"col":14}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":58,"name":null,"span":{"data":{"file_id":2,"beg":{"line":463,"col":17},"end":{"line":463,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":59,"name":null,"span":{"data":{"file_id":2,"beg":{"line":463,"col":18},"end":{"line":463,"col":20}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":60,"name":null,"span":{"data":{"file_id":2,"beg":{"line":463,"col":29},"end":{"line":463,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":61,"name":null,"span":{"data":{"file_id":2,"beg":{"line":463,"col":30},"end":{"line":463,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":62,"name":"r4","span":{"data":{"file_id":2,"beg":{"line":464,"col":12},"end":{"line":464,"col":14}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":63,"name":null,"span":{"data":{"file_id":2,"beg":{"line":464,"col":17},"end":{"line":464,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":64,"name":null,"span":{"data":{"file_id":2,"beg":{"line":464,"col":18},"end":{"line":464,"col":20}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":65,"name":null,"span":{"data":{"file_id":2,"beg":{"line":464,"col":29},"end":{"line":464,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":66,"name":null,"span":{"data":{"file_id":2,"beg":{"line":464,"col":30},"end":{"line":464,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":67,"name":"r3","span":{"data":{"file_id":2,"beg":{"line":465,"col":12},"end":{"line":465,"col":14}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":68,"name":null,"span":{"data":{"file_id":2,"beg":{"line":465,"col":17},"end":{"line":465,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":69,"name":null,"span":{"data":{"file_id":2,"beg":{"line":465,"col":18},"end":{"line":465,"col":20}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":70,"name":null,"span":{"data":{"file_id":2,"beg":{"line":465,"col":29},"end":{"line":465,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":71,"name":null,"span":{"data":{"file_id":2,"beg":{"line":465,"col":30},"end":{"line":465,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":72,"name":"r2","span":{"data":{"file_id":2,"beg":{"line":466,"col":12},"end":{"line":466,"col":14}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":73,"name":null,"span":{"data":{"file_id":2,"beg":{"line":466,"col":17},"end":{"line":466,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":74,"name":null,"span":{"data":{"file_id":2,"beg":{"line":466,"col":18},"end":{"line":466,"col":20}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":75,"name":null,"span":{"data":{"file_id":2,"beg":{"line":466,"col":29},"end":{"line":466,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":76,"name":null,"span":{"data":{"file_id":2,"beg":{"line":466,"col":30},"end":{"line":466,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":77,"name":"r1","span":{"data":{"file_id":2,"beg":{"line":467,"col":12},"end":{"line":467,"col":14}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":78,"name":null,"span":{"data":{"file_id":2,"beg":{"line":467,"col":17},"end":{"line":467,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":79,"name":"r0","span":{"data":{"file_id":2,"beg":{"line":469,"col":13},"end":{"line":469,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":80,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":469,"col":17},"end":{"line":469,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":81,"name":null,"span":{"data":{"file_id":2,"beg":{"line":469,"col":26},"end":{"line":469,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":82,"name":null,"span":{"data":{"file_id":2,"beg":{"line":469,"col":33},"end":{"line":469,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":83,"name":null,"span":{"data":{"file_id":2,"beg":{"line":469,"col":40},"end":{"line":469,"col":41}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":84,"name":null,"span":{"data":{"file_id":2,"beg":{"line":469,"col":44},"end":{"line":469,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":85,"name":null,"span":{"data":{"file_id":2,"beg":{"line":469,"col":51},"end":{"line":469,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":86,"name":"r1","span":{"data":{"file_id":2,"beg":{"line":470,"col":13},"end":{"line":470,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":87,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":470,"col":17},"end":{"line":470,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":88,"name":null,"span":{"data":{"file_id":2,"beg":{"line":470,"col":26},"end":{"line":470,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":89,"name":null,"span":{"data":{"file_id":2,"beg":{"line":470,"col":33},"end":{"line":470,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":90,"name":null,"span":{"data":{"file_id":2,"beg":{"line":470,"col":37},"end":{"line":470,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":91,"name":"r2","span":{"data":{"file_id":2,"beg":{"line":471,"col":13},"end":{"line":471,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":92,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":471,"col":17},"end":{"line":471,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":93,"name":null,"span":{"data":{"file_id":2,"beg":{"line":471,"col":26},"end":{"line":471,"col":62}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":94,"name":null,"span":{"data":{"file_id":2,"beg":{"line":471,"col":30},"end":{"line":471,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":95,"name":null,"span":{"data":{"file_id":2,"beg":{"line":471,"col":34},"end":{"line":471,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":96,"name":null,"span":{"data":{"file_id":2,"beg":{"line":471,"col":41},"end":{"line":471,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":97,"name":null,"span":{"data":{"file_id":2,"beg":{"line":471,"col":45},"end":{"line":471,"col":54}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":98,"name":null,"span":{"data":{"file_id":2,"beg":{"line":471,"col":52},"end":{"line":471,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":99,"name":null,"span":{"data":{"file_id":2,"beg":{"line":471,"col":56},"end":{"line":471,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":100,"name":"r3","span":{"data":{"file_id":2,"beg":{"line":472,"col":13},"end":{"line":472,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":101,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":472,"col":17},"end":{"line":472,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":102,"name":null,"span":{"data":{"file_id":2,"beg":{"line":472,"col":26},"end":{"line":472,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":103,"name":null,"span":{"data":{"file_id":2,"beg":{"line":472,"col":33},"end":{"line":472,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":104,"name":null,"span":{"data":{"file_id":2,"beg":{"line":472,"col":37},"end":{"line":472,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":105,"name":"r4","span":{"data":{"file_id":2,"beg":{"line":473,"col":13},"end":{"line":473,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":106,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":473,"col":17},"end":{"line":473,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":107,"name":null,"span":{"data":{"file_id":2,"beg":{"line":473,"col":26},"end":{"line":473,"col":62}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":108,"name":null,"span":{"data":{"file_id":2,"beg":{"line":473,"col":30},"end":{"line":473,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":109,"name":null,"span":{"data":{"file_id":2,"beg":{"line":473,"col":34},"end":{"line":473,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":110,"name":null,"span":{"data":{"file_id":2,"beg":{"line":473,"col":41},"end":{"line":473,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":111,"name":null,"span":{"data":{"file_id":2,"beg":{"line":473,"col":45},"end":{"line":473,"col":54}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":112,"name":null,"span":{"data":{"file_id":2,"beg":{"line":473,"col":52},"end":{"line":473,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":113,"name":null,"span":{"data":{"file_id":2,"beg":{"line":473,"col":56},"end":{"line":473,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":114,"name":"r5","span":{"data":{"file_id":2,"beg":{"line":474,"col":13},"end":{"line":474,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":115,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":474,"col":17},"end":{"line":474,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":116,"name":null,"span":{"data":{"file_id":2,"beg":{"line":474,"col":26},"end":{"line":474,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":117,"name":null,"span":{"data":{"file_id":2,"beg":{"line":474,"col":33},"end":{"line":474,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":118,"name":null,"span":{"data":{"file_id":2,"beg":{"line":474,"col":37},"end":{"line":474,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":119,"name":"r6","span":{"data":{"file_id":2,"beg":{"line":475,"col":13},"end":{"line":475,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":120,"name":"carry","span":{"data":{"file_id":2,"beg":{"line":475,"col":17},"end":{"line":475,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":121,"name":null,"span":{"data":{"file_id":2,"beg":{"line":475,"col":26},"end":{"line":475,"col":62}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":122,"name":null,"span":{"data":{"file_id":2,"beg":{"line":475,"col":30},"end":{"line":475,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":123,"name":null,"span":{"data":{"file_id":2,"beg":{"line":475,"col":34},"end":{"line":475,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":124,"name":null,"span":{"data":{"file_id":2,"beg":{"line":475,"col":41},"end":{"line":475,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":125,"name":null,"span":{"data":{"file_id":2,"beg":{"line":475,"col":45},"end":{"line":475,"col":54}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":126,"name":null,"span":{"data":{"file_id":2,"beg":{"line":475,"col":52},"end":{"line":475,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":127,"name":null,"span":{"data":{"file_id":2,"beg":{"line":475,"col":56},"end":{"line":475,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":128,"name":"r7","span":{"data":{"file_id":2,"beg":{"line":476,"col":13},"end":{"line":476,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":129,"name":null,"span":{"data":{"file_id":2,"beg":{"line":476,"col":22},"end":{"line":476,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":130,"name":null,"span":{"data":{"file_id":2,"beg":{"line":476,"col":29},"end":{"line":476,"col":31}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":131,"name":null,"span":{"data":{"file_id":2,"beg":{"line":476,"col":33},"end":{"line":476,"col":38}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":132,"name":null,"span":{"data":{"file_id":2,"beg":{"line":478,"col":9},"end":{"line":478,"col":11}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":133,"name":null,"span":{"data":{"file_id":2,"beg":{"line":478,"col":13},"end":{"line":478,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":134,"name":null,"span":{"data":{"file_id":2,"beg":{"line":478,"col":17},"end":{"line":478,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":135,"name":null,"span":{"data":{"file_id":2,"beg":{"line":478,"col":21},"end":{"line":478,"col":23}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":136,"name":null,"span":{"data":{"file_id":2,"beg":{"line":478,"col":25},"end":{"line":478,"col":27}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":137,"name":null,"span":{"data":{"file_id":2,"beg":{"line":478,"col":29},"end":{"line":478,"col":31}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":138,"name":null,"span":{"data":{"file_id":2,"beg":{"line":478,"col":33},"end":{"line":478,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":139,"name":null,"span":{"data":{"file_id":2,"beg":{"line":478,"col":37},"end":{"line":478,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"index":150,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":151,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}},{"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":6167}},{"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":7281}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":452,"col":13},"end":{"line":479,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":452,"col":26},"end":{"line":452,"col":57}},"generated_from_span":null},"id":2597,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":452,"col":33},"end":{"line":452,"col":42}},"generated_from_span":null},"id":2598,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":452,"col":40},"end":{"line":452,"col":41}},"generated_from_span":null},"id":2599,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":452,"col":40},"end":{"line":452,"col":41}},"generated_from_span":null},"id":2600,"kind":{"Assign":[{"kind":{"Local":6},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":452,"col":33},"end":{"line":452,"col":42}},"generated_from_span":null},"id":4461,"kind":{"StorageLive":140},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":452,"col":33},"end":{"line":452,"col":42}},"generated_from_span":null},"id":4462,"kind":{"Assign":[{"kind":{"Local":140},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":452,"col":33},"end":{"line":452,"col":42}},"generated_from_span":null},"id":4463,"kind":{"StorageLive":141},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":452,"col":33},"end":{"line":452,"col":42}},"generated_from_span":null},"id":4464,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":140},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":6},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":141},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":452,"col":33},"end":{"line":452,"col":42}},"generated_from_span":null},"id":2603,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":141},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":452,"col":44},"end":{"line":452,"col":53}},"generated_from_span":null},"id":2604,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":452,"col":51},"end":{"line":452,"col":52}},"generated_from_span":null},"id":2605,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":452,"col":51},"end":{"line":452,"col":52}},"generated_from_span":null},"id":2606,"kind":{"Assign":[{"kind":{"Local":8},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":452,"col":44},"end":{"line":452,"col":53}},"generated_from_span":null},"id":4465,"kind":{"StorageLive":142},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":452,"col":44},"end":{"line":452,"col":53}},"generated_from_span":null},"id":4466,"kind":{"Assign":[{"kind":{"Local":142},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":452,"col":44},"end":{"line":452,"col":53}},"generated_from_span":null},"id":4467,"kind":{"StorageLive":143},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":452,"col":44},"end":{"line":452,"col":53}},"generated_from_span":null},"id":4468,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":142},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":8},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":143},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":452,"col":44},"end":{"line":452,"col":53}},"generated_from_span":null},"id":2609,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":143},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":452,"col":26},"end":{"line":452,"col":57}},"generated_from_span":null},"id":2610,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":5},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":7},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":4},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":452,"col":56},"end":{"line":452,"col":57}},"generated_from_span":null},"id":2611,"kind":{"StorageDead":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":452,"col":56},"end":{"line":452,"col":57}},"generated_from_span":null},"id":2612,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":452,"col":13},"end":{"line":452,"col":15}},"generated_from_span":null},"id":2613,"kind":{"StorageLive":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":452,"col":13},"end":{"line":452,"col":15}},"generated_from_span":null},"id":2614,"kind":{"Assign":[{"kind":{"Local":2},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":4},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":452,"col":17},"end":{"line":452,"col":22}},"generated_from_span":null},"id":2615,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":452,"col":17},"end":{"line":452,"col":22}},"generated_from_span":null},"id":2616,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":4},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":452,"col":57},"end":{"line":452,"col":58}},"generated_from_span":null},"id":2617,"kind":{"StorageDead":8},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":452,"col":57},"end":{"line":452,"col":58}},"generated_from_span":null},"id":2618,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":452,"col":57},"end":{"line":452,"col":58}},"generated_from_span":null},"id":2619,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":453,"col":26},"end":{"line":453,"col":61}},"generated_from_span":null},"id":2620,"kind":{"StorageLive":11},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":453,"col":33},"end":{"line":453,"col":42}},"generated_from_span":null},"id":2621,"kind":{"StorageLive":12},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":453,"col":40},"end":{"line":453,"col":41}},"generated_from_span":null},"id":2622,"kind":{"StorageLive":13},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":453,"col":40},"end":{"line":453,"col":41}},"generated_from_span":null},"id":2623,"kind":{"Assign":[{"kind":{"Local":13},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":453,"col":33},"end":{"line":453,"col":42}},"generated_from_span":null},"id":4469,"kind":{"StorageLive":144},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":453,"col":33},"end":{"line":453,"col":42}},"generated_from_span":null},"id":4470,"kind":{"Assign":[{"kind":{"Local":144},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":453,"col":33},"end":{"line":453,"col":42}},"generated_from_span":null},"id":4471,"kind":{"StorageLive":145},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":453,"col":33},"end":{"line":453,"col":42}},"generated_from_span":null},"id":4472,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":144},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":13},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":145},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":453,"col":33},"end":{"line":453,"col":42}},"generated_from_span":null},"id":2626,"kind":{"Assign":[{"kind":{"Local":12},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":145},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":453,"col":44},"end":{"line":453,"col":53}},"generated_from_span":null},"id":2627,"kind":{"StorageLive":14},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":453,"col":51},"end":{"line":453,"col":52}},"generated_from_span":null},"id":2628,"kind":{"StorageLive":15},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":453,"col":51},"end":{"line":453,"col":52}},"generated_from_span":null},"id":2629,"kind":{"Assign":[{"kind":{"Local":15},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":453,"col":44},"end":{"line":453,"col":53}},"generated_from_span":null},"id":4473,"kind":{"StorageLive":146},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":453,"col":44},"end":{"line":453,"col":53}},"generated_from_span":null},"id":4474,"kind":{"Assign":[{"kind":{"Local":146},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":453,"col":44},"end":{"line":453,"col":53}},"generated_from_span":null},"id":4475,"kind":{"StorageLive":147},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":453,"col":44},"end":{"line":453,"col":53}},"generated_from_span":null},"id":4476,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":146},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":15},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":147},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":453,"col":44},"end":{"line":453,"col":53}},"generated_from_span":null},"id":2632,"kind":{"Assign":[{"kind":{"Local":14},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":147},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":453,"col":55},"end":{"line":453,"col":60}},"generated_from_span":null},"id":2633,"kind":{"StorageLive":16},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":453,"col":55},"end":{"line":453,"col":60}},"generated_from_span":null},"id":2634,"kind":{"Assign":[{"kind":{"Local":16},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":3},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":453,"col":26},"end":{"line":453,"col":61}},"generated_from_span":null},"id":2635,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":12},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":14},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":16},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":11},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":453,"col":60},"end":{"line":453,"col":61}},"generated_from_span":null},"id":2636,"kind":{"StorageDead":16},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":453,"col":60},"end":{"line":453,"col":61}},"generated_from_span":null},"id":2637,"kind":{"StorageDead":14},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":453,"col":60},"end":{"line":453,"col":61}},"generated_from_span":null},"id":2638,"kind":{"StorageDead":12},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":453,"col":13},"end":{"line":453,"col":15}},"generated_from_span":null},"id":2639,"kind":{"StorageLive":9},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":453,"col":13},"end":{"line":453,"col":15}},"generated_from_span":null},"id":2640,"kind":{"Assign":[{"kind":{"Local":9},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":11},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":453,"col":17},"end":{"line":453,"col":22}},"generated_from_span":null},"id":2641,"kind":{"StorageLive":10},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":453,"col":17},"end":{"line":453,"col":22}},"generated_from_span":null},"id":2642,"kind":{"Assign":[{"kind":{"Local":10},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":11},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":453,"col":61},"end":{"line":453,"col":62}},"generated_from_span":null},"id":2643,"kind":{"StorageDead":15},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":453,"col":61},"end":{"line":453,"col":62}},"generated_from_span":null},"id":2644,"kind":{"StorageDead":13},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":453,"col":61},"end":{"line":453,"col":62}},"generated_from_span":null},"id":2645,"kind":{"StorageDead":11},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":454,"col":23},"end":{"line":454,"col":58}},"generated_from_span":null},"id":2646,"kind":{"StorageLive":19},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":454,"col":30},"end":{"line":454,"col":39}},"generated_from_span":null},"id":2647,"kind":{"StorageLive":20},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":454,"col":37},"end":{"line":454,"col":38}},"generated_from_span":null},"id":2648,"kind":{"StorageLive":21},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":454,"col":37},"end":{"line":454,"col":38}},"generated_from_span":null},"id":2649,"kind":{"Assign":[{"kind":{"Local":21},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":454,"col":30},"end":{"line":454,"col":39}},"generated_from_span":null},"id":4477,"kind":{"StorageLive":148},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":454,"col":30},"end":{"line":454,"col":39}},"generated_from_span":null},"id":4478,"kind":{"Assign":[{"kind":{"Local":148},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":454,"col":30},"end":{"line":454,"col":39}},"generated_from_span":null},"id":4479,"kind":{"StorageLive":149},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":454,"col":30},"end":{"line":454,"col":39}},"generated_from_span":null},"id":4480,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":148},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":21},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":149},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":454,"col":30},"end":{"line":454,"col":39}},"generated_from_span":null},"id":2652,"kind":{"Assign":[{"kind":{"Local":20},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":149},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":454,"col":41},"end":{"line":454,"col":50}},"generated_from_span":null},"id":2653,"kind":{"StorageLive":22},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":454,"col":48},"end":{"line":454,"col":49}},"generated_from_span":null},"id":2654,"kind":{"StorageLive":23},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":454,"col":48},"end":{"line":454,"col":49}},"generated_from_span":null},"id":2655,"kind":{"Assign":[{"kind":{"Local":23},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":454,"col":41},"end":{"line":454,"col":50}},"generated_from_span":null},"id":4481,"kind":{"StorageLive":150},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":454,"col":41},"end":{"line":454,"col":50}},"generated_from_span":null},"id":4482,"kind":{"Assign":[{"kind":{"Local":150},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":454,"col":41},"end":{"line":454,"col":50}},"generated_from_span":null},"id":4483,"kind":{"StorageLive":151},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":454,"col":41},"end":{"line":454,"col":50}},"generated_from_span":null},"id":4484,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":150},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":23},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":151},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":454,"col":41},"end":{"line":454,"col":50}},"generated_from_span":null},"id":2658,"kind":{"Assign":[{"kind":{"Local":22},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":151},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":454,"col":52},"end":{"line":454,"col":57}},"generated_from_span":null},"id":2659,"kind":{"StorageLive":24},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":454,"col":52},"end":{"line":454,"col":57}},"generated_from_span":null},"id":2660,"kind":{"Assign":[{"kind":{"Local":24},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":10},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":454,"col":23},"end":{"line":454,"col":58}},"generated_from_span":null},"id":2661,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":20},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":22},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":24},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":19},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":454,"col":57},"end":{"line":454,"col":58}},"generated_from_span":null},"id":2662,"kind":{"StorageDead":24},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":454,"col":57},"end":{"line":454,"col":58}},"generated_from_span":null},"id":2663,"kind":{"StorageDead":22},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":454,"col":57},"end":{"line":454,"col":58}},"generated_from_span":null},"id":2664,"kind":{"StorageDead":20},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":454,"col":13},"end":{"line":454,"col":15}},"generated_from_span":null},"id":2665,"kind":{"StorageLive":17},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":454,"col":13},"end":{"line":454,"col":15}},"generated_from_span":null},"id":2666,"kind":{"Assign":[{"kind":{"Local":17},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":19},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":454,"col":17},"end":{"line":454,"col":19}},"generated_from_span":null},"id":2667,"kind":{"StorageLive":18},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":454,"col":17},"end":{"line":454,"col":19}},"generated_from_span":null},"id":2668,"kind":{"Assign":[{"kind":{"Local":18},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":19},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":454,"col":58},"end":{"line":454,"col":59}},"generated_from_span":null},"id":2669,"kind":{"StorageDead":23},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":454,"col":58},"end":{"line":454,"col":59}},"generated_from_span":null},"id":2670,"kind":{"StorageDead":21},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":454,"col":58},"end":{"line":454,"col":59}},"generated_from_span":null},"id":2671,"kind":{"StorageDead":19},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":456,"col":26},"end":{"line":456,"col":58}},"generated_from_span":null},"id":2672,"kind":{"StorageLive":27},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":456,"col":30},"end":{"line":456,"col":32}},"generated_from_span":null},"id":2673,"kind":{"StorageLive":28},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":456,"col":30},"end":{"line":456,"col":32}},"generated_from_span":null},"id":2674,"kind":{"Assign":[{"kind":{"Local":28},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":17},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":456,"col":34},"end":{"line":456,"col":43}},"generated_from_span":null},"id":2675,"kind":{"StorageLive":29},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":456,"col":41},"end":{"line":456,"col":42}},"generated_from_span":null},"id":2676,"kind":{"StorageLive":30},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":456,"col":41},"end":{"line":456,"col":42}},"generated_from_span":null},"id":2677,"kind":{"Assign":[{"kind":{"Local":30},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":456,"col":34},"end":{"line":456,"col":43}},"generated_from_span":null},"id":4485,"kind":{"StorageLive":152},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":456,"col":34},"end":{"line":456,"col":43}},"generated_from_span":null},"id":4486,"kind":{"Assign":[{"kind":{"Local":152},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":456,"col":34},"end":{"line":456,"col":43}},"generated_from_span":null},"id":4487,"kind":{"StorageLive":153},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":456,"col":34},"end":{"line":456,"col":43}},"generated_from_span":null},"id":4488,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":152},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":30},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":153},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":456,"col":34},"end":{"line":456,"col":43}},"generated_from_span":null},"id":2680,"kind":{"Assign":[{"kind":{"Local":29},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":153},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":456,"col":45},"end":{"line":456,"col":54}},"generated_from_span":null},"id":2681,"kind":{"StorageLive":31},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":456,"col":52},"end":{"line":456,"col":53}},"generated_from_span":null},"id":2682,"kind":{"StorageLive":32},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":456,"col":52},"end":{"line":456,"col":53}},"generated_from_span":null},"id":2683,"kind":{"Assign":[{"kind":{"Local":32},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":456,"col":45},"end":{"line":456,"col":54}},"generated_from_span":null},"id":4489,"kind":{"StorageLive":154},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":456,"col":45},"end":{"line":456,"col":54}},"generated_from_span":null},"id":4490,"kind":{"Assign":[{"kind":{"Local":154},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":456,"col":45},"end":{"line":456,"col":54}},"generated_from_span":null},"id":4491,"kind":{"StorageLive":155},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":456,"col":45},"end":{"line":456,"col":54}},"generated_from_span":null},"id":4492,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":154},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":32},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":155},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":456,"col":45},"end":{"line":456,"col":54}},"generated_from_span":null},"id":2686,"kind":{"Assign":[{"kind":{"Local":31},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":155},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":456,"col":26},"end":{"line":456,"col":58}},"generated_from_span":null},"id":2687,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":28},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":29},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":31},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":27},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":456,"col":57},"end":{"line":456,"col":58}},"generated_from_span":null},"id":2688,"kind":{"StorageDead":31},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":456,"col":57},"end":{"line":456,"col":58}},"generated_from_span":null},"id":2689,"kind":{"StorageDead":29},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":456,"col":57},"end":{"line":456,"col":58}},"generated_from_span":null},"id":2690,"kind":{"StorageDead":28},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":456,"col":13},"end":{"line":456,"col":15}},"generated_from_span":null},"id":2691,"kind":{"StorageLive":25},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":456,"col":13},"end":{"line":456,"col":15}},"generated_from_span":null},"id":2692,"kind":{"Assign":[{"kind":{"Local":25},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":27},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":456,"col":17},"end":{"line":456,"col":22}},"generated_from_span":null},"id":2693,"kind":{"StorageLive":26},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":456,"col":17},"end":{"line":456,"col":22}},"generated_from_span":null},"id":2694,"kind":{"Assign":[{"kind":{"Local":26},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":27},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":456,"col":58},"end":{"line":456,"col":59}},"generated_from_span":null},"id":2695,"kind":{"StorageDead":32},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":456,"col":58},"end":{"line":456,"col":59}},"generated_from_span":null},"id":2696,"kind":{"StorageDead":30},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":456,"col":58},"end":{"line":456,"col":59}},"generated_from_span":null},"id":2697,"kind":{"StorageDead":27},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":457,"col":23},"end":{"line":457,"col":59}},"generated_from_span":null},"id":2698,"kind":{"StorageLive":35},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":457,"col":27},"end":{"line":457,"col":29}},"generated_from_span":null},"id":2699,"kind":{"StorageLive":36},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":457,"col":27},"end":{"line":457,"col":29}},"generated_from_span":null},"id":2700,"kind":{"Assign":[{"kind":{"Local":36},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":18},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":457,"col":31},"end":{"line":457,"col":40}},"generated_from_span":null},"id":2701,"kind":{"StorageLive":37},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":457,"col":38},"end":{"line":457,"col":39}},"generated_from_span":null},"id":2702,"kind":{"StorageLive":38},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":457,"col":38},"end":{"line":457,"col":39}},"generated_from_span":null},"id":2703,"kind":{"Assign":[{"kind":{"Local":38},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":457,"col":31},"end":{"line":457,"col":40}},"generated_from_span":null},"id":4493,"kind":{"StorageLive":156},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":457,"col":31},"end":{"line":457,"col":40}},"generated_from_span":null},"id":4494,"kind":{"Assign":[{"kind":{"Local":156},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":457,"col":31},"end":{"line":457,"col":40}},"generated_from_span":null},"id":4495,"kind":{"StorageLive":157},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":457,"col":31},"end":{"line":457,"col":40}},"generated_from_span":null},"id":4496,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":156},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":38},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":157},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":457,"col":31},"end":{"line":457,"col":40}},"generated_from_span":null},"id":2706,"kind":{"Assign":[{"kind":{"Local":37},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":157},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":457,"col":42},"end":{"line":457,"col":51}},"generated_from_span":null},"id":2707,"kind":{"StorageLive":39},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":457,"col":49},"end":{"line":457,"col":50}},"generated_from_span":null},"id":2708,"kind":{"StorageLive":40},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":457,"col":49},"end":{"line":457,"col":50}},"generated_from_span":null},"id":2709,"kind":{"Assign":[{"kind":{"Local":40},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":457,"col":42},"end":{"line":457,"col":51}},"generated_from_span":null},"id":4497,"kind":{"StorageLive":158},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":457,"col":42},"end":{"line":457,"col":51}},"generated_from_span":null},"id":4498,"kind":{"Assign":[{"kind":{"Local":158},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":457,"col":42},"end":{"line":457,"col":51}},"generated_from_span":null},"id":4499,"kind":{"StorageLive":159},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":457,"col":42},"end":{"line":457,"col":51}},"generated_from_span":null},"id":4500,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":158},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":40},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":159},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":457,"col":42},"end":{"line":457,"col":51}},"generated_from_span":null},"id":2712,"kind":{"Assign":[{"kind":{"Local":39},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":159},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":457,"col":53},"end":{"line":457,"col":58}},"generated_from_span":null},"id":2713,"kind":{"StorageLive":41},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":457,"col":53},"end":{"line":457,"col":58}},"generated_from_span":null},"id":2714,"kind":{"Assign":[{"kind":{"Local":41},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":26},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":457,"col":23},"end":{"line":457,"col":59}},"generated_from_span":null},"id":2715,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":36},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":37},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":39},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":41},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":35},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":457,"col":58},"end":{"line":457,"col":59}},"generated_from_span":null},"id":2716,"kind":{"StorageDead":41},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":457,"col":58},"end":{"line":457,"col":59}},"generated_from_span":null},"id":2717,"kind":{"StorageDead":39},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":457,"col":58},"end":{"line":457,"col":59}},"generated_from_span":null},"id":2718,"kind":{"StorageDead":37},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":457,"col":58},"end":{"line":457,"col":59}},"generated_from_span":null},"id":2719,"kind":{"StorageDead":36},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":457,"col":13},"end":{"line":457,"col":15}},"generated_from_span":null},"id":2720,"kind":{"StorageLive":33},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":457,"col":13},"end":{"line":457,"col":15}},"generated_from_span":null},"id":2721,"kind":{"Assign":[{"kind":{"Local":33},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":35},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":457,"col":17},"end":{"line":457,"col":19}},"generated_from_span":null},"id":2722,"kind":{"StorageLive":34},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":457,"col":17},"end":{"line":457,"col":19}},"generated_from_span":null},"id":2723,"kind":{"Assign":[{"kind":{"Local":34},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":35},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":457,"col":59},"end":{"line":457,"col":60}},"generated_from_span":null},"id":2724,"kind":{"StorageDead":40},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":457,"col":59},"end":{"line":457,"col":60}},"generated_from_span":null},"id":2725,"kind":{"StorageDead":38},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":457,"col":59},"end":{"line":457,"col":60}},"generated_from_span":null},"id":2726,"kind":{"StorageDead":35},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":459,"col":23},"end":{"line":459,"col":55}},"generated_from_span":null},"id":2727,"kind":{"StorageLive":44},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":459,"col":27},"end":{"line":459,"col":29}},"generated_from_span":null},"id":2728,"kind":{"StorageLive":45},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":459,"col":27},"end":{"line":459,"col":29}},"generated_from_span":null},"id":2729,"kind":{"Assign":[{"kind":{"Local":45},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":34},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":459,"col":31},"end":{"line":459,"col":40}},"generated_from_span":null},"id":2730,"kind":{"StorageLive":46},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":459,"col":38},"end":{"line":459,"col":39}},"generated_from_span":null},"id":2731,"kind":{"StorageLive":47},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":459,"col":38},"end":{"line":459,"col":39}},"generated_from_span":null},"id":2732,"kind":{"Assign":[{"kind":{"Local":47},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":459,"col":31},"end":{"line":459,"col":40}},"generated_from_span":null},"id":4501,"kind":{"StorageLive":160},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":459,"col":31},"end":{"line":459,"col":40}},"generated_from_span":null},"id":4502,"kind":{"Assign":[{"kind":{"Local":160},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":459,"col":31},"end":{"line":459,"col":40}},"generated_from_span":null},"id":4503,"kind":{"StorageLive":161},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":459,"col":31},"end":{"line":459,"col":40}},"generated_from_span":null},"id":4504,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":160},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":47},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":161},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":459,"col":31},"end":{"line":459,"col":40}},"generated_from_span":null},"id":2735,"kind":{"Assign":[{"kind":{"Local":46},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":161},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":459,"col":42},"end":{"line":459,"col":51}},"generated_from_span":null},"id":2736,"kind":{"StorageLive":48},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":459,"col":49},"end":{"line":459,"col":50}},"generated_from_span":null},"id":2737,"kind":{"StorageLive":49},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":459,"col":49},"end":{"line":459,"col":50}},"generated_from_span":null},"id":2738,"kind":{"Assign":[{"kind":{"Local":49},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":459,"col":42},"end":{"line":459,"col":51}},"generated_from_span":null},"id":4505,"kind":{"StorageLive":162},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":459,"col":42},"end":{"line":459,"col":51}},"generated_from_span":null},"id":4506,"kind":{"Assign":[{"kind":{"Local":162},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":459,"col":42},"end":{"line":459,"col":51}},"generated_from_span":null},"id":4507,"kind":{"StorageLive":163},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":459,"col":42},"end":{"line":459,"col":51}},"generated_from_span":null},"id":4508,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":162},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":49},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":163},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":459,"col":42},"end":{"line":459,"col":51}},"generated_from_span":null},"id":2741,"kind":{"Assign":[{"kind":{"Local":48},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":163},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":459,"col":23},"end":{"line":459,"col":55}},"generated_from_span":null},"id":2742,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":45},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":46},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":48},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":44},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":459,"col":54},"end":{"line":459,"col":55}},"generated_from_span":null},"id":2743,"kind":{"StorageDead":48},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":459,"col":54},"end":{"line":459,"col":55}},"generated_from_span":null},"id":2744,"kind":{"StorageDead":46},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":459,"col":54},"end":{"line":459,"col":55}},"generated_from_span":null},"id":2745,"kind":{"StorageDead":45},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":459,"col":13},"end":{"line":459,"col":15}},"generated_from_span":null},"id":2746,"kind":{"StorageLive":42},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":459,"col":13},"end":{"line":459,"col":15}},"generated_from_span":null},"id":2747,"kind":{"Assign":[{"kind":{"Local":42},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":44},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":459,"col":17},"end":{"line":459,"col":19}},"generated_from_span":null},"id":2748,"kind":{"StorageLive":43},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":459,"col":17},"end":{"line":459,"col":19}},"generated_from_span":null},"id":2749,"kind":{"Assign":[{"kind":{"Local":43},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":44},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":459,"col":55},"end":{"line":459,"col":56}},"generated_from_span":null},"id":2750,"kind":{"StorageDead":49},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":459,"col":55},"end":{"line":459,"col":56}},"generated_from_span":null},"id":2751,"kind":{"StorageDead":47},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":459,"col":55},"end":{"line":459,"col":56}},"generated_from_span":null},"id":2752,"kind":{"StorageDead":44},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":461,"col":12},"end":{"line":461,"col":14}},"generated_from_span":null},"id":2753,"kind":{"StorageLive":50},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":461,"col":17},"end":{"line":461,"col":19}},"generated_from_span":null},"id":2754,"kind":{"StorageLive":51},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":461,"col":17},"end":{"line":461,"col":19}},"generated_from_span":null},"id":2755,"kind":{"Assign":[{"kind":{"Local":51},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":43},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":461,"col":17},"end":{"line":461,"col":25}},"generated_from_span":null},"id":2759,"kind":{"Assign":[{"kind":{"Local":50},"ty":{"Deduplicated":1072}},{"BinaryOp":[{"Shr":"Panic"},{"Move":{"kind":{"Local":51},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","63"]}}},"ty":{"HashConsedValue":[4754,{"Literal":{"Int":"I32"}}]}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":461,"col":24},"end":{"line":461,"col":25}},"generated_from_span":null},"id":2760,"kind":{"StorageDead":51},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":462,"col":12},"end":{"line":462,"col":14}},"generated_from_span":null},"id":2761,"kind":{"StorageLive":52},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":462,"col":17},"end":{"line":462,"col":26}},"generated_from_span":null},"id":2762,"kind":{"StorageLive":53},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":462,"col":18},"end":{"line":462,"col":20}},"generated_from_span":null},"id":2763,"kind":{"StorageLive":54},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":462,"col":18},"end":{"line":462,"col":20}},"generated_from_span":null},"id":2764,"kind":{"Assign":[{"kind":{"Local":54},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":43},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":462,"col":17},"end":{"line":462,"col":26}},"generated_from_span":null},"id":2768,"kind":{"Assign":[{"kind":{"Local":53},"ty":{"Deduplicated":1072}},{"BinaryOp":[{"Shl":"Panic"},{"Move":{"kind":{"Local":54},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","1"]}}},"ty":{"Deduplicated":4754}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":462,"col":25},"end":{"line":462,"col":26}},"generated_from_span":null},"id":2769,"kind":{"StorageDead":54},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":462,"col":29},"end":{"line":462,"col":39}},"generated_from_span":null},"id":2770,"kind":{"StorageLive":55},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":462,"col":30},"end":{"line":462,"col":32}},"generated_from_span":null},"id":2771,"kind":{"StorageLive":56},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":462,"col":30},"end":{"line":462,"col":32}},"generated_from_span":null},"id":2772,"kind":{"Assign":[{"kind":{"Local":56},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":42},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":462,"col":29},"end":{"line":462,"col":39}},"generated_from_span":null},"id":2776,"kind":{"Assign":[{"kind":{"Local":55},"ty":{"Deduplicated":1072}},{"BinaryOp":[{"Shr":"Panic"},{"Move":{"kind":{"Local":56},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","63"]}}},"ty":{"Deduplicated":4754}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":462,"col":38},"end":{"line":462,"col":39}},"generated_from_span":null},"id":2777,"kind":{"StorageDead":56},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":462,"col":17},"end":{"line":462,"col":39}},"generated_from_span":null},"id":2778,"kind":{"Assign":[{"kind":{"Local":52},"ty":{"Deduplicated":1072}},{"BinaryOp":["BitOr",{"Move":{"kind":{"Local":53},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":55},"ty":{"Deduplicated":1072}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":462,"col":38},"end":{"line":462,"col":39}},"generated_from_span":null},"id":2779,"kind":{"StorageDead":55},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":462,"col":38},"end":{"line":462,"col":39}},"generated_from_span":null},"id":2780,"kind":{"StorageDead":53},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":463,"col":12},"end":{"line":463,"col":14}},"generated_from_span":null},"id":2781,"kind":{"StorageLive":57},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":463,"col":17},"end":{"line":463,"col":26}},"generated_from_span":null},"id":2782,"kind":{"StorageLive":58},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":463,"col":18},"end":{"line":463,"col":20}},"generated_from_span":null},"id":2783,"kind":{"StorageLive":59},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":463,"col":18},"end":{"line":463,"col":20}},"generated_from_span":null},"id":2784,"kind":{"Assign":[{"kind":{"Local":59},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":42},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":463,"col":17},"end":{"line":463,"col":26}},"generated_from_span":null},"id":2788,"kind":{"Assign":[{"kind":{"Local":58},"ty":{"Deduplicated":1072}},{"BinaryOp":[{"Shl":"Panic"},{"Move":{"kind":{"Local":59},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","1"]}}},"ty":{"Deduplicated":4754}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":463,"col":25},"end":{"line":463,"col":26}},"generated_from_span":null},"id":2789,"kind":{"StorageDead":59},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":463,"col":29},"end":{"line":463,"col":39}},"generated_from_span":null},"id":2790,"kind":{"StorageLive":60},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":463,"col":30},"end":{"line":463,"col":32}},"generated_from_span":null},"id":2791,"kind":{"StorageLive":61},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":463,"col":30},"end":{"line":463,"col":32}},"generated_from_span":null},"id":2792,"kind":{"Assign":[{"kind":{"Local":61},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":33},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":463,"col":29},"end":{"line":463,"col":39}},"generated_from_span":null},"id":2796,"kind":{"Assign":[{"kind":{"Local":60},"ty":{"Deduplicated":1072}},{"BinaryOp":[{"Shr":"Panic"},{"Move":{"kind":{"Local":61},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","63"]}}},"ty":{"Deduplicated":4754}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":463,"col":38},"end":{"line":463,"col":39}},"generated_from_span":null},"id":2797,"kind":{"StorageDead":61},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":463,"col":17},"end":{"line":463,"col":39}},"generated_from_span":null},"id":2798,"kind":{"Assign":[{"kind":{"Local":57},"ty":{"Deduplicated":1072}},{"BinaryOp":["BitOr",{"Move":{"kind":{"Local":58},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":60},"ty":{"Deduplicated":1072}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":463,"col":38},"end":{"line":463,"col":39}},"generated_from_span":null},"id":2799,"kind":{"StorageDead":60},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":463,"col":38},"end":{"line":463,"col":39}},"generated_from_span":null},"id":2800,"kind":{"StorageDead":58},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":464,"col":12},"end":{"line":464,"col":14}},"generated_from_span":null},"id":2801,"kind":{"StorageLive":62},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":464,"col":17},"end":{"line":464,"col":26}},"generated_from_span":null},"id":2802,"kind":{"StorageLive":63},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":464,"col":18},"end":{"line":464,"col":20}},"generated_from_span":null},"id":2803,"kind":{"StorageLive":64},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":464,"col":18},"end":{"line":464,"col":20}},"generated_from_span":null},"id":2804,"kind":{"Assign":[{"kind":{"Local":64},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":33},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":464,"col":17},"end":{"line":464,"col":26}},"generated_from_span":null},"id":2808,"kind":{"Assign":[{"kind":{"Local":63},"ty":{"Deduplicated":1072}},{"BinaryOp":[{"Shl":"Panic"},{"Move":{"kind":{"Local":64},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","1"]}}},"ty":{"Deduplicated":4754}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":464,"col":25},"end":{"line":464,"col":26}},"generated_from_span":null},"id":2809,"kind":{"StorageDead":64},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":464,"col":29},"end":{"line":464,"col":39}},"generated_from_span":null},"id":2810,"kind":{"StorageLive":65},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":464,"col":30},"end":{"line":464,"col":32}},"generated_from_span":null},"id":2811,"kind":{"StorageLive":66},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":464,"col":30},"end":{"line":464,"col":32}},"generated_from_span":null},"id":2812,"kind":{"Assign":[{"kind":{"Local":66},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":25},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":464,"col":29},"end":{"line":464,"col":39}},"generated_from_span":null},"id":2816,"kind":{"Assign":[{"kind":{"Local":65},"ty":{"Deduplicated":1072}},{"BinaryOp":[{"Shr":"Panic"},{"Move":{"kind":{"Local":66},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","63"]}}},"ty":{"Deduplicated":4754}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":464,"col":38},"end":{"line":464,"col":39}},"generated_from_span":null},"id":2817,"kind":{"StorageDead":66},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":464,"col":17},"end":{"line":464,"col":39}},"generated_from_span":null},"id":2818,"kind":{"Assign":[{"kind":{"Local":62},"ty":{"Deduplicated":1072}},{"BinaryOp":["BitOr",{"Move":{"kind":{"Local":63},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":65},"ty":{"Deduplicated":1072}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":464,"col":38},"end":{"line":464,"col":39}},"generated_from_span":null},"id":2819,"kind":{"StorageDead":65},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":464,"col":38},"end":{"line":464,"col":39}},"generated_from_span":null},"id":2820,"kind":{"StorageDead":63},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":465,"col":12},"end":{"line":465,"col":14}},"generated_from_span":null},"id":2821,"kind":{"StorageLive":67},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":465,"col":17},"end":{"line":465,"col":26}},"generated_from_span":null},"id":2822,"kind":{"StorageLive":68},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":465,"col":18},"end":{"line":465,"col":20}},"generated_from_span":null},"id":2823,"kind":{"StorageLive":69},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":465,"col":18},"end":{"line":465,"col":20}},"generated_from_span":null},"id":2824,"kind":{"Assign":[{"kind":{"Local":69},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":25},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":465,"col":17},"end":{"line":465,"col":26}},"generated_from_span":null},"id":2828,"kind":{"Assign":[{"kind":{"Local":68},"ty":{"Deduplicated":1072}},{"BinaryOp":[{"Shl":"Panic"},{"Move":{"kind":{"Local":69},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","1"]}}},"ty":{"Deduplicated":4754}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":465,"col":25},"end":{"line":465,"col":26}},"generated_from_span":null},"id":2829,"kind":{"StorageDead":69},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":465,"col":29},"end":{"line":465,"col":39}},"generated_from_span":null},"id":2830,"kind":{"StorageLive":70},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":465,"col":30},"end":{"line":465,"col":32}},"generated_from_span":null},"id":2831,"kind":{"StorageLive":71},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":465,"col":30},"end":{"line":465,"col":32}},"generated_from_span":null},"id":2832,"kind":{"Assign":[{"kind":{"Local":71},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":9},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":465,"col":29},"end":{"line":465,"col":39}},"generated_from_span":null},"id":2836,"kind":{"Assign":[{"kind":{"Local":70},"ty":{"Deduplicated":1072}},{"BinaryOp":[{"Shr":"Panic"},{"Move":{"kind":{"Local":71},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","63"]}}},"ty":{"Deduplicated":4754}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":465,"col":38},"end":{"line":465,"col":39}},"generated_from_span":null},"id":2837,"kind":{"StorageDead":71},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":465,"col":17},"end":{"line":465,"col":39}},"generated_from_span":null},"id":2838,"kind":{"Assign":[{"kind":{"Local":67},"ty":{"Deduplicated":1072}},{"BinaryOp":["BitOr",{"Move":{"kind":{"Local":68},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":70},"ty":{"Deduplicated":1072}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":465,"col":38},"end":{"line":465,"col":39}},"generated_from_span":null},"id":2839,"kind":{"StorageDead":70},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":465,"col":38},"end":{"line":465,"col":39}},"generated_from_span":null},"id":2840,"kind":{"StorageDead":68},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":466,"col":12},"end":{"line":466,"col":14}},"generated_from_span":null},"id":2841,"kind":{"StorageLive":72},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":466,"col":17},"end":{"line":466,"col":26}},"generated_from_span":null},"id":2842,"kind":{"StorageLive":73},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":466,"col":18},"end":{"line":466,"col":20}},"generated_from_span":null},"id":2843,"kind":{"StorageLive":74},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":466,"col":18},"end":{"line":466,"col":20}},"generated_from_span":null},"id":2844,"kind":{"Assign":[{"kind":{"Local":74},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":9},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":466,"col":17},"end":{"line":466,"col":26}},"generated_from_span":null},"id":2848,"kind":{"Assign":[{"kind":{"Local":73},"ty":{"Deduplicated":1072}},{"BinaryOp":[{"Shl":"Panic"},{"Move":{"kind":{"Local":74},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","1"]}}},"ty":{"Deduplicated":4754}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":466,"col":25},"end":{"line":466,"col":26}},"generated_from_span":null},"id":2849,"kind":{"StorageDead":74},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":466,"col":29},"end":{"line":466,"col":39}},"generated_from_span":null},"id":2850,"kind":{"StorageLive":75},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":466,"col":30},"end":{"line":466,"col":32}},"generated_from_span":null},"id":2851,"kind":{"StorageLive":76},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":466,"col":30},"end":{"line":466,"col":32}},"generated_from_span":null},"id":2852,"kind":{"Assign":[{"kind":{"Local":76},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":2},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":466,"col":29},"end":{"line":466,"col":39}},"generated_from_span":null},"id":2856,"kind":{"Assign":[{"kind":{"Local":75},"ty":{"Deduplicated":1072}},{"BinaryOp":[{"Shr":"Panic"},{"Move":{"kind":{"Local":76},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","63"]}}},"ty":{"Deduplicated":4754}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":466,"col":38},"end":{"line":466,"col":39}},"generated_from_span":null},"id":2857,"kind":{"StorageDead":76},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":466,"col":17},"end":{"line":466,"col":39}},"generated_from_span":null},"id":2858,"kind":{"Assign":[{"kind":{"Local":72},"ty":{"Deduplicated":1072}},{"BinaryOp":["BitOr",{"Move":{"kind":{"Local":73},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":75},"ty":{"Deduplicated":1072}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":466,"col":38},"end":{"line":466,"col":39}},"generated_from_span":null},"id":2859,"kind":{"StorageDead":75},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":466,"col":38},"end":{"line":466,"col":39}},"generated_from_span":null},"id":2860,"kind":{"StorageDead":73},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":467,"col":12},"end":{"line":467,"col":14}},"generated_from_span":null},"id":2861,"kind":{"StorageLive":77},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":467,"col":17},"end":{"line":467,"col":19}},"generated_from_span":null},"id":2862,"kind":{"StorageLive":78},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":467,"col":17},"end":{"line":467,"col":19}},"generated_from_span":null},"id":2863,"kind":{"Assign":[{"kind":{"Local":78},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":2},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":467,"col":17},"end":{"line":467,"col":24}},"generated_from_span":null},"id":2867,"kind":{"Assign":[{"kind":{"Local":77},"ty":{"Deduplicated":1072}},{"BinaryOp":[{"Shl":"Panic"},{"Move":{"kind":{"Local":78},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","1"]}}},"ty":{"Deduplicated":4754}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":467,"col":23},"end":{"line":467,"col":24}},"generated_from_span":null},"id":2868,"kind":{"StorageDead":78},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":469,"col":26},"end":{"line":469,"col":57}},"generated_from_span":null},"id":2869,"kind":{"StorageLive":81},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":469,"col":33},"end":{"line":469,"col":42}},"generated_from_span":null},"id":2870,"kind":{"StorageLive":82},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":469,"col":40},"end":{"line":469,"col":41}},"generated_from_span":null},"id":2871,"kind":{"StorageLive":83},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":469,"col":40},"end":{"line":469,"col":41}},"generated_from_span":null},"id":2872,"kind":{"Assign":[{"kind":{"Local":83},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":469,"col":33},"end":{"line":469,"col":42}},"generated_from_span":null},"id":4509,"kind":{"StorageLive":164},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":469,"col":33},"end":{"line":469,"col":42}},"generated_from_span":null},"id":4510,"kind":{"Assign":[{"kind":{"Local":164},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":469,"col":33},"end":{"line":469,"col":42}},"generated_from_span":null},"id":4511,"kind":{"StorageLive":165},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":469,"col":33},"end":{"line":469,"col":42}},"generated_from_span":null},"id":4512,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":164},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":83},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":165},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":469,"col":33},"end":{"line":469,"col":42}},"generated_from_span":null},"id":2875,"kind":{"Assign":[{"kind":{"Local":82},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":165},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":469,"col":44},"end":{"line":469,"col":53}},"generated_from_span":null},"id":2876,"kind":{"StorageLive":84},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":469,"col":51},"end":{"line":469,"col":52}},"generated_from_span":null},"id":2877,"kind":{"StorageLive":85},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":469,"col":51},"end":{"line":469,"col":52}},"generated_from_span":null},"id":2878,"kind":{"Assign":[{"kind":{"Local":85},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":469,"col":44},"end":{"line":469,"col":53}},"generated_from_span":null},"id":4513,"kind":{"StorageLive":166},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":469,"col":44},"end":{"line":469,"col":53}},"generated_from_span":null},"id":4514,"kind":{"Assign":[{"kind":{"Local":166},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":469,"col":44},"end":{"line":469,"col":53}},"generated_from_span":null},"id":4515,"kind":{"StorageLive":167},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":469,"col":44},"end":{"line":469,"col":53}},"generated_from_span":null},"id":4516,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":166},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":85},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":167},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":469,"col":44},"end":{"line":469,"col":53}},"generated_from_span":null},"id":2881,"kind":{"Assign":[{"kind":{"Local":84},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":167},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":469,"col":26},"end":{"line":469,"col":57}},"generated_from_span":null},"id":2882,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":82},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":84},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":81},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":469,"col":56},"end":{"line":469,"col":57}},"generated_from_span":null},"id":2883,"kind":{"StorageDead":84},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":469,"col":56},"end":{"line":469,"col":57}},"generated_from_span":null},"id":2884,"kind":{"StorageDead":82},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":469,"col":13},"end":{"line":469,"col":15}},"generated_from_span":null},"id":2885,"kind":{"StorageLive":79},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":469,"col":13},"end":{"line":469,"col":15}},"generated_from_span":null},"id":2886,"kind":{"Assign":[{"kind":{"Local":79},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":81},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":469,"col":17},"end":{"line":469,"col":22}},"generated_from_span":null},"id":2887,"kind":{"StorageLive":80},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":469,"col":17},"end":{"line":469,"col":22}},"generated_from_span":null},"id":2888,"kind":{"Assign":[{"kind":{"Local":80},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":81},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":469,"col":57},"end":{"line":469,"col":58}},"generated_from_span":null},"id":2889,"kind":{"StorageDead":85},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":469,"col":57},"end":{"line":469,"col":58}},"generated_from_span":null},"id":2890,"kind":{"StorageDead":83},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":469,"col":57},"end":{"line":469,"col":58}},"generated_from_span":null},"id":2891,"kind":{"StorageDead":81},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":470,"col":26},"end":{"line":470,"col":43}},"generated_from_span":null},"id":2892,"kind":{"StorageLive":88},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":470,"col":33},"end":{"line":470,"col":35}},"generated_from_span":null},"id":2893,"kind":{"StorageLive":89},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":470,"col":33},"end":{"line":470,"col":35}},"generated_from_span":null},"id":2894,"kind":{"Assign":[{"kind":{"Local":89},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":77},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":470,"col":37},"end":{"line":470,"col":42}},"generated_from_span":null},"id":2895,"kind":{"StorageLive":90},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":470,"col":37},"end":{"line":470,"col":42}},"generated_from_span":null},"id":2896,"kind":{"Assign":[{"kind":{"Local":90},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":80},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":470,"col":26},"end":{"line":470,"col":43}},"generated_from_span":null},"id":2897,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":212}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":89},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":90},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":88},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":470,"col":42},"end":{"line":470,"col":43}},"generated_from_span":null},"id":2898,"kind":{"StorageDead":90},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":470,"col":42},"end":{"line":470,"col":43}},"generated_from_span":null},"id":2899,"kind":{"StorageDead":89},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":470,"col":13},"end":{"line":470,"col":15}},"generated_from_span":null},"id":2900,"kind":{"StorageLive":86},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":470,"col":13},"end":{"line":470,"col":15}},"generated_from_span":null},"id":2901,"kind":{"Assign":[{"kind":{"Local":86},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":88},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":470,"col":17},"end":{"line":470,"col":22}},"generated_from_span":null},"id":2902,"kind":{"StorageLive":87},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":470,"col":17},"end":{"line":470,"col":22}},"generated_from_span":null},"id":2903,"kind":{"Assign":[{"kind":{"Local":87},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":88},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":470,"col":43},"end":{"line":470,"col":44}},"generated_from_span":null},"id":2904,"kind":{"StorageDead":88},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":471,"col":26},"end":{"line":471,"col":62}},"generated_from_span":null},"id":2905,"kind":{"StorageLive":93},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":471,"col":30},"end":{"line":471,"col":32}},"generated_from_span":null},"id":2906,"kind":{"StorageLive":94},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":471,"col":30},"end":{"line":471,"col":32}},"generated_from_span":null},"id":2907,"kind":{"Assign":[{"kind":{"Local":94},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":72},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":471,"col":34},"end":{"line":471,"col":43}},"generated_from_span":null},"id":2908,"kind":{"StorageLive":95},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":471,"col":41},"end":{"line":471,"col":42}},"generated_from_span":null},"id":2909,"kind":{"StorageLive":96},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":471,"col":41},"end":{"line":471,"col":42}},"generated_from_span":null},"id":2910,"kind":{"Assign":[{"kind":{"Local":96},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":471,"col":34},"end":{"line":471,"col":43}},"generated_from_span":null},"id":4517,"kind":{"StorageLive":168},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":471,"col":34},"end":{"line":471,"col":43}},"generated_from_span":null},"id":4518,"kind":{"Assign":[{"kind":{"Local":168},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":471,"col":34},"end":{"line":471,"col":43}},"generated_from_span":null},"id":4519,"kind":{"StorageLive":169},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":471,"col":34},"end":{"line":471,"col":43}},"generated_from_span":null},"id":4520,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":168},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":96},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":169},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":471,"col":34},"end":{"line":471,"col":43}},"generated_from_span":null},"id":2913,"kind":{"Assign":[{"kind":{"Local":95},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":169},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":471,"col":45},"end":{"line":471,"col":54}},"generated_from_span":null},"id":2914,"kind":{"StorageLive":97},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":471,"col":52},"end":{"line":471,"col":53}},"generated_from_span":null},"id":2915,"kind":{"StorageLive":98},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":471,"col":52},"end":{"line":471,"col":53}},"generated_from_span":null},"id":2916,"kind":{"Assign":[{"kind":{"Local":98},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":471,"col":45},"end":{"line":471,"col":54}},"generated_from_span":null},"id":4521,"kind":{"StorageLive":170},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":471,"col":45},"end":{"line":471,"col":54}},"generated_from_span":null},"id":4522,"kind":{"Assign":[{"kind":{"Local":170},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":471,"col":45},"end":{"line":471,"col":54}},"generated_from_span":null},"id":4523,"kind":{"StorageLive":171},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":471,"col":45},"end":{"line":471,"col":54}},"generated_from_span":null},"id":4524,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":170},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":98},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":171},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":471,"col":45},"end":{"line":471,"col":54}},"generated_from_span":null},"id":2919,"kind":{"Assign":[{"kind":{"Local":97},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":171},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":471,"col":56},"end":{"line":471,"col":61}},"generated_from_span":null},"id":2920,"kind":{"StorageLive":99},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":471,"col":56},"end":{"line":471,"col":61}},"generated_from_span":null},"id":2921,"kind":{"Assign":[{"kind":{"Local":99},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":87},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":471,"col":26},"end":{"line":471,"col":62}},"generated_from_span":null},"id":2922,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":94},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":95},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":97},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":99},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":93},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":471,"col":61},"end":{"line":471,"col":62}},"generated_from_span":null},"id":2923,"kind":{"StorageDead":99},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":471,"col":61},"end":{"line":471,"col":62}},"generated_from_span":null},"id":2924,"kind":{"StorageDead":97},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":471,"col":61},"end":{"line":471,"col":62}},"generated_from_span":null},"id":2925,"kind":{"StorageDead":95},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":471,"col":61},"end":{"line":471,"col":62}},"generated_from_span":null},"id":2926,"kind":{"StorageDead":94},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":471,"col":13},"end":{"line":471,"col":15}},"generated_from_span":null},"id":2927,"kind":{"StorageLive":91},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":471,"col":13},"end":{"line":471,"col":15}},"generated_from_span":null},"id":2928,"kind":{"Assign":[{"kind":{"Local":91},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":93},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":471,"col":17},"end":{"line":471,"col":22}},"generated_from_span":null},"id":2929,"kind":{"StorageLive":92},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":471,"col":17},"end":{"line":471,"col":22}},"generated_from_span":null},"id":2930,"kind":{"Assign":[{"kind":{"Local":92},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":93},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":471,"col":62},"end":{"line":471,"col":63}},"generated_from_span":null},"id":2931,"kind":{"StorageDead":98},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":471,"col":62},"end":{"line":471,"col":63}},"generated_from_span":null},"id":2932,"kind":{"StorageDead":96},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":471,"col":62},"end":{"line":471,"col":63}},"generated_from_span":null},"id":2933,"kind":{"StorageDead":93},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":472,"col":26},"end":{"line":472,"col":43}},"generated_from_span":null},"id":2934,"kind":{"StorageLive":102},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":472,"col":33},"end":{"line":472,"col":35}},"generated_from_span":null},"id":2935,"kind":{"StorageLive":103},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":472,"col":33},"end":{"line":472,"col":35}},"generated_from_span":null},"id":2936,"kind":{"Assign":[{"kind":{"Local":103},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":67},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":472,"col":37},"end":{"line":472,"col":42}},"generated_from_span":null},"id":2937,"kind":{"StorageLive":104},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":472,"col":37},"end":{"line":472,"col":42}},"generated_from_span":null},"id":2938,"kind":{"Assign":[{"kind":{"Local":104},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":92},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":472,"col":26},"end":{"line":472,"col":43}},"generated_from_span":null},"id":2939,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":212}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":103},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":104},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":102},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":472,"col":42},"end":{"line":472,"col":43}},"generated_from_span":null},"id":2940,"kind":{"StorageDead":104},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":472,"col":42},"end":{"line":472,"col":43}},"generated_from_span":null},"id":2941,"kind":{"StorageDead":103},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":472,"col":13},"end":{"line":472,"col":15}},"generated_from_span":null},"id":2942,"kind":{"StorageLive":100},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":472,"col":13},"end":{"line":472,"col":15}},"generated_from_span":null},"id":2943,"kind":{"Assign":[{"kind":{"Local":100},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":102},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":472,"col":17},"end":{"line":472,"col":22}},"generated_from_span":null},"id":2944,"kind":{"StorageLive":101},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":472,"col":17},"end":{"line":472,"col":22}},"generated_from_span":null},"id":2945,"kind":{"Assign":[{"kind":{"Local":101},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":102},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":472,"col":43},"end":{"line":472,"col":44}},"generated_from_span":null},"id":2946,"kind":{"StorageDead":102},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":473,"col":26},"end":{"line":473,"col":62}},"generated_from_span":null},"id":2947,"kind":{"StorageLive":107},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":473,"col":30},"end":{"line":473,"col":32}},"generated_from_span":null},"id":2948,"kind":{"StorageLive":108},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":473,"col":30},"end":{"line":473,"col":32}},"generated_from_span":null},"id":2949,"kind":{"Assign":[{"kind":{"Local":108},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":62},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":473,"col":34},"end":{"line":473,"col":43}},"generated_from_span":null},"id":2950,"kind":{"StorageLive":109},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":473,"col":41},"end":{"line":473,"col":42}},"generated_from_span":null},"id":2951,"kind":{"StorageLive":110},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":473,"col":41},"end":{"line":473,"col":42}},"generated_from_span":null},"id":2952,"kind":{"Assign":[{"kind":{"Local":110},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":473,"col":34},"end":{"line":473,"col":43}},"generated_from_span":null},"id":4525,"kind":{"StorageLive":172},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":473,"col":34},"end":{"line":473,"col":43}},"generated_from_span":null},"id":4526,"kind":{"Assign":[{"kind":{"Local":172},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":473,"col":34},"end":{"line":473,"col":43}},"generated_from_span":null},"id":4527,"kind":{"StorageLive":173},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":473,"col":34},"end":{"line":473,"col":43}},"generated_from_span":null},"id":4528,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":172},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":110},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":173},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":473,"col":34},"end":{"line":473,"col":43}},"generated_from_span":null},"id":2955,"kind":{"Assign":[{"kind":{"Local":109},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":173},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":473,"col":45},"end":{"line":473,"col":54}},"generated_from_span":null},"id":2956,"kind":{"StorageLive":111},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":473,"col":52},"end":{"line":473,"col":53}},"generated_from_span":null},"id":2957,"kind":{"StorageLive":112},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":473,"col":52},"end":{"line":473,"col":53}},"generated_from_span":null},"id":2958,"kind":{"Assign":[{"kind":{"Local":112},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":473,"col":45},"end":{"line":473,"col":54}},"generated_from_span":null},"id":4529,"kind":{"StorageLive":174},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":473,"col":45},"end":{"line":473,"col":54}},"generated_from_span":null},"id":4530,"kind":{"Assign":[{"kind":{"Local":174},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":473,"col":45},"end":{"line":473,"col":54}},"generated_from_span":null},"id":4531,"kind":{"StorageLive":175},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":473,"col":45},"end":{"line":473,"col":54}},"generated_from_span":null},"id":4532,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":174},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":112},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":175},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":473,"col":45},"end":{"line":473,"col":54}},"generated_from_span":null},"id":2961,"kind":{"Assign":[{"kind":{"Local":111},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":175},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":473,"col":56},"end":{"line":473,"col":61}},"generated_from_span":null},"id":2962,"kind":{"StorageLive":113},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":473,"col":56},"end":{"line":473,"col":61}},"generated_from_span":null},"id":2963,"kind":{"Assign":[{"kind":{"Local":113},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":101},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":473,"col":26},"end":{"line":473,"col":62}},"generated_from_span":null},"id":2964,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":108},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":109},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":111},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":113},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":107},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":473,"col":61},"end":{"line":473,"col":62}},"generated_from_span":null},"id":2965,"kind":{"StorageDead":113},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":473,"col":61},"end":{"line":473,"col":62}},"generated_from_span":null},"id":2966,"kind":{"StorageDead":111},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":473,"col":61},"end":{"line":473,"col":62}},"generated_from_span":null},"id":2967,"kind":{"StorageDead":109},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":473,"col":61},"end":{"line":473,"col":62}},"generated_from_span":null},"id":2968,"kind":{"StorageDead":108},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":473,"col":13},"end":{"line":473,"col":15}},"generated_from_span":null},"id":2969,"kind":{"StorageLive":105},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":473,"col":13},"end":{"line":473,"col":15}},"generated_from_span":null},"id":2970,"kind":{"Assign":[{"kind":{"Local":105},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":107},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":473,"col":17},"end":{"line":473,"col":22}},"generated_from_span":null},"id":2971,"kind":{"StorageLive":106},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":473,"col":17},"end":{"line":473,"col":22}},"generated_from_span":null},"id":2972,"kind":{"Assign":[{"kind":{"Local":106},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":107},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":473,"col":62},"end":{"line":473,"col":63}},"generated_from_span":null},"id":2973,"kind":{"StorageDead":112},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":473,"col":62},"end":{"line":473,"col":63}},"generated_from_span":null},"id":2974,"kind":{"StorageDead":110},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":473,"col":62},"end":{"line":473,"col":63}},"generated_from_span":null},"id":2975,"kind":{"StorageDead":107},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":474,"col":26},"end":{"line":474,"col":43}},"generated_from_span":null},"id":2976,"kind":{"StorageLive":116},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":474,"col":33},"end":{"line":474,"col":35}},"generated_from_span":null},"id":2977,"kind":{"StorageLive":117},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":474,"col":33},"end":{"line":474,"col":35}},"generated_from_span":null},"id":2978,"kind":{"Assign":[{"kind":{"Local":117},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":57},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":474,"col":37},"end":{"line":474,"col":42}},"generated_from_span":null},"id":2979,"kind":{"StorageLive":118},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":474,"col":37},"end":{"line":474,"col":42}},"generated_from_span":null},"id":2980,"kind":{"Assign":[{"kind":{"Local":118},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":106},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":474,"col":26},"end":{"line":474,"col":43}},"generated_from_span":null},"id":2981,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":212}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":117},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":118},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":116},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":474,"col":42},"end":{"line":474,"col":43}},"generated_from_span":null},"id":2982,"kind":{"StorageDead":118},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":474,"col":42},"end":{"line":474,"col":43}},"generated_from_span":null},"id":2983,"kind":{"StorageDead":117},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":474,"col":13},"end":{"line":474,"col":15}},"generated_from_span":null},"id":2984,"kind":{"StorageLive":114},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":474,"col":13},"end":{"line":474,"col":15}},"generated_from_span":null},"id":2985,"kind":{"Assign":[{"kind":{"Local":114},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":116},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":474,"col":17},"end":{"line":474,"col":22}},"generated_from_span":null},"id":2986,"kind":{"StorageLive":115},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":474,"col":17},"end":{"line":474,"col":22}},"generated_from_span":null},"id":2987,"kind":{"Assign":[{"kind":{"Local":115},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":116},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":474,"col":43},"end":{"line":474,"col":44}},"generated_from_span":null},"id":2988,"kind":{"StorageDead":116},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":475,"col":26},"end":{"line":475,"col":62}},"generated_from_span":null},"id":2989,"kind":{"StorageLive":121},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":475,"col":30},"end":{"line":475,"col":32}},"generated_from_span":null},"id":2990,"kind":{"StorageLive":122},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":475,"col":30},"end":{"line":475,"col":32}},"generated_from_span":null},"id":2991,"kind":{"Assign":[{"kind":{"Local":122},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":52},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":475,"col":34},"end":{"line":475,"col":43}},"generated_from_span":null},"id":2992,"kind":{"StorageLive":123},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":475,"col":41},"end":{"line":475,"col":42}},"generated_from_span":null},"id":2993,"kind":{"StorageLive":124},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":475,"col":41},"end":{"line":475,"col":42}},"generated_from_span":null},"id":2994,"kind":{"Assign":[{"kind":{"Local":124},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":475,"col":34},"end":{"line":475,"col":43}},"generated_from_span":null},"id":4533,"kind":{"StorageLive":176},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":475,"col":34},"end":{"line":475,"col":43}},"generated_from_span":null},"id":4534,"kind":{"Assign":[{"kind":{"Local":176},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":475,"col":34},"end":{"line":475,"col":43}},"generated_from_span":null},"id":4535,"kind":{"StorageLive":177},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":475,"col":34},"end":{"line":475,"col":43}},"generated_from_span":null},"id":4536,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":176},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":124},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":177},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":475,"col":34},"end":{"line":475,"col":43}},"generated_from_span":null},"id":2997,"kind":{"Assign":[{"kind":{"Local":123},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":177},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":475,"col":45},"end":{"line":475,"col":54}},"generated_from_span":null},"id":2998,"kind":{"StorageLive":125},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":475,"col":52},"end":{"line":475,"col":53}},"generated_from_span":null},"id":2999,"kind":{"StorageLive":126},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":475,"col":52},"end":{"line":475,"col":53}},"generated_from_span":null},"id":3000,"kind":{"Assign":[{"kind":{"Local":126},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":475,"col":45},"end":{"line":475,"col":54}},"generated_from_span":null},"id":4537,"kind":{"StorageLive":178},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":475,"col":45},"end":{"line":475,"col":54}},"generated_from_span":null},"id":4538,"kind":{"Assign":[{"kind":{"Local":178},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":475,"col":45},"end":{"line":475,"col":54}},"generated_from_span":null},"id":4539,"kind":{"StorageLive":179},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":475,"col":45},"end":{"line":475,"col":54}},"generated_from_span":null},"id":4540,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":178},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":126},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":179},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":475,"col":45},"end":{"line":475,"col":54}},"generated_from_span":null},"id":3003,"kind":{"Assign":[{"kind":{"Local":125},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":179},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":475,"col":56},"end":{"line":475,"col":61}},"generated_from_span":null},"id":3004,"kind":{"StorageLive":127},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":475,"col":56},"end":{"line":475,"col":61}},"generated_from_span":null},"id":3005,"kind":{"Assign":[{"kind":{"Local":127},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":115},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":475,"col":26},"end":{"line":475,"col":62}},"generated_from_span":null},"id":3006,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":211}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":122},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":123},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":125},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":127},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":121},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":475,"col":61},"end":{"line":475,"col":62}},"generated_from_span":null},"id":3007,"kind":{"StorageDead":127},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":475,"col":61},"end":{"line":475,"col":62}},"generated_from_span":null},"id":3008,"kind":{"StorageDead":125},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":475,"col":61},"end":{"line":475,"col":62}},"generated_from_span":null},"id":3009,"kind":{"StorageDead":123},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":475,"col":61},"end":{"line":475,"col":62}},"generated_from_span":null},"id":3010,"kind":{"StorageDead":122},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":475,"col":13},"end":{"line":475,"col":15}},"generated_from_span":null},"id":3011,"kind":{"StorageLive":119},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":475,"col":13},"end":{"line":475,"col":15}},"generated_from_span":null},"id":3012,"kind":{"Assign":[{"kind":{"Local":119},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":121},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":475,"col":17},"end":{"line":475,"col":22}},"generated_from_span":null},"id":3013,"kind":{"StorageLive":120},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":475,"col":17},"end":{"line":475,"col":22}},"generated_from_span":null},"id":3014,"kind":{"Assign":[{"kind":{"Local":120},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":121},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":475,"col":62},"end":{"line":475,"col":63}},"generated_from_span":null},"id":3015,"kind":{"StorageDead":126},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":475,"col":62},"end":{"line":475,"col":63}},"generated_from_span":null},"id":3016,"kind":{"StorageDead":124},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":475,"col":62},"end":{"line":475,"col":63}},"generated_from_span":null},"id":3017,"kind":{"StorageDead":121},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":476,"col":22},"end":{"line":476,"col":39}},"generated_from_span":null},"id":3018,"kind":{"StorageLive":129},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":476,"col":29},"end":{"line":476,"col":31}},"generated_from_span":null},"id":3019,"kind":{"StorageLive":130},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":476,"col":29},"end":{"line":476,"col":31}},"generated_from_span":null},"id":3020,"kind":{"Assign":[{"kind":{"Local":130},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":50},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":476,"col":33},"end":{"line":476,"col":38}},"generated_from_span":null},"id":3021,"kind":{"StorageLive":131},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":476,"col":33},"end":{"line":476,"col":38}},"generated_from_span":null},"id":3022,"kind":{"Assign":[{"kind":{"Local":131},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":120},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":476,"col":22},"end":{"line":476,"col":39}},"generated_from_span":null},"id":3023,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":212}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":130},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":131},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":129},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":476,"col":38},"end":{"line":476,"col":39}},"generated_from_span":null},"id":3024,"kind":{"StorageDead":131},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":476,"col":38},"end":{"line":476,"col":39}},"generated_from_span":null},"id":3025,"kind":{"StorageDead":130},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":476,"col":13},"end":{"line":476,"col":15}},"generated_from_span":null},"id":3026,"kind":{"StorageLive":128},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":476,"col":13},"end":{"line":476,"col":15}},"generated_from_span":null},"id":3027,"kind":{"Assign":[{"kind":{"Local":128},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":129},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":476,"col":39},"end":{"line":476,"col":40}},"generated_from_span":null},"id":3028,"kind":{"StorageDead":129},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":478,"col":9},"end":{"line":478,"col":11}},"generated_from_span":null},"id":3029,"kind":{"StorageLive":132},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":478,"col":9},"end":{"line":478,"col":11}},"generated_from_span":null},"id":3030,"kind":{"Assign":[{"kind":{"Local":132},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":79},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":478,"col":13},"end":{"line":478,"col":15}},"generated_from_span":null},"id":3031,"kind":{"StorageLive":133},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":478,"col":13},"end":{"line":478,"col":15}},"generated_from_span":null},"id":3032,"kind":{"Assign":[{"kind":{"Local":133},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":86},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":478,"col":17},"end":{"line":478,"col":19}},"generated_from_span":null},"id":3033,"kind":{"StorageLive":134},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":478,"col":17},"end":{"line":478,"col":19}},"generated_from_span":null},"id":3034,"kind":{"Assign":[{"kind":{"Local":134},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":91},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":478,"col":21},"end":{"line":478,"col":23}},"generated_from_span":null},"id":3035,"kind":{"StorageLive":135},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":478,"col":21},"end":{"line":478,"col":23}},"generated_from_span":null},"id":3036,"kind":{"Assign":[{"kind":{"Local":135},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":100},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":478,"col":25},"end":{"line":478,"col":27}},"generated_from_span":null},"id":3037,"kind":{"StorageLive":136},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":478,"col":25},"end":{"line":478,"col":27}},"generated_from_span":null},"id":3038,"kind":{"Assign":[{"kind":{"Local":136},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":105},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":478,"col":29},"end":{"line":478,"col":31}},"generated_from_span":null},"id":3039,"kind":{"StorageLive":137},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":478,"col":29},"end":{"line":478,"col":31}},"generated_from_span":null},"id":3040,"kind":{"Assign":[{"kind":{"Local":137},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":114},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":478,"col":33},"end":{"line":478,"col":35}},"generated_from_span":null},"id":3041,"kind":{"StorageLive":138},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":478,"col":33},"end":{"line":478,"col":35}},"generated_from_span":null},"id":3042,"kind":{"Assign":[{"kind":{"Local":138},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":119},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":478,"col":37},"end":{"line":478,"col":39}},"generated_from_span":null},"id":3043,"kind":{"StorageLive":139},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":478,"col":37},"end":{"line":478,"col":39}},"generated_from_span":null},"id":3044,"kind":{"Assign":[{"kind":{"Local":139},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":128},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":478,"col":8},"end":{"line":478,"col":40}},"generated_from_span":null},"id":3045,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":4585}},{"Aggregate":[{"Array":[{"Deduplicated":1072},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}]},[{"Move":{"kind":{"Local":132},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":133},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":134},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":135},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":136},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":137},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":138},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":139},"ty":{"Deduplicated":1072}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":478,"col":39},"end":{"line":478,"col":40}},"generated_from_span":null},"id":3046,"kind":{"StorageDead":139},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":478,"col":39},"end":{"line":478,"col":40}},"generated_from_span":null},"id":3047,"kind":{"StorageDead":138},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":478,"col":39},"end":{"line":478,"col":40}},"generated_from_span":null},"id":3048,"kind":{"StorageDead":137},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":478,"col":39},"end":{"line":478,"col":40}},"generated_from_span":null},"id":3049,"kind":{"StorageDead":136},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":478,"col":39},"end":{"line":478,"col":40}},"generated_from_span":null},"id":3050,"kind":{"StorageDead":135},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":478,"col":39},"end":{"line":478,"col":40}},"generated_from_span":null},"id":3051,"kind":{"StorageDead":134},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":478,"col":39},"end":{"line":478,"col":40}},"generated_from_span":null},"id":3052,"kind":{"StorageDead":133},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":478,"col":39},"end":{"line":478,"col":40}},"generated_from_span":null},"id":3053,"kind":{"StorageDead":132},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3054,"kind":{"StorageDead":128},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3055,"kind":{"StorageDead":120},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3056,"kind":{"StorageDead":119},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3057,"kind":{"StorageDead":115},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3058,"kind":{"StorageDead":114},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3059,"kind":{"StorageDead":106},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3060,"kind":{"StorageDead":105},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3061,"kind":{"StorageDead":101},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3062,"kind":{"StorageDead":100},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3063,"kind":{"StorageDead":92},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3064,"kind":{"StorageDead":91},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3065,"kind":{"StorageDead":87},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3066,"kind":{"StorageDead":86},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3067,"kind":{"StorageDead":80},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3068,"kind":{"StorageDead":79},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3069,"kind":{"StorageDead":77},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3070,"kind":{"StorageDead":72},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3071,"kind":{"StorageDead":67},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3072,"kind":{"StorageDead":62},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3073,"kind":{"StorageDead":57},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3074,"kind":{"StorageDead":52},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3075,"kind":{"StorageDead":50},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3076,"kind":{"StorageDead":43},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3077,"kind":{"StorageDead":42},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3078,"kind":{"StorageDead":34},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3079,"kind":{"StorageDead":33},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3080,"kind":{"StorageDead":26},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3081,"kind":{"StorageDead":25},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3082,"kind":{"StorageDead":18},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3083,"kind":{"StorageDead":17},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3084,"kind":{"StorageDead":10},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3085,"kind":{"StorageDead":9},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3086,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":4},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3087,"kind":{"StorageDead":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":479,"col":5},"end":{"line":479,"col":5}},"generated_from_span":null},"id":3088,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":80,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":35}},{"Ident":["from",0]}],"span":{"data":{"file_id":2,"beg":{"line":513,"col":4},"end":{"line":515,"col":5}},"generated_from_span":null},"source_text":"fn from(value: Fp) -> [u8; 32] {\n value.to_repr()\n }","attr_info":{"attributes":[],"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":[{"Deduplicated":1079}],"output":{"HashConsedValue":[1895,{"Array":[{"Deduplicated":1894},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","32"]}}},"ty":{"Deduplicated":1073}}]}]}},"src":{"TraitImpl":{"impl_ref":{"id":35,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":7,"generics":{"regions":[],"types":[{"Deduplicated":1895},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":513,"col":4},"end":{"line":515,"col":5}},"generated_from_span":null},"bound_body_regions":4,"locals":{"arg_count":1,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":513,"col":26},"end":{"line":513,"col":34}},"generated_from_span":null},"ty":{"Deduplicated":1895}},{"index":1,"name":"value","span":{"data":{"file_id":2,"beg":{"line":513,"col":12},"end":{"line":513,"col":17}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":2,"name":null,"span":{"data":{"file_id":2,"beg":{"line":514,"col":8},"end":{"line":514,"col":13}},"generated_from_span":null},"ty":{"Deduplicated":2302}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":514,"col":8},"end":{"line":515,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":514,"col":8},"end":{"line":514,"col":13}},"generated_from_span":null},"id":3089,"kind":{"StorageLive":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":514,"col":8},"end":{"line":514,"col":13}},"generated_from_span":null},"id":3090,"kind":{"Assign":[{"kind":{"Local":2},"ty":{"Deduplicated":2302}},{"Ref":{"place":{"kind":{"Local":1},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":514,"col":8},"end":{"line":514,"col":23}},"generated_from_span":null},"id":3091,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":110}},"generics":{"regions":[{"Body":3}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":2},"ty":{"Deduplicated":2302}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1895}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":514,"col":22},"end":{"line":514,"col":23}},"generated_from_span":null},"id":3092,"kind":{"StorageDead":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":515,"col":5},"end":{"line":515,"col":5}},"generated_from_span":null},"id":3093,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":81,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":36}},{"Ident":["from",0]}],"span":{"data":{"file_id":2,"beg":{"line":519,"col":4},"end":{"line":521,"col":5}},"generated_from_span":null},"source_text":"fn from(value: &'a Fp) -> [u8; 32] {\n value.to_repr()\n }","attr_info":{"attributes":[],"inline":null,"rename":null,"public":true},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[{"index":0,"name":"'a","mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8297}],"output":{"Deduplicated":1895}},"src":{"TraitImpl":{"impl_ref":{"id":36,"generics":{"regions":[{"Var":{"Free":0}}],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":7,"generics":{"regions":[],"types":[{"Deduplicated":1895},{"Deduplicated":8297}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":519,"col":4},"end":{"line":521,"col":5}},"generated_from_span":null},"bound_body_regions":5,"locals":{"arg_count":1,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":519,"col":30},"end":{"line":519,"col":38}},"generated_from_span":null},"ty":{"Deduplicated":1895}},{"index":1,"name":"value","span":{"data":{"file_id":2,"beg":{"line":519,"col":12},"end":{"line":519,"col":17}},"generated_from_span":null},"ty":{"Deduplicated":2302}},{"index":2,"name":null,"span":{"data":{"file_id":2,"beg":{"line":520,"col":8},"end":{"line":520,"col":13}},"generated_from_span":null},"ty":{"Deduplicated":2355}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":520,"col":8},"end":{"line":521,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":520,"col":8},"end":{"line":520,"col":13}},"generated_from_span":null},"id":3094,"kind":{"StorageLive":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":520,"col":8},"end":{"line":520,"col":13}},"generated_from_span":null},"id":3095,"kind":{"Assign":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":520,"col":8},"end":{"line":520,"col":23}},"generated_from_span":null},"id":3096,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":110}},"generics":{"regions":[{"Body":4}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":2},"ty":{"Deduplicated":2355}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1895}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":520,"col":22},"end":{"line":520,"col":23}},"generated_from_span":null},"id":3097,"kind":{"StorageDead":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":521,"col":5},"end":{"line":521,"col":5}},"generated_from_span":null},"id":3098,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":82,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":37}},{"Ident":["random",0]}],"span":{"data":{"file_id":2,"beg":{"line":528,"col":4},"end":{"line":539,"col":5}},"generated_from_span":null},"source_text":"fn random(mut rng: impl RngCore) -> Self {\n Self::from_u512([\n rng.next_u64(),\n rng.next_u64(),\n rng.next_u64(),\n rng.next_u64(),\n rng.next_u64(),\n rng.next_u64(),\n rng.next_u64(),\n rng.next_u64(),\n ])\n }","attr_info":{"attributes":[],"inline":null,"rename":null,"public":true},"is_local":true,"opacity":"Opaque","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"T0"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":2,"beg":{"line":528,"col":28},"end":{"line":528,"col":35}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":27,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8294}],"output":{"Deduplicated":1079}},"src":{"TraitImpl":{"impl_ref":{"id":37,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":24,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":83,"item_meta":{"name":[{"Ident":["ff",0]},{"Ident":["Field",0]},{"Ident":["random",0]}],"span":{"data":{"file_id":21,"beg":{"line":78,"col":4},"end":{"line":78,"col":41}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Returns an element chosen uniformly at random using a user-provided RNG."}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"T1"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"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":8294}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":1,"span":{"data":{"file_id":21,"beg":{"line":78,"col":24},"end":{"line":78,"col":31}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":27,"generics":{"regions":[],"types":[{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8295}],"output":{"Deduplicated":8294}},"src":{"TraitDecl":{"trait_ref":{"id":24,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},null,null,{"def_id":86,"item_meta":{"name":[{"Ident":["ff",0]},{"Ident":["Field",0]},{"Ident":["square",0]}],"span":{"data":{"file_id":21,"beg":{"line":97,"col":4},"end":{"line":97,"col":29}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Squares this element."}],"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"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"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":8294}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8333}],"output":{"Deduplicated":8294}},"src":{"TraitDecl":{"trait_ref":{"id":24,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":3},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},null,{"def_id":88,"item_meta":{"name":[{"Ident":["ff",0]},{"Ident":["Field",0]},{"Ident":["double",0]}],"span":{"data":{"file_id":21,"beg":{"line":107,"col":4},"end":{"line":107,"col":29}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Doubles this element."}],"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"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"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":8294}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8333}],"output":{"Deduplicated":8294}},"src":{"TraitDecl":{"trait_ref":{"id":24,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":5},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":89,"item_meta":{"name":[{"Ident":["ff",0]},{"Ident":["Field",0]},{"Ident":["invert",0]}],"span":{"data":{"file_id":21,"beg":{"line":111,"col":4},"end":{"line":111,"col":39}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Computes the multiplicative inverse of this element,"},{"DocComment":" failing if the element is zero."}],"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"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"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":8294}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8333}],"output":{"HashConsedValue":[8390,{"Adt":{"id":{"Adt":7},"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}]}},"src":{"TraitDecl":{"trait_ref":{"id":24,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":6},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":90,"item_meta":{"name":[{"Ident":["ff",0]},{"Ident":["Field",0]},{"Ident":["sqrt_ratio",0]}],"span":{"data":{"file_id":21,"beg":{"line":131,"col":4},"end":{"line":131,"col":60}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Computes:"},{"DocComment":""},{"DocComment":" - $(\\textsf{true}, \\sqrt{\\textsf{num}/\\textsf{div}})$, if $\\textsf{num}$ and"},{"DocComment":" $\\textsf{div}$ are nonzero and $\\textsf{num}/\\textsf{div}$ is a square in the"},{"DocComment":" field;"},{"DocComment":" - $(\\textsf{true}, 0)$, if $\\textsf{num}$ is zero;"},{"DocComment":" - $(\\textsf{false}, 0)$, if $\\textsf{num}$ is nonzero and $\\textsf{div}$ is zero;"},{"DocComment":" - $(\\textsf{false}, \\sqrt{G_S \\cdot \\textsf{num}/\\textsf{div}})$, if"},{"DocComment":" $\\textsf{num}$ and $\\textsf{div}$ are nonzero and $\\textsf{num}/\\textsf{div}$ is"},{"DocComment":" a nonsquare in the field;"},{"DocComment":""},{"DocComment":" where $G_S$ is a non-square."},{"DocComment":""},{"DocComment":" # Warnings"},{"DocComment":""},{"DocComment":" - The choice of root from `sqrt` is unspecified."},{"DocComment":" - The value of $G_S$ is unspecified, and cannot be assumed to have any specific"},{"DocComment":" value in a generic context."}],"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":1,"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":8294}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8333},{"Deduplicated":8435}],"output":{"HashConsedValue":[8391,{"Adt":{"id":"Tuple","generics":{"regions":[],"types":[{"Deduplicated":1250},{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}]}},"src":{"TraitDecl":{"trait_ref":{"id":24,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":7},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},null,{"def_id":92,"item_meta":{"name":[{"Ident":["ff",0]},{"Ident":["Field",0]},{"Ident":["sqrt",0]}],"span":{"data":{"file_id":21,"beg":{"line":144,"col":4},"end":{"line":144,"col":36}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Returns the square root of the field element, if it is"},{"DocComment":" quadratic residue."},{"DocComment":""},{"DocComment":" The provided method is implemented in terms of [`Self::sqrt_ratio`]."}],"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"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"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":8294}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8333}],"output":{"Deduplicated":8390}},"src":{"TraitDecl":{"trait_ref":{"id":24,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":9},"has_default":true}},"is_global_initializer":null,"body":"Opaque"},null,{"def_id":94,"item_meta":{"name":[{"Ident":["ff",0]},{"Ident":["Field",0]},{"Ident":["pow_vartime",0]}],"span":{"data":{"file_id":21,"beg":{"line":178,"col":4},"end":{"line":178,"col":58}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Exponentiates `self` by `exp`, where `exp` is a little-endian order integer"},{"DocComment":" exponent."},{"DocComment":""},{"DocComment":" # Guarantees"},{"DocComment":""},{"DocComment":" **This operation is variable time with respect to `self`, for all exponent.** If"},{"DocComment":" the exponent is fixed, this operation is effectively constant time. However, for"},{"DocComment":" stronger constant-time guarantees, [`Field::pow`] should be used."}],"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":"S"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"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":8294}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":1,"span":{"data":{"file_id":21,"beg":{"line":178,"col":22},"end":{"line":178,"col":34}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":28,"generics":{"regions":[],"types":[{"Deduplicated":8295},{"HashConsedValue":[2074,{"Slice":{"Deduplicated":1072}}]}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8333},{"Deduplicated":8295}],"output":{"Deduplicated":8294}},"src":{"TraitDecl":{"trait_ref":{"id":24,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":11},"has_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":95,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":37}},{"Ident":["square",0]}],"span":{"data":{"file_id":2,"beg":{"line":546,"col":4},"end":{"line":548,"col":5}},"generated_from_span":null},"source_text":"fn square(&self) -> Self {\n self.square()\n }","attr_info":{"attributes":[],"inline":"Always","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":8297}],"output":{"Deduplicated":1079}},"src":{"TraitImpl":{"impl_ref":{"id":37,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":24,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":3},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":546,"col":4},"end":{"line":548,"col":5}},"generated_from_span":null},"bound_body_regions":5,"locals":{"arg_count":1,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":546,"col":24},"end":{"line":546,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":"self","span":{"data":{"file_id":2,"beg":{"line":546,"col":14},"end":{"line":546,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":2302}},{"index":2,"name":null,"span":{"data":{"file_id":2,"beg":{"line":547,"col":8},"end":{"line":547,"col":12}},"generated_from_span":null},"ty":{"Deduplicated":2355}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":547,"col":8},"end":{"line":548,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":547,"col":8},"end":{"line":547,"col":12}},"generated_from_span":null},"id":3099,"kind":{"StorageLive":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":547,"col":8},"end":{"line":547,"col":12}},"generated_from_span":null},"id":3100,"kind":{"Assign":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":547,"col":8},"end":{"line":547,"col":21}},"generated_from_span":null},"id":3101,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":72}},"generics":{"regions":[{"Body":4}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":2},"ty":{"Deduplicated":2355}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":547,"col":20},"end":{"line":547,"col":21}},"generated_from_span":null},"id":3102,"kind":{"StorageDead":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":548,"col":5},"end":{"line":548,"col":5}},"generated_from_span":null},"id":3103,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":96,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":37}},{"Ident":["double",0]}],"span":{"data":{"file_id":2,"beg":{"line":541,"col":4},"end":{"line":543,"col":5}},"generated_from_span":null},"source_text":"fn double(&self) -> Self {\n self.double()\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":8297}],"output":{"Deduplicated":1079}},"src":{"TraitImpl":{"impl_ref":{"id":37,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":24,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":5},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":541,"col":4},"end":{"line":543,"col":5}},"generated_from_span":null},"bound_body_regions":5,"locals":{"arg_count":1,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":541,"col":24},"end":{"line":541,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":"self","span":{"data":{"file_id":2,"beg":{"line":541,"col":14},"end":{"line":541,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":2302}},{"index":2,"name":null,"span":{"data":{"file_id":2,"beg":{"line":542,"col":8},"end":{"line":542,"col":12}},"generated_from_span":null},"ty":{"Deduplicated":2355}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":542,"col":8},"end":{"line":543,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":542,"col":8},"end":{"line":542,"col":12}},"generated_from_span":null},"id":3104,"kind":{"StorageLive":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":542,"col":8},"end":{"line":542,"col":12}},"generated_from_span":null},"id":3105,"kind":{"Assign":[{"kind":{"Local":2},"ty":{"Deduplicated":2355}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":542,"col":8},"end":{"line":542,"col":21}},"generated_from_span":null},"id":3106,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":69}},"generics":{"regions":[{"Body":4}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":2},"ty":{"Deduplicated":2355}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":542,"col":20},"end":{"line":542,"col":21}},"generated_from_span":null},"id":3107,"kind":{"StorageDead":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":543,"col":5},"end":{"line":543,"col":5}},"generated_from_span":null},"id":3108,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":97,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":37}},{"Ident":["invert",0]}],"span":{"data":{"file_id":2,"beg":{"line":579,"col":4},"end":{"line":588,"col":5}},"generated_from_span":null},"source_text":"fn invert(&self) -> CtOption<Self> {\n let tmp = self.pow_vartime(&[\n 0x992d30ecffffffff,\n 0x224698fc094cf91b,\n 0x0,\n 0x4000000000000000,\n ]);\n\n CtOption::new(tmp, !self.ct_eq(&Self::zero()))\n }","attr_info":{"attributes":[{"DocComment":" Computes the multiplicative inverse of this element,"},{"DocComment":" failing if the element is zero."}],"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":8297}],"output":{"HashConsedValue":[4824,{"Adt":{"id":{"Adt":7},"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}}]}},"src":{"TraitImpl":{"impl_ref":{"id":37,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":24,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":6},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":579,"col":4},"end":{"line":588,"col":5}},"generated_from_span":null},"bound_body_regions":22,"locals":{"arg_count":1,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":579,"col":24},"end":{"line":579,"col":38}},"generated_from_span":null},"ty":{"Deduplicated":4824}},{"index":1,"name":"self","span":{"data":{"file_id":2,"beg":{"line":579,"col":14},"end":{"line":579,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":2302}},{"index":2,"name":"tmp","span":{"data":{"file_id":2,"beg":{"line":580,"col":12},"end":{"line":580,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":3,"name":null,"span":{"data":{"file_id":2,"beg":{"line":580,"col":18},"end":{"line":580,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":2355}},{"index":4,"name":null,"span":{"data":{"file_id":2,"beg":{"line":580,"col":35},"end":{"line":585,"col":9}},"generated_from_span":null},"ty":{"HashConsedValue":[4827,{"Ref":[{"Body":4},{"Deduplicated":1074},"Shared"]}]}},{"index":5,"name":null,"span":{"data":{"file_id":2,"beg":{"line":587,"col":22},"end":{"line":587,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":6,"name":null,"span":{"data":{"file_id":2,"beg":{"line":587,"col":27},"end":{"line":587,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":1250}},{"index":7,"name":null,"span":{"data":{"file_id":2,"beg":{"line":587,"col":28},"end":{"line":587,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":1250}},{"index":8,"name":null,"span":{"data":{"file_id":2,"beg":{"line":587,"col":28},"end":{"line":587,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":2401}},{"index":9,"name":null,"span":{"data":{"file_id":2,"beg":{"line":587,"col":39},"end":{"line":587,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":2402}},{"index":10,"name":null,"span":{"data":{"file_id":2,"beg":{"line":587,"col":39},"end":{"line":587,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":4748}},{"index":11,"name":null,"span":{"data":{"file_id":2,"beg":{"line":587,"col":40},"end":{"line":587,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":12,"name":null,"span":{"data":{"file_id":2,"beg":{"line":580,"col":35},"end":{"line":585,"col":9}},"generated_from_span":null},"ty":{"HashConsedValue":[4828,{"Ref":[{"Body":8},{"Deduplicated":1074},"Shared"]}]}},{"index":13,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"HashConsedValue":[7199,{"Ref":[{"Body":9},{"Deduplicated":1074},"Shared"]}]}},{"index":14,"name":null,"span":{"data":{"file_id":2,"beg":{"line":580,"col":35},"end":{"line":585,"col":9}},"generated_from_span":null},"ty":{"HashConsedValue":[7202,{"Ref":[{"Body":21},{"Deduplicated":1074},"Shared"]}]}},{"index":15,"name":null,"span":{"data":{"file_id":2,"beg":{"line":580,"col":36},"end":{"line":585,"col":9}},"generated_from_span":null},"ty":{"Deduplicated":1074}}]},"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":3109,"kind":{"StorageLive":13},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":580,"col":35},"end":{"line":585,"col":9}},"generated_from_span":null},"id":3110,"kind":{"StorageLive":14},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":580,"col":36},"end":{"line":585,"col":9}},"generated_from_span":null},"id":3111,"kind":{"StorageLive":15},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":580,"col":36},"end":{"line":585,"col":9}},"generated_from_span":null},"id":3112,"kind":{"Assign":[{"kind":{"Local":15},"ty":{"Deduplicated":1074}},{"Aggregate":[{"Array":[{"Deduplicated":1072},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}]},[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","11037532056220336127"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","2469829653914515739"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","4611686018427387904"]}}},"ty":{"Deduplicated":1072}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":580,"col":35},"end":{"line":585,"col":9}},"generated_from_span":null},"id":3113,"kind":{"Assign":[{"kind":{"Local":14},"ty":{"Deduplicated":7202}},{"Ref":{"place":{"kind":{"Local":15},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":580,"col":35},"end":{"line":585,"col":9}},"generated_from_span":null},"id":3114,"kind":{"Assign":[{"kind":{"Local":13},"ty":{"Deduplicated":7199}},{"Use":[{"Move":{"kind":{"Local":14},"ty":{"Deduplicated":7202}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":580,"col":12},"end":{"line":580,"col":15}},"generated_from_span":null},"id":3115,"kind":{"StorageLive":12},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":580,"col":12},"end":{"line":580,"col":15}},"generated_from_span":null},"id":3116,"kind":{"StorageLive":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":580,"col":18},"end":{"line":580,"col":22}},"generated_from_span":null},"id":3117,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":580,"col":18},"end":{"line":580,"col":22}},"generated_from_span":null},"id":3118,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":2355}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":580,"col":35},"end":{"line":585,"col":9}},"generated_from_span":null},"id":3119,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":580,"col":35},"end":{"line":585,"col":9}},"generated_from_span":null},"id":3120,"kind":{"Assign":[{"kind":{"Local":12},"ty":{"Deduplicated":4828}},{"Use":[{"Move":{"kind":{"Local":13},"ty":{"Deduplicated":7199}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":580,"col":35},"end":{"line":585,"col":9}},"generated_from_span":null},"id":3121,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":4827}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":12},"ty":{"Deduplicated":4828}},"Deref"]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":580,"col":18},"end":{"line":585,"col":10}},"generated_from_span":null},"id":3122,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":100}},"generics":{"regions":[{"Body":16}],"types":[{"HashConsedValue":[6679,{"Ref":[{"Body":11},{"Deduplicated":1074},"Shared"]}]}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8440,{"kind":{"TraitImpl":{"id":54,"generics":{"regions":[{"Body":11}],"types":[{"Deduplicated":1074},{"Deduplicated":2074}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8439,{"kind":{"TraitImpl":{"id":48,"generics":{"regions":[],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":28,"generics":{"regions":[],"types":[{"Deduplicated":1074},{"Deduplicated":2074}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":28,"generics":{"regions":[],"types":[{"Deduplicated":6679},{"Deduplicated":2074}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"args":[{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":2355}}},{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":4827}}}],"dest":{"kind":{"Local":2},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":585,"col":9},"end":{"line":585,"col":10}},"generated_from_span":null},"id":3123,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":585,"col":9},"end":{"line":585,"col":10}},"generated_from_span":null},"id":3124,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":587,"col":22},"end":{"line":587,"col":25}},"generated_from_span":null},"id":3125,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":587,"col":22},"end":{"line":587,"col":25}},"generated_from_span":null},"id":3126,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Local":2},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":587,"col":27},"end":{"line":587,"col":53}},"generated_from_span":null},"id":3127,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":587,"col":28},"end":{"line":587,"col":53}},"generated_from_span":null},"id":3128,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":587,"col":28},"end":{"line":587,"col":32}},"generated_from_span":null},"id":3129,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":587,"col":28},"end":{"line":587,"col":32}},"generated_from_span":null},"id":3130,"kind":{"Assign":[{"kind":{"Local":8},"ty":{"Deduplicated":2401}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":587,"col":39},"end":{"line":587,"col":52}},"generated_from_span":null},"id":3131,"kind":{"StorageLive":9},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":587,"col":39},"end":{"line":587,"col":52}},"generated_from_span":null},"id":3132,"kind":{"StorageLive":10},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":587,"col":40},"end":{"line":587,"col":52}},"generated_from_span":null},"id":3133,"kind":{"StorageLive":11},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":587,"col":40},"end":{"line":587,"col":52}},"generated_from_span":null},"id":3134,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":67}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[],"dest":{"kind":{"Local":11},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":587,"col":39},"end":{"line":587,"col":52}},"generated_from_span":null},"id":3135,"kind":{"Assign":[{"kind":{"Local":10},"ty":{"Deduplicated":4748}},{"Ref":{"place":{"kind":{"Local":11},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":587,"col":39},"end":{"line":587,"col":52}},"generated_from_span":null},"id":3136,"kind":{"Assign":[{"kind":{"Local":9},"ty":{"Deduplicated":2402}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":10},"ty":{"Deduplicated":4748}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":587,"col":28},"end":{"line":587,"col":53}},"generated_from_span":null},"id":3137,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":9}},"generics":{"regions":[{"Body":19},{"Body":20}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":8},"ty":{"Deduplicated":2401}}},{"Move":{"kind":{"Local":9},"ty":{"Deduplicated":2402}}}],"dest":{"kind":{"Local":7},"ty":{"Deduplicated":1250}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":587,"col":52},"end":{"line":587,"col":53}},"generated_from_span":null},"id":3138,"kind":{"StorageDead":9},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":587,"col":52},"end":{"line":587,"col":53}},"generated_from_span":null},"id":3139,"kind":{"StorageDead":8},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":587,"col":27},"end":{"line":587,"col":53}},"generated_from_span":null},"id":3140,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":224}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":7},"ty":{"Deduplicated":1250}}}],"dest":{"kind":{"Local":6},"ty":{"Deduplicated":1250}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":587,"col":52},"end":{"line":587,"col":53}},"generated_from_span":null},"id":3141,"kind":{"StorageDead":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":587,"col":8},"end":{"line":587,"col":54}},"generated_from_span":null},"id":3142,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":225}},"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":5},"ty":{"Deduplicated":1079}}},{"Move":{"kind":{"Local":6},"ty":{"Deduplicated":1250}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":4824}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":587,"col":53},"end":{"line":587,"col":54}},"generated_from_span":null},"id":3143,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":587,"col":53},"end":{"line":587,"col":54}},"generated_from_span":null},"id":3144,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":588,"col":4},"end":{"line":588,"col":5}},"generated_from_span":null},"id":3145,"kind":{"StorageDead":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":588,"col":4},"end":{"line":588,"col":5}},"generated_from_span":null},"id":3146,"kind":{"StorageDead":11},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":588,"col":4},"end":{"line":588,"col":5}},"generated_from_span":null},"id":3147,"kind":{"StorageDead":10},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":588,"col":5},"end":{"line":588,"col":5}},"generated_from_span":null},"id":3148,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":98,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":37}},{"Ident":["sqrt_ratio",0]}],"span":{"data":{"file_id":2,"beg":{"line":550,"col":4},"end":{"line":558,"col":5}},"generated_from_span":null},"source_text":"fn sqrt_ratio(num: &Self, div: &Self) -> (Choice, Self) {\n #[cfg(feature = \"sqrt-table\")]\n {\n FP_TABLES.sqrt_ratio(num, div)\n }\n\n #[cfg(not(feature = \"sqrt-table\"))]\n ff::helpers::sqrt_ratio_generic(num, div)\n }","attr_info":{"attributes":[],"inline":null,"rename":null,"public":true},"is_local":true,"opacity":"Opaque","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":8297},{"Deduplicated":8298}],"output":{"HashConsedValue":[8441,{"Adt":{"id":"Tuple","generics":{"regions":[],"types":[{"Deduplicated":1250},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}}]}},"src":{"TraitImpl":{"impl_ref":{"id":37,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":24,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":7},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":99,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":37}},{"Ident":["sqrt",0]}],"span":{"data":{"file_id":2,"beg":{"line":566,"col":4},"end":{"line":575,"col":5}},"generated_from_span":null},"source_text":"fn sqrt(&self) -> CtOption<Self> {\n #[cfg(feature = \"sqrt-table\")]\n {\n let (is_square, res) = FP_TABLES.sqrt_alt(self);\n CtOption::new(res, is_square)\n }\n\n #[cfg(not(feature = \"sqrt-table\"))]\n ff::helpers::sqrt_tonelli_shanks(self, &T_MINUS1_OVER2)\n }","attr_info":{"attributes":[{"DocComment":" Computes the square root of this element, if it exists."}],"inline":null,"rename":null,"public":true},"is_local":true,"opacity":"Opaque","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":8297}],"output":{"Deduplicated":4824}},"src":{"TraitImpl":{"impl_ref":{"id":37,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":24,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":9},"reuses_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":100,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":37}},{"Ident":["pow_vartime",0]}],"span":{"data":{"file_id":2,"beg":{"line":590,"col":4},"end":{"line":617,"col":5}},"generated_from_span":null},"source_text":"fn pow_vartime<S: AsRef<[u64]>>(&self, exp: S) -> Self {\n // PATCH (Aeneas compatibility): index-based loops instead of\n // `iter().rev()` / `(0..64).rev()` (double-ended range iterators have\n // no Aeneas model). Iteration order and arithmetic are IDENTICAL to\n // upstream: limbs from most- to least-significant, bits from high to\n // low, square-then-conditionally-multiply.\n let mut res = Self::one();\n let mut found_one = false;\n let exp = exp.as_ref();\n let mut j = exp.len();\n while j > 0 {\n j -= 1;\n let e = exp[j];\n let mut i = 64u32;\n while i > 0 {\n i -= 1;\n if found_one {\n res = res.square();\n }\n\n if ((e >> i) & 1) == 1 {\n found_one = true;\n res *= self;\n }\n }\n }\n res\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":[{"index":0,"name":"S"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":2,"beg":{"line":590,"col":22},"end":{"line":590,"col":34}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":28,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":2074}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8297},{"Deduplicated":8294}],"output":{"Deduplicated":1079}},"src":{"TraitImpl":{"impl_ref":{"id":37,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":24,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":11},"reuses_default":false}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":590,"col":4},"end":{"line":617,"col":5}},"generated_from_span":null},"bound_body_regions":22,"locals":{"arg_count":2,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":590,"col":54},"end":{"line":590,"col":58}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":"self","span":{"data":{"file_id":2,"beg":{"line":590,"col":36},"end":{"line":590,"col":41}},"generated_from_span":null},"ty":{"Deduplicated":2302}},{"index":2,"name":"exp","span":{"data":{"file_id":2,"beg":{"line":590,"col":43},"end":{"line":590,"col":46}},"generated_from_span":null},"ty":{"Deduplicated":8294}},{"index":3,"name":"res","span":{"data":{"file_id":2,"beg":{"line":596,"col":12},"end":{"line":596,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":4,"name":"found_one","span":{"data":{"file_id":2,"beg":{"line":597,"col":12},"end":{"line":597,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":1225}},{"index":5,"name":"exp","span":{"data":{"file_id":2,"beg":{"line":598,"col":12},"end":{"line":598,"col":15}},"generated_from_span":null},"ty":{"HashConsedValue":[4901,{"Ref":[{"Body":3},{"Deduplicated":2074},"Shared"]}]}},{"index":6,"name":null,"span":{"data":{"file_id":2,"beg":{"line":598,"col":18},"end":{"line":598,"col":21}},"generated_from_span":null},"ty":{"HashConsedValue":[8442,{"Ref":[{"Body":5},{"Deduplicated":8294},"Shared"]}]}},{"index":7,"name":"j","span":{"data":{"file_id":2,"beg":{"line":599,"col":12},"end":{"line":599,"col":17}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":8,"name":null,"span":{"data":{"file_id":2,"beg":{"line":599,"col":20},"end":{"line":599,"col":23}},"generated_from_span":null},"ty":{"HashConsedValue":[4905,{"Ref":[{"Body":6},{"Deduplicated":2074},"Shared"]}]}},{"index":9,"name":null,"span":{"data":{"file_id":2,"beg":{"line":600,"col":14},"end":{"line":600,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":1225}},{"index":10,"name":null,"span":{"data":{"file_id":2,"beg":{"line":600,"col":14},"end":{"line":600,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":11,"name":null,"span":{"data":{"file_id":2,"beg":{"line":601,"col":12},"end":{"line":601,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":12,"name":"e","span":{"data":{"file_id":2,"beg":{"line":602,"col":16},"end":{"line":602,"col":17}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":13,"name":null,"span":{"data":{"file_id":2,"beg":{"line":602,"col":24},"end":{"line":602,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":14,"name":"i","span":{"data":{"file_id":2,"beg":{"line":603,"col":16},"end":{"line":603,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":1834}},{"index":15,"name":null,"span":{"data":{"file_id":2,"beg":{"line":604,"col":18},"end":{"line":604,"col":23}},"generated_from_span":null},"ty":{"Deduplicated":1225}},{"index":16,"name":null,"span":{"data":{"file_id":2,"beg":{"line":604,"col":18},"end":{"line":604,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":1834}},{"index":17,"name":null,"span":{"data":{"file_id":2,"beg":{"line":605,"col":16},"end":{"line":605,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1834}},{"index":18,"name":null,"span":{"data":{"file_id":2,"beg":{"line":606,"col":19},"end":{"line":606,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":1225}},{"index":19,"name":null,"span":{"data":{"file_id":2,"beg":{"line":607,"col":26},"end":{"line":607,"col":38}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":20,"name":null,"span":{"data":{"file_id":2,"beg":{"line":607,"col":26},"end":{"line":607,"col":29}},"generated_from_span":null},"ty":{"Deduplicated":4748}},{"index":21,"name":null,"span":{"data":{"file_id":2,"beg":{"line":610,"col":19},"end":{"line":610,"col":38}},"generated_from_span":null},"ty":{"Deduplicated":1225}},{"index":22,"name":null,"span":{"data":{"file_id":2,"beg":{"line":610,"col":19},"end":{"line":610,"col":33}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":23,"name":null,"span":{"data":{"file_id":2,"beg":{"line":610,"col":20},"end":{"line":610,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":24,"name":null,"span":{"data":{"file_id":2,"beg":{"line":610,"col":21},"end":{"line":610,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":25,"name":null,"span":{"data":{"file_id":2,"beg":{"line":610,"col":26},"end":{"line":610,"col":27}},"generated_from_span":null},"ty":{"Deduplicated":1834}},{"index":26,"name":null,"span":{"data":{"file_id":2,"beg":{"line":612,"col":20},"end":{"line":612,"col":31}},"generated_from_span":null},"ty":{"Deduplicated":1108}},{"index":27,"name":null,"span":{"data":{"file_id":2,"beg":{"line":612,"col":20},"end":{"line":612,"col":23}},"generated_from_span":null},"ty":{"HashConsedValue":[4913,{"Ref":[{"Body":9},{"Deduplicated":1079},"Mut"]}]}},{"index":28,"name":null,"span":{"data":{"file_id":2,"beg":{"line":612,"col":27},"end":{"line":612,"col":31}},"generated_from_span":null},"ty":{"HashConsedValue":[4914,{"Ref":[{"Body":10},{"Deduplicated":1079},"Shared"]}]}},{"index":29,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"HashConsedValue":[7283,{"Ref":["Erased",{"Deduplicated":2074},"Shared"]}]}},{"index":30,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":596,"col":12},"end":{"line":617,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":596,"col":12},"end":{"line":596,"col":19}},"generated_from_span":null},"id":3150,"kind":{"StorageLive":11},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":596,"col":12},"end":{"line":596,"col":19}},"generated_from_span":null},"id":3153,"kind":{"StorageLive":17},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":596,"col":12},"end":{"line":596,"col":19}},"generated_from_span":null},"id":3155,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":596,"col":22},"end":{"line":596,"col":33}},"generated_from_span":null},"id":3156,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":68}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[],"dest":{"kind":{"Local":3},"ty":{"Deduplicated":1079}}}},"comments_before":["PATCH (Aeneas compatibility): index-based loops instead of","`iter().rev()` / `(0..64).rev()` (double-ended range iterators have","no Aeneas model). Iteration order and arithmetic are IDENTICAL to","upstream: limbs from most- to least-significant, bits from high to","low, square-then-conditionally-multiply."]},{"span":{"data":{"file_id":2,"beg":{"line":597,"col":12},"end":{"line":597,"col":25}},"generated_from_span":null},"id":3157,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":597,"col":28},"end":{"line":597,"col":33}},"generated_from_span":null},"id":3158,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":1225}},{"Use":[{"Const":{"kind":{"Literal":{"Bool":false}},"ty":{"Deduplicated":1225}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":598,"col":12},"end":{"line":598,"col":15}},"generated_from_span":null},"id":3159,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":598,"col":18},"end":{"line":598,"col":21}},"generated_from_span":null},"id":3160,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":598,"col":18},"end":{"line":598,"col":21}},"generated_from_span":null},"id":3161,"kind":{"Assign":[{"kind":{"Local":6},"ty":{"Deduplicated":8442}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":8294}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":598,"col":18},"end":{"line":598,"col":30}},"generated_from_span":null},"id":3162,"kind":{"Call":{"func":{"Regular":{"kind":{"Trait":[{"HashConsedValue":[8443,{"kind":{"Clause":{"Free":0}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":28,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":2074}],"const_generics":[],"trait_refs":[]}}}}]},0,223]},"generics":{"regions":[{"Body":13}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":6},"ty":{"Deduplicated":8442}}}],"dest":{"kind":{"Local":5},"ty":{"Deduplicated":4901}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":598,"col":29},"end":{"line":598,"col":30}},"generated_from_span":null},"id":3163,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":599,"col":12},"end":{"line":599,"col":17}},"generated_from_span":null},"id":3164,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":599,"col":20},"end":{"line":599,"col":23}},"generated_from_span":null},"id":3165,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":599,"col":20},"end":{"line":599,"col":23}},"generated_from_span":null},"id":3166,"kind":{"Assign":[{"kind":{"Local":8},"ty":{"Deduplicated":4905}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":5},"ty":{"Deduplicated":4901}},"Deref"]},"ty":{"Deduplicated":2074}},"kind":"Shared","ptr_metadata":{"Copy":{"kind":{"Projection":[{"kind":{"Local":5},"ty":{"Deduplicated":4901}},"PtrMetadata"]},"ty":{"Deduplicated":1073}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":599,"col":20},"end":{"line":599,"col":29}},"generated_from_span":null},"id":3167,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":226}},"generics":{"regions":[{"Body":15}],"types":[{"Deduplicated":1072}],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":8},"ty":{"Deduplicated":4905}}}],"dest":{"kind":{"Local":7},"ty":{"Deduplicated":1073}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":599,"col":28},"end":{"line":599,"col":29}},"generated_from_span":null},"id":3168,"kind":{"StorageDead":8},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":600,"col":8},"end":{"line":615,"col":9}},"generated_from_span":null},"id":3261,"kind":{"Loop":{"span":{"data":{"file_id":2,"beg":{"line":600,"col":8},"end":{"line":615,"col":9}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":600,"col":14},"end":{"line":600,"col":19}},"generated_from_span":null},"id":3170,"kind":{"StorageLive":9},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":600,"col":14},"end":{"line":600,"col":15}},"generated_from_span":null},"id":3171,"kind":{"StorageLive":10},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":600,"col":14},"end":{"line":600,"col":15}},"generated_from_span":null},"id":3172,"kind":{"Assign":[{"kind":{"Local":10},"ty":{"Deduplicated":1073}},{"Use":[{"Copy":{"kind":{"Local":7},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":600,"col":14},"end":{"line":600,"col":19}},"generated_from_span":null},"id":3173,"kind":{"Assign":[{"kind":{"Local":9},"ty":{"Deduplicated":1225}},{"BinaryOp":["Gt",{"Move":{"kind":{"Local":10},"ty":{"Deduplicated":1073}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":600,"col":8},"end":{"line":615,"col":9}},"generated_from_span":null},"id":3260,"kind":{"Switch":{"If":[{"Move":{"kind":{"Local":9},"ty":{"Deduplicated":1225}}},{"span":{"data":{"file_id":2,"beg":{"line":600,"col":8},"end":{"line":615,"col":9}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":600,"col":18},"end":{"line":600,"col":19}},"generated_from_span":null},"id":3174,"kind":{"StorageDead":10},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":601,"col":12},"end":{"line":601,"col":18}},"generated_from_span":null},"id":3175,"kind":{"Assign":[{"kind":{"Local":11},"ty":{"Deduplicated":1073}},{"BinaryOp":[{"Sub":"Panic"},{"Copy":{"kind":{"Local":7},"ty":{"Deduplicated":1073}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":601,"col":12},"end":{"line":601,"col":18}},"generated_from_span":null},"id":3177,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":1073}},{"Use":[{"Move":{"kind":{"Local":11},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":602,"col":16},"end":{"line":602,"col":17}},"generated_from_span":null},"id":3178,"kind":{"StorageLive":12},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":602,"col":24},"end":{"line":602,"col":25}},"generated_from_span":null},"id":3179,"kind":{"StorageLive":13},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":602,"col":24},"end":{"line":602,"col":25}},"generated_from_span":null},"id":3180,"kind":{"Assign":[{"kind":{"Local":13},"ty":{"Deduplicated":1073}},{"Use":[{"Copy":{"kind":{"Local":7},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":602,"col":20},"end":{"line":602,"col":26}},"generated_from_span":null},"id":4541,"kind":{"StorageLive":29},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":602,"col":20},"end":{"line":602,"col":26}},"generated_from_span":null},"id":4542,"kind":{"Assign":[{"kind":{"Local":29},"ty":{"Deduplicated":7283}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":5},"ty":{"Deduplicated":4901}},"Deref"]},"ty":{"Deduplicated":2074}},"kind":"Shared","ptr_metadata":{"Copy":{"kind":{"Projection":[{"kind":{"Local":5},"ty":{"Deduplicated":4901}},"PtrMetadata"]},"ty":{"Deduplicated":1073}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":602,"col":20},"end":{"line":602,"col":26}},"generated_from_span":null},"id":4543,"kind":{"StorageLive":30},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":602,"col":20},"end":{"line":602,"col":26}},"generated_from_span":null},"id":4544,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":false,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":29},"ty":{"Deduplicated":7283}}},{"Copy":{"kind":{"Local":13},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":30},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":602,"col":20},"end":{"line":602,"col":26}},"generated_from_span":null},"id":3184,"kind":{"Assign":[{"kind":{"Local":12},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":30},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":602,"col":26},"end":{"line":602,"col":27}},"generated_from_span":null},"id":3185,"kind":{"StorageDead":13},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":603,"col":16},"end":{"line":603,"col":21}},"generated_from_span":null},"id":3186,"kind":{"StorageLive":14},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":603,"col":24},"end":{"line":603,"col":29}},"generated_from_span":null},"id":3187,"kind":{"Assign":[{"kind":{"Local":14},"ty":{"Deduplicated":1834}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U32","64"]}}},"ty":{"Deduplicated":1834}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":604,"col":12},"end":{"line":614,"col":13}},"generated_from_span":null},"id":3249,"kind":{"Loop":{"span":{"data":{"file_id":2,"beg":{"line":604,"col":12},"end":{"line":614,"col":13}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":604,"col":18},"end":{"line":604,"col":23}},"generated_from_span":null},"id":3188,"kind":{"StorageLive":15},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":604,"col":18},"end":{"line":604,"col":19}},"generated_from_span":null},"id":3189,"kind":{"StorageLive":16},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":604,"col":18},"end":{"line":604,"col":19}},"generated_from_span":null},"id":3190,"kind":{"Assign":[{"kind":{"Local":16},"ty":{"Deduplicated":1834}},{"Use":[{"Copy":{"kind":{"Local":14},"ty":{"Deduplicated":1834}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":604,"col":18},"end":{"line":604,"col":23}},"generated_from_span":null},"id":3191,"kind":{"Assign":[{"kind":{"Local":15},"ty":{"Deduplicated":1225}},{"BinaryOp":["Gt",{"Move":{"kind":{"Local":16},"ty":{"Deduplicated":1834}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U32","0"]}}},"ty":{"Deduplicated":1834}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":604,"col":12},"end":{"line":614,"col":13}},"generated_from_span":null},"id":3248,"kind":{"Switch":{"If":[{"Move":{"kind":{"Local":15},"ty":{"Deduplicated":1225}}},{"span":{"data":{"file_id":2,"beg":{"line":604,"col":12},"end":{"line":614,"col":13}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":604,"col":22},"end":{"line":604,"col":23}},"generated_from_span":null},"id":3192,"kind":{"StorageDead":16},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":605,"col":16},"end":{"line":605,"col":22}},"generated_from_span":null},"id":3193,"kind":{"Assign":[{"kind":{"Local":17},"ty":{"Deduplicated":1834}},{"BinaryOp":[{"Sub":"Panic"},{"Copy":{"kind":{"Local":14},"ty":{"Deduplicated":1834}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U32","1"]}}},"ty":{"Deduplicated":1834}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":605,"col":16},"end":{"line":605,"col":22}},"generated_from_span":null},"id":3195,"kind":{"Assign":[{"kind":{"Local":14},"ty":{"Deduplicated":1834}},{"Use":[{"Move":{"kind":{"Local":17},"ty":{"Deduplicated":1834}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":606,"col":19},"end":{"line":606,"col":28}},"generated_from_span":null},"id":3197,"kind":{"StorageLive":18},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":606,"col":19},"end":{"line":606,"col":28}},"generated_from_span":null},"id":3198,"kind":{"Assign":[{"kind":{"Local":18},"ty":{"Deduplicated":1225}},{"Use":[{"Copy":{"kind":{"Local":4},"ty":{"Deduplicated":1225}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":606,"col":16},"end":{"line":608,"col":17}},"generated_from_span":null},"id":3209,"kind":{"Switch":{"If":[{"Move":{"kind":{"Local":18},"ty":{"Deduplicated":1225}}},{"span":{"data":{"file_id":2,"beg":{"line":606,"col":16},"end":{"line":608,"col":17}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":607,"col":26},"end":{"line":607,"col":38}},"generated_from_span":null},"id":3199,"kind":{"StorageLive":19},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":607,"col":26},"end":{"line":607,"col":29}},"generated_from_span":null},"id":3200,"kind":{"StorageLive":20},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":607,"col":26},"end":{"line":607,"col":29}},"generated_from_span":null},"id":3201,"kind":{"Assign":[{"kind":{"Local":20},"ty":{"Deduplicated":4748}},{"Ref":{"place":{"kind":{"Local":3},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":607,"col":26},"end":{"line":607,"col":38}},"generated_from_span":null},"id":3202,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":72}},"generics":{"regions":[{"Body":18}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":20},"ty":{"Deduplicated":4748}}}],"dest":{"kind":{"Local":19},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":607,"col":37},"end":{"line":607,"col":38}},"generated_from_span":null},"id":3203,"kind":{"StorageDead":20},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":607,"col":20},"end":{"line":607,"col":38}},"generated_from_span":null},"id":3204,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":1079}},{"Use":[{"Move":{"kind":{"Local":19},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":607,"col":37},"end":{"line":607,"col":38}},"generated_from_span":null},"id":3205,"kind":{"StorageDead":19},"comments_before":[]}]},{"span":{"data":{"file_id":2,"beg":{"line":606,"col":19},"end":{"line":606,"col":28}},"generated_from_span":null},"statements":[]}]}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":608,"col":16},"end":{"line":608,"col":17}},"generated_from_span":null},"id":3210,"kind":{"StorageDead":18},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":610,"col":19},"end":{"line":610,"col":38}},"generated_from_span":null},"id":3212,"kind":{"StorageLive":21},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":610,"col":19},"end":{"line":610,"col":33}},"generated_from_span":null},"id":3213,"kind":{"StorageLive":22},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":610,"col":20},"end":{"line":610,"col":28}},"generated_from_span":null},"id":3214,"kind":{"StorageLive":23},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":610,"col":21},"end":{"line":610,"col":22}},"generated_from_span":null},"id":3215,"kind":{"StorageLive":24},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":610,"col":21},"end":{"line":610,"col":22}},"generated_from_span":null},"id":3216,"kind":{"Assign":[{"kind":{"Local":24},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":12},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":610,"col":26},"end":{"line":610,"col":27}},"generated_from_span":null},"id":3217,"kind":{"StorageLive":25},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":610,"col":26},"end":{"line":610,"col":27}},"generated_from_span":null},"id":3218,"kind":{"Assign":[{"kind":{"Local":25},"ty":{"Deduplicated":1834}},{"Use":[{"Copy":{"kind":{"Local":14},"ty":{"Deduplicated":1834}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":610,"col":20},"end":{"line":610,"col":28}},"generated_from_span":null},"id":3221,"kind":{"Assign":[{"kind":{"Local":23},"ty":{"Deduplicated":1072}},{"BinaryOp":[{"Shr":"Panic"},{"Move":{"kind":{"Local":24},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":25},"ty":{"Deduplicated":1834}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":610,"col":27},"end":{"line":610,"col":28}},"generated_from_span":null},"id":3222,"kind":{"StorageDead":25},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":610,"col":27},"end":{"line":610,"col":28}},"generated_from_span":null},"id":3223,"kind":{"StorageDead":24},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":610,"col":19},"end":{"line":610,"col":33}},"generated_from_span":null},"id":3224,"kind":{"Assign":[{"kind":{"Local":22},"ty":{"Deduplicated":1072}},{"BinaryOp":["BitAnd",{"Move":{"kind":{"Local":23},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","1"]}}},"ty":{"Deduplicated":1072}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":610,"col":32},"end":{"line":610,"col":33}},"generated_from_span":null},"id":3225,"kind":{"StorageDead":23},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":610,"col":19},"end":{"line":610,"col":38}},"generated_from_span":null},"id":3226,"kind":{"Assign":[{"kind":{"Local":21},"ty":{"Deduplicated":1225}},{"BinaryOp":["Eq",{"Move":{"kind":{"Local":22},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","1"]}}},"ty":{"Deduplicated":1072}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":610,"col":16},"end":{"line":613,"col":17}},"generated_from_span":null},"id":3243,"kind":{"Switch":{"If":[{"Move":{"kind":{"Local":21},"ty":{"Deduplicated":1225}}},{"span":{"data":{"file_id":2,"beg":{"line":610,"col":16},"end":{"line":613,"col":17}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":610,"col":37},"end":{"line":610,"col":38}},"generated_from_span":null},"id":3227,"kind":{"StorageDead":22},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":611,"col":20},"end":{"line":611,"col":36}},"generated_from_span":null},"id":3228,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":1225}},{"Use":[{"Const":{"kind":{"Literal":{"Bool":true}},"ty":{"Deduplicated":1225}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":612,"col":20},"end":{"line":612,"col":31}},"generated_from_span":null},"id":3229,"kind":{"StorageLive":26},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":612,"col":20},"end":{"line":612,"col":23}},"generated_from_span":null},"id":3230,"kind":{"StorageLive":27},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":612,"col":20},"end":{"line":612,"col":23}},"generated_from_span":null},"id":3231,"kind":{"Assign":[{"kind":{"Local":27},"ty":{"Deduplicated":4913}},{"Ref":{"place":{"kind":{"Local":3},"ty":{"Deduplicated":1079}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":612,"col":27},"end":{"line":612,"col":31}},"generated_from_span":null},"id":3232,"kind":{"StorageLive":28},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":612,"col":27},"end":{"line":612,"col":31}},"generated_from_span":null},"id":3233,"kind":{"Assign":[{"kind":{"Local":28},"ty":{"Deduplicated":4914}},{"Use":[{"Copy":{"kind":{"Local":1},"ty":{"Deduplicated":2302}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":612,"col":20},"end":{"line":612,"col":31}},"generated_from_span":null},"id":3234,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":54}},"generics":{"regions":[{"Body":19},{"Body":21}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":27},"ty":{"Deduplicated":4913}}},{"Move":{"kind":{"Local":28},"ty":{"Deduplicated":4914}}}],"dest":{"kind":{"Local":26},"ty":{"Deduplicated":1108}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":612,"col":30},"end":{"line":612,"col":31}},"generated_from_span":null},"id":3235,"kind":{"StorageDead":28},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":612,"col":30},"end":{"line":612,"col":31}},"generated_from_span":null},"id":3236,"kind":{"StorageDead":27},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":612,"col":31},"end":{"line":612,"col":32}},"generated_from_span":null},"id":3237,"kind":{"StorageDead":26},"comments_before":[]}]},{"span":{"data":{"file_id":2,"beg":{"line":610,"col":16},"end":{"line":613,"col":17}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":610,"col":37},"end":{"line":610,"col":38}},"generated_from_span":null},"id":3240,"kind":{"StorageDead":22},"comments_before":[]}]}]}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":613,"col":16},"end":{"line":613,"col":17}},"generated_from_span":null},"id":3244,"kind":{"StorageDead":21},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":614,"col":12},"end":{"line":614,"col":13}},"generated_from_span":null},"id":3245,"kind":{"StorageDead":15},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":604,"col":12},"end":{"line":614,"col":13}},"generated_from_span":null},"id":3246,"kind":{"Continue":0},"comments_before":[]}]},{"span":{"data":{"file_id":2,"beg":{"line":604,"col":18},"end":{"line":604,"col":23}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":604,"col":18},"end":{"line":604,"col":23}},"generated_from_span":null},"id":3247,"kind":{"Break":0},"comments_before":[]}]}]}},"comments_before":[]}]}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":604,"col":22},"end":{"line":604,"col":23}},"generated_from_span":null},"id":3250,"kind":{"StorageDead":16},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":614,"col":12},"end":{"line":614,"col":13}},"generated_from_span":null},"id":3254,"kind":{"StorageDead":15},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":615,"col":8},"end":{"line":615,"col":9}},"generated_from_span":null},"id":3255,"kind":{"StorageDead":14},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":615,"col":8},"end":{"line":615,"col":9}},"generated_from_span":null},"id":3256,"kind":{"StorageDead":12},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":615,"col":8},"end":{"line":615,"col":9}},"generated_from_span":null},"id":3257,"kind":{"StorageDead":9},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":600,"col":8},"end":{"line":615,"col":9}},"generated_from_span":null},"id":3258,"kind":{"Continue":0},"comments_before":[]}]},{"span":{"data":{"file_id":2,"beg":{"line":600,"col":14},"end":{"line":600,"col":19}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":600,"col":14},"end":{"line":600,"col":19}},"generated_from_span":null},"id":3259,"kind":{"Break":0},"comments_before":[]}]}]}},"comments_before":[]}]}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":600,"col":18},"end":{"line":600,"col":19}},"generated_from_span":null},"id":3262,"kind":{"StorageDead":10},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":615,"col":8},"end":{"line":615,"col":9}},"generated_from_span":null},"id":3266,"kind":{"StorageDead":9},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":616,"col":8},"end":{"line":616,"col":11}},"generated_from_span":null},"id":3268,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Local":3},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":617,"col":4},"end":{"line":617,"col":5}},"generated_from_span":null},"id":3269,"kind":{"StorageDead":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":617,"col":4},"end":{"line":617,"col":5}},"generated_from_span":null},"id":3270,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":617,"col":4},"end":{"line":617,"col":5}},"generated_from_span":null},"id":3271,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":617,"col":4},"end":{"line":617,"col":5}},"generated_from_span":null},"id":3272,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":617,"col":4},"end":{"line":617,"col":5}},"generated_from_span":null},"id":3273,"kind":{"Drop":[{"kind":{"Local":2},"ty":{"Deduplicated":8294}},{"kind":{"Trait":[{"HashConsedValue":[8444,{"kind":{"BuiltinOrAuto":{"builtin_data":"UntrackedDestruct","parent_trait_refs":[],"types":[]}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":2,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}]},0,115]},"generics":{"regions":[{"Body":16}],"types":[],"const_generics":[],"trait_refs":[]}},"Conditional"]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":617,"col":5},"end":{"line":617,"col":5}},"generated_from_span":null},"id":3274,"kind":"Return","comments_before":[]}]},"comments":[[596,["PATCH (Aeneas compatibility): index-based loops instead of","`iter().rev()` / `(0..64).rev()` (double-ended range iterators have","no Aeneas model). Iteration order and arithmetic are IDENTICAL to","upstream: limbs from most- to least-significant, bits from high to","low, square-then-conditionally-multiply."]]]}}},null,{"def_id":102,"item_meta":{"name":[{"Ident":["ff",0]},{"Ident":["PrimeField",0]},{"Ident":["from_u128",0]}],"span":{"data":{"file_id":21,"beg":{"line":254,"col":4},"end":{"line":254,"col":33}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Obtains a field element congruent to the integer `v`."},{"DocComment":""},{"DocComment":" For fields where `Self::CAPACITY >= 128`, this is injective and will produce a"},{"DocComment":" unique field element."},{"DocComment":""},{"DocComment":" For fields where `Self::CAPACITY < 128`, this is surjective; some field elements"},{"DocComment":" will be produced by multiple values of `v`."},{"DocComment":""},{"DocComment":" If you want to deterministically sample a field element representing a value, use"},{"DocComment":" [`FromUniformBytes`] instead."}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"Clause0_Repr"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":2226}],"output":{"Deduplicated":8294}},"src":{"TraitDecl":{"trait_ref":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":1},"has_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":103,"item_meta":{"name":[{"Ident":["ff",0]},{"Ident":["PrimeField",0]},{"Ident":["from_repr",0]}],"span":{"data":{"file_id":21,"beg":{"line":270,"col":4},"end":{"line":270,"col":53}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Attempts to convert a byte representation of a field element into an element of"},{"DocComment":" this prime field, failing if the input is not canonical (is not smaller than the"},{"DocComment":" field's modulus)."},{"DocComment":""},{"DocComment":" The byte representation is interpreted with the same endianness as elements"},{"DocComment":" returned by [`PrimeField::to_repr`]."}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"Clause0_Repr"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8295}],"output":{"Deduplicated":8390}},"src":{"TraitDecl":{"trait_ref":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":2},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},null,{"def_id":105,"item_meta":{"name":[{"Ident":["ff",0]},{"Ident":["PrimeField",0]},{"Ident":["to_repr",0]}],"span":{"data":{"file_id":21,"beg":{"line":292,"col":4},"end":{"line":292,"col":36}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Converts an element of the prime field into the standard byte representation for"},{"DocComment":" this field."},{"DocComment":""},{"DocComment":" The endianness of the byte representation is implementation-specific. Generic"},{"DocComment":" encodings of field elements should be treated as opaque."}],"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_Repr"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8333}],"output":{"Deduplicated":8295}},"src":{"TraitDecl":{"trait_ref":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":4},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":106,"item_meta":{"name":[{"Ident":["ff",0]},{"Ident":["PrimeField",0]},{"Ident":["is_odd",0]}],"span":{"data":{"file_id":21,"beg":{"line":295,"col":4},"end":{"line":295,"col":31}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Returns true iff this element is odd."}],"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_Repr"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8333}],"output":{"Deduplicated":1250}},"src":{"TraitDecl":{"trait_ref":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":5},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},null,{"def_id":108,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["from_u128",0]}],"span":{"data":{"file_id":2,"beg":{"line":644,"col":4},"end":{"line":646,"col":5}},"generated_from_span":null},"source_text":"fn from_u128(v: u128) -> Self {\n Fp::from_raw([v as u64, (v >> 64) as u64, 0, 0])\n }","attr_info":{"attributes":[],"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":[{"Deduplicated":2226}],"output":{"Deduplicated":1079}},"src":{"TraitImpl":{"impl_ref":{"id":38,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1895}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":1},"reuses_default":false}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":644,"col":4},"end":{"line":646,"col":5}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":1,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":644,"col":29},"end":{"line":644,"col":33}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":"v","span":{"data":{"file_id":2,"beg":{"line":644,"col":17},"end":{"line":644,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":2226}},{"index":2,"name":null,"span":{"data":{"file_id":2,"beg":{"line":645,"col":21},"end":{"line":645,"col":55}},"generated_from_span":null},"ty":{"Deduplicated":1074}},{"index":3,"name":null,"span":{"data":{"file_id":2,"beg":{"line":645,"col":22},"end":{"line":645,"col":30}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":4,"name":null,"span":{"data":{"file_id":2,"beg":{"line":645,"col":22},"end":{"line":645,"col":23}},"generated_from_span":null},"ty":{"Deduplicated":2226}},{"index":5,"name":null,"span":{"data":{"file_id":2,"beg":{"line":645,"col":32},"end":{"line":645,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":6,"name":null,"span":{"data":{"file_id":2,"beg":{"line":645,"col":32},"end":{"line":645,"col":41}},"generated_from_span":null},"ty":{"Deduplicated":2226}},{"index":7,"name":null,"span":{"data":{"file_id":2,"beg":{"line":645,"col":33},"end":{"line":645,"col":34}},"generated_from_span":null},"ty":{"Deduplicated":2226}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":645,"col":21},"end":{"line":646,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":645,"col":21},"end":{"line":645,"col":55}},"generated_from_span":null},"id":3277,"kind":{"StorageLive":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":645,"col":22},"end":{"line":645,"col":30}},"generated_from_span":null},"id":3278,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":645,"col":22},"end":{"line":645,"col":23}},"generated_from_span":null},"id":3279,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":645,"col":22},"end":{"line":645,"col":23}},"generated_from_span":null},"id":3280,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":2226}},{"Use":[{"Copy":{"kind":{"Local":1},"ty":{"Deduplicated":2226}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":645,"col":22},"end":{"line":645,"col":30}},"generated_from_span":null},"id":3281,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":1072}},{"UnaryOp":[{"Cast":{"Scalar":[{"UInt":"U128"},{"UInt":"U64"}]}},{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":2226}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":645,"col":29},"end":{"line":645,"col":30}},"generated_from_span":null},"id":3282,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":645,"col":32},"end":{"line":645,"col":48}},"generated_from_span":null},"id":3283,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":645,"col":32},"end":{"line":645,"col":41}},"generated_from_span":null},"id":3284,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":645,"col":33},"end":{"line":645,"col":34}},"generated_from_span":null},"id":3285,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":645,"col":33},"end":{"line":645,"col":34}},"generated_from_span":null},"id":3286,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":2226}},{"Use":[{"Copy":{"kind":{"Local":1},"ty":{"Deduplicated":2226}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":645,"col":32},"end":{"line":645,"col":41}},"generated_from_span":null},"id":3290,"kind":{"Assign":[{"kind":{"Local":6},"ty":{"Deduplicated":2226}},{"BinaryOp":[{"Shr":"Panic"},{"Move":{"kind":{"Local":7},"ty":{"Deduplicated":2226}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","64"]}}},"ty":{"Deduplicated":4754}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":645,"col":40},"end":{"line":645,"col":41}},"generated_from_span":null},"id":3291,"kind":{"StorageDead":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":645,"col":32},"end":{"line":645,"col":48}},"generated_from_span":null},"id":3292,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":1072}},{"UnaryOp":[{"Cast":{"Scalar":[{"UInt":"U128"},{"UInt":"U64"}]}},{"Move":{"kind":{"Local":6},"ty":{"Deduplicated":2226}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":645,"col":47},"end":{"line":645,"col":48}},"generated_from_span":null},"id":3293,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":645,"col":21},"end":{"line":645,"col":55}},"generated_from_span":null},"id":3294,"kind":{"Assign":[{"kind":{"Local":2},"ty":{"Deduplicated":1074}},{"Aggregate":[{"Array":[{"Deduplicated":1072},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}]},[{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":5},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":645,"col":54},"end":{"line":645,"col":55}},"generated_from_span":null},"id":3295,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":645,"col":54},"end":{"line":645,"col":55}},"generated_from_span":null},"id":3296,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":645,"col":8},"end":{"line":645,"col":56}},"generated_from_span":null},"id":3297,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":71}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":2},"ty":{"Deduplicated":1074}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":645,"col":55},"end":{"line":645,"col":56}},"generated_from_span":null},"id":3298,"kind":{"StorageDead":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":646,"col":5},"end":{"line":646,"col":5}},"generated_from_span":null},"id":3299,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":109,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["from_repr",0]}],"span":{"data":{"file_id":2,"beg":{"line":648,"col":4},"end":{"line":672,"col":5}},"generated_from_span":null},"source_text":"fn from_repr(repr: Self::Repr) -> CtOption<Self> {\n let mut tmp = Fp([0, 0, 0, 0]);\n\n tmp.0[0] = u64::from_le_bytes(repr[0..8].try_into().unwrap());\n tmp.0[1] = u64::from_le_bytes(repr[8..16].try_into().unwrap());\n tmp.0[2] = u64::from_le_bytes(repr[16..24].try_into().unwrap());\n tmp.0[3] = u64::from_le_bytes(repr[24..32].try_into().unwrap());\n\n // Try to subtract the modulus\n let (_, borrow) = sbb(tmp.0[0], MODULUS.0[0], 0);\n let (_, borrow) = sbb(tmp.0[1], MODULUS.0[1], borrow);\n let (_, borrow) = sbb(tmp.0[2], MODULUS.0[2], borrow);\n let (_, borrow) = sbb(tmp.0[3], MODULUS.0[3], borrow);\n\n // If the element is smaller than MODULUS then the\n // subtraction will underflow, producing a borrow value\n // of 0xffff...ffff. Otherwise, it'll be zero.\n let is_some = (borrow as u8) & 1;\n\n // Convert to Montgomery form by computing\n // (a.R^0 * R^2) / R = a.R\n tmp *= &R2;\n\n CtOption::new(tmp, Choice::from(is_some))\n }","attr_info":{"attributes":[],"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":[{"Deduplicated":1895}],"output":{"Deduplicated":4824}},"src":{"TraitImpl":{"impl_ref":{"id":38,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1895}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":2},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":648,"col":4},"end":{"line":672,"col":5}},"generated_from_span":null},"bound_body_regions":52,"locals":{"arg_count":1,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":648,"col":38},"end":{"line":648,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":4824}},{"index":1,"name":"repr","span":{"data":{"file_id":2,"beg":{"line":648,"col":17},"end":{"line":648,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":1895}},{"index":2,"name":"tmp","span":{"data":{"file_id":2,"beg":{"line":649,"col":12},"end":{"line":649,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":3,"name":null,"span":{"data":{"file_id":2,"beg":{"line":649,"col":25},"end":{"line":649,"col":37}},"generated_from_span":null},"ty":{"Deduplicated":1074}},{"index":4,"name":null,"span":{"data":{"file_id":2,"beg":{"line":651,"col":19},"end":{"line":651,"col":69}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":5,"name":null,"span":{"data":{"file_id":2,"beg":{"line":651,"col":38},"end":{"line":651,"col":68}},"generated_from_span":null},"ty":{"HashConsedValue":[5165,{"Array":[{"Deduplicated":1894},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}]}]}},{"index":6,"name":null,"span":{"data":{"file_id":2,"beg":{"line":651,"col":38},"end":{"line":651,"col":59}},"generated_from_span":null},"ty":{"HashConsedValue":[5173,{"Adt":{"id":{"Adt":10},"generics":{"regions":[],"types":[{"Deduplicated":5165},{"HashConsedValue":[5172,{"Adt":{"id":{"Adt":55},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}}]}],"const_generics":[],"trait_refs":[]}}}]}},{"index":7,"name":null,"span":{"data":{"file_id":2,"beg":{"line":651,"col":38},"end":{"line":651,"col":48}},"generated_from_span":null},"ty":{"HashConsedValue":[5176,{"Ref":[{"Body":1},{"HashConsedValue":[2162,{"Slice":{"Deduplicated":1894}}]},"Shared"]}]}},{"index":8,"name":null,"span":{"data":{"file_id":2,"beg":{"line":651,"col":42},"end":{"line":651,"col":48}},"generated_from_span":null},"ty":{"HashConsedValue":[5177,{"Ref":[{"Body":2},{"Deduplicated":2162},"Shared"]}]}},{"index":9,"name":null,"span":{"data":{"file_id":2,"beg":{"line":651,"col":38},"end":{"line":651,"col":42}},"generated_from_span":null},"ty":{"HashConsedValue":[5180,{"Ref":[{"Body":4},{"Deduplicated":1895},"Shared"]}]}},{"index":10,"name":null,"span":{"data":{"file_id":2,"beg":{"line":651,"col":43},"end":{"line":651,"col":47}},"generated_from_span":null},"ty":{"HashConsedValue":[5197,{"Adt":{"id":{"Adt":56},"generics":{"regions":[],"types":[{"Deduplicated":1073}],"const_generics":[],"trait_refs":[]}}}]}},{"index":11,"name":null,"span":{"data":{"file_id":2,"beg":{"line":651,"col":14},"end":{"line":651,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":12,"name":null,"span":{"data":{"file_id":2,"beg":{"line":652,"col":19},"end":{"line":652,"col":70}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":13,"name":null,"span":{"data":{"file_id":2,"beg":{"line":652,"col":38},"end":{"line":652,"col":69}},"generated_from_span":null},"ty":{"Deduplicated":5165}},{"index":14,"name":null,"span":{"data":{"file_id":2,"beg":{"line":652,"col":38},"end":{"line":652,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":5173}},{"index":15,"name":null,"span":{"data":{"file_id":2,"beg":{"line":652,"col":38},"end":{"line":652,"col":49}},"generated_from_span":null},"ty":{"HashConsedValue":[5198,{"Ref":[{"Body":5},{"Deduplicated":2162},"Shared"]}]}},{"index":16,"name":null,"span":{"data":{"file_id":2,"beg":{"line":652,"col":42},"end":{"line":652,"col":49}},"generated_from_span":null},"ty":{"HashConsedValue":[5199,{"Ref":[{"Body":6},{"Deduplicated":2162},"Shared"]}]}},{"index":17,"name":null,"span":{"data":{"file_id":2,"beg":{"line":652,"col":38},"end":{"line":652,"col":42}},"generated_from_span":null},"ty":{"HashConsedValue":[5200,{"Ref":[{"Body":7},{"Deduplicated":1895},"Shared"]}]}},{"index":18,"name":null,"span":{"data":{"file_id":2,"beg":{"line":652,"col":43},"end":{"line":652,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":5197}},{"index":19,"name":null,"span":{"data":{"file_id":2,"beg":{"line":652,"col":14},"end":{"line":652,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":20,"name":null,"span":{"data":{"file_id":2,"beg":{"line":653,"col":19},"end":{"line":653,"col":71}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":21,"name":null,"span":{"data":{"file_id":2,"beg":{"line":653,"col":38},"end":{"line":653,"col":70}},"generated_from_span":null},"ty":{"Deduplicated":5165}},{"index":22,"name":null,"span":{"data":{"file_id":2,"beg":{"line":653,"col":38},"end":{"line":653,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":5173}},{"index":23,"name":null,"span":{"data":{"file_id":2,"beg":{"line":653,"col":38},"end":{"line":653,"col":50}},"generated_from_span":null},"ty":{"HashConsedValue":[5201,{"Ref":[{"Body":8},{"Deduplicated":2162},"Shared"]}]}},{"index":24,"name":null,"span":{"data":{"file_id":2,"beg":{"line":653,"col":42},"end":{"line":653,"col":50}},"generated_from_span":null},"ty":{"HashConsedValue":[5202,{"Ref":[{"Body":9},{"Deduplicated":2162},"Shared"]}]}},{"index":25,"name":null,"span":{"data":{"file_id":2,"beg":{"line":653,"col":38},"end":{"line":653,"col":42}},"generated_from_span":null},"ty":{"HashConsedValue":[5203,{"Ref":[{"Body":10},{"Deduplicated":1895},"Shared"]}]}},{"index":26,"name":null,"span":{"data":{"file_id":2,"beg":{"line":653,"col":43},"end":{"line":653,"col":49}},"generated_from_span":null},"ty":{"Deduplicated":5197}},{"index":27,"name":null,"span":{"data":{"file_id":2,"beg":{"line":653,"col":14},"end":{"line":653,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":28,"name":null,"span":{"data":{"file_id":2,"beg":{"line":654,"col":19},"end":{"line":654,"col":71}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":29,"name":null,"span":{"data":{"file_id":2,"beg":{"line":654,"col":38},"end":{"line":654,"col":70}},"generated_from_span":null},"ty":{"Deduplicated":5165}},{"index":30,"name":null,"span":{"data":{"file_id":2,"beg":{"line":654,"col":38},"end":{"line":654,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":5173}},{"index":31,"name":null,"span":{"data":{"file_id":2,"beg":{"line":654,"col":38},"end":{"line":654,"col":50}},"generated_from_span":null},"ty":{"HashConsedValue":[5204,{"Ref":[{"Body":11},{"Deduplicated":2162},"Shared"]}]}},{"index":32,"name":null,"span":{"data":{"file_id":2,"beg":{"line":654,"col":42},"end":{"line":654,"col":50}},"generated_from_span":null},"ty":{"HashConsedValue":[5205,{"Ref":[{"Body":12},{"Deduplicated":2162},"Shared"]}]}},{"index":33,"name":null,"span":{"data":{"file_id":2,"beg":{"line":654,"col":38},"end":{"line":654,"col":42}},"generated_from_span":null},"ty":{"HashConsedValue":[5206,{"Ref":[{"Body":13},{"Deduplicated":1895},"Shared"]}]}},{"index":34,"name":null,"span":{"data":{"file_id":2,"beg":{"line":654,"col":43},"end":{"line":654,"col":49}},"generated_from_span":null},"ty":{"Deduplicated":5197}},{"index":35,"name":null,"span":{"data":{"file_id":2,"beg":{"line":654,"col":14},"end":{"line":654,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":36,"name":"borrow","span":{"data":{"file_id":2,"beg":{"line":657,"col":16},"end":{"line":657,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":37,"name":null,"span":{"data":{"file_id":2,"beg":{"line":657,"col":26},"end":{"line":657,"col":56}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":38,"name":null,"span":{"data":{"file_id":2,"beg":{"line":657,"col":30},"end":{"line":657,"col":38}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":39,"name":null,"span":{"data":{"file_id":2,"beg":{"line":657,"col":36},"end":{"line":657,"col":37}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":40,"name":null,"span":{"data":{"file_id":2,"beg":{"line":657,"col":40},"end":{"line":657,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":41,"name":null,"span":{"data":{"file_id":2,"beg":{"line":657,"col":40},"end":{"line":657,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":42,"name":null,"span":{"data":{"file_id":2,"beg":{"line":657,"col":50},"end":{"line":657,"col":51}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":43,"name":"borrow","span":{"data":{"file_id":2,"beg":{"line":658,"col":16},"end":{"line":658,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":44,"name":null,"span":{"data":{"file_id":2,"beg":{"line":658,"col":26},"end":{"line":658,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":45,"name":null,"span":{"data":{"file_id":2,"beg":{"line":658,"col":30},"end":{"line":658,"col":38}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":46,"name":null,"span":{"data":{"file_id":2,"beg":{"line":658,"col":36},"end":{"line":658,"col":37}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":47,"name":null,"span":{"data":{"file_id":2,"beg":{"line":658,"col":40},"end":{"line":658,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":48,"name":null,"span":{"data":{"file_id":2,"beg":{"line":658,"col":40},"end":{"line":658,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":49,"name":null,"span":{"data":{"file_id":2,"beg":{"line":658,"col":50},"end":{"line":658,"col":51}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":50,"name":null,"span":{"data":{"file_id":2,"beg":{"line":658,"col":54},"end":{"line":658,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":51,"name":"borrow","span":{"data":{"file_id":2,"beg":{"line":659,"col":16},"end":{"line":659,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":52,"name":null,"span":{"data":{"file_id":2,"beg":{"line":659,"col":26},"end":{"line":659,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":53,"name":null,"span":{"data":{"file_id":2,"beg":{"line":659,"col":30},"end":{"line":659,"col":38}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":54,"name":null,"span":{"data":{"file_id":2,"beg":{"line":659,"col":36},"end":{"line":659,"col":37}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":55,"name":null,"span":{"data":{"file_id":2,"beg":{"line":659,"col":40},"end":{"line":659,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":56,"name":null,"span":{"data":{"file_id":2,"beg":{"line":659,"col":40},"end":{"line":659,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":57,"name":null,"span":{"data":{"file_id":2,"beg":{"line":659,"col":50},"end":{"line":659,"col":51}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":58,"name":null,"span":{"data":{"file_id":2,"beg":{"line":659,"col":54},"end":{"line":659,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":59,"name":"borrow","span":{"data":{"file_id":2,"beg":{"line":660,"col":16},"end":{"line":660,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":60,"name":null,"span":{"data":{"file_id":2,"beg":{"line":660,"col":26},"end":{"line":660,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":61,"name":null,"span":{"data":{"file_id":2,"beg":{"line":660,"col":30},"end":{"line":660,"col":38}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":62,"name":null,"span":{"data":{"file_id":2,"beg":{"line":660,"col":36},"end":{"line":660,"col":37}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":63,"name":null,"span":{"data":{"file_id":2,"beg":{"line":660,"col":40},"end":{"line":660,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":64,"name":null,"span":{"data":{"file_id":2,"beg":{"line":660,"col":40},"end":{"line":660,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":65,"name":null,"span":{"data":{"file_id":2,"beg":{"line":660,"col":50},"end":{"line":660,"col":51}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":66,"name":null,"span":{"data":{"file_id":2,"beg":{"line":660,"col":54},"end":{"line":660,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":67,"name":"is_some","span":{"data":{"file_id":2,"beg":{"line":665,"col":12},"end":{"line":665,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":1894}},{"index":68,"name":null,"span":{"data":{"file_id":2,"beg":{"line":665,"col":22},"end":{"line":665,"col":36}},"generated_from_span":null},"ty":{"Deduplicated":1894}},{"index":69,"name":null,"span":{"data":{"file_id":2,"beg":{"line":665,"col":23},"end":{"line":665,"col":29}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":70,"name":null,"span":{"data":{"file_id":2,"beg":{"line":669,"col":8},"end":{"line":669,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":1108}},{"index":71,"name":null,"span":{"data":{"file_id":2,"beg":{"line":669,"col":8},"end":{"line":669,"col":11}},"generated_from_span":null},"ty":{"HashConsedValue":[5208,{"Ref":[{"Body":15},{"Deduplicated":1079},"Mut"]}]}},{"index":72,"name":null,"span":{"data":{"file_id":2,"beg":{"line":669,"col":15},"end":{"line":669,"col":18}},"generated_from_span":null},"ty":{"HashConsedValue":[5210,{"Ref":[{"Body":17},{"Deduplicated":1079},"Shared"]}]}},{"index":73,"name":null,"span":{"data":{"file_id":2,"beg":{"line":671,"col":22},"end":{"line":671,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":74,"name":null,"span":{"data":{"file_id":2,"beg":{"line":671,"col":27},"end":{"line":671,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1250}},{"index":75,"name":null,"span":{"data":{"file_id":2,"beg":{"line":671,"col":40},"end":{"line":671,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":1894}},{"index":76,"name":null,"span":{"data":{"file_id":2,"beg":{"line":669,"col":15},"end":{"line":669,"col":18}},"generated_from_span":null},"ty":{"HashConsedValue":[5211,{"Ref":[{"Body":18},{"Deduplicated":1079},"Shared"]}]}},{"index":77,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"HashConsedValue":[7209,{"Ref":[{"Body":47},{"Deduplicated":1079},"Shared"]}]}},{"index":78,"name":null,"span":{"data":{"file_id":2,"beg":{"line":669,"col":15},"end":{"line":669,"col":18}},"generated_from_span":null},"ty":{"HashConsedValue":[7210,{"Ref":[{"Body":51},{"Deduplicated":1079},"Shared"]}]}},{"index":79,"name":null,"span":{"data":{"file_id":2,"beg":{"line":669,"col":16},"end":{"line":669,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":80,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"HashConsedValue":[7285,{"Ref":["Erased",{"Deduplicated":1074},"Mut"]}]}},{"index":81,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"HashConsedValue":[7284,{"Ref":["Erased",{"Deduplicated":1072},"Mut"]}]}},{"index":82,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7285}},{"index":83,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7284}},{"index":84,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7285}},{"index":85,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7284}},{"index":86,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7285}},{"index":87,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7284}},{"index":88,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":89,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":90,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":91,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":92,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":93,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":94,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":95,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":96,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":97,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":98,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":99,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":100,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":101,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":102,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":103,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":649,"col":12},"end":{"line":660,"col":61}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":649,"col":12},"end":{"line":649,"col":19}},"generated_from_span":null},"id":3312,"kind":{"StorageLive":76},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":649,"col":12},"end":{"line":649,"col":19}},"generated_from_span":null},"id":3313,"kind":{"StorageLive":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":649,"col":25},"end":{"line":649,"col":37}},"generated_from_span":null},"id":3314,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":649,"col":25},"end":{"line":649,"col":37}},"generated_from_span":null},"id":3315,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":"ArrayRepeat"}},"generics":{"regions":[],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":3},"ty":{"Deduplicated":1074}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":649,"col":22},"end":{"line":649,"col":38}},"generated_from_span":null},"id":3316,"kind":{"Assign":[{"kind":{"Local":2},"ty":{"Deduplicated":1079}},{"Aggregate":[{"Adt":[{"id":{"Adt":0},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":1074}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":649,"col":37},"end":{"line":649,"col":38}},"generated_from_span":null},"id":3317,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":651,"col":19},"end":{"line":651,"col":69}},"generated_from_span":null},"id":3318,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":651,"col":38},"end":{"line":651,"col":68}},"generated_from_span":null},"id":3319,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":651,"col":38},"end":{"line":651,"col":59}},"generated_from_span":null},"id":3320,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":651,"col":38},"end":{"line":651,"col":48}},"generated_from_span":null},"id":3321,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":651,"col":42},"end":{"line":651,"col":48}},"generated_from_span":null},"id":3322,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":651,"col":38},"end":{"line":651,"col":42}},"generated_from_span":null},"id":3323,"kind":{"StorageLive":9},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":651,"col":38},"end":{"line":651,"col":42}},"generated_from_span":null},"id":3324,"kind":{"Assign":[{"kind":{"Local":9},"ty":{"Deduplicated":5180}},{"Ref":{"place":{"kind":{"Local":1},"ty":{"Deduplicated":1895}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":651,"col":43},"end":{"line":651,"col":47}},"generated_from_span":null},"id":3325,"kind":{"StorageLive":10},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":651,"col":43},"end":{"line":651,"col":47}},"generated_from_span":null},"id":3326,"kind":{"Assign":[{"kind":{"Local":10},"ty":{"Deduplicated":5197}},{"Aggregate":[{"Adt":[{"id":{"Adt":56},"generics":{"regions":[],"types":[{"Deduplicated":1073}],"const_generics":[],"trait_refs":[]}},null,null]},[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":651,"col":42},"end":{"line":651,"col":48}},"generated_from_span":null},"id":3327,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":232}},"generics":{"regions":[{"Body":20}],"types":[{"Deduplicated":1894},{"Deduplicated":5197},{"Deduplicated":2162}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","32"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[{"HashConsedValue":[7692,{"kind":{"TraitImpl":{"id":59,"generics":{"regions":[],"types":[{"Deduplicated":1894},{"Deduplicated":5197},{"Deduplicated":2162}],"const_generics":[],"trait_refs":[{"HashConsedValue":[7691,{"kind":{"TraitImpl":{"id":60,"generics":{"regions":[],"types":[{"Deduplicated":1894}],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":46,"generics":{"regions":[],"types":[{"Deduplicated":5197},{"Deduplicated":2162},{"Deduplicated":2162}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":45,"generics":{"regions":[],"types":[{"Deduplicated":2162},{"Deduplicated":5197},{"Deduplicated":2162}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"args":[{"Move":{"kind":{"Local":9},"ty":{"Deduplicated":5180}}},{"Move":{"kind":{"Local":10},"ty":{"Deduplicated":5197}}}],"dest":{"kind":{"Local":8},"ty":{"Deduplicated":5177}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":651,"col":38},"end":{"line":651,"col":48}},"generated_from_span":null},"id":3328,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":5176}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":8},"ty":{"Deduplicated":5177}},"Deref"]},"ty":{"Deduplicated":2162}},"kind":"Shared","ptr_metadata":{"Copy":{"kind":{"Projection":[{"kind":{"Local":8},"ty":{"Deduplicated":5177}},"PtrMetadata"]},"ty":{"Deduplicated":1073}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":651,"col":47},"end":{"line":651,"col":48}},"generated_from_span":null},"id":3329,"kind":{"StorageDead":10},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":651,"col":47},"end":{"line":651,"col":48}},"generated_from_span":null},"id":3330,"kind":{"StorageDead":9},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":651,"col":38},"end":{"line":651,"col":59}},"generated_from_span":null},"id":3331,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":233}},"generics":{"regions":[],"types":[{"HashConsedValue":[6700,{"Ref":[{"Body":22},{"Deduplicated":2162},"Shared"]}]},{"Deduplicated":5165},{"Deduplicated":5172}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8445,{"kind":{"TraitImpl":{"id":62,"generics":{"regions":[{"Body":22}],"types":[{"Deduplicated":1894}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[{"HashConsedValue":[2143,{"kind":{"TraitImpl":{"id":45,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":3,"generics":{"regions":[],"types":[{"Deduplicated":1894}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":47,"generics":{"regions":[],"types":[{"Deduplicated":5165},{"Deduplicated":6700},{"Deduplicated":5172}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"args":[{"Move":{"kind":{"Local":7},"ty":{"Deduplicated":5176}}}],"dest":{"kind":{"Local":6},"ty":{"Deduplicated":5173}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":651,"col":58},"end":{"line":651,"col":59}},"generated_from_span":null},"id":3332,"kind":{"StorageDead":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":651,"col":38},"end":{"line":651,"col":68}},"generated_from_span":null},"id":3333,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":234}},"generics":{"regions":[],"types":[{"Deduplicated":5165},{"Deduplicated":5172}],"const_generics":[],"trait_refs":[{"HashConsedValue":[5463,{"kind":{"TraitImpl":{"id":63,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":6,"generics":{"regions":[],"types":[{"Deduplicated":5172}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"args":[{"Move":{"kind":{"Local":6},"ty":{"Deduplicated":5173}}}],"dest":{"kind":{"Local":5},"ty":{"Deduplicated":5165}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":651,"col":67},"end":{"line":651,"col":68}},"generated_from_span":null},"id":3334,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":651,"col":19},"end":{"line":651,"col":69}},"generated_from_span":null},"id":3335,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":235}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":5},"ty":{"Deduplicated":5165}}}],"dest":{"kind":{"Local":4},"ty":{"Deduplicated":1072}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":651,"col":68},"end":{"line":651,"col":69}},"generated_from_span":null},"id":3336,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":651,"col":14},"end":{"line":651,"col":15}},"generated_from_span":null},"id":3337,"kind":{"StorageLive":11},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":651,"col":14},"end":{"line":651,"col":15}},"generated_from_span":null},"id":3338,"kind":{"Assign":[{"kind":{"Local":11},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":651,"col":8},"end":{"line":651,"col":69}},"generated_from_span":null},"id":4545,"kind":{"StorageLive":80},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":651,"col":8},"end":{"line":651,"col":69}},"generated_from_span":null},"id":4546,"kind":{"Assign":[{"kind":{"Local":80},"ty":{"Deduplicated":7285}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":651,"col":8},"end":{"line":651,"col":69}},"generated_from_span":null},"id":4547,"kind":{"StorageLive":81},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":651,"col":8},"end":{"line":651,"col":69}},"generated_from_span":null},"id":4548,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Mut","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":80},"ty":{"Deduplicated":7285}}},{"Copy":{"kind":{"Local":11},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":81},"ty":{"Deduplicated":7284}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":651,"col":8},"end":{"line":651,"col":69}},"generated_from_span":null},"id":3341,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":81},"ty":{"Deduplicated":7284}},"Deref"]},"ty":{"Deduplicated":1072}},{"Use":[{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":651,"col":68},"end":{"line":651,"col":69}},"generated_from_span":null},"id":3342,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":651,"col":69},"end":{"line":651,"col":70}},"generated_from_span":null},"id":3343,"kind":{"StorageDead":11},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":651,"col":69},"end":{"line":651,"col":70}},"generated_from_span":null},"id":3344,"kind":{"StorageDead":8},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":652,"col":19},"end":{"line":652,"col":70}},"generated_from_span":null},"id":3345,"kind":{"StorageLive":12},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":652,"col":38},"end":{"line":652,"col":69}},"generated_from_span":null},"id":3346,"kind":{"StorageLive":13},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":652,"col":38},"end":{"line":652,"col":60}},"generated_from_span":null},"id":3347,"kind":{"StorageLive":14},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":652,"col":38},"end":{"line":652,"col":49}},"generated_from_span":null},"id":3348,"kind":{"StorageLive":15},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":652,"col":42},"end":{"line":652,"col":49}},"generated_from_span":null},"id":3349,"kind":{"StorageLive":16},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":652,"col":38},"end":{"line":652,"col":42}},"generated_from_span":null},"id":3350,"kind":{"StorageLive":17},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":652,"col":38},"end":{"line":652,"col":42}},"generated_from_span":null},"id":3351,"kind":{"Assign":[{"kind":{"Local":17},"ty":{"Deduplicated":5200}},{"Ref":{"place":{"kind":{"Local":1},"ty":{"Deduplicated":1895}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":652,"col":43},"end":{"line":652,"col":48}},"generated_from_span":null},"id":3352,"kind":{"StorageLive":18},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":652,"col":43},"end":{"line":652,"col":48}},"generated_from_span":null},"id":3353,"kind":{"Assign":[{"kind":{"Local":18},"ty":{"Deduplicated":5197}},{"Aggregate":[{"Adt":[{"id":{"Adt":56},"generics":{"regions":[],"types":[{"Deduplicated":1073}],"const_generics":[],"trait_refs":[]}},null,null]},[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","16"]}}},"ty":{"Deduplicated":1073}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":652,"col":42},"end":{"line":652,"col":49}},"generated_from_span":null},"id":3354,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":232}},"generics":{"regions":[{"Body":27}],"types":[{"Deduplicated":1894},{"Deduplicated":5197},{"Deduplicated":2162}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","32"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[{"Deduplicated":7692}]}}},"args":[{"Move":{"kind":{"Local":17},"ty":{"Deduplicated":5200}}},{"Move":{"kind":{"Local":18},"ty":{"Deduplicated":5197}}}],"dest":{"kind":{"Local":16},"ty":{"Deduplicated":5199}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":652,"col":38},"end":{"line":652,"col":49}},"generated_from_span":null},"id":3355,"kind":{"Assign":[{"kind":{"Local":15},"ty":{"Deduplicated":5198}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":16},"ty":{"Deduplicated":5199}},"Deref"]},"ty":{"Deduplicated":2162}},"kind":"Shared","ptr_metadata":{"Copy":{"kind":{"Projection":[{"kind":{"Local":16},"ty":{"Deduplicated":5199}},"PtrMetadata"]},"ty":{"Deduplicated":1073}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":652,"col":48},"end":{"line":652,"col":49}},"generated_from_span":null},"id":3356,"kind":{"StorageDead":18},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":652,"col":48},"end":{"line":652,"col":49}},"generated_from_span":null},"id":3357,"kind":{"StorageDead":17},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":652,"col":38},"end":{"line":652,"col":60}},"generated_from_span":null},"id":3358,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":233}},"generics":{"regions":[],"types":[{"HashConsedValue":[6702,{"Ref":[{"Body":29},{"Deduplicated":2162},"Shared"]}]},{"Deduplicated":5165},{"Deduplicated":5172}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8446,{"kind":{"TraitImpl":{"id":62,"generics":{"regions":[{"Body":29}],"types":[{"Deduplicated":1894}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[{"Deduplicated":2143}]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":47,"generics":{"regions":[],"types":[{"Deduplicated":5165},{"Deduplicated":6702},{"Deduplicated":5172}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"args":[{"Move":{"kind":{"Local":15},"ty":{"Deduplicated":5198}}}],"dest":{"kind":{"Local":14},"ty":{"Deduplicated":5173}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":652,"col":59},"end":{"line":652,"col":60}},"generated_from_span":null},"id":3359,"kind":{"StorageDead":15},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":652,"col":38},"end":{"line":652,"col":69}},"generated_from_span":null},"id":3360,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":234}},"generics":{"regions":[],"types":[{"Deduplicated":5165},{"Deduplicated":5172}],"const_generics":[],"trait_refs":[{"Deduplicated":5463}]}}},"args":[{"Move":{"kind":{"Local":14},"ty":{"Deduplicated":5173}}}],"dest":{"kind":{"Local":13},"ty":{"Deduplicated":5165}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":652,"col":68},"end":{"line":652,"col":69}},"generated_from_span":null},"id":3361,"kind":{"StorageDead":14},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":652,"col":19},"end":{"line":652,"col":70}},"generated_from_span":null},"id":3362,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":235}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":13},"ty":{"Deduplicated":5165}}}],"dest":{"kind":{"Local":12},"ty":{"Deduplicated":1072}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":652,"col":69},"end":{"line":652,"col":70}},"generated_from_span":null},"id":3363,"kind":{"StorageDead":13},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":652,"col":14},"end":{"line":652,"col":15}},"generated_from_span":null},"id":3364,"kind":{"StorageLive":19},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":652,"col":14},"end":{"line":652,"col":15}},"generated_from_span":null},"id":3365,"kind":{"Assign":[{"kind":{"Local":19},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":652,"col":8},"end":{"line":652,"col":70}},"generated_from_span":null},"id":4549,"kind":{"StorageLive":82},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":652,"col":8},"end":{"line":652,"col":70}},"generated_from_span":null},"id":4550,"kind":{"Assign":[{"kind":{"Local":82},"ty":{"Deduplicated":7285}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":652,"col":8},"end":{"line":652,"col":70}},"generated_from_span":null},"id":4551,"kind":{"StorageLive":83},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":652,"col":8},"end":{"line":652,"col":70}},"generated_from_span":null},"id":4552,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Mut","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":82},"ty":{"Deduplicated":7285}}},{"Copy":{"kind":{"Local":19},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":83},"ty":{"Deduplicated":7284}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":652,"col":8},"end":{"line":652,"col":70}},"generated_from_span":null},"id":3368,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":83},"ty":{"Deduplicated":7284}},"Deref"]},"ty":{"Deduplicated":1072}},{"Use":[{"Move":{"kind":{"Local":12},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":652,"col":69},"end":{"line":652,"col":70}},"generated_from_span":null},"id":3369,"kind":{"StorageDead":12},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":652,"col":70},"end":{"line":652,"col":71}},"generated_from_span":null},"id":3370,"kind":{"StorageDead":19},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":652,"col":70},"end":{"line":652,"col":71}},"generated_from_span":null},"id":3371,"kind":{"StorageDead":16},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":653,"col":19},"end":{"line":653,"col":71}},"generated_from_span":null},"id":3372,"kind":{"StorageLive":20},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":653,"col":38},"end":{"line":653,"col":70}},"generated_from_span":null},"id":3373,"kind":{"StorageLive":21},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":653,"col":38},"end":{"line":653,"col":61}},"generated_from_span":null},"id":3374,"kind":{"StorageLive":22},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":653,"col":38},"end":{"line":653,"col":50}},"generated_from_span":null},"id":3375,"kind":{"StorageLive":23},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":653,"col":42},"end":{"line":653,"col":50}},"generated_from_span":null},"id":3376,"kind":{"StorageLive":24},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":653,"col":38},"end":{"line":653,"col":42}},"generated_from_span":null},"id":3377,"kind":{"StorageLive":25},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":653,"col":38},"end":{"line":653,"col":42}},"generated_from_span":null},"id":3378,"kind":{"Assign":[{"kind":{"Local":25},"ty":{"Deduplicated":5203}},{"Ref":{"place":{"kind":{"Local":1},"ty":{"Deduplicated":1895}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":653,"col":43},"end":{"line":653,"col":49}},"generated_from_span":null},"id":3379,"kind":{"StorageLive":26},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":653,"col":43},"end":{"line":653,"col":49}},"generated_from_span":null},"id":3380,"kind":{"Assign":[{"kind":{"Local":26},"ty":{"Deduplicated":5197}},{"Aggregate":[{"Adt":[{"id":{"Adt":56},"generics":{"regions":[],"types":[{"Deduplicated":1073}],"const_generics":[],"trait_refs":[]}},null,null]},[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","16"]}}},"ty":{"Deduplicated":1073}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","24"]}}},"ty":{"Deduplicated":1073}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":653,"col":42},"end":{"line":653,"col":50}},"generated_from_span":null},"id":3381,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":232}},"generics":{"regions":[{"Body":34}],"types":[{"Deduplicated":1894},{"Deduplicated":5197},{"Deduplicated":2162}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","32"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[{"Deduplicated":7692}]}}},"args":[{"Move":{"kind":{"Local":25},"ty":{"Deduplicated":5203}}},{"Move":{"kind":{"Local":26},"ty":{"Deduplicated":5197}}}],"dest":{"kind":{"Local":24},"ty":{"Deduplicated":5202}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":653,"col":38},"end":{"line":653,"col":50}},"generated_from_span":null},"id":3382,"kind":{"Assign":[{"kind":{"Local":23},"ty":{"Deduplicated":5201}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":24},"ty":{"Deduplicated":5202}},"Deref"]},"ty":{"Deduplicated":2162}},"kind":"Shared","ptr_metadata":{"Copy":{"kind":{"Projection":[{"kind":{"Local":24},"ty":{"Deduplicated":5202}},"PtrMetadata"]},"ty":{"Deduplicated":1073}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":653,"col":49},"end":{"line":653,"col":50}},"generated_from_span":null},"id":3383,"kind":{"StorageDead":26},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":653,"col":49},"end":{"line":653,"col":50}},"generated_from_span":null},"id":3384,"kind":{"StorageDead":25},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":653,"col":38},"end":{"line":653,"col":61}},"generated_from_span":null},"id":3385,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":233}},"generics":{"regions":[],"types":[{"HashConsedValue":[6704,{"Ref":[{"Body":36},{"Deduplicated":2162},"Shared"]}]},{"Deduplicated":5165},{"Deduplicated":5172}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8447,{"kind":{"TraitImpl":{"id":62,"generics":{"regions":[{"Body":36}],"types":[{"Deduplicated":1894}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[{"Deduplicated":2143}]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":47,"generics":{"regions":[],"types":[{"Deduplicated":5165},{"Deduplicated":6704},{"Deduplicated":5172}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"args":[{"Move":{"kind":{"Local":23},"ty":{"Deduplicated":5201}}}],"dest":{"kind":{"Local":22},"ty":{"Deduplicated":5173}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":653,"col":60},"end":{"line":653,"col":61}},"generated_from_span":null},"id":3386,"kind":{"StorageDead":23},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":653,"col":38},"end":{"line":653,"col":70}},"generated_from_span":null},"id":3387,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":234}},"generics":{"regions":[],"types":[{"Deduplicated":5165},{"Deduplicated":5172}],"const_generics":[],"trait_refs":[{"Deduplicated":5463}]}}},"args":[{"Move":{"kind":{"Local":22},"ty":{"Deduplicated":5173}}}],"dest":{"kind":{"Local":21},"ty":{"Deduplicated":5165}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":653,"col":69},"end":{"line":653,"col":70}},"generated_from_span":null},"id":3388,"kind":{"StorageDead":22},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":653,"col":19},"end":{"line":653,"col":71}},"generated_from_span":null},"id":3389,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":235}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":21},"ty":{"Deduplicated":5165}}}],"dest":{"kind":{"Local":20},"ty":{"Deduplicated":1072}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":653,"col":70},"end":{"line":653,"col":71}},"generated_from_span":null},"id":3390,"kind":{"StorageDead":21},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":653,"col":14},"end":{"line":653,"col":15}},"generated_from_span":null},"id":3391,"kind":{"StorageLive":27},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":653,"col":14},"end":{"line":653,"col":15}},"generated_from_span":null},"id":3392,"kind":{"Assign":[{"kind":{"Local":27},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":653,"col":8},"end":{"line":653,"col":71}},"generated_from_span":null},"id":4553,"kind":{"StorageLive":84},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":653,"col":8},"end":{"line":653,"col":71}},"generated_from_span":null},"id":4554,"kind":{"Assign":[{"kind":{"Local":84},"ty":{"Deduplicated":7285}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":653,"col":8},"end":{"line":653,"col":71}},"generated_from_span":null},"id":4555,"kind":{"StorageLive":85},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":653,"col":8},"end":{"line":653,"col":71}},"generated_from_span":null},"id":4556,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Mut","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":84},"ty":{"Deduplicated":7285}}},{"Copy":{"kind":{"Local":27},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":85},"ty":{"Deduplicated":7284}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":653,"col":8},"end":{"line":653,"col":71}},"generated_from_span":null},"id":3395,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":85},"ty":{"Deduplicated":7284}},"Deref"]},"ty":{"Deduplicated":1072}},{"Use":[{"Move":{"kind":{"Local":20},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":653,"col":70},"end":{"line":653,"col":71}},"generated_from_span":null},"id":3396,"kind":{"StorageDead":20},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":653,"col":71},"end":{"line":653,"col":72}},"generated_from_span":null},"id":3397,"kind":{"StorageDead":27},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":653,"col":71},"end":{"line":653,"col":72}},"generated_from_span":null},"id":3398,"kind":{"StorageDead":24},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":654,"col":19},"end":{"line":654,"col":71}},"generated_from_span":null},"id":3399,"kind":{"StorageLive":28},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":654,"col":38},"end":{"line":654,"col":70}},"generated_from_span":null},"id":3400,"kind":{"StorageLive":29},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":654,"col":38},"end":{"line":654,"col":61}},"generated_from_span":null},"id":3401,"kind":{"StorageLive":30},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":654,"col":38},"end":{"line":654,"col":50}},"generated_from_span":null},"id":3402,"kind":{"StorageLive":31},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":654,"col":42},"end":{"line":654,"col":50}},"generated_from_span":null},"id":3403,"kind":{"StorageLive":32},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":654,"col":38},"end":{"line":654,"col":42}},"generated_from_span":null},"id":3404,"kind":{"StorageLive":33},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":654,"col":38},"end":{"line":654,"col":42}},"generated_from_span":null},"id":3405,"kind":{"Assign":[{"kind":{"Local":33},"ty":{"Deduplicated":5206}},{"Ref":{"place":{"kind":{"Local":1},"ty":{"Deduplicated":1895}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":654,"col":43},"end":{"line":654,"col":49}},"generated_from_span":null},"id":3406,"kind":{"StorageLive":34},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":654,"col":43},"end":{"line":654,"col":49}},"generated_from_span":null},"id":3407,"kind":{"Assign":[{"kind":{"Local":34},"ty":{"Deduplicated":5197}},{"Aggregate":[{"Adt":[{"id":{"Adt":56},"generics":{"regions":[],"types":[{"Deduplicated":1073}],"const_generics":[],"trait_refs":[]}},null,null]},[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","24"]}}},"ty":{"Deduplicated":1073}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","32"]}}},"ty":{"Deduplicated":1073}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":654,"col":42},"end":{"line":654,"col":50}},"generated_from_span":null},"id":3408,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":232}},"generics":{"regions":[{"Body":41}],"types":[{"Deduplicated":1894},{"Deduplicated":5197},{"Deduplicated":2162}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","32"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[{"Deduplicated":7692}]}}},"args":[{"Move":{"kind":{"Local":33},"ty":{"Deduplicated":5206}}},{"Move":{"kind":{"Local":34},"ty":{"Deduplicated":5197}}}],"dest":{"kind":{"Local":32},"ty":{"Deduplicated":5205}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":654,"col":38},"end":{"line":654,"col":50}},"generated_from_span":null},"id":3409,"kind":{"Assign":[{"kind":{"Local":31},"ty":{"Deduplicated":5204}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":32},"ty":{"Deduplicated":5205}},"Deref"]},"ty":{"Deduplicated":2162}},"kind":"Shared","ptr_metadata":{"Copy":{"kind":{"Projection":[{"kind":{"Local":32},"ty":{"Deduplicated":5205}},"PtrMetadata"]},"ty":{"Deduplicated":1073}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":654,"col":49},"end":{"line":654,"col":50}},"generated_from_span":null},"id":3410,"kind":{"StorageDead":34},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":654,"col":49},"end":{"line":654,"col":50}},"generated_from_span":null},"id":3411,"kind":{"StorageDead":33},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":654,"col":38},"end":{"line":654,"col":61}},"generated_from_span":null},"id":3412,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":233}},"generics":{"regions":[],"types":[{"HashConsedValue":[6706,{"Ref":[{"Body":43},{"Deduplicated":2162},"Shared"]}]},{"Deduplicated":5165},{"Deduplicated":5172}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8448,{"kind":{"TraitImpl":{"id":62,"generics":{"regions":[{"Body":43}],"types":[{"Deduplicated":1894}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[{"Deduplicated":2143}]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":47,"generics":{"regions":[],"types":[{"Deduplicated":5165},{"Deduplicated":6706},{"Deduplicated":5172}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"args":[{"Move":{"kind":{"Local":31},"ty":{"Deduplicated":5204}}}],"dest":{"kind":{"Local":30},"ty":{"Deduplicated":5173}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":654,"col":60},"end":{"line":654,"col":61}},"generated_from_span":null},"id":3413,"kind":{"StorageDead":31},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":654,"col":38},"end":{"line":654,"col":70}},"generated_from_span":null},"id":3414,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":234}},"generics":{"regions":[],"types":[{"Deduplicated":5165},{"Deduplicated":5172}],"const_generics":[],"trait_refs":[{"Deduplicated":5463}]}}},"args":[{"Move":{"kind":{"Local":30},"ty":{"Deduplicated":5173}}}],"dest":{"kind":{"Local":29},"ty":{"Deduplicated":5165}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":654,"col":69},"end":{"line":654,"col":70}},"generated_from_span":null},"id":3415,"kind":{"StorageDead":30},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":654,"col":19},"end":{"line":654,"col":71}},"generated_from_span":null},"id":3416,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":235}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":29},"ty":{"Deduplicated":5165}}}],"dest":{"kind":{"Local":28},"ty":{"Deduplicated":1072}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":654,"col":70},"end":{"line":654,"col":71}},"generated_from_span":null},"id":3417,"kind":{"StorageDead":29},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":654,"col":14},"end":{"line":654,"col":15}},"generated_from_span":null},"id":3418,"kind":{"StorageLive":35},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":654,"col":14},"end":{"line":654,"col":15}},"generated_from_span":null},"id":3419,"kind":{"Assign":[{"kind":{"Local":35},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":654,"col":8},"end":{"line":654,"col":71}},"generated_from_span":null},"id":4557,"kind":{"StorageLive":86},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":654,"col":8},"end":{"line":654,"col":71}},"generated_from_span":null},"id":4558,"kind":{"Assign":[{"kind":{"Local":86},"ty":{"Deduplicated":7285}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":654,"col":8},"end":{"line":654,"col":71}},"generated_from_span":null},"id":4559,"kind":{"StorageLive":87},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":654,"col":8},"end":{"line":654,"col":71}},"generated_from_span":null},"id":4560,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Mut","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":86},"ty":{"Deduplicated":7285}}},{"Copy":{"kind":{"Local":35},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":87},"ty":{"Deduplicated":7284}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":654,"col":8},"end":{"line":654,"col":71}},"generated_from_span":null},"id":3422,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":87},"ty":{"Deduplicated":7284}},"Deref"]},"ty":{"Deduplicated":1072}},{"Use":[{"Move":{"kind":{"Local":28},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":654,"col":70},"end":{"line":654,"col":71}},"generated_from_span":null},"id":3423,"kind":{"StorageDead":28},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":654,"col":71},"end":{"line":654,"col":72}},"generated_from_span":null},"id":3424,"kind":{"StorageDead":35},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":654,"col":71},"end":{"line":654,"col":72}},"generated_from_span":null},"id":3425,"kind":{"StorageDead":32},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":657,"col":26},"end":{"line":657,"col":56}},"generated_from_span":null},"id":3426,"kind":{"StorageLive":37},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":657,"col":30},"end":{"line":657,"col":38}},"generated_from_span":null},"id":3427,"kind":{"StorageLive":38},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":657,"col":36},"end":{"line":657,"col":37}},"generated_from_span":null},"id":3428,"kind":{"StorageLive":39},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":657,"col":36},"end":{"line":657,"col":37}},"generated_from_span":null},"id":3429,"kind":{"Assign":[{"kind":{"Local":39},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":["Try to subtract the modulus"]},{"span":{"data":{"file_id":2,"beg":{"line":657,"col":30},"end":{"line":657,"col":38}},"generated_from_span":null},"id":4561,"kind":{"StorageLive":88},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":657,"col":30},"end":{"line":657,"col":38}},"generated_from_span":null},"id":4562,"kind":{"Assign":[{"kind":{"Local":88},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":657,"col":30},"end":{"line":657,"col":38}},"generated_from_span":null},"id":4563,"kind":{"StorageLive":89},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":657,"col":30},"end":{"line":657,"col":38}},"generated_from_span":null},"id":4564,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":88},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":39},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":89},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":657,"col":30},"end":{"line":657,"col":38}},"generated_from_span":null},"id":3432,"kind":{"Assign":[{"kind":{"Local":38},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":89},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":657,"col":40},"end":{"line":657,"col":52}},"generated_from_span":null},"id":3433,"kind":{"StorageLive":40},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":657,"col":40},"end":{"line":657,"col":47}},"generated_from_span":null},"id":3434,"kind":{"StorageLive":41},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":657,"col":40},"end":{"line":657,"col":47}},"generated_from_span":null},"id":3435,"kind":{"Assign":[{"kind":{"Local":41},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":0,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":657,"col":50},"end":{"line":657,"col":51}},"generated_from_span":null},"id":3436,"kind":{"StorageLive":42},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":657,"col":50},"end":{"line":657,"col":51}},"generated_from_span":null},"id":3437,"kind":{"Assign":[{"kind":{"Local":42},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":657,"col":40},"end":{"line":657,"col":52}},"generated_from_span":null},"id":4565,"kind":{"StorageLive":90},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":657,"col":40},"end":{"line":657,"col":52}},"generated_from_span":null},"id":4566,"kind":{"Assign":[{"kind":{"Local":90},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":41},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":657,"col":40},"end":{"line":657,"col":52}},"generated_from_span":null},"id":4567,"kind":{"StorageLive":91},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":657,"col":40},"end":{"line":657,"col":52}},"generated_from_span":null},"id":4568,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":90},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":42},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":91},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":657,"col":40},"end":{"line":657,"col":52}},"generated_from_span":null},"id":3440,"kind":{"Assign":[{"kind":{"Local":40},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":91},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":657,"col":26},"end":{"line":657,"col":56}},"generated_from_span":null},"id":3441,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":213}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":38},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":40},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":37},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":657,"col":55},"end":{"line":657,"col":56}},"generated_from_span":null},"id":3442,"kind":{"StorageDead":40},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":657,"col":55},"end":{"line":657,"col":56}},"generated_from_span":null},"id":3443,"kind":{"StorageDead":38},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":657,"col":16},"end":{"line":657,"col":22}},"generated_from_span":null},"id":3444,"kind":{"StorageLive":36},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":657,"col":16},"end":{"line":657,"col":22}},"generated_from_span":null},"id":3445,"kind":{"Assign":[{"kind":{"Local":36},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":37},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":657,"col":56},"end":{"line":657,"col":57}},"generated_from_span":null},"id":3446,"kind":{"StorageDead":42},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":657,"col":56},"end":{"line":657,"col":57}},"generated_from_span":null},"id":3447,"kind":{"StorageDead":41},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":657,"col":56},"end":{"line":657,"col":57}},"generated_from_span":null},"id":3448,"kind":{"StorageDead":39},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":657,"col":56},"end":{"line":657,"col":57}},"generated_from_span":null},"id":3449,"kind":{"StorageDead":37},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":658,"col":26},"end":{"line":658,"col":61}},"generated_from_span":null},"id":3450,"kind":{"StorageLive":44},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":658,"col":30},"end":{"line":658,"col":38}},"generated_from_span":null},"id":3451,"kind":{"StorageLive":45},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":658,"col":36},"end":{"line":658,"col":37}},"generated_from_span":null},"id":3452,"kind":{"StorageLive":46},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":658,"col":36},"end":{"line":658,"col":37}},"generated_from_span":null},"id":3453,"kind":{"Assign":[{"kind":{"Local":46},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":658,"col":30},"end":{"line":658,"col":38}},"generated_from_span":null},"id":4569,"kind":{"StorageLive":92},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":658,"col":30},"end":{"line":658,"col":38}},"generated_from_span":null},"id":4570,"kind":{"Assign":[{"kind":{"Local":92},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":658,"col":30},"end":{"line":658,"col":38}},"generated_from_span":null},"id":4571,"kind":{"StorageLive":93},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":658,"col":30},"end":{"line":658,"col":38}},"generated_from_span":null},"id":4572,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":92},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":46},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":93},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":658,"col":30},"end":{"line":658,"col":38}},"generated_from_span":null},"id":3456,"kind":{"Assign":[{"kind":{"Local":45},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":93},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":658,"col":40},"end":{"line":658,"col":52}},"generated_from_span":null},"id":3457,"kind":{"StorageLive":47},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":658,"col":40},"end":{"line":658,"col":47}},"generated_from_span":null},"id":3458,"kind":{"StorageLive":48},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":658,"col":40},"end":{"line":658,"col":47}},"generated_from_span":null},"id":3459,"kind":{"Assign":[{"kind":{"Local":48},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":0,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":658,"col":50},"end":{"line":658,"col":51}},"generated_from_span":null},"id":3460,"kind":{"StorageLive":49},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":658,"col":50},"end":{"line":658,"col":51}},"generated_from_span":null},"id":3461,"kind":{"Assign":[{"kind":{"Local":49},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":658,"col":40},"end":{"line":658,"col":52}},"generated_from_span":null},"id":4573,"kind":{"StorageLive":94},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":658,"col":40},"end":{"line":658,"col":52}},"generated_from_span":null},"id":4574,"kind":{"Assign":[{"kind":{"Local":94},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":48},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":658,"col":40},"end":{"line":658,"col":52}},"generated_from_span":null},"id":4575,"kind":{"StorageLive":95},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":658,"col":40},"end":{"line":658,"col":52}},"generated_from_span":null},"id":4576,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":94},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":49},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":95},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":658,"col":40},"end":{"line":658,"col":52}},"generated_from_span":null},"id":3464,"kind":{"Assign":[{"kind":{"Local":47},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":95},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":658,"col":54},"end":{"line":658,"col":60}},"generated_from_span":null},"id":3465,"kind":{"StorageLive":50},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":658,"col":54},"end":{"line":658,"col":60}},"generated_from_span":null},"id":3466,"kind":{"Assign":[{"kind":{"Local":50},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":36},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":658,"col":26},"end":{"line":658,"col":61}},"generated_from_span":null},"id":3467,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":213}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":45},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":47},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":50},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":44},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":658,"col":60},"end":{"line":658,"col":61}},"generated_from_span":null},"id":3468,"kind":{"StorageDead":50},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":658,"col":60},"end":{"line":658,"col":61}},"generated_from_span":null},"id":3469,"kind":{"StorageDead":47},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":658,"col":60},"end":{"line":658,"col":61}},"generated_from_span":null},"id":3470,"kind":{"StorageDead":45},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":658,"col":16},"end":{"line":658,"col":22}},"generated_from_span":null},"id":3471,"kind":{"StorageLive":43},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":658,"col":16},"end":{"line":658,"col":22}},"generated_from_span":null},"id":3472,"kind":{"Assign":[{"kind":{"Local":43},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":44},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":658,"col":61},"end":{"line":658,"col":62}},"generated_from_span":null},"id":3473,"kind":{"StorageDead":49},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":658,"col":61},"end":{"line":658,"col":62}},"generated_from_span":null},"id":3474,"kind":{"StorageDead":48},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":658,"col":61},"end":{"line":658,"col":62}},"generated_from_span":null},"id":3475,"kind":{"StorageDead":46},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":658,"col":61},"end":{"line":658,"col":62}},"generated_from_span":null},"id":3476,"kind":{"StorageDead":44},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":659,"col":26},"end":{"line":659,"col":61}},"generated_from_span":null},"id":3477,"kind":{"StorageLive":52},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":659,"col":30},"end":{"line":659,"col":38}},"generated_from_span":null},"id":3478,"kind":{"StorageLive":53},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":659,"col":36},"end":{"line":659,"col":37}},"generated_from_span":null},"id":3479,"kind":{"StorageLive":54},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":659,"col":36},"end":{"line":659,"col":37}},"generated_from_span":null},"id":3480,"kind":{"Assign":[{"kind":{"Local":54},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":659,"col":30},"end":{"line":659,"col":38}},"generated_from_span":null},"id":4577,"kind":{"StorageLive":96},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":659,"col":30},"end":{"line":659,"col":38}},"generated_from_span":null},"id":4578,"kind":{"Assign":[{"kind":{"Local":96},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":659,"col":30},"end":{"line":659,"col":38}},"generated_from_span":null},"id":4579,"kind":{"StorageLive":97},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":659,"col":30},"end":{"line":659,"col":38}},"generated_from_span":null},"id":4580,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":96},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":54},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":97},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":659,"col":30},"end":{"line":659,"col":38}},"generated_from_span":null},"id":3483,"kind":{"Assign":[{"kind":{"Local":53},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":97},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":659,"col":40},"end":{"line":659,"col":52}},"generated_from_span":null},"id":3484,"kind":{"StorageLive":55},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":659,"col":40},"end":{"line":659,"col":47}},"generated_from_span":null},"id":3485,"kind":{"StorageLive":56},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":659,"col":40},"end":{"line":659,"col":47}},"generated_from_span":null},"id":3486,"kind":{"Assign":[{"kind":{"Local":56},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":0,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":659,"col":50},"end":{"line":659,"col":51}},"generated_from_span":null},"id":3487,"kind":{"StorageLive":57},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":659,"col":50},"end":{"line":659,"col":51}},"generated_from_span":null},"id":3488,"kind":{"Assign":[{"kind":{"Local":57},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":659,"col":40},"end":{"line":659,"col":52}},"generated_from_span":null},"id":4581,"kind":{"StorageLive":98},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":659,"col":40},"end":{"line":659,"col":52}},"generated_from_span":null},"id":4582,"kind":{"Assign":[{"kind":{"Local":98},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":56},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":659,"col":40},"end":{"line":659,"col":52}},"generated_from_span":null},"id":4583,"kind":{"StorageLive":99},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":659,"col":40},"end":{"line":659,"col":52}},"generated_from_span":null},"id":4584,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":98},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":57},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":99},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":659,"col":40},"end":{"line":659,"col":52}},"generated_from_span":null},"id":3491,"kind":{"Assign":[{"kind":{"Local":55},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":99},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":659,"col":54},"end":{"line":659,"col":60}},"generated_from_span":null},"id":3492,"kind":{"StorageLive":58},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":659,"col":54},"end":{"line":659,"col":60}},"generated_from_span":null},"id":3493,"kind":{"Assign":[{"kind":{"Local":58},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":43},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":659,"col":26},"end":{"line":659,"col":61}},"generated_from_span":null},"id":3494,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":213}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":53},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":55},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":58},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":52},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":659,"col":60},"end":{"line":659,"col":61}},"generated_from_span":null},"id":3495,"kind":{"StorageDead":58},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":659,"col":60},"end":{"line":659,"col":61}},"generated_from_span":null},"id":3496,"kind":{"StorageDead":55},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":659,"col":60},"end":{"line":659,"col":61}},"generated_from_span":null},"id":3497,"kind":{"StorageDead":53},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":659,"col":16},"end":{"line":659,"col":22}},"generated_from_span":null},"id":3498,"kind":{"StorageLive":51},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":659,"col":16},"end":{"line":659,"col":22}},"generated_from_span":null},"id":3499,"kind":{"Assign":[{"kind":{"Local":51},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":52},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":659,"col":61},"end":{"line":659,"col":62}},"generated_from_span":null},"id":3500,"kind":{"StorageDead":57},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":659,"col":61},"end":{"line":659,"col":62}},"generated_from_span":null},"id":3501,"kind":{"StorageDead":56},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":659,"col":61},"end":{"line":659,"col":62}},"generated_from_span":null},"id":3502,"kind":{"StorageDead":54},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":659,"col":61},"end":{"line":659,"col":62}},"generated_from_span":null},"id":3503,"kind":{"StorageDead":52},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":660,"col":26},"end":{"line":660,"col":61}},"generated_from_span":null},"id":3504,"kind":{"StorageLive":60},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":660,"col":30},"end":{"line":660,"col":38}},"generated_from_span":null},"id":3505,"kind":{"StorageLive":61},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":660,"col":36},"end":{"line":660,"col":37}},"generated_from_span":null},"id":3506,"kind":{"StorageLive":62},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":660,"col":36},"end":{"line":660,"col":37}},"generated_from_span":null},"id":3507,"kind":{"Assign":[{"kind":{"Local":62},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":660,"col":30},"end":{"line":660,"col":38}},"generated_from_span":null},"id":4585,"kind":{"StorageLive":100},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":660,"col":30},"end":{"line":660,"col":38}},"generated_from_span":null},"id":4586,"kind":{"Assign":[{"kind":{"Local":100},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":660,"col":30},"end":{"line":660,"col":38}},"generated_from_span":null},"id":4587,"kind":{"StorageLive":101},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":660,"col":30},"end":{"line":660,"col":38}},"generated_from_span":null},"id":4588,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":100},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":62},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":101},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":660,"col":30},"end":{"line":660,"col":38}},"generated_from_span":null},"id":3510,"kind":{"Assign":[{"kind":{"Local":61},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":101},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":660,"col":40},"end":{"line":660,"col":52}},"generated_from_span":null},"id":3511,"kind":{"StorageLive":63},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":660,"col":40},"end":{"line":660,"col":47}},"generated_from_span":null},"id":3512,"kind":{"StorageLive":64},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":660,"col":40},"end":{"line":660,"col":47}},"generated_from_span":null},"id":3513,"kind":{"Assign":[{"kind":{"Local":64},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":0,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":660,"col":50},"end":{"line":660,"col":51}},"generated_from_span":null},"id":3514,"kind":{"StorageLive":65},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":660,"col":50},"end":{"line":660,"col":51}},"generated_from_span":null},"id":3515,"kind":{"Assign":[{"kind":{"Local":65},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":660,"col":40},"end":{"line":660,"col":52}},"generated_from_span":null},"id":4589,"kind":{"StorageLive":102},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":660,"col":40},"end":{"line":660,"col":52}},"generated_from_span":null},"id":4590,"kind":{"Assign":[{"kind":{"Local":102},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":64},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":660,"col":40},"end":{"line":660,"col":52}},"generated_from_span":null},"id":4591,"kind":{"StorageLive":103},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":660,"col":40},"end":{"line":660,"col":52}},"generated_from_span":null},"id":4592,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":102},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":65},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":103},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":660,"col":40},"end":{"line":660,"col":52}},"generated_from_span":null},"id":3518,"kind":{"Assign":[{"kind":{"Local":63},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":103},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":660,"col":54},"end":{"line":660,"col":60}},"generated_from_span":null},"id":3519,"kind":{"StorageLive":66},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":660,"col":54},"end":{"line":660,"col":60}},"generated_from_span":null},"id":3520,"kind":{"Assign":[{"kind":{"Local":66},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":51},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":660,"col":26},"end":{"line":660,"col":61}},"generated_from_span":null},"id":3521,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":213}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":61},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":63},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":66},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":60},"ty":{"Deduplicated":4590}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"id":3522,"kind":{"StorageLive":77},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":669,"col":15},"end":{"line":669,"col":18}},"generated_from_span":null},"id":3523,"kind":{"StorageLive":78},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":669,"col":16},"end":{"line":669,"col":18}},"generated_from_span":null},"id":3524,"kind":{"StorageLive":79},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":669,"col":16},"end":{"line":669,"col":18}},"generated_from_span":null},"id":3525,"kind":{"Assign":[{"kind":{"Local":79},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":3,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":["If the element is smaller than MODULUS then the","subtraction will underflow, producing a borrow value","of 0xffff...ffff. Otherwise, it'll be zero.","Convert to Montgomery form by computing","(a.R^0 * R^2) / R = a.R"]},{"span":{"data":{"file_id":2,"beg":{"line":669,"col":15},"end":{"line":669,"col":18}},"generated_from_span":null},"id":3526,"kind":{"Assign":[{"kind":{"Local":78},"ty":{"Deduplicated":7210}},{"Ref":{"place":{"kind":{"Local":79},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":669,"col":15},"end":{"line":669,"col":18}},"generated_from_span":null},"id":3527,"kind":{"Assign":[{"kind":{"Local":77},"ty":{"Deduplicated":7209}},{"Use":[{"Move":{"kind":{"Local":78},"ty":{"Deduplicated":7210}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":660,"col":60},"end":{"line":660,"col":61}},"generated_from_span":null},"id":3528,"kind":{"StorageDead":66},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":660,"col":60},"end":{"line":660,"col":61}},"generated_from_span":null},"id":3529,"kind":{"StorageDead":63},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":660,"col":60},"end":{"line":660,"col":61}},"generated_from_span":null},"id":3530,"kind":{"StorageDead":61},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":660,"col":16},"end":{"line":660,"col":22}},"generated_from_span":null},"id":3531,"kind":{"StorageLive":59},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":660,"col":16},"end":{"line":660,"col":22}},"generated_from_span":null},"id":3532,"kind":{"Assign":[{"kind":{"Local":59},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":60},"ty":{"Deduplicated":4590}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":660,"col":61},"end":{"line":660,"col":62}},"generated_from_span":null},"id":3533,"kind":{"StorageDead":65},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":660,"col":61},"end":{"line":660,"col":62}},"generated_from_span":null},"id":3534,"kind":{"StorageDead":64},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":660,"col":61},"end":{"line":660,"col":62}},"generated_from_span":null},"id":3535,"kind":{"StorageDead":62},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":660,"col":61},"end":{"line":660,"col":62}},"generated_from_span":null},"id":3536,"kind":{"StorageDead":60},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":665,"col":12},"end":{"line":665,"col":19}},"generated_from_span":null},"id":3537,"kind":{"StorageLive":67},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":665,"col":22},"end":{"line":665,"col":36}},"generated_from_span":null},"id":3538,"kind":{"StorageLive":68},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":665,"col":23},"end":{"line":665,"col":29}},"generated_from_span":null},"id":3539,"kind":{"StorageLive":69},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":665,"col":23},"end":{"line":665,"col":29}},"generated_from_span":null},"id":3540,"kind":{"Assign":[{"kind":{"Local":69},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":59},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":665,"col":22},"end":{"line":665,"col":36}},"generated_from_span":null},"id":3541,"kind":{"Assign":[{"kind":{"Local":68},"ty":{"Deduplicated":1894}},{"UnaryOp":[{"Cast":{"Scalar":[{"UInt":"U64"},{"UInt":"U8"}]}},{"Move":{"kind":{"Local":69},"ty":{"Deduplicated":1072}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":665,"col":35},"end":{"line":665,"col":36}},"generated_from_span":null},"id":3542,"kind":{"StorageDead":69},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":665,"col":22},"end":{"line":665,"col":40}},"generated_from_span":null},"id":3543,"kind":{"Assign":[{"kind":{"Local":67},"ty":{"Deduplicated":1894}},{"BinaryOp":["BitAnd",{"Move":{"kind":{"Local":68},"ty":{"Deduplicated":1894}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U8","1"]}}},"ty":{"Deduplicated":1894}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":665,"col":39},"end":{"line":665,"col":40}},"generated_from_span":null},"id":3544,"kind":{"StorageDead":68},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":669,"col":8},"end":{"line":669,"col":18}},"generated_from_span":null},"id":3545,"kind":{"StorageLive":70},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":669,"col":8},"end":{"line":669,"col":11}},"generated_from_span":null},"id":3546,"kind":{"StorageLive":71},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":669,"col":8},"end":{"line":669,"col":11}},"generated_from_span":null},"id":3547,"kind":{"Assign":[{"kind":{"Local":71},"ty":{"Deduplicated":5208}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":1079}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":669,"col":15},"end":{"line":669,"col":18}},"generated_from_span":null},"id":3548,"kind":{"StorageLive":72},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":669,"col":15},"end":{"line":669,"col":18}},"generated_from_span":null},"id":3549,"kind":{"Assign":[{"kind":{"Local":76},"ty":{"Deduplicated":5211}},{"Use":[{"Move":{"kind":{"Local":77},"ty":{"Deduplicated":7209}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":669,"col":15},"end":{"line":669,"col":18}},"generated_from_span":null},"id":3550,"kind":{"Assign":[{"kind":{"Local":72},"ty":{"Deduplicated":5210}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":76},"ty":{"Deduplicated":5211}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":669,"col":8},"end":{"line":669,"col":18}},"generated_from_span":null},"id":3551,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":54}},"generics":{"regions":[{"Body":48},{"Body":50}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":71},"ty":{"Deduplicated":5208}}},{"Move":{"kind":{"Local":72},"ty":{"Deduplicated":5210}}}],"dest":{"kind":{"Local":70},"ty":{"Deduplicated":1108}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":669,"col":17},"end":{"line":669,"col":18}},"generated_from_span":null},"id":3552,"kind":{"StorageDead":72},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":669,"col":17},"end":{"line":669,"col":18}},"generated_from_span":null},"id":3553,"kind":{"StorageDead":71},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":669,"col":18},"end":{"line":669,"col":19}},"generated_from_span":null},"id":3554,"kind":{"StorageDead":70},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":671,"col":22},"end":{"line":671,"col":25}},"generated_from_span":null},"id":3555,"kind":{"StorageLive":73},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":671,"col":22},"end":{"line":671,"col":25}},"generated_from_span":null},"id":3556,"kind":{"Assign":[{"kind":{"Local":73},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Local":2},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":671,"col":27},"end":{"line":671,"col":48}},"generated_from_span":null},"id":3557,"kind":{"StorageLive":74},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":671,"col":40},"end":{"line":671,"col":47}},"generated_from_span":null},"id":3558,"kind":{"StorageLive":75},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":671,"col":40},"end":{"line":671,"col":47}},"generated_from_span":null},"id":3559,"kind":{"Assign":[{"kind":{"Local":75},"ty":{"Deduplicated":1894}},{"Use":[{"Copy":{"kind":{"Local":67},"ty":{"Deduplicated":1894}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":671,"col":27},"end":{"line":671,"col":48}},"generated_from_span":null},"id":3560,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":236}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":75},"ty":{"Deduplicated":1894}}}],"dest":{"kind":{"Local":74},"ty":{"Deduplicated":1250}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":671,"col":47},"end":{"line":671,"col":48}},"generated_from_span":null},"id":3561,"kind":{"StorageDead":75},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":671,"col":8},"end":{"line":671,"col":49}},"generated_from_span":null},"id":3562,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":225}},"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":73},"ty":{"Deduplicated":1079}}},{"Move":{"kind":{"Local":74},"ty":{"Deduplicated":1250}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":4824}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":671,"col":48},"end":{"line":671,"col":49}},"generated_from_span":null},"id":3563,"kind":{"StorageDead":74},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":671,"col":48},"end":{"line":671,"col":49}},"generated_from_span":null},"id":3564,"kind":{"StorageDead":73},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":672,"col":4},"end":{"line":672,"col":5}},"generated_from_span":null},"id":3565,"kind":{"StorageDead":67},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":672,"col":4},"end":{"line":672,"col":5}},"generated_from_span":null},"id":3566,"kind":{"StorageDead":59},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":672,"col":4},"end":{"line":672,"col":5}},"generated_from_span":null},"id":3567,"kind":{"StorageDead":51},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":672,"col":4},"end":{"line":672,"col":5}},"generated_from_span":null},"id":3568,"kind":{"StorageDead":43},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":672,"col":4},"end":{"line":672,"col":5}},"generated_from_span":null},"id":3569,"kind":{"StorageDead":36},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":672,"col":4},"end":{"line":672,"col":5}},"generated_from_span":null},"id":3570,"kind":{"StorageDead":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":672,"col":5},"end":{"line":672,"col":5}},"generated_from_span":null},"id":3571,"kind":"Return","comments_before":[]}]},"comments":[[657,["Try to subtract the modulus"]],[665,["If the element is smaller than MODULUS then the","subtraction will underflow, producing a borrow value","of 0xffff...ffff. Otherwise, it'll be zero."]],[669,["Convert to Montgomery form by computing","(a.R^0 * R^2) / R = a.R"]]]}}},{"def_id":110,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["to_repr",0]}],"span":{"data":{"file_id":2,"beg":{"line":674,"col":4},"end":{"line":686,"col":5}},"generated_from_span":null},"source_text":"fn to_repr(&self) -> Self::Repr {\n // Turn into canonical form by computing\n // (a.R) / R = a\n let tmp = Fp::montgomery_reduce(self.0[0], self.0[1], self.0[2], self.0[3], 0, 0, 0, 0);\n\n let mut res = [0; 32];\n res[0..8].copy_from_slice(&tmp.0[0].to_le_bytes());\n res[8..16].copy_from_slice(&tmp.0[1].to_le_bytes());\n res[16..24].copy_from_slice(&tmp.0[2].to_le_bytes());\n res[24..32].copy_from_slice(&tmp.0[3].to_le_bytes());\n\n res\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":8297}],"output":{"Deduplicated":1895}},"src":{"TraitImpl":{"impl_ref":{"id":38,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1895}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":4},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":674,"col":4},"end":{"line":686,"col":5}},"generated_from_span":null},"bound_body_regions":58,"locals":{"arg_count":1,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":674,"col":25},"end":{"line":674,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":1895}},{"index":1,"name":"self","span":{"data":{"file_id":2,"beg":{"line":674,"col":15},"end":{"line":674,"col":20}},"generated_from_span":null},"ty":{"Deduplicated":2302}},{"index":2,"name":"tmp","span":{"data":{"file_id":2,"beg":{"line":677,"col":12},"end":{"line":677,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":3,"name":null,"span":{"data":{"file_id":2,"beg":{"line":677,"col":40},"end":{"line":677,"col":49}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":4,"name":null,"span":{"data":{"file_id":2,"beg":{"line":677,"col":47},"end":{"line":677,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":5,"name":null,"span":{"data":{"file_id":2,"beg":{"line":677,"col":51},"end":{"line":677,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":6,"name":null,"span":{"data":{"file_id":2,"beg":{"line":677,"col":58},"end":{"line":677,"col":59}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":7,"name":null,"span":{"data":{"file_id":2,"beg":{"line":677,"col":62},"end":{"line":677,"col":71}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":8,"name":null,"span":{"data":{"file_id":2,"beg":{"line":677,"col":69},"end":{"line":677,"col":70}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":9,"name":null,"span":{"data":{"file_id":2,"beg":{"line":677,"col":73},"end":{"line":677,"col":82}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":10,"name":null,"span":{"data":{"file_id":2,"beg":{"line":677,"col":80},"end":{"line":677,"col":81}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":11,"name":"res","span":{"data":{"file_id":2,"beg":{"line":679,"col":12},"end":{"line":679,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":1895}},{"index":12,"name":null,"span":{"data":{"file_id":2,"beg":{"line":680,"col":8},"end":{"line":680,"col":58}},"generated_from_span":null},"ty":{"Deduplicated":1108}},{"index":13,"name":null,"span":{"data":{"file_id":2,"beg":{"line":680,"col":8},"end":{"line":680,"col":17}},"generated_from_span":null},"ty":{"HashConsedValue":[5502,{"Ref":[{"Body":3},{"Deduplicated":2162},"Mut"]}]}},{"index":14,"name":null,"span":{"data":{"file_id":2,"beg":{"line":680,"col":11},"end":{"line":680,"col":17}},"generated_from_span":null},"ty":{"HashConsedValue":[5503,{"Ref":[{"Body":4},{"Deduplicated":2162},"Mut"]}]}},{"index":15,"name":null,"span":{"data":{"file_id":2,"beg":{"line":680,"col":8},"end":{"line":680,"col":11}},"generated_from_span":null},"ty":{"HashConsedValue":[5506,{"Ref":[{"Body":6},{"Deduplicated":1895},"Mut"]}]}},{"index":16,"name":null,"span":{"data":{"file_id":2,"beg":{"line":680,"col":12},"end":{"line":680,"col":16}},"generated_from_span":null},"ty":{"Deduplicated":5197}},{"index":17,"name":null,"span":{"data":{"file_id":2,"beg":{"line":680,"col":34},"end":{"line":680,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":5201}},{"index":18,"name":null,"span":{"data":{"file_id":2,"beg":{"line":680,"col":34},"end":{"line":680,"col":57}},"generated_from_span":null},"ty":{"HashConsedValue":[5510,{"Ref":[{"Body":10},{"Deduplicated":5165},"Shared"]}]}},{"index":19,"name":null,"span":{"data":{"file_id":2,"beg":{"line":680,"col":34},"end":{"line":680,"col":57}},"generated_from_span":null},"ty":{"HashConsedValue":[5511,{"Ref":[{"Body":11},{"Deduplicated":5165},"Shared"]}]}},{"index":20,"name":null,"span":{"data":{"file_id":2,"beg":{"line":680,"col":35},"end":{"line":680,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":5165}},{"index":21,"name":null,"span":{"data":{"file_id":2,"beg":{"line":680,"col":35},"end":{"line":680,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":22,"name":null,"span":{"data":{"file_id":2,"beg":{"line":680,"col":41},"end":{"line":680,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":23,"name":null,"span":{"data":{"file_id":2,"beg":{"line":681,"col":8},"end":{"line":681,"col":59}},"generated_from_span":null},"ty":{"Deduplicated":1108}},{"index":24,"name":null,"span":{"data":{"file_id":2,"beg":{"line":681,"col":8},"end":{"line":681,"col":18}},"generated_from_span":null},"ty":{"HashConsedValue":[5512,{"Ref":[{"Body":12},{"Deduplicated":2162},"Mut"]}]}},{"index":25,"name":null,"span":{"data":{"file_id":2,"beg":{"line":681,"col":11},"end":{"line":681,"col":18}},"generated_from_span":null},"ty":{"HashConsedValue":[5513,{"Ref":[{"Body":13},{"Deduplicated":2162},"Mut"]}]}},{"index":26,"name":null,"span":{"data":{"file_id":2,"beg":{"line":681,"col":8},"end":{"line":681,"col":11}},"generated_from_span":null},"ty":{"HashConsedValue":[5514,{"Ref":[{"Body":14},{"Deduplicated":1895},"Mut"]}]}},{"index":27,"name":null,"span":{"data":{"file_id":2,"beg":{"line":681,"col":12},"end":{"line":681,"col":17}},"generated_from_span":null},"ty":{"Deduplicated":5197}},{"index":28,"name":null,"span":{"data":{"file_id":2,"beg":{"line":681,"col":35},"end":{"line":681,"col":58}},"generated_from_span":null},"ty":{"HashConsedValue":[5515,{"Ref":[{"Body":15},{"Deduplicated":2162},"Shared"]}]}},{"index":29,"name":null,"span":{"data":{"file_id":2,"beg":{"line":681,"col":35},"end":{"line":681,"col":58}},"generated_from_span":null},"ty":{"HashConsedValue":[5516,{"Ref":[{"Body":16},{"Deduplicated":5165},"Shared"]}]}},{"index":30,"name":null,"span":{"data":{"file_id":2,"beg":{"line":681,"col":35},"end":{"line":681,"col":58}},"generated_from_span":null},"ty":{"HashConsedValue":[5517,{"Ref":[{"Body":17},{"Deduplicated":5165},"Shared"]}]}},{"index":31,"name":null,"span":{"data":{"file_id":2,"beg":{"line":681,"col":36},"end":{"line":681,"col":58}},"generated_from_span":null},"ty":{"Deduplicated":5165}},{"index":32,"name":null,"span":{"data":{"file_id":2,"beg":{"line":681,"col":36},"end":{"line":681,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":33,"name":null,"span":{"data":{"file_id":2,"beg":{"line":681,"col":42},"end":{"line":681,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":34,"name":null,"span":{"data":{"file_id":2,"beg":{"line":682,"col":8},"end":{"line":682,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1108}},{"index":35,"name":null,"span":{"data":{"file_id":2,"beg":{"line":682,"col":8},"end":{"line":682,"col":19}},"generated_from_span":null},"ty":{"HashConsedValue":[5518,{"Ref":[{"Body":18},{"Deduplicated":2162},"Mut"]}]}},{"index":36,"name":null,"span":{"data":{"file_id":2,"beg":{"line":682,"col":11},"end":{"line":682,"col":19}},"generated_from_span":null},"ty":{"HashConsedValue":[5519,{"Ref":[{"Body":19},{"Deduplicated":2162},"Mut"]}]}},{"index":37,"name":null,"span":{"data":{"file_id":2,"beg":{"line":682,"col":8},"end":{"line":682,"col":11}},"generated_from_span":null},"ty":{"HashConsedValue":[5520,{"Ref":[{"Body":20},{"Deduplicated":1895},"Mut"]}]}},{"index":38,"name":null,"span":{"data":{"file_id":2,"beg":{"line":682,"col":12},"end":{"line":682,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":5197}},{"index":39,"name":null,"span":{"data":{"file_id":2,"beg":{"line":682,"col":36},"end":{"line":682,"col":59}},"generated_from_span":null},"ty":{"HashConsedValue":[5380,{"Ref":[{"Body":21},{"Deduplicated":2162},"Shared"]}]}},{"index":40,"name":null,"span":{"data":{"file_id":2,"beg":{"line":682,"col":36},"end":{"line":682,"col":59}},"generated_from_span":null},"ty":{"HashConsedValue":[5521,{"Ref":[{"Body":22},{"Deduplicated":5165},"Shared"]}]}},{"index":41,"name":null,"span":{"data":{"file_id":2,"beg":{"line":682,"col":36},"end":{"line":682,"col":59}},"generated_from_span":null},"ty":{"HashConsedValue":[5522,{"Ref":[{"Body":23},{"Deduplicated":5165},"Shared"]}]}},{"index":42,"name":null,"span":{"data":{"file_id":2,"beg":{"line":682,"col":37},"end":{"line":682,"col":59}},"generated_from_span":null},"ty":{"Deduplicated":5165}},{"index":43,"name":null,"span":{"data":{"file_id":2,"beg":{"line":682,"col":37},"end":{"line":682,"col":45}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":44,"name":null,"span":{"data":{"file_id":2,"beg":{"line":682,"col":43},"end":{"line":682,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":45,"name":null,"span":{"data":{"file_id":2,"beg":{"line":683,"col":8},"end":{"line":683,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1108}},{"index":46,"name":null,"span":{"data":{"file_id":2,"beg":{"line":683,"col":8},"end":{"line":683,"col":19}},"generated_from_span":null},"ty":{"HashConsedValue":[5523,{"Ref":[{"Body":24},{"Deduplicated":2162},"Mut"]}]}},{"index":47,"name":null,"span":{"data":{"file_id":2,"beg":{"line":683,"col":11},"end":{"line":683,"col":19}},"generated_from_span":null},"ty":{"HashConsedValue":[5524,{"Ref":[{"Body":25},{"Deduplicated":2162},"Mut"]}]}},{"index":48,"name":null,"span":{"data":{"file_id":2,"beg":{"line":683,"col":8},"end":{"line":683,"col":11}},"generated_from_span":null},"ty":{"HashConsedValue":[5525,{"Ref":[{"Body":26},{"Deduplicated":1895},"Mut"]}]}},{"index":49,"name":null,"span":{"data":{"file_id":2,"beg":{"line":683,"col":12},"end":{"line":683,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":5197}},{"index":50,"name":null,"span":{"data":{"file_id":2,"beg":{"line":683,"col":36},"end":{"line":683,"col":59}},"generated_from_span":null},"ty":{"HashConsedValue":[5526,{"Ref":[{"Body":27},{"Deduplicated":2162},"Shared"]}]}},{"index":51,"name":null,"span":{"data":{"file_id":2,"beg":{"line":683,"col":36},"end":{"line":683,"col":59}},"generated_from_span":null},"ty":{"HashConsedValue":[5527,{"Ref":[{"Body":28},{"Deduplicated":5165},"Shared"]}]}},{"index":52,"name":null,"span":{"data":{"file_id":2,"beg":{"line":683,"col":36},"end":{"line":683,"col":59}},"generated_from_span":null},"ty":{"HashConsedValue":[5528,{"Ref":[{"Body":29},{"Deduplicated":5165},"Shared"]}]}},{"index":53,"name":null,"span":{"data":{"file_id":2,"beg":{"line":683,"col":37},"end":{"line":683,"col":59}},"generated_from_span":null},"ty":{"Deduplicated":5165}},{"index":54,"name":null,"span":{"data":{"file_id":2,"beg":{"line":683,"col":37},"end":{"line":683,"col":45}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":55,"name":null,"span":{"data":{"file_id":2,"beg":{"line":683,"col":43},"end":{"line":683,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":56,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":57,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":58,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":59,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":60,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":61,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":62,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":63,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":64,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":65,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":66,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":67,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":68,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":69,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}},{"index":70,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":6167}},{"index":71,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":7281}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":677,"col":12},"end":{"line":686,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":677,"col":12},"end":{"line":677,"col":15}},"generated_from_span":null},"id":3580,"kind":{"StorageLive":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":40},"end":{"line":677,"col":49}},"generated_from_span":null},"id":3581,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":47},"end":{"line":677,"col":48}},"generated_from_span":null},"id":3582,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":47},"end":{"line":677,"col":48}},"generated_from_span":null},"id":3583,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":["Turn into canonical form by computing","(a.R) / R = a"]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":40},"end":{"line":677,"col":49}},"generated_from_span":null},"id":4593,"kind":{"StorageLive":56},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":40},"end":{"line":677,"col":49}},"generated_from_span":null},"id":4594,"kind":{"Assign":[{"kind":{"Local":56},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":40},"end":{"line":677,"col":49}},"generated_from_span":null},"id":4595,"kind":{"StorageLive":57},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":40},"end":{"line":677,"col":49}},"generated_from_span":null},"id":4596,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":56},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":4},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":57},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":40},"end":{"line":677,"col":49}},"generated_from_span":null},"id":3586,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":57},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":51},"end":{"line":677,"col":60}},"generated_from_span":null},"id":3587,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":58},"end":{"line":677,"col":59}},"generated_from_span":null},"id":3588,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":58},"end":{"line":677,"col":59}},"generated_from_span":null},"id":3589,"kind":{"Assign":[{"kind":{"Local":6},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":51},"end":{"line":677,"col":60}},"generated_from_span":null},"id":4597,"kind":{"StorageLive":58},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":51},"end":{"line":677,"col":60}},"generated_from_span":null},"id":4598,"kind":{"Assign":[{"kind":{"Local":58},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":51},"end":{"line":677,"col":60}},"generated_from_span":null},"id":4599,"kind":{"StorageLive":59},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":51},"end":{"line":677,"col":60}},"generated_from_span":null},"id":4600,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":58},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":6},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":59},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":51},"end":{"line":677,"col":60}},"generated_from_span":null},"id":3592,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":59},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":62},"end":{"line":677,"col":71}},"generated_from_span":null},"id":3593,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":69},"end":{"line":677,"col":70}},"generated_from_span":null},"id":3594,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":69},"end":{"line":677,"col":70}},"generated_from_span":null},"id":3595,"kind":{"Assign":[{"kind":{"Local":8},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":62},"end":{"line":677,"col":71}},"generated_from_span":null},"id":4601,"kind":{"StorageLive":60},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":62},"end":{"line":677,"col":71}},"generated_from_span":null},"id":4602,"kind":{"Assign":[{"kind":{"Local":60},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":62},"end":{"line":677,"col":71}},"generated_from_span":null},"id":4603,"kind":{"StorageLive":61},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":62},"end":{"line":677,"col":71}},"generated_from_span":null},"id":4604,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":60},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":8},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":61},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":62},"end":{"line":677,"col":71}},"generated_from_span":null},"id":3598,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":61},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":73},"end":{"line":677,"col":82}},"generated_from_span":null},"id":3599,"kind":{"StorageLive":9},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":80},"end":{"line":677,"col":81}},"generated_from_span":null},"id":3600,"kind":{"StorageLive":10},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":80},"end":{"line":677,"col":81}},"generated_from_span":null},"id":3601,"kind":{"Assign":[{"kind":{"Local":10},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":73},"end":{"line":677,"col":82}},"generated_from_span":null},"id":4605,"kind":{"StorageLive":62},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":73},"end":{"line":677,"col":82}},"generated_from_span":null},"id":4606,"kind":{"Assign":[{"kind":{"Local":62},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":73},"end":{"line":677,"col":82}},"generated_from_span":null},"id":4607,"kind":{"StorageLive":63},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":73},"end":{"line":677,"col":82}},"generated_from_span":null},"id":4608,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":62},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":10},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":63},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":73},"end":{"line":677,"col":82}},"generated_from_span":null},"id":3604,"kind":{"Assign":[{"kind":{"Local":9},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":63},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":18},"end":{"line":677,"col":95}},"generated_from_span":null},"id":3605,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":73}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":5},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":7},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":9},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":2},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":94},"end":{"line":677,"col":95}},"generated_from_span":null},"id":3606,"kind":{"StorageDead":9},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":94},"end":{"line":677,"col":95}},"generated_from_span":null},"id":3607,"kind":{"StorageDead":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":94},"end":{"line":677,"col":95}},"generated_from_span":null},"id":3608,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":94},"end":{"line":677,"col":95}},"generated_from_span":null},"id":3609,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":95},"end":{"line":677,"col":96}},"generated_from_span":null},"id":3610,"kind":{"StorageDead":10},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":95},"end":{"line":677,"col":96}},"generated_from_span":null},"id":3611,"kind":{"StorageDead":8},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":95},"end":{"line":677,"col":96}},"generated_from_span":null},"id":3612,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":677,"col":95},"end":{"line":677,"col":96}},"generated_from_span":null},"id":3613,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":679,"col":12},"end":{"line":679,"col":19}},"generated_from_span":null},"id":3614,"kind":{"StorageLive":11},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":679,"col":22},"end":{"line":679,"col":29}},"generated_from_span":null},"id":3615,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":"ArrayRepeat"}},"generics":{"regions":[],"types":[{"Deduplicated":1894}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","32"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U8","0"]}}},"ty":{"Deduplicated":1894}}}],"dest":{"kind":{"Local":11},"ty":{"Deduplicated":1895}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":8},"end":{"line":680,"col":58}},"generated_from_span":null},"id":3616,"kind":{"StorageLive":12},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":8},"end":{"line":680,"col":17}},"generated_from_span":null},"id":3617,"kind":{"StorageLive":13},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":11},"end":{"line":680,"col":17}},"generated_from_span":null},"id":3618,"kind":{"StorageLive":14},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":8},"end":{"line":680,"col":11}},"generated_from_span":null},"id":3619,"kind":{"StorageLive":15},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":8},"end":{"line":680,"col":11}},"generated_from_span":null},"id":3620,"kind":{"Assign":[{"kind":{"Local":15},"ty":{"Deduplicated":5506}},{"Ref":{"place":{"kind":{"Local":11},"ty":{"Deduplicated":1895}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":12},"end":{"line":680,"col":16}},"generated_from_span":null},"id":3621,"kind":{"StorageLive":16},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":12},"end":{"line":680,"col":16}},"generated_from_span":null},"id":3622,"kind":{"Assign":[{"kind":{"Local":16},"ty":{"Deduplicated":5197}},{"Aggregate":[{"Adt":[{"id":{"Adt":56},"generics":{"regions":[],"types":[{"Deduplicated":1073}],"const_generics":[],"trait_refs":[]}},null,null]},[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":11},"end":{"line":680,"col":17}},"generated_from_span":null},"id":3623,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":237}},"generics":{"regions":[{"Body":31}],"types":[{"Deduplicated":1894},{"Deduplicated":5197},{"Deduplicated":2162}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","32"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[{"HashConsedValue":[7711,{"kind":{"TraitImpl":{"id":66,"generics":{"regions":[],"types":[{"Deduplicated":1894},{"Deduplicated":5197},{"Deduplicated":2162}],"const_generics":[],"trait_refs":[{"Deduplicated":7691}]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":48,"generics":{"regions":[],"types":[{"Deduplicated":2162},{"Deduplicated":5197},{"Deduplicated":2162}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"args":[{"Move":{"kind":{"Local":15},"ty":{"Deduplicated":5506}}},{"Move":{"kind":{"Local":16},"ty":{"Deduplicated":5197}}}],"dest":{"kind":{"Local":14},"ty":{"Deduplicated":5503}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":8},"end":{"line":680,"col":17}},"generated_from_span":null},"id":3624,"kind":{"Assign":[{"kind":{"Local":13},"ty":{"Deduplicated":5502}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":14},"ty":{"Deduplicated":5503}},"Deref"]},"ty":{"Deduplicated":2162}},"kind":"TwoPhaseMut","ptr_metadata":{"Copy":{"kind":{"Projection":[{"kind":{"Local":14},"ty":{"Deduplicated":5503}},"PtrMetadata"]},"ty":{"Deduplicated":1073}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":16},"end":{"line":680,"col":17}},"generated_from_span":null},"id":3625,"kind":{"StorageDead":16},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":16},"end":{"line":680,"col":17}},"generated_from_span":null},"id":3626,"kind":{"StorageDead":15},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":34},"end":{"line":680,"col":57}},"generated_from_span":null},"id":3627,"kind":{"StorageLive":17},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":34},"end":{"line":680,"col":57}},"generated_from_span":null},"id":3628,"kind":{"StorageLive":18},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":34},"end":{"line":680,"col":57}},"generated_from_span":null},"id":3629,"kind":{"StorageLive":19},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":35},"end":{"line":680,"col":57}},"generated_from_span":null},"id":3630,"kind":{"StorageLive":20},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":35},"end":{"line":680,"col":43}},"generated_from_span":null},"id":3631,"kind":{"StorageLive":21},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":41},"end":{"line":680,"col":42}},"generated_from_span":null},"id":3632,"kind":{"StorageLive":22},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":41},"end":{"line":680,"col":42}},"generated_from_span":null},"id":3633,"kind":{"Assign":[{"kind":{"Local":22},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":35},"end":{"line":680,"col":43}},"generated_from_span":null},"id":4609,"kind":{"StorageLive":64},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":35},"end":{"line":680,"col":43}},"generated_from_span":null},"id":4610,"kind":{"Assign":[{"kind":{"Local":64},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":35},"end":{"line":680,"col":43}},"generated_from_span":null},"id":4611,"kind":{"StorageLive":65},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":35},"end":{"line":680,"col":43}},"generated_from_span":null},"id":4612,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":64},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":22},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":65},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":35},"end":{"line":680,"col":43}},"generated_from_span":null},"id":3636,"kind":{"Assign":[{"kind":{"Local":21},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":65},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":35},"end":{"line":680,"col":57}},"generated_from_span":null},"id":3637,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":238}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":21},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":20},"ty":{"Deduplicated":5165}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":56},"end":{"line":680,"col":57}},"generated_from_span":null},"id":3638,"kind":{"StorageDead":21},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":34},"end":{"line":680,"col":57}},"generated_from_span":null},"id":3639,"kind":{"Assign":[{"kind":{"Local":19},"ty":{"Deduplicated":5511}},{"Ref":{"place":{"kind":{"Local":20},"ty":{"Deduplicated":5165}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":34},"end":{"line":680,"col":57}},"generated_from_span":null},"id":3640,"kind":{"Assign":[{"kind":{"Local":18},"ty":{"Deduplicated":5510}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":19},"ty":{"Deduplicated":5511}},"Deref"]},"ty":{"Deduplicated":5165}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":34},"end":{"line":680,"col":57}},"generated_from_span":null},"id":3641,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":"ArrayToSliceShared"}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1894}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":18},"ty":{"Deduplicated":5510}}}],"dest":{"kind":{"Local":17},"ty":{"Deduplicated":5201}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":56},"end":{"line":680,"col":57}},"generated_from_span":null},"id":3642,"kind":{"StorageDead":18},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":8},"end":{"line":680,"col":58}},"generated_from_span":null},"id":3643,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":239}},"generics":{"regions":[{"Body":35},{"Body":36}],"types":[{"Deduplicated":1894}],"const_generics":[],"trait_refs":[{"Deduplicated":2143}]}}},"args":[{"Move":{"kind":{"Local":13},"ty":{"Deduplicated":5502}}},{"Move":{"kind":{"Local":17},"ty":{"Deduplicated":5201}}}],"dest":{"kind":{"Local":12},"ty":{"Deduplicated":1108}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":57},"end":{"line":680,"col":58}},"generated_from_span":null},"id":3644,"kind":{"StorageDead":17},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":57},"end":{"line":680,"col":58}},"generated_from_span":null},"id":3645,"kind":{"StorageDead":13},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":58},"end":{"line":680,"col":59}},"generated_from_span":null},"id":3646,"kind":{"StorageDead":22},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":58},"end":{"line":680,"col":59}},"generated_from_span":null},"id":3647,"kind":{"StorageDead":20},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":58},"end":{"line":680,"col":59}},"generated_from_span":null},"id":3648,"kind":{"StorageDead":19},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":58},"end":{"line":680,"col":59}},"generated_from_span":null},"id":3649,"kind":{"StorageDead":14},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":680,"col":58},"end":{"line":680,"col":59}},"generated_from_span":null},"id":3650,"kind":{"StorageDead":12},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":8},"end":{"line":681,"col":59}},"generated_from_span":null},"id":3651,"kind":{"StorageLive":23},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":8},"end":{"line":681,"col":18}},"generated_from_span":null},"id":3652,"kind":{"StorageLive":24},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":11},"end":{"line":681,"col":18}},"generated_from_span":null},"id":3653,"kind":{"StorageLive":25},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":8},"end":{"line":681,"col":11}},"generated_from_span":null},"id":3654,"kind":{"StorageLive":26},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":8},"end":{"line":681,"col":11}},"generated_from_span":null},"id":3655,"kind":{"Assign":[{"kind":{"Local":26},"ty":{"Deduplicated":5514}},{"Ref":{"place":{"kind":{"Local":11},"ty":{"Deduplicated":1895}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":12},"end":{"line":681,"col":17}},"generated_from_span":null},"id":3656,"kind":{"StorageLive":27},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":12},"end":{"line":681,"col":17}},"generated_from_span":null},"id":3657,"kind":{"Assign":[{"kind":{"Local":27},"ty":{"Deduplicated":5197}},{"Aggregate":[{"Adt":[{"id":{"Adt":56},"generics":{"regions":[],"types":[{"Deduplicated":1073}],"const_generics":[],"trait_refs":[]}},null,null]},[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","16"]}}},"ty":{"Deduplicated":1073}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":11},"end":{"line":681,"col":18}},"generated_from_span":null},"id":3658,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":237}},"generics":{"regions":[{"Body":38}],"types":[{"Deduplicated":1894},{"Deduplicated":5197},{"Deduplicated":2162}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","32"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[{"Deduplicated":7711}]}}},"args":[{"Move":{"kind":{"Local":26},"ty":{"Deduplicated":5514}}},{"Move":{"kind":{"Local":27},"ty":{"Deduplicated":5197}}}],"dest":{"kind":{"Local":25},"ty":{"Deduplicated":5513}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":8},"end":{"line":681,"col":18}},"generated_from_span":null},"id":3659,"kind":{"Assign":[{"kind":{"Local":24},"ty":{"Deduplicated":5512}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":25},"ty":{"Deduplicated":5513}},"Deref"]},"ty":{"Deduplicated":2162}},"kind":"TwoPhaseMut","ptr_metadata":{"Copy":{"kind":{"Projection":[{"kind":{"Local":25},"ty":{"Deduplicated":5513}},"PtrMetadata"]},"ty":{"Deduplicated":1073}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":17},"end":{"line":681,"col":18}},"generated_from_span":null},"id":3660,"kind":{"StorageDead":27},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":17},"end":{"line":681,"col":18}},"generated_from_span":null},"id":3661,"kind":{"StorageDead":26},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":35},"end":{"line":681,"col":58}},"generated_from_span":null},"id":3662,"kind":{"StorageLive":28},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":35},"end":{"line":681,"col":58}},"generated_from_span":null},"id":3663,"kind":{"StorageLive":29},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":35},"end":{"line":681,"col":58}},"generated_from_span":null},"id":3664,"kind":{"StorageLive":30},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":36},"end":{"line":681,"col":58}},"generated_from_span":null},"id":3665,"kind":{"StorageLive":31},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":36},"end":{"line":681,"col":44}},"generated_from_span":null},"id":3666,"kind":{"StorageLive":32},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":42},"end":{"line":681,"col":43}},"generated_from_span":null},"id":3667,"kind":{"StorageLive":33},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":42},"end":{"line":681,"col":43}},"generated_from_span":null},"id":3668,"kind":{"Assign":[{"kind":{"Local":33},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":36},"end":{"line":681,"col":44}},"generated_from_span":null},"id":4613,"kind":{"StorageLive":66},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":36},"end":{"line":681,"col":44}},"generated_from_span":null},"id":4614,"kind":{"Assign":[{"kind":{"Local":66},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":36},"end":{"line":681,"col":44}},"generated_from_span":null},"id":4615,"kind":{"StorageLive":67},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":36},"end":{"line":681,"col":44}},"generated_from_span":null},"id":4616,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":66},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":33},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":67},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":36},"end":{"line":681,"col":44}},"generated_from_span":null},"id":3671,"kind":{"Assign":[{"kind":{"Local":32},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":67},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":36},"end":{"line":681,"col":58}},"generated_from_span":null},"id":3672,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":238}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":32},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":31},"ty":{"Deduplicated":5165}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":57},"end":{"line":681,"col":58}},"generated_from_span":null},"id":3673,"kind":{"StorageDead":32},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":35},"end":{"line":681,"col":58}},"generated_from_span":null},"id":3674,"kind":{"Assign":[{"kind":{"Local":30},"ty":{"Deduplicated":5517}},{"Ref":{"place":{"kind":{"Local":31},"ty":{"Deduplicated":5165}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":35},"end":{"line":681,"col":58}},"generated_from_span":null},"id":3675,"kind":{"Assign":[{"kind":{"Local":29},"ty":{"Deduplicated":5516}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":30},"ty":{"Deduplicated":5517}},"Deref"]},"ty":{"Deduplicated":5165}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":35},"end":{"line":681,"col":58}},"generated_from_span":null},"id":3676,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":"ArrayToSliceShared"}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1894}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":29},"ty":{"Deduplicated":5516}}}],"dest":{"kind":{"Local":28},"ty":{"Deduplicated":5515}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":57},"end":{"line":681,"col":58}},"generated_from_span":null},"id":3677,"kind":{"StorageDead":29},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":8},"end":{"line":681,"col":59}},"generated_from_span":null},"id":3678,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":239}},"generics":{"regions":[{"Body":42},{"Body":43}],"types":[{"Deduplicated":1894}],"const_generics":[],"trait_refs":[{"Deduplicated":2143}]}}},"args":[{"Move":{"kind":{"Local":24},"ty":{"Deduplicated":5512}}},{"Move":{"kind":{"Local":28},"ty":{"Deduplicated":5515}}}],"dest":{"kind":{"Local":23},"ty":{"Deduplicated":1108}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":58},"end":{"line":681,"col":59}},"generated_from_span":null},"id":3679,"kind":{"StorageDead":28},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":58},"end":{"line":681,"col":59}},"generated_from_span":null},"id":3680,"kind":{"StorageDead":24},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":59},"end":{"line":681,"col":60}},"generated_from_span":null},"id":3681,"kind":{"StorageDead":33},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":59},"end":{"line":681,"col":60}},"generated_from_span":null},"id":3682,"kind":{"StorageDead":31},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":59},"end":{"line":681,"col":60}},"generated_from_span":null},"id":3683,"kind":{"StorageDead":30},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":59},"end":{"line":681,"col":60}},"generated_from_span":null},"id":3684,"kind":{"StorageDead":25},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":681,"col":59},"end":{"line":681,"col":60}},"generated_from_span":null},"id":3685,"kind":{"StorageDead":23},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":8},"end":{"line":682,"col":60}},"generated_from_span":null},"id":3686,"kind":{"StorageLive":34},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":8},"end":{"line":682,"col":19}},"generated_from_span":null},"id":3687,"kind":{"StorageLive":35},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":11},"end":{"line":682,"col":19}},"generated_from_span":null},"id":3688,"kind":{"StorageLive":36},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":8},"end":{"line":682,"col":11}},"generated_from_span":null},"id":3689,"kind":{"StorageLive":37},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":8},"end":{"line":682,"col":11}},"generated_from_span":null},"id":3690,"kind":{"Assign":[{"kind":{"Local":37},"ty":{"Deduplicated":5520}},{"Ref":{"place":{"kind":{"Local":11},"ty":{"Deduplicated":1895}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":12},"end":{"line":682,"col":18}},"generated_from_span":null},"id":3691,"kind":{"StorageLive":38},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":12},"end":{"line":682,"col":18}},"generated_from_span":null},"id":3692,"kind":{"Assign":[{"kind":{"Local":38},"ty":{"Deduplicated":5197}},{"Aggregate":[{"Adt":[{"id":{"Adt":56},"generics":{"regions":[],"types":[{"Deduplicated":1073}],"const_generics":[],"trait_refs":[]}},null,null]},[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","16"]}}},"ty":{"Deduplicated":1073}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","24"]}}},"ty":{"Deduplicated":1073}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":11},"end":{"line":682,"col":19}},"generated_from_span":null},"id":3693,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":237}},"generics":{"regions":[{"Body":45}],"types":[{"Deduplicated":1894},{"Deduplicated":5197},{"Deduplicated":2162}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","32"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[{"Deduplicated":7711}]}}},"args":[{"Move":{"kind":{"Local":37},"ty":{"Deduplicated":5520}}},{"Move":{"kind":{"Local":38},"ty":{"Deduplicated":5197}}}],"dest":{"kind":{"Local":36},"ty":{"Deduplicated":5519}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":8},"end":{"line":682,"col":19}},"generated_from_span":null},"id":3694,"kind":{"Assign":[{"kind":{"Local":35},"ty":{"Deduplicated":5518}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":36},"ty":{"Deduplicated":5519}},"Deref"]},"ty":{"Deduplicated":2162}},"kind":"TwoPhaseMut","ptr_metadata":{"Copy":{"kind":{"Projection":[{"kind":{"Local":36},"ty":{"Deduplicated":5519}},"PtrMetadata"]},"ty":{"Deduplicated":1073}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":18},"end":{"line":682,"col":19}},"generated_from_span":null},"id":3695,"kind":{"StorageDead":38},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":18},"end":{"line":682,"col":19}},"generated_from_span":null},"id":3696,"kind":{"StorageDead":37},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":36},"end":{"line":682,"col":59}},"generated_from_span":null},"id":3697,"kind":{"StorageLive":39},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":36},"end":{"line":682,"col":59}},"generated_from_span":null},"id":3698,"kind":{"StorageLive":40},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":36},"end":{"line":682,"col":59}},"generated_from_span":null},"id":3699,"kind":{"StorageLive":41},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":37},"end":{"line":682,"col":59}},"generated_from_span":null},"id":3700,"kind":{"StorageLive":42},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":37},"end":{"line":682,"col":45}},"generated_from_span":null},"id":3701,"kind":{"StorageLive":43},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":43},"end":{"line":682,"col":44}},"generated_from_span":null},"id":3702,"kind":{"StorageLive":44},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":43},"end":{"line":682,"col":44}},"generated_from_span":null},"id":3703,"kind":{"Assign":[{"kind":{"Local":44},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":37},"end":{"line":682,"col":45}},"generated_from_span":null},"id":4617,"kind":{"StorageLive":68},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":37},"end":{"line":682,"col":45}},"generated_from_span":null},"id":4618,"kind":{"Assign":[{"kind":{"Local":68},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":37},"end":{"line":682,"col":45}},"generated_from_span":null},"id":4619,"kind":{"StorageLive":69},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":37},"end":{"line":682,"col":45}},"generated_from_span":null},"id":4620,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":68},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":44},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":69},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":37},"end":{"line":682,"col":45}},"generated_from_span":null},"id":3706,"kind":{"Assign":[{"kind":{"Local":43},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":69},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":37},"end":{"line":682,"col":59}},"generated_from_span":null},"id":3707,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":238}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":43},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":42},"ty":{"Deduplicated":5165}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":58},"end":{"line":682,"col":59}},"generated_from_span":null},"id":3708,"kind":{"StorageDead":43},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":36},"end":{"line":682,"col":59}},"generated_from_span":null},"id":3709,"kind":{"Assign":[{"kind":{"Local":41},"ty":{"Deduplicated":5522}},{"Ref":{"place":{"kind":{"Local":42},"ty":{"Deduplicated":5165}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":36},"end":{"line":682,"col":59}},"generated_from_span":null},"id":3710,"kind":{"Assign":[{"kind":{"Local":40},"ty":{"Deduplicated":5521}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":41},"ty":{"Deduplicated":5522}},"Deref"]},"ty":{"Deduplicated":5165}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":36},"end":{"line":682,"col":59}},"generated_from_span":null},"id":3711,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":"ArrayToSliceShared"}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1894}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":40},"ty":{"Deduplicated":5521}}}],"dest":{"kind":{"Local":39},"ty":{"Deduplicated":5380}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":58},"end":{"line":682,"col":59}},"generated_from_span":null},"id":3712,"kind":{"StorageDead":40},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":8},"end":{"line":682,"col":60}},"generated_from_span":null},"id":3713,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":239}},"generics":{"regions":[{"Body":49},{"Body":50}],"types":[{"Deduplicated":1894}],"const_generics":[],"trait_refs":[{"Deduplicated":2143}]}}},"args":[{"Move":{"kind":{"Local":35},"ty":{"Deduplicated":5518}}},{"Move":{"kind":{"Local":39},"ty":{"Deduplicated":5380}}}],"dest":{"kind":{"Local":34},"ty":{"Deduplicated":1108}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":59},"end":{"line":682,"col":60}},"generated_from_span":null},"id":3714,"kind":{"StorageDead":39},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":59},"end":{"line":682,"col":60}},"generated_from_span":null},"id":3715,"kind":{"StorageDead":35},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":60},"end":{"line":682,"col":61}},"generated_from_span":null},"id":3716,"kind":{"StorageDead":44},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":60},"end":{"line":682,"col":61}},"generated_from_span":null},"id":3717,"kind":{"StorageDead":42},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":60},"end":{"line":682,"col":61}},"generated_from_span":null},"id":3718,"kind":{"StorageDead":41},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":60},"end":{"line":682,"col":61}},"generated_from_span":null},"id":3719,"kind":{"StorageDead":36},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":682,"col":60},"end":{"line":682,"col":61}},"generated_from_span":null},"id":3720,"kind":{"StorageDead":34},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":8},"end":{"line":683,"col":60}},"generated_from_span":null},"id":3721,"kind":{"StorageLive":45},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":8},"end":{"line":683,"col":19}},"generated_from_span":null},"id":3722,"kind":{"StorageLive":46},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":11},"end":{"line":683,"col":19}},"generated_from_span":null},"id":3723,"kind":{"StorageLive":47},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":8},"end":{"line":683,"col":11}},"generated_from_span":null},"id":3724,"kind":{"StorageLive":48},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":8},"end":{"line":683,"col":11}},"generated_from_span":null},"id":3725,"kind":{"Assign":[{"kind":{"Local":48},"ty":{"Deduplicated":5525}},{"Ref":{"place":{"kind":{"Local":11},"ty":{"Deduplicated":1895}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":12},"end":{"line":683,"col":18}},"generated_from_span":null},"id":3726,"kind":{"StorageLive":49},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":12},"end":{"line":683,"col":18}},"generated_from_span":null},"id":3727,"kind":{"Assign":[{"kind":{"Local":49},"ty":{"Deduplicated":5197}},{"Aggregate":[{"Adt":[{"id":{"Adt":56},"generics":{"regions":[],"types":[{"Deduplicated":1073}],"const_generics":[],"trait_refs":[]}},null,null]},[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","24"]}}},"ty":{"Deduplicated":1073}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","32"]}}},"ty":{"Deduplicated":1073}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":11},"end":{"line":683,"col":19}},"generated_from_span":null},"id":3728,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":237}},"generics":{"regions":[{"Body":52}],"types":[{"Deduplicated":1894},{"Deduplicated":5197},{"Deduplicated":2162}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","32"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[{"Deduplicated":7711}]}}},"args":[{"Move":{"kind":{"Local":48},"ty":{"Deduplicated":5525}}},{"Move":{"kind":{"Local":49},"ty":{"Deduplicated":5197}}}],"dest":{"kind":{"Local":47},"ty":{"Deduplicated":5524}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":8},"end":{"line":683,"col":19}},"generated_from_span":null},"id":3729,"kind":{"Assign":[{"kind":{"Local":46},"ty":{"Deduplicated":5523}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":47},"ty":{"Deduplicated":5524}},"Deref"]},"ty":{"Deduplicated":2162}},"kind":"TwoPhaseMut","ptr_metadata":{"Copy":{"kind":{"Projection":[{"kind":{"Local":47},"ty":{"Deduplicated":5524}},"PtrMetadata"]},"ty":{"Deduplicated":1073}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":18},"end":{"line":683,"col":19}},"generated_from_span":null},"id":3730,"kind":{"StorageDead":49},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":18},"end":{"line":683,"col":19}},"generated_from_span":null},"id":3731,"kind":{"StorageDead":48},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":36},"end":{"line":683,"col":59}},"generated_from_span":null},"id":3732,"kind":{"StorageLive":50},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":36},"end":{"line":683,"col":59}},"generated_from_span":null},"id":3733,"kind":{"StorageLive":51},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":36},"end":{"line":683,"col":59}},"generated_from_span":null},"id":3734,"kind":{"StorageLive":52},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":37},"end":{"line":683,"col":59}},"generated_from_span":null},"id":3735,"kind":{"StorageLive":53},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":37},"end":{"line":683,"col":45}},"generated_from_span":null},"id":3736,"kind":{"StorageLive":54},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":43},"end":{"line":683,"col":44}},"generated_from_span":null},"id":3737,"kind":{"StorageLive":55},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":43},"end":{"line":683,"col":44}},"generated_from_span":null},"id":3738,"kind":{"Assign":[{"kind":{"Local":55},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":37},"end":{"line":683,"col":45}},"generated_from_span":null},"id":4621,"kind":{"StorageLive":70},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":37},"end":{"line":683,"col":45}},"generated_from_span":null},"id":4622,"kind":{"Assign":[{"kind":{"Local":70},"ty":{"Deduplicated":6167}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":1079}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":1074}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":37},"end":{"line":683,"col":45}},"generated_from_span":null},"id":4623,"kind":{"StorageLive":71},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":37},"end":{"line":683,"col":45}},"generated_from_span":null},"id":4624,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1072}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":70},"ty":{"Deduplicated":6167}}},{"Copy":{"kind":{"Local":55},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":71},"ty":{"Deduplicated":7281}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":37},"end":{"line":683,"col":45}},"generated_from_span":null},"id":3741,"kind":{"Assign":[{"kind":{"Local":54},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":71},"ty":{"Deduplicated":7281}},"Deref"]},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":37},"end":{"line":683,"col":59}},"generated_from_span":null},"id":3742,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":238}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":54},"ty":{"Deduplicated":1072}}}],"dest":{"kind":{"Local":53},"ty":{"Deduplicated":5165}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":58},"end":{"line":683,"col":59}},"generated_from_span":null},"id":3743,"kind":{"StorageDead":54},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":36},"end":{"line":683,"col":59}},"generated_from_span":null},"id":3744,"kind":{"Assign":[{"kind":{"Local":52},"ty":{"Deduplicated":5528}},{"Ref":{"place":{"kind":{"Local":53},"ty":{"Deduplicated":5165}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":36},"end":{"line":683,"col":59}},"generated_from_span":null},"id":3745,"kind":{"Assign":[{"kind":{"Local":51},"ty":{"Deduplicated":5527}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":52},"ty":{"Deduplicated":5528}},"Deref"]},"ty":{"Deduplicated":5165}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":36},"end":{"line":683,"col":59}},"generated_from_span":null},"id":3746,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":"ArrayToSliceShared"}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1894}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":51},"ty":{"Deduplicated":5527}}}],"dest":{"kind":{"Local":50},"ty":{"Deduplicated":5526}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":58},"end":{"line":683,"col":59}},"generated_from_span":null},"id":3747,"kind":{"StorageDead":51},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":8},"end":{"line":683,"col":60}},"generated_from_span":null},"id":3748,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":239}},"generics":{"regions":[{"Body":56},{"Body":57}],"types":[{"Deduplicated":1894}],"const_generics":[],"trait_refs":[{"Deduplicated":2143}]}}},"args":[{"Move":{"kind":{"Local":46},"ty":{"Deduplicated":5523}}},{"Move":{"kind":{"Local":50},"ty":{"Deduplicated":5526}}}],"dest":{"kind":{"Local":45},"ty":{"Deduplicated":1108}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":59},"end":{"line":683,"col":60}},"generated_from_span":null},"id":3749,"kind":{"StorageDead":50},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":59},"end":{"line":683,"col":60}},"generated_from_span":null},"id":3750,"kind":{"StorageDead":46},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":60},"end":{"line":683,"col":61}},"generated_from_span":null},"id":3751,"kind":{"StorageDead":55},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":60},"end":{"line":683,"col":61}},"generated_from_span":null},"id":3752,"kind":{"StorageDead":53},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":60},"end":{"line":683,"col":61}},"generated_from_span":null},"id":3753,"kind":{"StorageDead":52},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":60},"end":{"line":683,"col":61}},"generated_from_span":null},"id":3754,"kind":{"StorageDead":47},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":683,"col":60},"end":{"line":683,"col":61}},"generated_from_span":null},"id":3755,"kind":{"StorageDead":45},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":685,"col":8},"end":{"line":685,"col":11}},"generated_from_span":null},"id":3756,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1895}},{"Use":[{"Copy":{"kind":{"Local":11},"ty":{"Deduplicated":1895}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":686,"col":4},"end":{"line":686,"col":5}},"generated_from_span":null},"id":3757,"kind":{"StorageDead":11},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":686,"col":4},"end":{"line":686,"col":5}},"generated_from_span":null},"id":3758,"kind":{"StorageDead":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":686,"col":5},"end":{"line":686,"col":5}},"generated_from_span":null},"id":3759,"kind":"Return","comments_before":[]}]},"comments":[[677,["Turn into canonical form by computing","(a.R) / R = a"]]]}}},{"def_id":111,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["is_odd",0]}],"span":{"data":{"file_id":2,"beg":{"line":688,"col":4},"end":{"line":690,"col":5}},"generated_from_span":null},"source_text":"fn is_odd(&self) -> Choice {\n Choice::from(self.to_repr()[0] & 1)\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":8297}],"output":{"Deduplicated":1250}},"src":{"TraitImpl":{"impl_ref":{"id":38,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1895}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":5},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":688,"col":4},"end":{"line":690,"col":5}},"generated_from_span":null},"bound_body_regions":5,"locals":{"arg_count":1,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":688,"col":24},"end":{"line":688,"col":30}},"generated_from_span":null},"ty":{"Deduplicated":1250}},{"index":1,"name":"self","span":{"data":{"file_id":2,"beg":{"line":688,"col":14},"end":{"line":688,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":2302}},{"index":2,"name":null,"span":{"data":{"file_id":2,"beg":{"line":689,"col":21},"end":{"line":689,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1894}},{"index":3,"name":null,"span":{"data":{"file_id":2,"beg":{"line":689,"col":21},"end":{"line":689,"col":38}},"generated_from_span":null},"ty":{"Deduplicated":1894}},{"index":4,"name":null,"span":{"data":{"file_id":2,"beg":{"line":689,"col":21},"end":{"line":689,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":1895}},{"index":5,"name":null,"span":{"data":{"file_id":2,"beg":{"line":689,"col":21},"end":{"line":689,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":2355}},{"index":6,"name":null,"span":{"data":{"file_id":2,"beg":{"line":689,"col":36},"end":{"line":689,"col":37}},"generated_from_span":null},"ty":{"Deduplicated":1073}},{"index":7,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"HashConsedValue":[7287,{"Ref":["Erased",{"Deduplicated":1895},"Shared"]}]}},{"index":8,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"HashConsedValue":[7286,{"Ref":["Erased",{"Deduplicated":1894},"Shared"]}]}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":689,"col":21},"end":{"line":690,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":689,"col":21},"end":{"line":689,"col":42}},"generated_from_span":null},"id":3761,"kind":{"StorageLive":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":689,"col":21},"end":{"line":689,"col":38}},"generated_from_span":null},"id":3762,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":689,"col":21},"end":{"line":689,"col":35}},"generated_from_span":null},"id":3763,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":689,"col":21},"end":{"line":689,"col":25}},"generated_from_span":null},"id":3764,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":689,"col":21},"end":{"line":689,"col":25}},"generated_from_span":null},"id":3765,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":2355}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":2302}},"Deref"]},"ty":{"Deduplicated":1079}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":689,"col":21},"end":{"line":689,"col":35}},"generated_from_span":null},"id":3766,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":110}},"generics":{"regions":[{"Body":4}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":5},"ty":{"Deduplicated":2355}}}],"dest":{"kind":{"Local":4},"ty":{"Deduplicated":1895}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":689,"col":34},"end":{"line":689,"col":35}},"generated_from_span":null},"id":3767,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":689,"col":36},"end":{"line":689,"col":37}},"generated_from_span":null},"id":3768,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":689,"col":36},"end":{"line":689,"col":37}},"generated_from_span":null},"id":3769,"kind":{"Assign":[{"kind":{"Local":6},"ty":{"Deduplicated":1073}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":1073}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":689,"col":21},"end":{"line":689,"col":38}},"generated_from_span":null},"id":4625,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":689,"col":21},"end":{"line":689,"col":38}},"generated_from_span":null},"id":4626,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":7287}},{"Ref":{"place":{"kind":{"Local":4},"ty":{"Deduplicated":1895}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":1108}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":689,"col":21},"end":{"line":689,"col":38}},"generated_from_span":null},"id":4627,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":689,"col":21},"end":{"line":689,"col":38}},"generated_from_span":null},"id":4628,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1894}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","32"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":7},"ty":{"Deduplicated":7287}}},{"Copy":{"kind":{"Local":6},"ty":{"Deduplicated":1073}}}],"dest":{"kind":{"Local":8},"ty":{"Deduplicated":7286}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":689,"col":21},"end":{"line":689,"col":38}},"generated_from_span":null},"id":3772,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":1894}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":8},"ty":{"Deduplicated":7286}},"Deref"]},"ty":{"Deduplicated":1894}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":689,"col":21},"end":{"line":689,"col":42}},"generated_from_span":null},"id":3773,"kind":{"Assign":[{"kind":{"Local":2},"ty":{"Deduplicated":1894}},{"BinaryOp":["BitAnd",{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":1894}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U8","1"]}}},"ty":{"Deduplicated":1894}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":689,"col":41},"end":{"line":689,"col":42}},"generated_from_span":null},"id":3774,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":689,"col":8},"end":{"line":689,"col":43}},"generated_from_span":null},"id":3775,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":236}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":2},"ty":{"Deduplicated":1894}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1250}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":689,"col":42},"end":{"line":689,"col":43}},"generated_from_span":null},"id":3776,"kind":{"StorageDead":2},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":690,"col":4},"end":{"line":690,"col":5}},"generated_from_span":null},"id":3777,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":690,"col":4},"end":{"line":690,"col":5}},"generated_from_span":null},"id":3778,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":690,"col":5},"end":{"line":690,"col":5}},"generated_from_span":null},"id":3779,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":112,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":39}},{"Ident":["pow_by_t_minus1_over2",0]}],"span":{"data":{"file_id":2,"beg":{"line":749,"col":4},"end":{"line":778,"col":5}},"generated_from_span":null},"source_text":"fn pow_by_t_minus1_over2(&self) -> Self {\n let sqr = |x: Fp, i: u32| (0..i).fold(x, |x, _| x.square());\n\n let r10 = self.square();\n let r11 = r10 * self;\n let r110 = r11.square();\n let r111 = r110 * self;\n let r1001 = r111 * r10;\n let r1101 = r111 * r110;\n let ra = sqr(*self, 129) * self;\n let rb = sqr(ra, 7) * r1001;\n let rc = sqr(rb, 7) * r1101;\n let rd = sqr(rc, 4) * r11;\n let re = sqr(rd, 6) * r111;\n let rf = sqr(re, 3) * r111;\n let rg = sqr(rf, 10) * r1001;\n let rh = sqr(rg, 5) * r1001;\n let ri = sqr(rh, 4) * r1001;\n let rj = sqr(ri, 3) * r111;\n let rk = sqr(rj, 4) * r1001;\n let rl = sqr(rk, 5) * r11;\n let rm = sqr(rl, 4) * r111;\n let rn = sqr(rm, 4) * r11;\n let ro = sqr(rn, 6) * r1001;\n let rp = sqr(ro, 5) * r1101;\n let rq = sqr(rp, 4) * r11;\n let rr = sqr(rq, 7) * r111;\n let rs = sqr(rr, 3) * r11;\n rs.square() // rt\n }","attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Opaque","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":8297}],"output":{"Deduplicated":1079}},"src":{"TraitImpl":{"impl_ref":{"id":39,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":31,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1895}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":113,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":39}},{"Ident":["get_lower_32",0]}],"span":{"data":{"file_id":2,"beg":{"line":780,"col":4},"end":{"line":785,"col":5}},"generated_from_span":null},"source_text":"fn get_lower_32(&self) -> u32 {\n // TODO: don't reduce, just hash the Montgomery form. (Requires rebuilding perfect hash table.)\n let tmp = Fp::montgomery_reduce(self.0[0], self.0[1], self.0[2], self.0[3], 0, 0, 0, 0);\n\n tmp.0[0] as u32\n }","attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Opaque","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":8297}],"output":{"Deduplicated":1834}},"src":{"TraitImpl":{"impl_ref":{"id":39,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":31,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1895}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":1},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":114,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":41}},{"Ident":["from_uniform_bytes",0]}],"span":{"data":{"file_id":2,"beg":{"line":800,"col":4},"end":{"line":811,"col":5}},"generated_from_span":null},"source_text":"fn from_uniform_bytes(bytes: &[u8; 64]) -> Fp {\n Fp::from_u512([\n u64::from_le_bytes(bytes[0..8].try_into().unwrap()),\n u64::from_le_bytes(bytes[8..16].try_into().unwrap()),\n u64::from_le_bytes(bytes[16..24].try_into().unwrap()),\n u64::from_le_bytes(bytes[24..32].try_into().unwrap()),\n u64::from_le_bytes(bytes[32..40].try_into().unwrap()),\n u64::from_le_bytes(bytes[40..48].try_into().unwrap()),\n u64::from_le_bytes(bytes[48..56].try_into().unwrap()),\n u64::from_le_bytes(bytes[56..64].try_into().unwrap()),\n ])\n }","attr_info":{"attributes":[{"DocComment":" Converts a 512-bit little endian integer into"},{"DocComment":" a `Fp` by reducing by the modulus."}],"inline":null,"rename":null,"public":true},"is_local":true,"opacity":"Opaque","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":[8450,{"Ref":[{"Var":{"Free":0}},{"HashConsedValue":[8449,{"Array":[{"Deduplicated":1894},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","64"]}}},"ty":{"Deduplicated":1073}}]}]},"Shared"]}]}],"output":{"Deduplicated":1079}},"src":{"TraitImpl":{"impl_ref":{"id":41,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":33,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1895}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","64"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":115,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["marker",0]},{"Ident":["Destruct",0]},{"Ident":["drop_glue",0]}],"span":{"data":{"file_id":6,"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":[{"HashConsedValue":[8451,{"Ref":[{"Var":{"Free":0}},{"Deduplicated":8294},"Mut"]}]}],"output":{"Deduplicated":1108}},"src":{"TraitDecl":{"trait_ref":{"id":2,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":116,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["fmt",0]},{"Ident":["Debug",0]},{"Ident":["fmt",0]}],"span":{"data":{"file_id":8,"beg":{"line":1084,"col":4},"end":{"line":1084,"col":51}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":"Formats the value using the given formatter.\n\n# Errors\n\nThis function should return [`Err`] if, and only if, the provided [`Formatter`] returns [`Err`].\nString formatting is considered an infallible operation; this function only\nreturns a [`Result`] because writing to the underlying stream might fail and it must\nprovide a way to propagate the fact that an error has occurred back up the stack.\n"},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::fmt;"},{"DocComment":""},{"DocComment":" struct Position {"},{"DocComment":" longitude: f32,"},{"DocComment":" latitude: f32,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl fmt::Debug for Position {"},{"DocComment":" fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {"},{"DocComment":" f.debug_tuple(\"\")"},{"DocComment":" .field(&self.longitude)"},{"DocComment":" .field(&self.latitude)"},{"DocComment":" .finish()"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" let position = Position { longitude: 1.987, latitude: 2.983 };"},{"DocComment":" assert_eq!(format!(\"{position:?}\"), \"(1.987, 2.983)\");"},{"DocComment":""},{"DocComment":" assert_eq!(format!(\"{position:#?}\"), \"("},{"DocComment":" 1.987,"},{"DocComment":" 2.983,"},{"DocComment":" )\");"},{"DocComment":" ```"}],"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"},{"index":2,"name":null,"mutability":"Unknown"}],"types":[{"index":0,"name":"Self"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"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":8294}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8333},{"Deduplicated":8434}],"output":{"Deduplicated":2348}},"src":{"TraitDecl":{"trait_ref":{"id":6,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":117,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Ident":["From",0]},{"Ident":["from",0]}],"span":{"data":{"file_id":9,"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":1,"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":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8295}],"output":{"Deduplicated":8294}},"src":{"TraitDecl":{"trait_ref":{"id":7,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":118,"item_meta":{"name":[{"Ident":["subtle",0]},{"Impl":{"Trait":50}},{"Ident":["ct_eq",0]}],"span":{"data":{"file_id":10,"beg":{"line":348,"col":12},"end":{"line":348,"col":51}},"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":[8452,{"Ref":[{"Var":{"Free":0}},{"Deduplicated":1072},"Shared"]}]},{"HashConsedValue":[8453,{"Ref":[{"Var":{"Free":1}},{"Deduplicated":1072},"Shared"]}]}],"output":{"Deduplicated":1250}},"src":{"TraitImpl":{"impl_ref":{"id":50,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":8,"generics":{"regions":[],"types":[{"Deduplicated":1072}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":119,"item_meta":{"name":[{"Ident":["subtle",0]},{"Impl":{"Trait":51}},{"Ident":["bitand",0]}],"span":{"data":{"file_id":10,"beg":{"line":162,"col":4},"end":{"line":162,"col":42}},"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":1250},{"Deduplicated":1250}],"output":{"Deduplicated":1250}},"src":{"TraitImpl":{"impl_ref":{"id":51,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":49,"generics":{"regions":[],"types":[{"Deduplicated":1250},{"Deduplicated":1250},{"Deduplicated":1250}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":120,"item_meta":{"name":[{"Ident":["subtle",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":1250},"kind":"InherentImplBlock"}}},{"Ident":["unwrap_u8",0]}],"span":{"data":{"file_id":10,"beg":{"line":133,"col":4},"end":{"line":133,"col":33}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Unwrap the `Choice` wrapper to reveal the underlying `u8`."},{"DocComment":""},{"DocComment":" # Note"},{"DocComment":""},{"DocComment":" This function only exists as an **escape hatch** for the rare case"},{"DocComment":" where it's not possible to use one of the `subtle`-provided"},{"DocComment":" trait impls."},{"DocComment":""},{"DocComment":" **To convert a `Choice` to a `bool`, use the `From` implementation instead.**"}],"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":[8454,{"Ref":[{"Var":{"Free":0}},{"Deduplicated":1250},"Shared"]}]}],"output":{"Deduplicated":1894}},"src":"TopLevel","is_global_initializer":null,"body":"Opaque"},{"def_id":121,"item_meta":{"name":[{"Ident":["subtle",0]},{"Impl":{"Trait":52}},{"Ident":["conditional_select",0]}],"span":{"data":{"file_id":10,"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":8452},{"Deduplicated":8453},{"Deduplicated":1250}],"output":{"Deduplicated":1072}},"src":{"TraitImpl":{"impl_ref":{"id":52,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":11,"generics":{"regions":[],"types":[{"Deduplicated":1072}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":122,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["Neg",0]},{"Ident":["neg",0]}],"span":{"data":{"file_id":14,"beg":{"line":706,"col":4},"end":{"line":706,"col":33}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Performs the unary `-` operation."},{"DocComment":""},{"DocComment":" # Example"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let x: i32 = 12;"},{"DocComment":" assert_eq!(-x, -12);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"neg"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"Clause0_Output"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"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":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8294}],"output":{"Deduplicated":8295}},"src":{"TraitDecl":{"trait_ref":{"id":12,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":123,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["Sub",0]},{"Ident":["sub",0]}],"span":{"data":{"file_id":14,"beg":{"line":203,"col":4},"end":{"line":203,"col":43}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Performs the `-` operation."},{"DocComment":""},{"DocComment":" # Example"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" assert_eq!(12 - 1, 11);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"sub"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"Rhs"},{"index":2,"name":"Clause0_Output"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"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":8294},{"Deduplicated":8295},{"HashConsedValue":[8348,{"TypeVar":{"Free":2}}]}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8294},{"Deduplicated":8295}],"output":{"Deduplicated":8348}},"src":{"TraitDecl":{"trait_ref":{"id":13,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":124,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["Add",0]},{"Ident":["add",0]}],"span":{"data":{"file_id":14,"beg":{"line":91,"col":4},"end":{"line":91,"col":43}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Performs the `+` operation."},{"DocComment":""},{"DocComment":" # Example"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" assert_eq!(12 + 1, 13);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"add"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"Rhs"},{"index":2,"name":"Clause0_Output"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":14,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8294},{"Deduplicated":8295}],"output":{"Deduplicated":8348}},"src":{"TraitDecl":{"trait_ref":{"id":14,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":125,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["Mul",0]},{"Ident":["mul",0]}],"span":{"data":{"file_id":14,"beg":{"line":337,"col":4},"end":{"line":337,"col":43}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Performs the `*` operation."},{"DocComment":""},{"DocComment":" # Example"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" assert_eq!(12 * 2, 24);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"mul"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"Rhs"},{"index":2,"name":"Clause0_Output"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"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":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8294},{"Deduplicated":8295}],"output":{"Deduplicated":8348}},"src":{"TraitDecl":{"trait_ref":{"id":15,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":126,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["SubAssign",0]},{"Ident":["sub_assign",0]}],"span":{"data":{"file_id":14,"beg":{"line":850,"col":4},"end":{"line":850,"col":39}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Performs the `-=` operation."},{"DocComment":""},{"DocComment":" # Example"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let mut x: u32 = 12;"},{"DocComment":" x -= 1;"},{"DocComment":" assert_eq!(x, 11);"},{"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":"Rhs"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":16,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8451},{"Deduplicated":8295}],"output":{"Deduplicated":1108}},"src":{"TraitDecl":{"trait_ref":{"id":16,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":127,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["AddAssign",0]},{"Ident":["add_assign",0]}],"span":{"data":{"file_id":14,"beg":{"line":779,"col":4},"end":{"line":779,"col":39}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Performs the `+=` operation."},{"DocComment":""},{"DocComment":" # Example"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let mut x: u32 = 12;"},{"DocComment":" x += 1;"},{"DocComment":" assert_eq!(x, 13);"},{"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":"Rhs"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"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":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8451},{"Deduplicated":8295}],"output":{"Deduplicated":1108}},"src":{"TraitDecl":{"trait_ref":{"id":17,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":128,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["MulAssign",0]},{"Ident":["mul_assign",0]}],"span":{"data":{"file_id":14,"beg":{"line":912,"col":4},"end":{"line":912,"col":39}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Performs the `*=` operation."},{"DocComment":""},{"DocComment":" # Example"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let mut x: u32 = 12;"},{"DocComment":" x *= 2;"},{"DocComment":" assert_eq!(x, 24);"},{"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":"Rhs"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"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":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8451},{"Deduplicated":8295}],"output":{"Deduplicated":1108}},"src":{"TraitDecl":{"trait_ref":{"id":18,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":129,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["borrow",0]},{"Ident":["Borrow",0]},{"Ident":["borrow",0]}],"span":{"data":{"file_id":15,"beg":{"line":179,"col":4},"end":{"line":179,"col":34}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Immutably borrows from an owned value."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::borrow::Borrow;"},{"DocComment":""},{"DocComment":" fn check<T: Borrow<str>>(s: T) {"},{"DocComment":" assert_eq!(\"Hello\", s.borrow());"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" let s = \"Hello\".to_string();"},{"DocComment":""},{"DocComment":" check(s);"},{"DocComment":""},{"DocComment":" let s = \"Hello\";"},{"DocComment":""},{"DocComment":" check(s);"},{"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":"Borrowed"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"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":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8333}],"output":{"HashConsedValue":[8455,{"Ref":[{"Var":{"Free":0}},{"Deduplicated":8295},"Shared"]}]}},"src":{"TraitDecl":{"trait_ref":{"id":19,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":130,"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":16,"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":1,"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":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":1,"span":{"data":{"file_id":16,"beg":{"line":22,"col":14},"end":{"line":22,"col":32}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":21,"generics":{"regions":[],"types":[{"Deduplicated":8348},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8348}],"output":{"Deduplicated":8294}},"src":{"TraitDecl":{"trait_ref":{"id":20,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":131,"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":19,"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":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":21,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8451}],"output":{"HashConsedValue":[8385,{"Adt":{"id":{"Adt":5},"generics":{"regions":[],"types":[{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}]}},"src":{"TraitDecl":{"trait_ref":{"id":21,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"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,{"def_id":208,"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":16,"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":1,"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":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":1,"span":{"data":{"file_id":16,"beg":{"line":44,"col":18},"end":{"line":44,"col":36}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":21,"generics":{"regions":[],"types":[{"Deduplicated":8348},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8348}],"output":{"Deduplicated":8294}},"src":{"TraitDecl":{"trait_ref":{"id":22,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":209,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["default",0]},{"Ident":["Default",0]},{"Ident":["default",0]}],"span":{"data":{"file_id":20,"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":1,"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":8294}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[],"output":{"Deduplicated":8294}},"src":{"TraitDecl":{"trait_ref":{"id":23,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":210,"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":1072},"kind":"InherentImplBlock"}}},{"Ident":["wrapping_mul",0]}],"span":{"data":{"file_id":60,"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":1072},{"Deduplicated":1072}],"output":{"Deduplicated":1072}},"src":"TopLevel","is_global_initializer":null,"body":"Opaque"},{"def_id":211,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["arithmetic",0]},{"Ident":["fields",0]},{"Ident":["mac",0]}],"span":{"data":{"file_id":24,"beg":{"line":255,"col":0},"end":{"line":258,"col":1}},"generated_from_span":null},"source_text":"pub(crate) const fn mac(a: u64, b: u64, c: u64, carry: u64) -> (u64, u64) {\n let ret = (a as u128) + ((b as u128) * (c as u128)) + (carry as u128);\n (ret as u64, (ret >> 64) as u64)\n}","attr_info":{"attributes":[{"DocComment":" Compute a + (b * c) + carry, returning the result and the new carry over."}],"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":1072},{"Deduplicated":1072},{"Deduplicated":1072},{"Deduplicated":1072}],"output":{"Deduplicated":4590}},"src":"TopLevel","is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":24,"beg":{"line":255,"col":0},"end":{"line":258,"col":1}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":4,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":24,"beg":{"line":255,"col":63},"end":{"line":255,"col":73}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":1,"name":"a","span":{"data":{"file_id":24,"beg":{"line":255,"col":24},"end":{"line":255,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":2,"name":"b","span":{"data":{"file_id":24,"beg":{"line":255,"col":32},"end":{"line":255,"col":33}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":3,"name":"c","span":{"data":{"file_id":24,"beg":{"line":255,"col":40},"end":{"line":255,"col":41}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":4,"name":"carry","span":{"data":{"file_id":24,"beg":{"line":255,"col":48},"end":{"line":255,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":5,"name":"ret","span":{"data":{"file_id":24,"beg":{"line":256,"col":8},"end":{"line":256,"col":11}},"generated_from_span":null},"ty":{"Deduplicated":2226}},{"index":6,"name":null,"span":{"data":{"file_id":24,"beg":{"line":256,"col":14},"end":{"line":256,"col":55}},"generated_from_span":null},"ty":{"Deduplicated":2226}},{"index":7,"name":null,"span":{"data":{"file_id":24,"beg":{"line":256,"col":14},"end":{"line":256,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":2226}},{"index":8,"name":null,"span":{"data":{"file_id":24,"beg":{"line":256,"col":15},"end":{"line":256,"col":16}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":9,"name":null,"span":{"data":{"file_id":24,"beg":{"line":256,"col":28},"end":{"line":256,"col":55}},"generated_from_span":null},"ty":{"Deduplicated":2226}},{"index":10,"name":null,"span":{"data":{"file_id":24,"beg":{"line":256,"col":29},"end":{"line":256,"col":40}},"generated_from_span":null},"ty":{"Deduplicated":2226}},{"index":11,"name":null,"span":{"data":{"file_id":24,"beg":{"line":256,"col":30},"end":{"line":256,"col":31}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":12,"name":null,"span":{"data":{"file_id":24,"beg":{"line":256,"col":43},"end":{"line":256,"col":54}},"generated_from_span":null},"ty":{"Deduplicated":2226}},{"index":13,"name":null,"span":{"data":{"file_id":24,"beg":{"line":256,"col":44},"end":{"line":256,"col":45}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":14,"name":null,"span":{"data":{"file_id":24,"beg":{"line":256,"col":28},"end":{"line":256,"col":55}},"generated_from_span":null},"ty":{"Deduplicated":2226}},{"index":15,"name":null,"span":{"data":{"file_id":24,"beg":{"line":256,"col":14},"end":{"line":256,"col":55}},"generated_from_span":null},"ty":{"Deduplicated":2226}},{"index":16,"name":null,"span":{"data":{"file_id":24,"beg":{"line":256,"col":58},"end":{"line":256,"col":73}},"generated_from_span":null},"ty":{"Deduplicated":2226}},{"index":17,"name":null,"span":{"data":{"file_id":24,"beg":{"line":256,"col":59},"end":{"line":256,"col":64}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":18,"name":null,"span":{"data":{"file_id":24,"beg":{"line":256,"col":14},"end":{"line":256,"col":73}},"generated_from_span":null},"ty":{"Deduplicated":2226}},{"index":19,"name":null,"span":{"data":{"file_id":24,"beg":{"line":257,"col":5},"end":{"line":257,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":20,"name":null,"span":{"data":{"file_id":24,"beg":{"line":257,"col":5},"end":{"line":257,"col":8}},"generated_from_span":null},"ty":{"Deduplicated":2226}},{"index":21,"name":null,"span":{"data":{"file_id":24,"beg":{"line":257,"col":17},"end":{"line":257,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":22,"name":null,"span":{"data":{"file_id":24,"beg":{"line":257,"col":17},"end":{"line":257,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":2226}},{"index":23,"name":null,"span":{"data":{"file_id":24,"beg":{"line":257,"col":18},"end":{"line":257,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":2226}}]},"body":{"span":{"data":{"file_id":24,"beg":{"line":256,"col":8},"end":{"line":258,"col":1}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":24,"beg":{"line":256,"col":8},"end":{"line":256,"col":11}},"generated_from_span":null},"id":3780,"kind":{"StorageLive":14},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":8},"end":{"line":256,"col":11}},"generated_from_span":null},"id":3781,"kind":{"StorageLive":15},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":8},"end":{"line":256,"col":11}},"generated_from_span":null},"id":3782,"kind":{"StorageLive":18},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":8},"end":{"line":256,"col":11}},"generated_from_span":null},"id":3785,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":14},"end":{"line":256,"col":55}},"generated_from_span":null},"id":3786,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":14},"end":{"line":256,"col":25}},"generated_from_span":null},"id":3787,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":15},"end":{"line":256,"col":16}},"generated_from_span":null},"id":3788,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":15},"end":{"line":256,"col":16}},"generated_from_span":null},"id":3789,"kind":{"Assign":[{"kind":{"Local":8},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":1},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":14},"end":{"line":256,"col":25}},"generated_from_span":null},"id":3790,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":2226}},{"UnaryOp":[{"Cast":{"Scalar":[{"UInt":"U64"},{"UInt":"U128"}]}},{"Move":{"kind":{"Local":8},"ty":{"Deduplicated":1072}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":24},"end":{"line":256,"col":25}},"generated_from_span":null},"id":3791,"kind":{"StorageDead":8},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":28},"end":{"line":256,"col":55}},"generated_from_span":null},"id":3792,"kind":{"StorageLive":9},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":29},"end":{"line":256,"col":40}},"generated_from_span":null},"id":3793,"kind":{"StorageLive":10},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":30},"end":{"line":256,"col":31}},"generated_from_span":null},"id":3794,"kind":{"StorageLive":11},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":30},"end":{"line":256,"col":31}},"generated_from_span":null},"id":3795,"kind":{"Assign":[{"kind":{"Local":11},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":2},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":29},"end":{"line":256,"col":40}},"generated_from_span":null},"id":3796,"kind":{"Assign":[{"kind":{"Local":10},"ty":{"Deduplicated":2226}},{"UnaryOp":[{"Cast":{"Scalar":[{"UInt":"U64"},{"UInt":"U128"}]}},{"Move":{"kind":{"Local":11},"ty":{"Deduplicated":1072}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":39},"end":{"line":256,"col":40}},"generated_from_span":null},"id":3797,"kind":{"StorageDead":11},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":43},"end":{"line":256,"col":54}},"generated_from_span":null},"id":3798,"kind":{"StorageLive":12},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":44},"end":{"line":256,"col":45}},"generated_from_span":null},"id":3799,"kind":{"StorageLive":13},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":44},"end":{"line":256,"col":45}},"generated_from_span":null},"id":3800,"kind":{"Assign":[{"kind":{"Local":13},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":3},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":43},"end":{"line":256,"col":54}},"generated_from_span":null},"id":3801,"kind":{"Assign":[{"kind":{"Local":12},"ty":{"Deduplicated":2226}},{"UnaryOp":[{"Cast":{"Scalar":[{"UInt":"U64"},{"UInt":"U128"}]}},{"Move":{"kind":{"Local":13},"ty":{"Deduplicated":1072}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":53},"end":{"line":256,"col":54}},"generated_from_span":null},"id":3802,"kind":{"StorageDead":13},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":28},"end":{"line":256,"col":55}},"generated_from_span":null},"id":3803,"kind":{"Assign":[{"kind":{"Local":14},"ty":{"Deduplicated":2226}},{"BinaryOp":[{"Mul":"Panic"},{"Copy":{"kind":{"Local":10},"ty":{"Deduplicated":2226}}},{"Copy":{"kind":{"Local":12},"ty":{"Deduplicated":2226}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":28},"end":{"line":256,"col":55}},"generated_from_span":null},"id":3805,"kind":{"Assign":[{"kind":{"Local":9},"ty":{"Deduplicated":2226}},{"Use":[{"Move":{"kind":{"Local":14},"ty":{"Deduplicated":2226}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":54},"end":{"line":256,"col":55}},"generated_from_span":null},"id":3806,"kind":{"StorageDead":12},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":54},"end":{"line":256,"col":55}},"generated_from_span":null},"id":3807,"kind":{"StorageDead":10},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":14},"end":{"line":256,"col":55}},"generated_from_span":null},"id":3808,"kind":{"Assign":[{"kind":{"Local":15},"ty":{"Deduplicated":2226}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":7},"ty":{"Deduplicated":2226}}},{"Copy":{"kind":{"Local":9},"ty":{"Deduplicated":2226}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":14},"end":{"line":256,"col":55}},"generated_from_span":null},"id":3810,"kind":{"Assign":[{"kind":{"Local":6},"ty":{"Deduplicated":2226}},{"Use":[{"Move":{"kind":{"Local":15},"ty":{"Deduplicated":2226}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":54},"end":{"line":256,"col":55}},"generated_from_span":null},"id":3811,"kind":{"StorageDead":9},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":54},"end":{"line":256,"col":55}},"generated_from_span":null},"id":3812,"kind":{"StorageDead":7},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":58},"end":{"line":256,"col":73}},"generated_from_span":null},"id":3813,"kind":{"StorageLive":16},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":59},"end":{"line":256,"col":64}},"generated_from_span":null},"id":3814,"kind":{"StorageLive":17},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":59},"end":{"line":256,"col":64}},"generated_from_span":null},"id":3815,"kind":{"Assign":[{"kind":{"Local":17},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":4},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":58},"end":{"line":256,"col":73}},"generated_from_span":null},"id":3816,"kind":{"Assign":[{"kind":{"Local":16},"ty":{"Deduplicated":2226}},{"UnaryOp":[{"Cast":{"Scalar":[{"UInt":"U64"},{"UInt":"U128"}]}},{"Move":{"kind":{"Local":17},"ty":{"Deduplicated":1072}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":72},"end":{"line":256,"col":73}},"generated_from_span":null},"id":3817,"kind":{"StorageDead":17},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":14},"end":{"line":256,"col":73}},"generated_from_span":null},"id":3818,"kind":{"Assign":[{"kind":{"Local":18},"ty":{"Deduplicated":2226}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":6},"ty":{"Deduplicated":2226}}},{"Copy":{"kind":{"Local":16},"ty":{"Deduplicated":2226}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":14},"end":{"line":256,"col":73}},"generated_from_span":null},"id":3820,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":2226}},{"Use":[{"Move":{"kind":{"Local":18},"ty":{"Deduplicated":2226}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":72},"end":{"line":256,"col":73}},"generated_from_span":null},"id":3821,"kind":{"StorageDead":16},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":256,"col":72},"end":{"line":256,"col":73}},"generated_from_span":null},"id":3822,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":257,"col":5},"end":{"line":257,"col":15}},"generated_from_span":null},"id":3823,"kind":{"StorageLive":19},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":257,"col":5},"end":{"line":257,"col":8}},"generated_from_span":null},"id":3824,"kind":{"StorageLive":20},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":257,"col":5},"end":{"line":257,"col":8}},"generated_from_span":null},"id":3825,"kind":{"Assign":[{"kind":{"Local":20},"ty":{"Deduplicated":2226}},{"Use":[{"Copy":{"kind":{"Local":5},"ty":{"Deduplicated":2226}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":257,"col":5},"end":{"line":257,"col":15}},"generated_from_span":null},"id":3826,"kind":{"Assign":[{"kind":{"Local":19},"ty":{"Deduplicated":1072}},{"UnaryOp":[{"Cast":{"Scalar":[{"UInt":"U128"},{"UInt":"U64"}]}},{"Move":{"kind":{"Local":20},"ty":{"Deduplicated":2226}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":257,"col":14},"end":{"line":257,"col":15}},"generated_from_span":null},"id":3827,"kind":{"StorageDead":20},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":257,"col":17},"end":{"line":257,"col":35}},"generated_from_span":null},"id":3828,"kind":{"StorageLive":21},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":257,"col":17},"end":{"line":257,"col":28}},"generated_from_span":null},"id":3829,"kind":{"StorageLive":22},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":257,"col":18},"end":{"line":257,"col":21}},"generated_from_span":null},"id":3830,"kind":{"StorageLive":23},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":257,"col":18},"end":{"line":257,"col":21}},"generated_from_span":null},"id":3831,"kind":{"Assign":[{"kind":{"Local":23},"ty":{"Deduplicated":2226}},{"Use":[{"Copy":{"kind":{"Local":5},"ty":{"Deduplicated":2226}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":257,"col":17},"end":{"line":257,"col":28}},"generated_from_span":null},"id":3835,"kind":{"Assign":[{"kind":{"Local":22},"ty":{"Deduplicated":2226}},{"BinaryOp":[{"Shr":"Panic"},{"Move":{"kind":{"Local":23},"ty":{"Deduplicated":2226}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","64"]}}},"ty":{"Deduplicated":4754}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":257,"col":27},"end":{"line":257,"col":28}},"generated_from_span":null},"id":3836,"kind":{"StorageDead":23},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":257,"col":17},"end":{"line":257,"col":35}},"generated_from_span":null},"id":3837,"kind":{"Assign":[{"kind":{"Local":21},"ty":{"Deduplicated":1072}},{"UnaryOp":[{"Cast":{"Scalar":[{"UInt":"U128"},{"UInt":"U64"}]}},{"Move":{"kind":{"Local":22},"ty":{"Deduplicated":2226}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":257,"col":34},"end":{"line":257,"col":35}},"generated_from_span":null},"id":3838,"kind":{"StorageDead":22},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":257,"col":4},"end":{"line":257,"col":36}},"generated_from_span":null},"id":3839,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":4590}},{"Aggregate":[{"Adt":[{"id":"Tuple","generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[{"Move":{"kind":{"Local":19},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":21},"ty":{"Deduplicated":1072}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":257,"col":35},"end":{"line":257,"col":36}},"generated_from_span":null},"id":3840,"kind":{"StorageDead":21},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":257,"col":35},"end":{"line":257,"col":36}},"generated_from_span":null},"id":3841,"kind":{"StorageDead":19},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":258,"col":0},"end":{"line":258,"col":1}},"generated_from_span":null},"id":3842,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":258,"col":1},"end":{"line":258,"col":1}},"generated_from_span":null},"id":3843,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":212,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["arithmetic",0]},{"Ident":["fields",0]},{"Ident":["adc",0]}],"span":{"data":{"file_id":24,"beg":{"line":241,"col":0},"end":{"line":244,"col":1}},"generated_from_span":null},"source_text":"pub(crate) const fn adc(a: u64, b: u64, carry: u64) -> (u64, u64) {\n let ret = (a as u128) + (b as u128) + (carry as u128);\n (ret as u64, (ret >> 64) as u64)\n}","attr_info":{"attributes":[{"DocComment":" Compute a + b + carry, returning the result and the new carry over."}],"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":1072},{"Deduplicated":1072},{"Deduplicated":1072}],"output":{"Deduplicated":4590}},"src":"TopLevel","is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":24,"beg":{"line":241,"col":0},"end":{"line":244,"col":1}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":3,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":24,"beg":{"line":241,"col":55},"end":{"line":241,"col":65}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":1,"name":"a","span":{"data":{"file_id":24,"beg":{"line":241,"col":24},"end":{"line":241,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":2,"name":"b","span":{"data":{"file_id":24,"beg":{"line":241,"col":32},"end":{"line":241,"col":33}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":3,"name":"carry","span":{"data":{"file_id":24,"beg":{"line":241,"col":40},"end":{"line":241,"col":45}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":4,"name":"ret","span":{"data":{"file_id":24,"beg":{"line":242,"col":8},"end":{"line":242,"col":11}},"generated_from_span":null},"ty":{"Deduplicated":2226}},{"index":5,"name":null,"span":{"data":{"file_id":24,"beg":{"line":242,"col":14},"end":{"line":242,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":2226}},{"index":6,"name":null,"span":{"data":{"file_id":24,"beg":{"line":242,"col":14},"end":{"line":242,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":2226}},{"index":7,"name":null,"span":{"data":{"file_id":24,"beg":{"line":242,"col":15},"end":{"line":242,"col":16}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":8,"name":null,"span":{"data":{"file_id":24,"beg":{"line":242,"col":28},"end":{"line":242,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":2226}},{"index":9,"name":null,"span":{"data":{"file_id":24,"beg":{"line":242,"col":29},"end":{"line":242,"col":30}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":10,"name":null,"span":{"data":{"file_id":24,"beg":{"line":242,"col":14},"end":{"line":242,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":2226}},{"index":11,"name":null,"span":{"data":{"file_id":24,"beg":{"line":242,"col":42},"end":{"line":242,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":2226}},{"index":12,"name":null,"span":{"data":{"file_id":24,"beg":{"line":242,"col":43},"end":{"line":242,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":13,"name":null,"span":{"data":{"file_id":24,"beg":{"line":242,"col":14},"end":{"line":242,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":2226}},{"index":14,"name":null,"span":{"data":{"file_id":24,"beg":{"line":243,"col":5},"end":{"line":243,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":15,"name":null,"span":{"data":{"file_id":24,"beg":{"line":243,"col":5},"end":{"line":243,"col":8}},"generated_from_span":null},"ty":{"Deduplicated":2226}},{"index":16,"name":null,"span":{"data":{"file_id":24,"beg":{"line":243,"col":17},"end":{"line":243,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":17,"name":null,"span":{"data":{"file_id":24,"beg":{"line":243,"col":17},"end":{"line":243,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":2226}},{"index":18,"name":null,"span":{"data":{"file_id":24,"beg":{"line":243,"col":18},"end":{"line":243,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":2226}}]},"body":{"span":{"data":{"file_id":24,"beg":{"line":242,"col":8},"end":{"line":244,"col":1}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":24,"beg":{"line":242,"col":8},"end":{"line":242,"col":11}},"generated_from_span":null},"id":3844,"kind":{"StorageLive":10},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":242,"col":8},"end":{"line":242,"col":11}},"generated_from_span":null},"id":3845,"kind":{"StorageLive":13},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":242,"col":8},"end":{"line":242,"col":11}},"generated_from_span":null},"id":3848,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":242,"col":14},"end":{"line":242,"col":39}},"generated_from_span":null},"id":3849,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":242,"col":14},"end":{"line":242,"col":25}},"generated_from_span":null},"id":3850,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":242,"col":15},"end":{"line":242,"col":16}},"generated_from_span":null},"id":3851,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":242,"col":15},"end":{"line":242,"col":16}},"generated_from_span":null},"id":3852,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":1},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":242,"col":14},"end":{"line":242,"col":25}},"generated_from_span":null},"id":3853,"kind":{"Assign":[{"kind":{"Local":6},"ty":{"Deduplicated":2226}},{"UnaryOp":[{"Cast":{"Scalar":[{"UInt":"U64"},{"UInt":"U128"}]}},{"Move":{"kind":{"Local":7},"ty":{"Deduplicated":1072}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":242,"col":24},"end":{"line":242,"col":25}},"generated_from_span":null},"id":3854,"kind":{"StorageDead":7},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":242,"col":28},"end":{"line":242,"col":39}},"generated_from_span":null},"id":3855,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":242,"col":29},"end":{"line":242,"col":30}},"generated_from_span":null},"id":3856,"kind":{"StorageLive":9},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":242,"col":29},"end":{"line":242,"col":30}},"generated_from_span":null},"id":3857,"kind":{"Assign":[{"kind":{"Local":9},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":2},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":242,"col":28},"end":{"line":242,"col":39}},"generated_from_span":null},"id":3858,"kind":{"Assign":[{"kind":{"Local":8},"ty":{"Deduplicated":2226}},{"UnaryOp":[{"Cast":{"Scalar":[{"UInt":"U64"},{"UInt":"U128"}]}},{"Move":{"kind":{"Local":9},"ty":{"Deduplicated":1072}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":242,"col":38},"end":{"line":242,"col":39}},"generated_from_span":null},"id":3859,"kind":{"StorageDead":9},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":242,"col":14},"end":{"line":242,"col":39}},"generated_from_span":null},"id":3860,"kind":{"Assign":[{"kind":{"Local":10},"ty":{"Deduplicated":2226}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":6},"ty":{"Deduplicated":2226}}},{"Copy":{"kind":{"Local":8},"ty":{"Deduplicated":2226}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":242,"col":14},"end":{"line":242,"col":39}},"generated_from_span":null},"id":3862,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":2226}},{"Use":[{"Move":{"kind":{"Local":10},"ty":{"Deduplicated":2226}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":242,"col":38},"end":{"line":242,"col":39}},"generated_from_span":null},"id":3863,"kind":{"StorageDead":8},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":242,"col":38},"end":{"line":242,"col":39}},"generated_from_span":null},"id":3864,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":242,"col":42},"end":{"line":242,"col":57}},"generated_from_span":null},"id":3865,"kind":{"StorageLive":11},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":242,"col":43},"end":{"line":242,"col":48}},"generated_from_span":null},"id":3866,"kind":{"StorageLive":12},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":242,"col":43},"end":{"line":242,"col":48}},"generated_from_span":null},"id":3867,"kind":{"Assign":[{"kind":{"Local":12},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":3},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":242,"col":42},"end":{"line":242,"col":57}},"generated_from_span":null},"id":3868,"kind":{"Assign":[{"kind":{"Local":11},"ty":{"Deduplicated":2226}},{"UnaryOp":[{"Cast":{"Scalar":[{"UInt":"U64"},{"UInt":"U128"}]}},{"Move":{"kind":{"Local":12},"ty":{"Deduplicated":1072}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":242,"col":56},"end":{"line":242,"col":57}},"generated_from_span":null},"id":3869,"kind":{"StorageDead":12},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":242,"col":14},"end":{"line":242,"col":57}},"generated_from_span":null},"id":3870,"kind":{"Assign":[{"kind":{"Local":13},"ty":{"Deduplicated":2226}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":5},"ty":{"Deduplicated":2226}}},{"Copy":{"kind":{"Local":11},"ty":{"Deduplicated":2226}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":242,"col":14},"end":{"line":242,"col":57}},"generated_from_span":null},"id":3872,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":2226}},{"Use":[{"Move":{"kind":{"Local":13},"ty":{"Deduplicated":2226}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":242,"col":56},"end":{"line":242,"col":57}},"generated_from_span":null},"id":3873,"kind":{"StorageDead":11},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":242,"col":56},"end":{"line":242,"col":57}},"generated_from_span":null},"id":3874,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":243,"col":5},"end":{"line":243,"col":15}},"generated_from_span":null},"id":3875,"kind":{"StorageLive":14},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":243,"col":5},"end":{"line":243,"col":8}},"generated_from_span":null},"id":3876,"kind":{"StorageLive":15},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":243,"col":5},"end":{"line":243,"col":8}},"generated_from_span":null},"id":3877,"kind":{"Assign":[{"kind":{"Local":15},"ty":{"Deduplicated":2226}},{"Use":[{"Copy":{"kind":{"Local":4},"ty":{"Deduplicated":2226}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":243,"col":5},"end":{"line":243,"col":15}},"generated_from_span":null},"id":3878,"kind":{"Assign":[{"kind":{"Local":14},"ty":{"Deduplicated":1072}},{"UnaryOp":[{"Cast":{"Scalar":[{"UInt":"U128"},{"UInt":"U64"}]}},{"Move":{"kind":{"Local":15},"ty":{"Deduplicated":2226}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":243,"col":14},"end":{"line":243,"col":15}},"generated_from_span":null},"id":3879,"kind":{"StorageDead":15},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":243,"col":17},"end":{"line":243,"col":35}},"generated_from_span":null},"id":3880,"kind":{"StorageLive":16},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":243,"col":17},"end":{"line":243,"col":28}},"generated_from_span":null},"id":3881,"kind":{"StorageLive":17},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":243,"col":18},"end":{"line":243,"col":21}},"generated_from_span":null},"id":3882,"kind":{"StorageLive":18},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":243,"col":18},"end":{"line":243,"col":21}},"generated_from_span":null},"id":3883,"kind":{"Assign":[{"kind":{"Local":18},"ty":{"Deduplicated":2226}},{"Use":[{"Copy":{"kind":{"Local":4},"ty":{"Deduplicated":2226}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":243,"col":17},"end":{"line":243,"col":28}},"generated_from_span":null},"id":3887,"kind":{"Assign":[{"kind":{"Local":17},"ty":{"Deduplicated":2226}},{"BinaryOp":[{"Shr":"Panic"},{"Move":{"kind":{"Local":18},"ty":{"Deduplicated":2226}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","64"]}}},"ty":{"Deduplicated":4754}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":243,"col":27},"end":{"line":243,"col":28}},"generated_from_span":null},"id":3888,"kind":{"StorageDead":18},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":243,"col":17},"end":{"line":243,"col":35}},"generated_from_span":null},"id":3889,"kind":{"Assign":[{"kind":{"Local":16},"ty":{"Deduplicated":1072}},{"UnaryOp":[{"Cast":{"Scalar":[{"UInt":"U128"},{"UInt":"U64"}]}},{"Move":{"kind":{"Local":17},"ty":{"Deduplicated":2226}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":243,"col":34},"end":{"line":243,"col":35}},"generated_from_span":null},"id":3890,"kind":{"StorageDead":17},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":243,"col":4},"end":{"line":243,"col":36}},"generated_from_span":null},"id":3891,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":4590}},{"Aggregate":[{"Adt":[{"id":"Tuple","generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[{"Move":{"kind":{"Local":14},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":16},"ty":{"Deduplicated":1072}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":243,"col":35},"end":{"line":243,"col":36}},"generated_from_span":null},"id":3892,"kind":{"StorageDead":16},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":243,"col":35},"end":{"line":243,"col":36}},"generated_from_span":null},"id":3893,"kind":{"StorageDead":14},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":244,"col":0},"end":{"line":244,"col":1}},"generated_from_span":null},"id":3894,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":244,"col":1},"end":{"line":244,"col":1}},"generated_from_span":null},"id":3895,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":213,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["arithmetic",0]},{"Ident":["fields",0]},{"Ident":["sbb",0]}],"span":{"data":{"file_id":24,"beg":{"line":248,"col":0},"end":{"line":251,"col":1}},"generated_from_span":null},"source_text":"pub(crate) const fn sbb(a: u64, b: u64, borrow: u64) -> (u64, u64) {\n let ret = (a as u128).wrapping_sub((b as u128) + ((borrow >> 63) as u128));\n (ret as u64, (ret >> 64) as u64)\n}","attr_info":{"attributes":[{"DocComment":" Compute a - (b + borrow), returning the result and the new borrow."}],"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":1072},{"Deduplicated":1072},{"Deduplicated":1072}],"output":{"Deduplicated":4590}},"src":"TopLevel","is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":24,"beg":{"line":248,"col":0},"end":{"line":251,"col":1}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":3,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":24,"beg":{"line":248,"col":56},"end":{"line":248,"col":66}},"generated_from_span":null},"ty":{"Deduplicated":4590}},{"index":1,"name":"a","span":{"data":{"file_id":24,"beg":{"line":248,"col":24},"end":{"line":248,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":2,"name":"b","span":{"data":{"file_id":24,"beg":{"line":248,"col":32},"end":{"line":248,"col":33}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":3,"name":"borrow","span":{"data":{"file_id":24,"beg":{"line":248,"col":40},"end":{"line":248,"col":46}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":4,"name":"ret","span":{"data":{"file_id":24,"beg":{"line":249,"col":8},"end":{"line":249,"col":11}},"generated_from_span":null},"ty":{"Deduplicated":2226}},{"index":5,"name":null,"span":{"data":{"file_id":24,"beg":{"line":249,"col":14},"end":{"line":249,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":2226}},{"index":6,"name":null,"span":{"data":{"file_id":24,"beg":{"line":249,"col":15},"end":{"line":249,"col":16}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":7,"name":null,"span":{"data":{"file_id":24,"beg":{"line":249,"col":39},"end":{"line":249,"col":77}},"generated_from_span":null},"ty":{"Deduplicated":2226}},{"index":8,"name":null,"span":{"data":{"file_id":24,"beg":{"line":249,"col":39},"end":{"line":249,"col":50}},"generated_from_span":null},"ty":{"Deduplicated":2226}},{"index":9,"name":null,"span":{"data":{"file_id":24,"beg":{"line":249,"col":40},"end":{"line":249,"col":41}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":10,"name":null,"span":{"data":{"file_id":24,"beg":{"line":249,"col":53},"end":{"line":249,"col":77}},"generated_from_span":null},"ty":{"Deduplicated":2226}},{"index":11,"name":null,"span":{"data":{"file_id":24,"beg":{"line":249,"col":54},"end":{"line":249,"col":68}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":12,"name":null,"span":{"data":{"file_id":24,"beg":{"line":249,"col":55},"end":{"line":249,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":13,"name":null,"span":{"data":{"file_id":24,"beg":{"line":249,"col":39},"end":{"line":249,"col":77}},"generated_from_span":null},"ty":{"Deduplicated":2226}},{"index":14,"name":null,"span":{"data":{"file_id":24,"beg":{"line":250,"col":5},"end":{"line":250,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":15,"name":null,"span":{"data":{"file_id":24,"beg":{"line":250,"col":5},"end":{"line":250,"col":8}},"generated_from_span":null},"ty":{"Deduplicated":2226}},{"index":16,"name":null,"span":{"data":{"file_id":24,"beg":{"line":250,"col":17},"end":{"line":250,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":1072}},{"index":17,"name":null,"span":{"data":{"file_id":24,"beg":{"line":250,"col":17},"end":{"line":250,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":2226}},{"index":18,"name":null,"span":{"data":{"file_id":24,"beg":{"line":250,"col":18},"end":{"line":250,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":2226}}]},"body":{"span":{"data":{"file_id":24,"beg":{"line":249,"col":8},"end":{"line":251,"col":1}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":24,"beg":{"line":249,"col":8},"end":{"line":249,"col":11}},"generated_from_span":null},"id":3898,"kind":{"StorageLive":13},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":249,"col":8},"end":{"line":249,"col":11}},"generated_from_span":null},"id":3901,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":249,"col":14},"end":{"line":249,"col":25}},"generated_from_span":null},"id":3902,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":249,"col":15},"end":{"line":249,"col":16}},"generated_from_span":null},"id":3903,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":249,"col":15},"end":{"line":249,"col":16}},"generated_from_span":null},"id":3904,"kind":{"Assign":[{"kind":{"Local":6},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":1},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":249,"col":14},"end":{"line":249,"col":25}},"generated_from_span":null},"id":3905,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":2226}},{"UnaryOp":[{"Cast":{"Scalar":[{"UInt":"U64"},{"UInt":"U128"}]}},{"Move":{"kind":{"Local":6},"ty":{"Deduplicated":1072}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":249,"col":24},"end":{"line":249,"col":25}},"generated_from_span":null},"id":3906,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":249,"col":39},"end":{"line":249,"col":77}},"generated_from_span":null},"id":3907,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":249,"col":39},"end":{"line":249,"col":50}},"generated_from_span":null},"id":3908,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":249,"col":40},"end":{"line":249,"col":41}},"generated_from_span":null},"id":3909,"kind":{"StorageLive":9},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":249,"col":40},"end":{"line":249,"col":41}},"generated_from_span":null},"id":3910,"kind":{"Assign":[{"kind":{"Local":9},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":2},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":249,"col":39},"end":{"line":249,"col":50}},"generated_from_span":null},"id":3911,"kind":{"Assign":[{"kind":{"Local":8},"ty":{"Deduplicated":2226}},{"UnaryOp":[{"Cast":{"Scalar":[{"UInt":"U64"},{"UInt":"U128"}]}},{"Move":{"kind":{"Local":9},"ty":{"Deduplicated":1072}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":249,"col":49},"end":{"line":249,"col":50}},"generated_from_span":null},"id":3912,"kind":{"StorageDead":9},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":249,"col":53},"end":{"line":249,"col":77}},"generated_from_span":null},"id":3913,"kind":{"StorageLive":10},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":249,"col":54},"end":{"line":249,"col":68}},"generated_from_span":null},"id":3914,"kind":{"StorageLive":11},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":249,"col":55},"end":{"line":249,"col":61}},"generated_from_span":null},"id":3915,"kind":{"StorageLive":12},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":249,"col":55},"end":{"line":249,"col":61}},"generated_from_span":null},"id":3916,"kind":{"Assign":[{"kind":{"Local":12},"ty":{"Deduplicated":1072}},{"Use":[{"Copy":{"kind":{"Local":3},"ty":{"Deduplicated":1072}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":249,"col":54},"end":{"line":249,"col":68}},"generated_from_span":null},"id":3920,"kind":{"Assign":[{"kind":{"Local":11},"ty":{"Deduplicated":1072}},{"BinaryOp":[{"Shr":"Panic"},{"Move":{"kind":{"Local":12},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","63"]}}},"ty":{"Deduplicated":4754}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":249,"col":67},"end":{"line":249,"col":68}},"generated_from_span":null},"id":3921,"kind":{"StorageDead":12},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":249,"col":53},"end":{"line":249,"col":77}},"generated_from_span":null},"id":3922,"kind":{"Assign":[{"kind":{"Local":10},"ty":{"Deduplicated":2226}},{"UnaryOp":[{"Cast":{"Scalar":[{"UInt":"U64"},{"UInt":"U128"}]}},{"Move":{"kind":{"Local":11},"ty":{"Deduplicated":1072}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":249,"col":76},"end":{"line":249,"col":77}},"generated_from_span":null},"id":3923,"kind":{"StorageDead":11},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":249,"col":39},"end":{"line":249,"col":77}},"generated_from_span":null},"id":3924,"kind":{"Assign":[{"kind":{"Local":13},"ty":{"Deduplicated":2226}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":8},"ty":{"Deduplicated":2226}}},{"Copy":{"kind":{"Local":10},"ty":{"Deduplicated":2226}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":249,"col":39},"end":{"line":249,"col":77}},"generated_from_span":null},"id":3926,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":2226}},{"Use":[{"Move":{"kind":{"Local":13},"ty":{"Deduplicated":2226}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":249,"col":76},"end":{"line":249,"col":77}},"generated_from_span":null},"id":3927,"kind":{"StorageDead":10},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":249,"col":76},"end":{"line":249,"col":77}},"generated_from_span":null},"id":3928,"kind":{"StorageDead":8},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":249,"col":14},"end":{"line":249,"col":78}},"generated_from_span":null},"id":3929,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":276}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":5},"ty":{"Deduplicated":2226}}},{"Move":{"kind":{"Local":7},"ty":{"Deduplicated":2226}}}],"dest":{"kind":{"Local":4},"ty":{"Deduplicated":2226}}}},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":249,"col":77},"end":{"line":249,"col":78}},"generated_from_span":null},"id":3930,"kind":{"StorageDead":7},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":249,"col":77},"end":{"line":249,"col":78}},"generated_from_span":null},"id":3931,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":250,"col":5},"end":{"line":250,"col":15}},"generated_from_span":null},"id":3932,"kind":{"StorageLive":14},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":250,"col":5},"end":{"line":250,"col":8}},"generated_from_span":null},"id":3933,"kind":{"StorageLive":15},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":250,"col":5},"end":{"line":250,"col":8}},"generated_from_span":null},"id":3934,"kind":{"Assign":[{"kind":{"Local":15},"ty":{"Deduplicated":2226}},{"Use":[{"Copy":{"kind":{"Local":4},"ty":{"Deduplicated":2226}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":250,"col":5},"end":{"line":250,"col":15}},"generated_from_span":null},"id":3935,"kind":{"Assign":[{"kind":{"Local":14},"ty":{"Deduplicated":1072}},{"UnaryOp":[{"Cast":{"Scalar":[{"UInt":"U128"},{"UInt":"U64"}]}},{"Move":{"kind":{"Local":15},"ty":{"Deduplicated":2226}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":250,"col":14},"end":{"line":250,"col":15}},"generated_from_span":null},"id":3936,"kind":{"StorageDead":15},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":250,"col":17},"end":{"line":250,"col":35}},"generated_from_span":null},"id":3937,"kind":{"StorageLive":16},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":250,"col":17},"end":{"line":250,"col":28}},"generated_from_span":null},"id":3938,"kind":{"StorageLive":17},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":250,"col":18},"end":{"line":250,"col":21}},"generated_from_span":null},"id":3939,"kind":{"StorageLive":18},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":250,"col":18},"end":{"line":250,"col":21}},"generated_from_span":null},"id":3940,"kind":{"Assign":[{"kind":{"Local":18},"ty":{"Deduplicated":2226}},{"Use":[{"Copy":{"kind":{"Local":4},"ty":{"Deduplicated":2226}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":250,"col":17},"end":{"line":250,"col":28}},"generated_from_span":null},"id":3944,"kind":{"Assign":[{"kind":{"Local":17},"ty":{"Deduplicated":2226}},{"BinaryOp":[{"Shr":"Panic"},{"Move":{"kind":{"Local":18},"ty":{"Deduplicated":2226}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","64"]}}},"ty":{"Deduplicated":4754}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":250,"col":27},"end":{"line":250,"col":28}},"generated_from_span":null},"id":3945,"kind":{"StorageDead":18},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":250,"col":17},"end":{"line":250,"col":35}},"generated_from_span":null},"id":3946,"kind":{"Assign":[{"kind":{"Local":16},"ty":{"Deduplicated":1072}},{"UnaryOp":[{"Cast":{"Scalar":[{"UInt":"U128"},{"UInt":"U64"}]}},{"Move":{"kind":{"Local":17},"ty":{"Deduplicated":2226}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":250,"col":34},"end":{"line":250,"col":35}},"generated_from_span":null},"id":3947,"kind":{"StorageDead":17},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":250,"col":4},"end":{"line":250,"col":36}},"generated_from_span":null},"id":3948,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":4590}},{"Aggregate":[{"Adt":[{"id":"Tuple","generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[{"Move":{"kind":{"Local":14},"ty":{"Deduplicated":1072}}},{"Move":{"kind":{"Local":16},"ty":{"Deduplicated":1072}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":250,"col":35},"end":{"line":250,"col":36}},"generated_from_span":null},"id":3949,"kind":{"StorageDead":16},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":250,"col":35},"end":{"line":250,"col":36}},"generated_from_span":null},"id":3950,"kind":{"StorageDead":14},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":251,"col":0},"end":{"line":251,"col":1}},"generated_from_span":null},"id":3951,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":24,"beg":{"line":251,"col":1},"end":{"line":251,"col":1}},"generated_from_span":null},"id":3952,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":214,"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":1072},"kind":"InherentImplBlock"}}},{"Ident":["wrapping_sub",0]}],"span":{"data":{"file_id":60,"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":1072},{"Deduplicated":1072}],"output":{"Deduplicated":1072}},"src":"TopLevel","is_global_initializer":null,"body":"Opaque"},{"def_id":215,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["borrow",0]},{"Impl":{"Trait":42}},{"Ident":["borrow",0]}],"span":{"data":{"file_id":15,"beg":{"line":214,"col":4},"end":{"line":214,"col":26}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"noop_method_borrow"},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[{"index":0,"name":"T"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8333}],"output":{"Deduplicated":8333}},"src":{"TraitImpl":{"impl_ref":{"id":42,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":19,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":216,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["borrow",0]},{"Impl":{"Trait":43}},{"Ident":["borrow",0]}],"span":{"data":{"file_id":15,"beg":{"line":230,"col":4},"end":{"line":230,"col":26}},"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":[{"index":0,"name":null,"mutability":"Unknown"},{"index":1,"name":null,"mutability":"Unknown"}],"types":[{"index":0,"name":"T"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"HashConsedValue":[8456,{"Ref":[{"Var":{"Free":1}},{"Deduplicated":8333},"Shared"]}]}],"output":{"Deduplicated":8435}},"src":{"TraitImpl":{"impl_ref":{"id":43,"generics":{"regions":[{"Var":{"Free":0}}],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":19,"generics":{"regions":[],"types":[{"Deduplicated":8333},{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":217,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":37}},{"Ident":["ZERO",0]}],"span":{"data":{"file_id":2,"beg":{"line":525,"col":4},"end":{"line":525,"col":36}},"generated_from_span":null},"source_text":"const ZERO: Self = Self::zero();","attr_info":{"attributes":[],"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":1079}},"src":{"TraitImpl":{"impl_ref":{"id":37,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":24,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Const":0},"reuses_default":true}},"is_global_initializer":33,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":525,"col":4},"end":{"line":525,"col":36}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":0,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":525,"col":16},"end":{"line":525,"col":20}},"generated_from_span":null},"ty":{"Deduplicated":1079}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":525,"col":4},"end":{"line":525,"col":36}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":525,"col":23},"end":{"line":525,"col":35}},"generated_from_span":null},"id":3953,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":67}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":525,"col":4},"end":{"line":525,"col":36}},"generated_from_span":null},"id":3954,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":218,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":37}},{"Ident":["ONE",0]}],"span":{"data":{"file_id":2,"beg":{"line":526,"col":4},"end":{"line":526,"col":34}},"generated_from_span":null},"source_text":"const ONE: Self = Self::one();","attr_info":{"attributes":[],"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":1079}},"src":{"TraitImpl":{"impl_ref":{"id":37,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":24,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Const":1},"reuses_default":true}},"is_global_initializer":34,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":526,"col":4},"end":{"line":526,"col":34}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":0,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":526,"col":15},"end":{"line":526,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":1079}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":526,"col":4},"end":{"line":526,"col":34}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":526,"col":22},"end":{"line":526,"col":33}},"generated_from_span":null},"id":3955,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":68}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":526,"col":4},"end":{"line":526,"col":34}},"generated_from_span":null},"id":3956,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":219,"item_meta":{"name":[{"Ident":["rand_core",0]},{"Ident":["RngCore",0]},{"Ident":["next_u32",0]}],"span":{"data":{"file_id":22,"beg":{"line":148,"col":4},"end":{"line":148,"col":34}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Return the next random `u32`."},{"DocComment":""},{"DocComment":" RNGs must implement at least one method from this trait directly. In"},{"DocComment":" the case this method is not implemented directly, it can be implemented"},{"DocComment":" using `self.next_u64() as u32` or via [`impls::next_u32_via_fill`]."}],"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"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":27,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8451}],"output":{"Deduplicated":1834}},"src":{"TraitDecl":{"trait_ref":{"id":27,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":220,"item_meta":{"name":[{"Ident":["rand_core",0]},{"Ident":["RngCore",0]},{"Ident":["next_u64",0]}],"span":{"data":{"file_id":22,"beg":{"line":155,"col":4},"end":{"line":155,"col":34}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Return the next random `u64`."},{"DocComment":""},{"DocComment":" RNGs must implement at least one method from this trait directly. In"},{"DocComment":" the case this method is not implemented directly, it can be implemented"},{"DocComment":" via [`impls::next_u64_via_u32`] or via [`impls::next_u64_via_fill`]."}],"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"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":27,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8451}],"output":{"Deduplicated":1072}},"src":{"TraitDecl":{"trait_ref":{"id":27,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":1},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":221,"item_meta":{"name":[{"Ident":["rand_core",0]},{"Ident":["RngCore",0]},{"Ident":["fill_bytes",0]}],"span":{"data":{"file_id":22,"beg":{"line":171,"col":4},"end":{"line":171,"col":46}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Fill `dest` with random data."},{"DocComment":""},{"DocComment":" RNGs must implement at least one method from this trait directly. In"},{"DocComment":" the case this method is not implemented directly, it can be implemented"},{"DocComment":" via [`impls::fill_bytes_via_next`] or"},{"DocComment":" via [`RngCore::try_fill_bytes`]; if this generator can"},{"DocComment":" fail the implementation must choose how best to handle errors here"},{"DocComment":" (e.g. panic with a descriptive message or log a warning and retry a few"},{"DocComment":" times)."},{"DocComment":""},{"DocComment":" This method should guarantee that `dest` is entirely filled"},{"DocComment":" with new data, and may panic if this is impossible"},{"DocComment":" (e.g. reading past the end of a file that is being used as the"},{"DocComment":" source of randomness)."}],"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":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":27,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8451},{"HashConsedValue":[8457,{"Ref":[{"Var":{"Free":1}},{"Deduplicated":2162},"Mut"]}]}],"output":{"Deduplicated":1108}},"src":{"TraitDecl":{"trait_ref":{"id":27,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":2},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":222,"item_meta":{"name":[{"Ident":["rand_core",0]},{"Ident":["RngCore",0]},{"Ident":["try_fill_bytes",0]}],"span":{"data":{"file_id":22,"beg":{"line":184,"col":4},"end":{"line":184,"col":71}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Fill `dest` entirely with random data."},{"DocComment":""},{"DocComment":" This is the only method which allows an RNG to report errors while"},{"DocComment":" generating random data thus making this the primary method implemented"},{"DocComment":" by external (true) RNGs (e.g. `OsRng`) which can fail. It may be used"},{"DocComment":" directly to generate keys and to seed (infallible) PRNGs."},{"DocComment":""},{"DocComment":" Other than error handling, this method is identical to [`RngCore::fill_bytes`];"},{"DocComment":" thus this may be implemented using `Ok(self.fill_bytes(dest))` or"},{"DocComment":" `fill_bytes` may be implemented with"},{"DocComment":" `self.try_fill_bytes(dest).unwrap()` or more specific error handling."}],"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":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":27,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8451},{"Deduplicated":8457}],"output":{"HashConsedValue":[4813,{"Adt":{"id":{"Adt":10},"generics":{"regions":[],"types":[{"Deduplicated":1108},{"HashConsedValue":[4812,{"Adt":{"id":{"Adt":52},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}}]}],"const_generics":[],"trait_refs":[]}}}]}},"src":{"TraitDecl":{"trait_ref":{"id":27,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":3},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":223,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Ident":["AsRef",0]},{"Ident":["as_ref",0]}],"span":{"data":{"file_id":9,"beg":{"line":222,"col":4},"end":{"line":222,"col":27}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Converts this type into a shared reference of the (usually inferred) input type."}],"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":"T"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"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":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8333}],"output":{"Deduplicated":8455}},"src":{"TraitDecl":{"trait_ref":{"id":28,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":224,"item_meta":{"name":[{"Ident":["subtle",0]},{"Impl":{"Trait":55}},{"Ident":["not",0]}],"span":{"data":{"file_id":10,"beg":{"line":207,"col":4},"end":{"line":207,"col":26}},"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":1250}],"output":{"Deduplicated":1250}},"src":{"TraitImpl":{"impl_ref":{"id":55,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":52,"generics":{"regions":[],"types":[{"Deduplicated":1250},{"Deduplicated":1250}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":225,"item_meta":{"name":[{"Ident":["subtle",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[{"index":0,"name":"T"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":4814},"kind":"InherentImplBlock"}}},{"Ident":["new",0]}],"span":{"data":{"file_id":10,"beg":{"line":678,"col":4},"end":{"line":678,"col":56}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" This method is used to construct a new `CtOption<T>` and takes"},{"DocComment":" a value of type `T`, and a `Choice` that determines whether"},{"DocComment":" the optional value should be `Some` or not. If `is_some` is"},{"DocComment":" false, the value will still be stored but its value is never"},{"DocComment":" exposed."}],"inline":"Hint","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":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8294},{"Deduplicated":1250}],"output":{"Deduplicated":8390}},"src":"TopLevel","is_global_initializer":null,"body":"Opaque"},{"def_id":226,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[{"index":0,"name":"T"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":5107},"kind":"InherentImplBlock"}}},{"Ident":["len",0]}],"span":{"data":{"file_id":62,"beg":{"line":116,"col":4},"end":{"line":116,"col":36}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Returns the number of elements in the slice."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let a = [1, 2, 3];"},{"DocComment":" assert_eq!(a.len(), 3);"},{"DocComment":" ```"}],"inline":"Hint","rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"slice_len_fn"},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[{"index":0,"name":"T"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"HashConsedValue":[8353,{"Ref":[{"Var":{"Free":0}},{"HashConsedValue":[8341,{"Slice":{"Deduplicated":8294}}]},"Shared"]}]}],"output":{"Deduplicated":1073}},"src":"TopLevel","is_global_initializer":null,"body":"Opaque"},{"def_id":227,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":46}},{"Ident":["default",0]}],"span":{"data":{"file_id":23,"beg":{"line":504,"col":12},"end":{"line":504,"col":35}},"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":"T"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":23,"beg":{"line":503,"col":45},"end":{"line":503,"col":52}},"generated_from_span":null},"origin":"WhereClauseOnImpl","trait_":{"regions":[],"skip_binder":{"id":23,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[],"output":{"HashConsedValue":[8339,{"Array":[{"Deduplicated":8294},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","32"]}}},"ty":{"Deduplicated":1073}}]}]}},"src":{"TraitImpl":{"impl_ref":{"id":46,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8340,{"kind":{"Clause":{"Free":0}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":23,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}]}]}},"trait_ref":{"id":23,"generics":{"regions":[],"types":[{"Deduplicated":8339}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":228,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["default",0]},{"Impl":{"Trait":47}},{"Ident":["default",0]}],"span":{"data":{"file_id":20,"beg":{"line":157,"col":12},"end":{"line":157,"col":30}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":"Returns the default value of `0`"}],"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":[],"output":{"Deduplicated":1894}},"src":{"TraitImpl":{"impl_ref":{"id":47,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":23,"generics":{"regions":[],"types":[{"Deduplicated":1894}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":229,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":48}},{"Ident":["as_ref",0]}],"span":{"data":{"file_id":23,"beg":{"line":208,"col":4},"end":{"line":208,"col":28}},"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":"T"}],"const_generics":[{"index":0,"name":"N","ty":{"Deduplicated":1073}}],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"HashConsedValue":[8458,{"Ref":[{"Var":{"Free":0}},{"HashConsedValue":[8334,{"Array":[{"Deduplicated":8294},{"kind":{"Var":{"Free":0}},"ty":{"Deduplicated":1073}}]}]},"Shared"]}]}],"output":{"Deduplicated":8353}},"src":{"TraitImpl":{"impl_ref":{"id":48,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[{"kind":{"Var":{"Free":0}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}},"trait_ref":{"id":28,"generics":{"regions":[],"types":[{"Deduplicated":8334},{"Deduplicated":8341}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":230,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Ident":["AsMut",0]},{"Ident":["as_mut",0]}],"span":{"data":{"file_id":9,"beg":{"line":374,"col":4},"end":{"line":374,"col":35}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Converts this type into a mutable reference of the (usually inferred) input type."}],"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":"T"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":30,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8451}],"output":{"HashConsedValue":[8459,{"Ref":[{"Var":{"Free":0}},{"Deduplicated":8295},"Mut"]}]}},"src":{"TraitDecl":{"trait_ref":{"id":30,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":231,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":49}},{"Ident":["as_mut",0]}],"span":{"data":{"file_id":23,"beg":{"line":217,"col":4},"end":{"line":217,"col":36}},"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":"T"}],"const_generics":[{"index":0,"name":"N","ty":{"Deduplicated":1073}}],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"HashConsedValue":[8460,{"Ref":[{"Var":{"Free":0}},{"Deduplicated":8334},"Mut"]}]}],"output":{"HashConsedValue":[8461,{"Ref":[{"Var":{"Free":0}},{"Deduplicated":8341},"Mut"]}]}},"src":{"TraitImpl":{"impl_ref":{"id":49,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[{"kind":{"Var":{"Free":0}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}},"trait_ref":{"id":30,"generics":{"regions":[],"types":[{"Deduplicated":8334},{"Deduplicated":8341}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":232,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":58}},{"Ident":["index",0]}],"span":{"data":{"file_id":23,"beg":{"line":390,"col":4},"end":{"line":390,"col":46}},"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":"T"},{"index":1,"name":"I"},{"index":2,"name":"Clause0_Output"}],"const_generics":[{"index":0,"name":"N","ty":{"Deduplicated":1073}}],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":23,"beg":{"line":385,"col":9},"end":{"line":385,"col":25}},"generated_from_span":null},"origin":"WhereClauseOnImpl","trait_":{"regions":[],"skip_binder":{"id":45,"generics":{"regions":[],"types":[{"Deduplicated":8341},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8458},{"Deduplicated":8295}],"output":{"HashConsedValue":[8462,{"Ref":[{"Var":{"Free":0}},{"Deduplicated":8348},"Shared"]}]}},"src":{"TraitImpl":{"impl_ref":{"id":58,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[{"kind":{"Var":{"Free":0}},"ty":{"Deduplicated":1073}}],"trait_refs":[{"HashConsedValue":[8349,{"kind":{"Clause":{"Free":0}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":45,"generics":{"regions":[],"types":[{"Deduplicated":8341},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}]}]}},"trait_ref":{"id":45,"generics":{"regions":[],"types":[{"Deduplicated":8334},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":233,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Impl":{"Trait":61}},{"Ident":["try_into",0]}],"span":{"data":{"file_id":9,"beg":{"line":818,"col":4},"end":{"line":818,"col":44}},"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":"T"},{"index":1,"name":"U"},{"index":2,"name":"Clause0_Error"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":9,"beg":{"line":813,"col":7},"end":{"line":813,"col":25}},"generated_from_span":null},"origin":"WhereClauseOnImpl","trait_":{"regions":[],"skip_binder":{"id":47,"generics":{"regions":[],"types":[{"Deduplicated":8295},{"Deduplicated":8294},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8294}],"output":{"HashConsedValue":[8431,{"Adt":{"id":{"Adt":10},"generics":{"regions":[],"types":[{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}]}},"src":{"TraitImpl":{"impl_ref":{"id":61,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8352,{"kind":{"Clause":{"Free":0}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":47,"generics":{"regions":[],"types":[{"Deduplicated":8295},{"Deduplicated":8294},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}]}]}},"trait_ref":{"id":54,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":234,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["result",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[{"index":0,"name":"T"},{"index":1,"name":"E"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":5457},"kind":"InherentImplBlock"}}},{"Ident":["unwrap",0]}],"span":{"data":{"file_id":26,"beg":{"line":1227,"col":4},"end":{"line":1229,"col":22}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Returns the contained [`Ok`] value, consuming the `self` value."},{"DocComment":""},{"DocComment":" Because this function may panic, its use is generally discouraged."},{"DocComment":" Panics are meant for unrecoverable errors, and"},{"DocComment":" [may abort the entire program][panic-abort]."},{"DocComment":""},{"DocComment":" Instead, prefer to use [the `?` (try) operator][try-operator], or pattern matching"},{"DocComment":" to handle the [`Err`] case explicitly, or call [`unwrap_or`],"},{"DocComment":" [`unwrap_or_else`], or [`unwrap_or_default`]."},{"DocComment":""},{"DocComment":" [panic-abort]: https://doc.rust-lang.org/book/ch09-01-unrecoverable-errors-with-panic.html"},{"DocComment":" [try-operator]: https://doc.rust-lang.org/book/ch09-02-recoverable-errors-with-result.html#a-shortcut-for-propagating-errors-the--operator"},{"DocComment":" [`unwrap_or`]: Result::unwrap_or"},{"DocComment":" [`unwrap_or_else`]: Result::unwrap_or_else"},{"DocComment":" [`unwrap_or_default`]: Result::unwrap_or_default"},{"DocComment":""},{"DocComment":" # Panics"},{"DocComment":""},{"DocComment":" Panics if the value is an [`Err`], with a panic message provided by the"},{"DocComment":" [`Err`]'s value."},{"DocComment":""},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" Basic usage:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let x: Result<u32, &str> = Ok(2);"},{"DocComment":" assert_eq!(x.unwrap(), 2);"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" ```should_panic"},{"DocComment":" let x: Result<u32, &str> = Err(\"emergency failure\");"},{"DocComment":" x.unwrap(); // panics with `emergency failure`"},{"DocComment":" ```"}],"inline":"Always","rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"T"},{"index":1,"name":"E"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":26,"beg":{"line":1229,"col":11},"end":{"line":1229,"col":21}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":6,"generics":{"regions":[],"types":[{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"HashConsedValue":[8463,{"Adt":{"id":{"Adt":10},"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}]}],"output":{"Deduplicated":8294}},"src":"TopLevel","is_global_initializer":null,"body":"Opaque"},{"def_id":235,"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":1072},"kind":"InherentImplBlock"}}},{"Ident":["from_le_bytes",0]}],"span":{"data":{"file_id":60,"beg":{"line":4083,"col":8},"end":{"line":4083,"col":74}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Creates a native endian integer value from its representation"},{"DocComment":" as a byte array in little endian."},{"DocComment":""},{"DocComment":""},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":"let value = u64::from_le_bytes([0x56, 0x34, 0x12, 0x90, 0x78, 0x56, 0x34, 0x12]);"},{"DocComment":"assert_eq!(value, 0x1234567890123456);"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" When starting from a slice rather than an array, fallible conversion APIs can be used:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":"fn read_le_u64(input: &mut &[u8]) -> u64 {"},{"DocComment":" let (int_bytes, rest) = input.split_at(size_of::<u64>());"},{"DocComment":" *input = rest;"},{"DocComment":" u64::from_le_bytes(int_bytes.try_into().unwrap())"},{"DocComment":" }"},{"DocComment":" ```"}],"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":5165}],"output":{"Deduplicated":1072}},"src":"TopLevel","is_global_initializer":null,"body":"Opaque"},{"def_id":236,"item_meta":{"name":[{"Ident":["subtle",0]},{"Impl":{"Trait":64}},{"Ident":["from",0]}],"span":{"data":{"file_id":10,"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":1894}],"output":{"Deduplicated":1250}},"src":{"TraitImpl":{"impl_ref":{"id":64,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":7,"generics":{"regions":[],"types":[{"Deduplicated":1250},{"Deduplicated":1894}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":237,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":65}},{"Ident":["index_mut",0]}],"span":{"data":{"file_id":23,"beg":{"line":402,"col":4},"end":{"line":402,"col":58}},"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":"T"},{"index":1,"name":"I"},{"index":2,"name":"Clause0_Clause0_Output"}],"const_generics":[{"index":0,"name":"N","ty":{"Deduplicated":1073}}],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":23,"beg":{"line":399,"col":9},"end":{"line":399,"col":28}},"generated_from_span":null},"origin":"WhereClauseOnImpl","trait_":{"regions":[],"skip_binder":{"id":48,"generics":{"regions":[],"types":[{"Deduplicated":8341},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8460},{"Deduplicated":8295}],"output":{"HashConsedValue":[8464,{"Ref":[{"Var":{"Free":0}},{"Deduplicated":8348},"Mut"]}]}},"src":{"TraitImpl":{"impl_ref":{"id":65,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[{"kind":{"Var":{"Free":0}},"ty":{"Deduplicated":1073}}],"trait_refs":[{"HashConsedValue":[8354,{"kind":{"Clause":{"Free":0}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":48,"generics":{"regions":[],"types":[{"Deduplicated":8341},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}]}]}},"trait_ref":{"id":48,"generics":{"regions":[],"types":[{"Deduplicated":8334},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":238,"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":1072},"kind":"InherentImplBlock"}}},{"Ident":["to_le_bytes",0]}],"span":{"data":{"file_id":60,"beg":{"line":3986,"col":8},"end":{"line":3986,"col":65}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Returns the memory representation of this integer as a byte array in"},{"DocComment":" little-endian byte order."},{"DocComment":""},{"DocComment":""},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":"let bytes = 0x1234567890123456u64.to_le_bytes();"},{"DocComment":"assert_eq!(bytes, [0x56, 0x34, 0x12, 0x90, 0x78, 0x56, 0x34, 0x12]);"},{"DocComment":" ```"}],"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":1072}],"output":{"Deduplicated":5165}},"src":"TopLevel","is_global_initializer":null,"body":"Opaque"},{"def_id":239,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[{"index":0,"name":"T"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":5107},"kind":"InherentImplBlock"}}},{"Ident":["copy_from_slice",0]}],"span":{"data":{"file_id":62,"beg":{"line":4321,"col":4},"end":{"line":4323,"col":16}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Copies all elements from `src` into `self`, using a memcpy."},{"DocComment":""},{"DocComment":" The length of `src` must be the same as `self`."},{"DocComment":""},{"DocComment":" If `T` does not implement `Copy`, use [`clone_from_slice`]."},{"DocComment":""},{"DocComment":" # Panics"},{"DocComment":""},{"DocComment":" This function will panic if the two slices have different lengths."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" Copying two elements from a slice into another:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let src = [1, 2, 3, 4];"},{"DocComment":" let mut dst = [0, 0];"},{"DocComment":""},{"DocComment":" // Because the slices have to be the same length,"},{"DocComment":" // we slice the source slice from four elements"},{"DocComment":" // to two. It will panic if we don't do this."},{"DocComment":" dst.copy_from_slice(&src[2..]);"},{"DocComment":""},{"DocComment":" assert_eq!(src, [1, 2, 3, 4]);"},{"DocComment":" assert_eq!(dst, [3, 4]);"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" Rust enforces that there can only be one mutable reference with no"},{"DocComment":" immutable references to a particular piece of data in a particular"},{"DocComment":" scope. Because of this, attempting to use `copy_from_slice` on a"},{"DocComment":" single slice will result in a compile failure:"},{"DocComment":""},{"DocComment":" ```compile_fail"},{"DocComment":" let mut slice = [1, 2, 3, 4, 5];"},{"DocComment":""},{"DocComment":" slice[..2].copy_from_slice(&slice[3..]); // compile fail!"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" To work around this, we can use [`split_at_mut`] to create two distinct"},{"DocComment":" sub-slices from a slice:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let mut slice = [1, 2, 3, 4, 5];"},{"DocComment":""},{"DocComment":" {"},{"DocComment":" let (left, right) = slice.split_at_mut(2);"},{"DocComment":" left.copy_from_slice(&right[1..]);"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" assert_eq!(slice, [4, 5, 3, 4, 5]);"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" [`clone_from_slice`]: slice::clone_from_slice"},{"DocComment":" [`split_at_mut`]: slice::split_at_mut"}],"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":"T"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":62,"beg":{"line":4323,"col":11},"end":{"line":4323,"col":15}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":3,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8461},{"HashConsedValue":[8465,{"Ref":[{"Var":{"Free":1}},{"Deduplicated":8341},"Shared"]}]}],"output":{"Deduplicated":1108}},"src":"TopLevel","is_global_initializer":null,"body":"Opaque"},{"def_id":240,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["MODULUS",0]}],"span":{"data":{"file_id":2,"beg":{"line":623,"col":4},"end":{"line":624,"col":77}},"generated_from_span":null},"source_text":"const MODULUS: &'static str =\n \"0x40000000000000000000000000000000224698fc094cf91b992d30ed00000001\";","attr_info":{"attributes":[],"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":{"HashConsedValue":[2250,{"Ref":["Static",{"HashConsedValue":[2219,{"Adt":{"id":{"Builtin":"Str"},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}}]},"Shared"]}]}},"src":{"TraitImpl":{"impl_ref":{"id":38,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1895}],"const_generics":[],"trait_refs":[]}},"item_id":{"Const":0},"reuses_default":true}},"is_global_initializer":35,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":623,"col":4},"end":{"line":624,"col":77}},"generated_from_span":null},"bound_body_regions":3,"locals":{"arg_count":0,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":623,"col":19},"end":{"line":623,"col":31}},"generated_from_span":null},"ty":{"HashConsedValue":[6397,{"Ref":[{"Body":1},{"Deduplicated":2219},"Shared"]}]}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":623,"col":4},"end":{"line":624,"col":77}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":624,"col":8},"end":{"line":624,"col":76}},"generated_from_span":null},"id":3957,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":6397}},{"Use":[{"Const":{"kind":{"Literal":{"Str":"0x40000000000000000000000000000000224698fc094cf91b992d30ed00000001"}},"ty":{"HashConsedValue":[8466,{"Ref":[{"Body":2},{"Deduplicated":2219},"Shared"]}]}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":623,"col":4},"end":{"line":624,"col":77}},"generated_from_span":null},"id":3958,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":241,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["NUM_BITS",0]}],"span":{"data":{"file_id":2,"beg":{"line":631,"col":4},"end":{"line":631,"col":30}},"generated_from_span":null},"source_text":"const NUM_BITS: u32 = 255;","attr_info":{"attributes":[],"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":1834}},"src":{"TraitImpl":{"impl_ref":{"id":38,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1895}],"const_generics":[],"trait_refs":[]}},"item_id":{"Const":1},"reuses_default":true}},"is_global_initializer":36,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":631,"col":4},"end":{"line":631,"col":30}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":0,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":631,"col":20},"end":{"line":631,"col":23}},"generated_from_span":null},"ty":{"Deduplicated":1834}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":631,"col":4},"end":{"line":631,"col":30}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":631,"col":26},"end":{"line":631,"col":29}},"generated_from_span":null},"id":3959,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1834}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U32","255"]}}},"ty":{"Deduplicated":1834}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":631,"col":4},"end":{"line":631,"col":30}},"generated_from_span":null},"id":3960,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":242,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["CAPACITY",0]}],"span":{"data":{"file_id":2,"beg":{"line":632,"col":4},"end":{"line":632,"col":30}},"generated_from_span":null},"source_text":"const CAPACITY: u32 = 254;","attr_info":{"attributes":[],"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":1834}},"src":{"TraitImpl":{"impl_ref":{"id":38,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1895}],"const_generics":[],"trait_refs":[]}},"item_id":{"Const":2},"reuses_default":true}},"is_global_initializer":37,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":632,"col":4},"end":{"line":632,"col":30}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":0,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":632,"col":20},"end":{"line":632,"col":23}},"generated_from_span":null},"ty":{"Deduplicated":1834}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":632,"col":4},"end":{"line":632,"col":30}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":632,"col":26},"end":{"line":632,"col":29}},"generated_from_span":null},"id":3961,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1834}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U32","254"]}}},"ty":{"Deduplicated":1834}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":632,"col":4},"end":{"line":632,"col":30}},"generated_from_span":null},"id":3962,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":243,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["TWO_INV",0]}],"span":{"data":{"file_id":2,"beg":{"line":625,"col":4},"end":{"line":630,"col":7}},"generated_from_span":null},"source_text":"const TWO_INV: Self = Fp::from_raw([\n 0xcc96987680000001,\n 0x11234c7e04a67c8d,\n 0x0000000000000000,\n 0x2000000000000000,\n ]);","attr_info":{"attributes":[],"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":1079}},"src":{"TraitImpl":{"impl_ref":{"id":38,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1895}],"const_generics":[],"trait_refs":[]}},"item_id":{"Const":3},"reuses_default":true}},"is_global_initializer":38,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":625,"col":4},"end":{"line":630,"col":7}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":0,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":625,"col":19},"end":{"line":625,"col":23}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":null,"span":{"data":{"file_id":2,"beg":{"line":625,"col":39},"end":{"line":630,"col":5}},"generated_from_span":null},"ty":{"Deduplicated":1074}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":625,"col":4},"end":{"line":630,"col":7}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":625,"col":39},"end":{"line":630,"col":5}},"generated_from_span":null},"id":3963,"kind":{"StorageLive":1},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":625,"col":39},"end":{"line":630,"col":5}},"generated_from_span":null},"id":3964,"kind":{"Assign":[{"kind":{"Local":1},"ty":{"Deduplicated":1074}},{"Aggregate":[{"Array":[{"Deduplicated":1072},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}]},[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","14742138064964943873"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","1234914826957257869"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","2305843009213693952"]}}},"ty":{"Deduplicated":1072}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":625,"col":26},"end":{"line":630,"col":6}},"generated_from_span":null},"id":3965,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":71}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":1},"ty":{"Deduplicated":1074}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":630,"col":5},"end":{"line":630,"col":6}},"generated_from_span":null},"id":3966,"kind":{"StorageDead":1},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":625,"col":4},"end":{"line":630,"col":7}},"generated_from_span":null},"id":3967,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":244,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["MULTIPLICATIVE_GENERATOR",0]}],"span":{"data":{"file_id":2,"beg":{"line":633,"col":4},"end":{"line":633,"col":53}},"generated_from_span":null},"source_text":"const MULTIPLICATIVE_GENERATOR: Self = GENERATOR;","attr_info":{"attributes":[],"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":1079}},"src":{"TraitImpl":{"impl_ref":{"id":38,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1895}],"const_generics":[],"trait_refs":[]}},"item_id":{"Const":4},"reuses_default":true}},"is_global_initializer":39,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":633,"col":4},"end":{"line":633,"col":53}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":0,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":633,"col":36},"end":{"line":633,"col":40}},"generated_from_span":null},"ty":{"Deduplicated":1079}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":633,"col":4},"end":{"line":633,"col":53}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":633,"col":43},"end":{"line":633,"col":52}},"generated_from_span":null},"id":3968,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":5,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":633,"col":4},"end":{"line":633,"col":53}},"generated_from_span":null},"id":3969,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":245,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["S",0]}],"span":{"data":{"file_id":2,"beg":{"line":634,"col":4},"end":{"line":634,"col":21}},"generated_from_span":null},"source_text":"const S: u32 = S;","attr_info":{"attributes":[],"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":1834}},"src":{"TraitImpl":{"impl_ref":{"id":38,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1895}],"const_generics":[],"trait_refs":[]}},"item_id":{"Const":5},"reuses_default":true}},"is_global_initializer":40,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":634,"col":4},"end":{"line":634,"col":21}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":0,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":634,"col":13},"end":{"line":634,"col":16}},"generated_from_span":null},"ty":{"Deduplicated":1834}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":634,"col":4},"end":{"line":634,"col":21}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":634,"col":19},"end":{"line":634,"col":20}},"generated_from_span":null},"id":3970,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1834}},{"Use":[{"Copy":{"kind":{"Global":{"id":6,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1834}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":634,"col":4},"end":{"line":634,"col":21}},"generated_from_span":null},"id":3971,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":246,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["ROOT_OF_UNITY",0]}],"span":{"data":{"file_id":2,"beg":{"line":635,"col":4},"end":{"line":635,"col":46}},"generated_from_span":null},"source_text":"const ROOT_OF_UNITY: Self = ROOT_OF_UNITY;","attr_info":{"attributes":[],"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":1079}},"src":{"TraitImpl":{"impl_ref":{"id":38,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1895}],"const_generics":[],"trait_refs":[]}},"item_id":{"Const":6},"reuses_default":true}},"is_global_initializer":41,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":635,"col":4},"end":{"line":635,"col":46}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":0,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":635,"col":25},"end":{"line":635,"col":29}},"generated_from_span":null},"ty":{"Deduplicated":1079}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":635,"col":4},"end":{"line":635,"col":46}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":635,"col":32},"end":{"line":635,"col":45}},"generated_from_span":null},"id":3972,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":7,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":635,"col":4},"end":{"line":635,"col":46}},"generated_from_span":null},"id":3973,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":247,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["ROOT_OF_UNITY_INV",0]}],"span":{"data":{"file_id":2,"beg":{"line":636,"col":4},"end":{"line":641,"col":7}},"generated_from_span":null},"source_text":"const ROOT_OF_UNITY_INV: Self = Fp::from_raw([\n 0xf0b87c7db2ce91f6,\n 0x84a0a1d8859f066f,\n 0xb4ed8e647196dad1,\n 0x2cd5282c53116b5c,\n ]);","attr_info":{"attributes":[],"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":1079}},"src":{"TraitImpl":{"impl_ref":{"id":38,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1895}],"const_generics":[],"trait_refs":[]}},"item_id":{"Const":7},"reuses_default":true}},"is_global_initializer":42,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":636,"col":4},"end":{"line":641,"col":7}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":0,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":636,"col":29},"end":{"line":636,"col":33}},"generated_from_span":null},"ty":{"Deduplicated":1079}},{"index":1,"name":null,"span":{"data":{"file_id":2,"beg":{"line":636,"col":49},"end":{"line":641,"col":5}},"generated_from_span":null},"ty":{"Deduplicated":1074}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":636,"col":4},"end":{"line":641,"col":7}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":636,"col":49},"end":{"line":641,"col":5}},"generated_from_span":null},"id":3974,"kind":{"StorageLive":1},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":636,"col":49},"end":{"line":641,"col":5}},"generated_from_span":null},"id":3975,"kind":{"Assign":[{"kind":{"Local":1},"ty":{"Deduplicated":1074}},{"Aggregate":[{"Array":[{"Deduplicated":1072},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":1073}}]},[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","17345750844130103798"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","9556816360606991983"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","13037233058361039569"]}}},"ty":{"Deduplicated":1072}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","3230532478545521500"]}}},"ty":{"Deduplicated":1072}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":636,"col":36},"end":{"line":641,"col":6}},"generated_from_span":null},"id":3976,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":71}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":1},"ty":{"Deduplicated":1074}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":1079}}}},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":641,"col":5},"end":{"line":641,"col":6}},"generated_from_span":null},"id":3977,"kind":{"StorageDead":1},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":636,"col":4},"end":{"line":641,"col":7}},"generated_from_span":null},"id":3978,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":248,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["DELTA",0]}],"span":{"data":{"file_id":2,"beg":{"line":642,"col":4},"end":{"line":642,"col":30}},"generated_from_span":null},"source_text":"const DELTA: Self = DELTA;","attr_info":{"attributes":[],"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":1079}},"src":{"TraitImpl":{"impl_ref":{"id":38,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1895}],"const_generics":[],"trait_refs":[]}},"item_id":{"Const":8},"reuses_default":true}},"is_global_initializer":43,"body":{"Structured":{"span":{"data":{"file_id":2,"beg":{"line":642,"col":4},"end":{"line":642,"col":30}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":0,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":2,"beg":{"line":642,"col":17},"end":{"line":642,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":1079}}]},"body":{"span":{"data":{"file_id":2,"beg":{"line":642,"col":4},"end":{"line":642,"col":30}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":2,"beg":{"line":642,"col":24},"end":{"line":642,"col":29}},"generated_from_span":null},"id":3979,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1079}},{"Use":[{"Copy":{"kind":{"Global":{"id":8,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":1079}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":2,"beg":{"line":642,"col":4},"end":{"line":642,"col":30}},"generated_from_span":null},"id":3980,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":249,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["arithmetic",0]},{"Ident":["fields",0]},{"Ident":["SqrtTableHelpers",0]},{"Ident":["pow_by_t_minus1_over2",0]}],"span":{"data":{"file_id":24,"beg":{"line":24,"col":4},"end":{"line":24,"col":44}},"generated_from_span":null},"source_text":"fn pow_by_t_minus1_over2(&self) -> Self;","attr_info":{"attributes":[{"DocComment":" Raise this field element to the power $(t-1)/2$."},{"DocComment":""},{"DocComment":" Field implementations may override this to use an efficient addition chain."}],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[{"index":0,"name":"Self"},{"index":1,"name":"Clause0_Clause0_Repr"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":31,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8333}],"output":{"Deduplicated":8294}},"src":{"TraitDecl":{"trait_ref":{"id":31,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"TraitMethodWithoutDefault"},{"def_id":250,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["arithmetic",0]},{"Ident":["fields",0]},{"Ident":["SqrtTableHelpers",0]},{"Ident":["get_lower_32",0]}],"span":{"data":{"file_id":24,"beg":{"line":28,"col":4},"end":{"line":28,"col":34}},"generated_from_span":null},"source_text":"fn get_lower_32(&self) -> u32;","attr_info":{"attributes":[{"DocComment":" Gets the lower 32 bits of this field element when expressed"},{"DocComment":" canonically."}],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[{"index":0,"name":"Self"},{"index":1,"name":"Clause0_Clause0_Repr"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":31,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8333}],"output":{"Deduplicated":1834}},"src":{"TraitDecl":{"trait_ref":{"id":31,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":1},"has_default":false}},"is_global_initializer":null,"body":"TraitMethodWithoutDefault"},{"def_id":251,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":40}},{"Ident":["ZETA",0]}],"span":{"data":{"file_id":2,"beg":{"line":789,"col":4},"end":{"line":794,"col":7}},"generated_from_span":null},"source_text":"const ZETA: Self = Fp::from_raw([\n 0x1dad5ebdfdfe4ab9,\n 0x1d1f8bd237ad3149,\n 0x2caad5dc57aab1b0,\n 0x12ccca834acdba71,\n ]);","attr_info":{"attributes":[],"inline":null,"rename":null,"public":true},"is_local":true,"opacity":"Opaque","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":1079}},"src":{"TraitImpl":{"impl_ref":{"id":40,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":32,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1895}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["U8","3"]}}},"ty":{"Deduplicated":1894}}],"trait_refs":[]}},"item_id":{"Const":0},"reuses_default":true}},"is_global_initializer":44,"body":"Opaque"},{"def_id":252,"item_meta":{"name":[{"Ident":["ff",0]},{"Ident":["FromUniformBytes",0]},{"Ident":["from_uniform_bytes",0]}],"span":{"data":{"file_id":21,"beg":{"line":447,"col":4},"end":{"line":447,"col":51}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Returns a field element that is congruent to the provided little endian unsigned"},{"DocComment":" byte representation of an integer."}],"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_Repr"}],"const_generics":[{"index":0,"name":"N","ty":{"Deduplicated":1073}}],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":33,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[{"kind":{"Var":{"Free":0}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"HashConsedValue":[8467,{"Ref":[{"Var":{"Free":0}},{"HashConsedValue":[8398,{"Array":[{"Deduplicated":1894},{"kind":{"Var":{"Free":0}},"ty":{"Deduplicated":1073}}]}]},"Shared"]}]}],"output":{"Deduplicated":8294}},"src":{"TraitDecl":{"trait_ref":{"id":33,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[{"kind":{"Var":{"Free":0}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},null,null,{"def_id":255,"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":32,"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":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":35,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8294}],"output":{"Deduplicated":8348}},"src":{"TraitDecl":{"trait_ref":{"id":35,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":256,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["function",0]},{"Ident":["FnMut",0]},{"Ident":["call_mut",0]}],"span":{"data":{"file_id":36,"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":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":36,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":{"Other":"rust-call"},"inputs":[{"Deduplicated":8451},{"Deduplicated":8295}],"output":{"Deduplicated":8348}},"src":{"TraitDecl":{"trait_ref":{"id":36,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":257,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["function",0]},{"Ident":["FnOnce",0]},{"Ident":["call_once",0]}],"span":{"data":{"file_id":36,"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":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":37,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":{"Other":"rust-call"},"inputs":[{"Deduplicated":8294},{"Deduplicated":8295}],"output":{"Deduplicated":8348}},"src":{"TraitDecl":{"trait_ref":{"id":37,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":258,"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":32,"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":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":38,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":1,"span":{"data":{"file_id":32,"beg":{"line":152,"col":20},"end":{"line":152,"col":42}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":35,"generics":{"regions":[],"types":[{"Deduplicated":8348},{"Deduplicated":8295},{"HashConsedValue":[8468,{"TypeVar":{"Free":3}}]}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8348}],"output":{"Deduplicated":8294}},"src":{"TraitDecl":{"trait_ref":{"id":38,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":259,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["try_trait",0]},{"Ident":["Try",0]},{"Ident":["from_output",0]}],"span":{"data":{"file_id":52,"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":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":39,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"HashConsedValue":[8470,{"TraitType":[{"HashConsedValue":[8469,{"kind":{"Clause":{"Free":0}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":39,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}]},0,{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}]}]}],"output":{"Deduplicated":8294}},"src":{"TraitDecl":{"trait_ref":{"id":39,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":260,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["try_trait",0]},{"Ident":["Try",0]},{"Ident":["branch",0]}],"span":{"data":{"file_id":52,"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":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":39,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8294}],"output":{"HashConsedValue":[8472,{"Adt":{"id":{"Adt":6},"generics":{"regions":[],"types":[{"HashConsedValue":[8471,{"TraitType":[{"Deduplicated":8469},1,{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}]}]},{"Deduplicated":8470}],"const_generics":[],"trait_refs":[]}}}]}},"src":{"TraitDecl":{"trait_ref":{"id":39,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":1},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":261,"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":32,"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":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":41,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":1,"span":{"data":{"file_id":32,"beg":{"line":416,"col":17},"end":{"line":416,"col":39}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":35,"generics":{"regions":[],"types":[{"Deduplicated":8348},{"Deduplicated":8295},{"Deduplicated":8468}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8451},{"Deduplicated":8348}],"output":{"Deduplicated":1108}},"src":{"TraitDecl":{"trait_ref":{"id":41,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},null,null,null,{"def_id":265,"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":53,"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":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":42,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8451}],"output":{"Deduplicated":8385}},"src":{"TraitDecl":{"trait_ref":{"id":42,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"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,{"def_id":276,"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":2226},"kind":"InherentImplBlock"}}},{"Ident":["wrapping_sub",0]}],"span":{"data":{"file_id":60,"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!(100u128.wrapping_sub(100), 0);"},{"DocComment":"assert_eq!(100u128.wrapping_sub(u128::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":2226},{"Deduplicated":2226}],"output":{"Deduplicated":2226}},"src":"TopLevel","is_global_initializer":null,"body":"Opaque"},null,null,{"def_id":279,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Impl":{"Trait":54}},{"Ident":["as_ref",0]}],"span":{"data":{"file_id":9,"beg":{"line":717,"col":4},"end":{"line":717,"col":26}},"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":[{"index":0,"name":"T"},{"index":1,"name":"U"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":9,"beg":{"line":714,"col":7},"end":{"line":714,"col":23}},"generated_from_span":null},"origin":"WhereClauseOnImpl","trait_":{"regions":[],"skip_binder":{"id":28,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8456}],"output":{"Deduplicated":8436}},"src":{"TraitImpl":{"impl_ref":{"id":54,"generics":{"regions":[{"Var":{"Free":0}}],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8346,{"kind":{"Clause":{"Free":0}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":28,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}]}]}},"trait_ref":{"id":28,"generics":{"regions":[],"types":[{"Deduplicated":8333},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":280,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":56}},{"Ident":["clone",0]}],"span":{"data":{"file_id":23,"beg":{"line":449,"col":4},"end":{"line":449,"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":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[{"index":0,"name":"T"}],"const_generics":[{"index":0,"name":"N","ty":{"Deduplicated":1073}}],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":23,"beg":{"line":447,"col":8},"end":{"line":447,"col":13}},"generated_from_span":null},"origin":"WhereClauseOnImpl","trait_":{"regions":[],"skip_binder":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8458}],"output":{"Deduplicated":8334}},"src":{"TraitImpl":{"impl_ref":{"id":56,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[{"kind":{"Var":{"Free":0}},"ty":{"Deduplicated":1073}}],"trait_refs":[{"HashConsedValue":[8347,{"kind":{"Clause":{"Free":0}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}]}]}},"trait_ref":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":8334}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},null,{"def_id":282,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["clone",0]},{"Ident":["impls",0]},{"Impl":{"Trait":57}},{"Ident":["clone",0]}],"span":{"data":{"file_id":4,"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":[{"HashConsedValue":[8473,{"Ref":[{"Var":{"Free":0}},{"Deduplicated":1894},"Shared"]}]}],"output":{"Deduplicated":1894}},"src":{"TraitImpl":{"impl_ref":{"id":57,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":1894}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":283,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["index",0]},{"Ident":["Index",0]},{"Ident":["index",0]}],"span":{"data":{"file_id":64,"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":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":45,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8333},{"Deduplicated":8295}],"output":{"Deduplicated":8462}},"src":{"TraitDecl":{"trait_ref":{"id":45,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":284,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Impl":{"Trait":59}},{"Ident":["index",0]}],"span":{"data":{"file_id":65,"beg":{"line":18,"col":4},"end":{"line":18,"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":[{"index":0,"name":"T"},{"index":1,"name":"I"},{"index":2,"name":"Clause0_Output"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":65,"beg":{"line":13,"col":7},"end":{"line":13,"col":30}},"generated_from_span":null},"origin":"WhereClauseOnImpl","trait_":{"regions":[],"skip_binder":{"id":46,"generics":{"regions":[],"types":[{"Deduplicated":8295},{"Deduplicated":8341},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8353},{"Deduplicated":8295}],"output":{"Deduplicated":8462}},"src":{"TraitImpl":{"impl_ref":{"id":59,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8350,{"kind":{"Clause":{"Free":0}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":46,"generics":{"regions":[],"types":[{"Deduplicated":8295},{"Deduplicated":8341},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}]}]}},"trait_ref":{"id":45,"generics":{"regions":[],"types":[{"Deduplicated":8341},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":285,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Ident":["SliceIndex",0]},{"Ident":["get",0]}],"span":{"data":{"file_id":65,"beg":{"line":171,"col":4},"end":{"line":171,"col":53}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Returns a shared reference to the output at this location, if in"},{"DocComment":" 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":"T"},{"index":2,"name":"Clause0_Output"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":46,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8294},{"Deduplicated":8455}],"output":{"HashConsedValue":[8474,{"Adt":{"id":{"Adt":5},"generics":{"regions":[],"types":[{"Deduplicated":8462}],"const_generics":[],"trait_refs":[]}}}]}},"src":{"TraitDecl":{"trait_ref":{"id":46,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":286,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Ident":["SliceIndex",0]},{"Ident":["get_mut",0]}],"span":{"data":{"file_id":65,"beg":{"line":176,"col":4},"end":{"line":176,"col":65}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Returns a mutable reference to the output at this location, if in"},{"DocComment":" 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":"T"},{"index":2,"name":"Clause0_Output"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":46,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8294},{"Deduplicated":8459}],"output":{"HashConsedValue":[8475,{"Adt":{"id":{"Adt":5},"generics":{"regions":[],"types":[{"Deduplicated":8464}],"const_generics":[],"trait_refs":[]}}}]}},"src":{"TraitDecl":{"trait_ref":{"id":46,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":1},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":287,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Ident":["SliceIndex",0]},{"Ident":["get_unchecked",0]}],"span":{"data":{"file_id":65,"beg":{"line":186,"col":4},"end":{"line":186,"col":74}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Returns a pointer to the output at this location, without"},{"DocComment":" performing any bounds checking."},{"DocComment":""},{"DocComment":" Calling this method with an out-of-bounds index or a dangling `slice` pointer"},{"DocComment":" is *[undefined behavior]* even if the resulting pointer is not used."},{"DocComment":""},{"DocComment":" [undefined behavior]: https://doc.rust-lang.org/reference/behavior-considered-undefined.html"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"T"},{"index":2,"name":"Clause0_Output"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":46,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":true,"abi":"Rust","inputs":[{"Deduplicated":8294},{"HashConsedValue":[8421,{"RawPtr":[{"Deduplicated":8295},"Shared"]}]}],"output":{"HashConsedValue":[8422,{"RawPtr":[{"Deduplicated":8348},"Shared"]}]}},"src":{"TraitDecl":{"trait_ref":{"id":46,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":2},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":288,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Ident":["SliceIndex",0]},{"Ident":["get_unchecked_mut",0]}],"span":{"data":{"file_id":65,"beg":{"line":196,"col":4},"end":{"line":196,"col":74}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Returns a mutable pointer to the output at this location, without"},{"DocComment":" performing any bounds checking."},{"DocComment":""},{"DocComment":" Calling this method with an out-of-bounds index or a dangling `slice` pointer"},{"DocComment":" is *[undefined behavior]* even if the resulting pointer is not used."},{"DocComment":""},{"DocComment":" [undefined behavior]: https://doc.rust-lang.org/reference/behavior-considered-undefined.html"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"T"},{"index":2,"name":"Clause0_Output"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":46,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":true,"abi":"Rust","inputs":[{"Deduplicated":8294},{"HashConsedValue":[8423,{"RawPtr":[{"Deduplicated":8295},"Mut"]}]}],"output":{"HashConsedValue":[8424,{"RawPtr":[{"Deduplicated":8348},"Mut"]}]}},"src":{"TraitDecl":{"trait_ref":{"id":46,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":3},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":289,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Ident":["SliceIndex",0]},{"Ident":["index",0]}],"span":{"data":{"file_id":65,"beg":{"line":202,"col":4},"end":{"line":202,"col":47}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Returns a shared reference to the output at this location, panicking"},{"DocComment":" if 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":"T"},{"index":2,"name":"Clause0_Output"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":46,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8294},{"Deduplicated":8455}],"output":{"Deduplicated":8462}},"src":{"TraitDecl":{"trait_ref":{"id":46,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":4},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":290,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Ident":["SliceIndex",0]},{"Ident":["index_mut",0]}],"span":{"data":{"file_id":65,"beg":{"line":208,"col":4},"end":{"line":208,"col":59}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Returns a mutable reference to the output at this location, panicking"},{"DocComment":" if 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":"T"},{"index":2,"name":"Clause0_Output"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":46,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8294},{"Deduplicated":8459}],"output":{"Deduplicated":8464}},"src":{"TraitDecl":{"trait_ref":{"id":46,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":5},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":291,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Impl":{"Trait":60}},{"Ident":["get",0]}],"span":{"data":{"file_id":65,"beg":{"line":366,"col":4},"end":{"line":366,"col":45}},"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":"T"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5197},{"Deduplicated":8353}],"output":{"HashConsedValue":[8476,{"Adt":{"id":{"Adt":5},"generics":{"regions":[],"types":[{"Deduplicated":8353}],"const_generics":[],"trait_refs":[]}}}]}},"src":{"TraitImpl":{"impl_ref":{"id":60,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":46,"generics":{"regions":[],"types":[{"Deduplicated":5197},{"Deduplicated":8341},{"Deduplicated":8341}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":292,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Impl":{"Trait":60}},{"Ident":["get_mut",0]}],"span":{"data":{"file_id":65,"beg":{"line":379,"col":4},"end":{"line":379,"col":57}},"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":"T"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5197},{"Deduplicated":8461}],"output":{"HashConsedValue":[8477,{"Adt":{"id":{"Adt":5},"generics":{"regions":[],"types":[{"Deduplicated":8461}],"const_generics":[],"trait_refs":[]}}}]}},"src":{"TraitImpl":{"impl_ref":{"id":60,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":46,"generics":{"regions":[],"types":[{"Deduplicated":5197},{"Deduplicated":8341},{"Deduplicated":8341}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":1},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":293,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Impl":{"Trait":60}},{"Ident":["get_unchecked",0]}],"span":{"data":{"file_id":65,"beg":{"line":392,"col":4},"end":{"line":392,"col":66}},"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":"T"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":true,"abi":"Rust","inputs":[{"Deduplicated":5197},{"HashConsedValue":[8478,{"RawPtr":[{"Deduplicated":8341},"Shared"]}]}],"output":{"Deduplicated":8478}},"src":{"TraitImpl":{"impl_ref":{"id":60,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":46,"generics":{"regions":[],"types":[{"Deduplicated":5197},{"Deduplicated":8341},{"Deduplicated":8341}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":2},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":294,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Impl":{"Trait":60}},{"Ident":["get_unchecked_mut",0]}],"span":{"data":{"file_id":65,"beg":{"line":417,"col":4},"end":{"line":417,"col":66}},"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":"T"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":true,"abi":"Rust","inputs":[{"Deduplicated":5197},{"HashConsedValue":[8479,{"RawPtr":[{"Deduplicated":8341},"Mut"]}]}],"output":{"Deduplicated":8479}},"src":{"TraitImpl":{"impl_ref":{"id":60,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":46,"generics":{"regions":[],"types":[{"Deduplicated":5197},{"Deduplicated":8341},{"Deduplicated":8341}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":3},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":295,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Impl":{"Trait":60}},{"Ident":["index",0]}],"span":{"data":{"file_id":65,"beg":{"line":435,"col":4},"end":{"line":435,"col":39}},"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":[{"index":0,"name":"T"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5197},{"Deduplicated":8353}],"output":{"Deduplicated":8353}},"src":{"TraitImpl":{"impl_ref":{"id":60,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":46,"generics":{"regions":[],"types":[{"Deduplicated":5197},{"Deduplicated":8341},{"Deduplicated":8341}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":4},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":296,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Impl":{"Trait":60}},{"Ident":["index_mut",0]}],"span":{"data":{"file_id":65,"beg":{"line":448,"col":4},"end":{"line":448,"col":51}},"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":"T"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5197},{"Deduplicated":8461}],"output":{"Deduplicated":8461}},"src":{"TraitImpl":{"impl_ref":{"id":60,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":46,"generics":{"regions":[],"types":[{"Deduplicated":5197},{"Deduplicated":8341},{"Deduplicated":8341}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":5},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":297,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Ident":["TryFrom",0]},{"Ident":["try_from",0]}],"span":{"data":{"file_id":9,"beg":{"line":702,"col":4},"end":{"line":702,"col":55}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Performs the conversion."}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"try_from_fn"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"T"},{"index":2,"name":"Clause0_Error"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":47,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8295}],"output":{"HashConsedValue":[8425,{"Adt":{"id":{"Adt":10},"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}]}},"src":{"TraitDecl":{"trait_ref":{"id":47,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":298,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":62}},{"Ident":["try_from",0]}],"span":{"data":{"file_id":23,"beg":{"line":259,"col":4},"end":{"line":259,"col":65}},"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":"T"}],"const_generics":[{"index":0,"name":"N","ty":{"Deduplicated":1073}}],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":23,"beg":{"line":254,"col":7},"end":{"line":254,"col":11}},"generated_from_span":null},"origin":"WhereClauseOnImpl","trait_":{"regions":[],"skip_binder":{"id":3,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8353}],"output":{"HashConsedValue":[8480,{"Adt":{"id":{"Adt":10},"generics":{"regions":[],"types":[{"Deduplicated":8334},{"Deduplicated":5172}],"const_generics":[],"trait_refs":[]}}}]}},"src":{"TraitImpl":{"impl_ref":{"id":62,"generics":{"regions":[{"Var":{"Free":0}}],"types":[{"Deduplicated":8294}],"const_generics":[{"kind":{"Var":{"Free":0}},"ty":{"Deduplicated":1073}}],"trait_refs":[{"HashConsedValue":[8335,{"kind":{"Clause":{"Free":0}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":3,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}]}]}},"trait_ref":{"id":47,"generics":{"regions":[],"types":[{"Deduplicated":8334},{"Deduplicated":8353},{"Deduplicated":5172}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":299,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":63}},{"Ident":["fmt",0]}],"span":{"data":{"file_id":23,"beg":{"line":182,"col":9},"end":{"line":182,"col":14}},"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"},{"index":2,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"HashConsedValue":[8481,{"Ref":[{"Var":{"Free":0}},{"Deduplicated":5172},"Shared"]}]},{"Deduplicated":8434}],"output":{"Deduplicated":2348}},"src":{"TraitImpl":{"impl_ref":{"id":63,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":6,"generics":{"regions":[],"types":[{"Deduplicated":5172}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},null,{"def_id":301,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["index",0]},{"Ident":["IndexMut",0]},{"Ident":["index_mut",0]}],"span":{"data":{"file_id":64,"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":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":48,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8451},{"Deduplicated":8295}],"output":{"Deduplicated":8464}},"src":{"TraitDecl":{"trait_ref":{"id":48,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":302,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Impl":{"Trait":66}},{"Ident":["index_mut",0]}],"span":{"data":{"file_id":65,"beg":{"line":30,"col":4},"end":{"line":30,"col":55}},"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":[{"index":0,"name":"T"},{"index":1,"name":"I"},{"index":2,"name":"Clause0_Output"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":65,"beg":{"line":27,"col":7},"end":{"line":27,"col":30}},"generated_from_span":null},"origin":"WhereClauseOnImpl","trait_":{"regions":[],"skip_binder":{"id":46,"generics":{"regions":[],"types":[{"Deduplicated":8295},{"Deduplicated":8341},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8461},{"Deduplicated":8295}],"output":{"Deduplicated":8464}},"src":{"TraitImpl":{"impl_ref":{"id":66,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[{"Deduplicated":8350}]}},"trait_ref":{"id":48,"generics":{"regions":[],"types":[{"Deduplicated":8341},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":303,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["bit",0]},{"Ident":["BitAnd",0]},{"Ident":["bitand",0]}],"span":{"data":{"file_id":66,"beg":{"line":167,"col":4},"end":{"line":167,"col":46}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Performs the `&` operation."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" assert_eq!(true & false, false);"},{"DocComment":" assert_eq!(true & true, true);"},{"DocComment":" assert_eq!(5u8 & 1u8, 1);"},{"DocComment":" assert_eq!(5u8 & 2u8, 0);"},{"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":"Rhs"},{"index":2,"name":"Clause0_Output"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":49,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8294},{"Deduplicated":8295}],"output":{"Deduplicated":8348}},"src":{"TraitDecl":{"trait_ref":{"id":49,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":304,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["try_trait",0]},{"Ident":["FromResidual",0]},{"Ident":["from_residual",0]}],"span":{"data":{"file_id":52,"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":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":51,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8295}],"output":{"Deduplicated":8294}},"src":{"TraitDecl":{"trait_ref":{"id":51,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":305,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["bit",0]},{"Ident":["Not",0]},{"Ident":["not",0]}],"span":{"data":{"file_id":66,"beg":{"line":52,"col":4},"end":{"line":52,"col":33}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Performs the unary `!` operation."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" assert_eq!(!true, false);"},{"DocComment":" assert_eq!(!false, true);"},{"DocComment":" assert_eq!(!1u8, 254);"},{"DocComment":" assert_eq!(!0u8, 255);"},{"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":"Clause0_Output"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":52,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8294}],"output":{"Deduplicated":8295}},"src":{"TraitDecl":{"trait_ref":{"id":52,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":306,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Ident":["TryInto",0]},{"Ident":["try_into",0]}],"span":{"data":{"file_id":9,"beg":{"line":622,"col":4},"end":{"line":622,"col":48}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Performs the conversion."}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"T"},{"index":2,"name":"Clause0_Error"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":1,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":54,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8294}],"output":{"Deduplicated":8431}},"src":{"TraitDecl":{"trait_ref":{"id":54,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":307,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["clone",0]},{"Ident":["impls",0]},{"Impl":{"Trait":72}},{"Ident":["clone",0]}],"span":{"data":{"file_id":4,"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":8452}],"output":{"Deduplicated":1072}},"src":{"TraitImpl":{"impl_ref":{"id":72,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":1072}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":308,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["clone",0]},{"Ident":["impls",0]},{"Impl":{"Trait":73}},{"Ident":["clone",0]}],"span":{"data":{"file_id":4,"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":[{"HashConsedValue":[8482,{"Ref":[{"Var":{"Free":0}},{"Deduplicated":1073},"Shared"]}]}],"output":{"Deduplicated":1073}},"src":{"TraitImpl":{"impl_ref":{"id":73,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":1073}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":309,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["niche_types",0]},{"Impl":{"Trait":74}},{"Ident":["clone",0]}],"span":{"data":{"file_id":67,"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":[8483,{"Ref":[{"Var":{"Free":0}},{"HashConsedValue":[5731,{"Adt":{"id":{"Adt":57},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}}]},"Shared"]}]}],"output":{"Deduplicated":5731}},"src":{"TraitImpl":{"impl_ref":{"id":74,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":5731}],"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":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["MODULUS",0]}],"span":{"data":{"file_id":2,"beg":{"line":110,"col":0},"end":{"line":115,"col":3}},"generated_from_span":null},"source_text":"const MODULUS: Fp = Fp([\n 0x992d30ed00000001,\n 0x224698fc094cf91b,\n 0x0000000000000000,\n 0x4000000000000000,\n]);","attr_info":{"attributes":[{"DocComment":" Constant representing the modulus"},{"DocComment":" p = 0x40000000000000000000000000000000224698fc094cf91b992d30ed00000001"}],"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":1079},"src":"TopLevel","global_kind":"NamedConst","value":{"kind":{"Call":[{"kind":{"Fun":{"Regular":34}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},[]]},"ty":{"Deduplicated":1079}}},{"def_id":1,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["INV",0]}],"span":{"data":{"file_id":2,"beg":{"line":191,"col":0},"end":{"line":191,"col":36}},"generated_from_span":null},"source_text":"const INV: u64 = 0x992d30ecffffffff;","attr_info":{"attributes":[{"DocComment":" INV = -(p^{-1} mod 2^64) mod 2^64"}],"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":1072},"src":"TopLevel","global_kind":"NamedConst","value":{"kind":{"Call":[{"kind":{"Fun":{"Regular":57}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},[]]},"ty":{"Deduplicated":1072}}},{"def_id":2,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["R",0]}],"span":{"data":{"file_id":2,"beg":{"line":194,"col":0},"end":{"line":199,"col":3}},"generated_from_span":null},"source_text":"const R: Fp = Fp([\n 0x34786d38fffffffd,\n 0x992c350be41914ad,\n 0xffffffffffffffff,\n 0x3fffffffffffffff,\n]);","attr_info":{"attributes":[{"DocComment":" R = 2^256 mod p"}],"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":1079},"src":"TopLevel","global_kind":"NamedConst","value":{"kind":{"Call":[{"kind":{"Fun":{"Regular":58}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},[]]},"ty":{"Deduplicated":1079}}},{"def_id":3,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["R2",0]}],"span":{"data":{"file_id":2,"beg":{"line":202,"col":0},"end":{"line":207,"col":3}},"generated_from_span":null},"source_text":"const R2: Fp = Fp([\n 0x8c78ecb30000000f,\n 0xd7d30dbd8b0de0e7,\n 0x7797a99bc3c95d18,\n 0x096d41af7b9cb714,\n]);","attr_info":{"attributes":[{"DocComment":" R^2 = 2^512 mod p"}],"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":1079},"src":"TopLevel","global_kind":"NamedConst","value":{"kind":{"Call":[{"kind":{"Fun":{"Regular":59}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},[]]},"ty":{"Deduplicated":1079}}},{"def_id":4,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["R3",0]}],"span":{"data":{"file_id":2,"beg":{"line":210,"col":0},"end":{"line":215,"col":3}},"generated_from_span":null},"source_text":"const R3: Fp = Fp([\n 0xf185a5993a9e10f9,\n 0xf6a68f3b6ac5b1d1,\n 0xdf8d1014353fd42c,\n 0x2ae309222d2d9910,\n]);","attr_info":{"attributes":[{"DocComment":" R^3 = 2^768 mod p"}],"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":1079},"src":"TopLevel","global_kind":"NamedConst","value":{"kind":{"Call":[{"kind":{"Fun":{"Regular":60}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},[]]},"ty":{"Deduplicated":1079}}},{"def_id":5,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["GENERATOR",0]}],"span":{"data":{"file_id":2,"beg":{"line":219,"col":0},"end":{"line":224,"col":3}},"generated_from_span":null},"source_text":"const GENERATOR: Fp = Fp::from_raw([\n 0x0000_0000_0000_0005,\n 0x0000_0000_0000_0000,\n 0x0000_0000_0000_0000,\n 0x0000_0000_0000_0000,\n]);","attr_info":{"attributes":[{"DocComment":" `GENERATOR = 5 mod p` is a generator of the `p - 1` order multiplicative"},{"DocComment":" subgroup, or in other words a primitive root of the field."}],"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":1079},"src":"TopLevel","global_kind":"NamedConst","value":{"kind":{"Call":[{"kind":{"Fun":{"Regular":61}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},[]]},"ty":{"Deduplicated":1079}}},{"def_id":6,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["S",0]}],"span":{"data":{"file_id":2,"beg":{"line":226,"col":0},"end":{"line":226,"col":18}},"generated_from_span":null},"source_text":"const S: u32 = 32;","attr_info":{"attributes":[],"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":1834},"src":"TopLevel","global_kind":"NamedConst","value":{"kind":{"Call":[{"kind":{"Fun":{"Regular":62}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},[]]},"ty":{"Deduplicated":1834}}},{"def_id":7,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["ROOT_OF_UNITY",0]}],"span":{"data":{"file_id":2,"beg":{"line":231,"col":0},"end":{"line":236,"col":3}},"generated_from_span":null},"source_text":"const ROOT_OF_UNITY: Fp = Fp::from_raw([\n 0xbdad6fabd87ea32f,\n 0xea322bf2b7bb7584,\n 0x362120830561f81a,\n 0x2bce74deac30ebda,\n]);","attr_info":{"attributes":[{"DocComment":" GENERATOR^t where t * 2^s + 1 = p"},{"DocComment":" with t odd. In other words, this"},{"DocComment":" is a 2^s root of unity."}],"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":1079},"src":"TopLevel","global_kind":"NamedConst","value":{"kind":{"Call":[{"kind":{"Fun":{"Regular":63}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},[]]},"ty":{"Deduplicated":1079}}},{"def_id":8,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["DELTA",0]}],"span":{"data":{"file_id":2,"beg":{"line":241,"col":0},"end":{"line":246,"col":3}},"generated_from_span":null},"source_text":"const DELTA: Fp = Fp::from_raw([\n 0x6a6ccd20dd7b9ba2,\n 0xf5e4f3f13eee5636,\n 0xbd455b7112a5049d,\n 0x0a757d0f0006ab6c,\n]);","attr_info":{"attributes":[{"DocComment":" GENERATOR^{2^s} where t * 2^s + 1 = p"},{"DocComment":" with t odd. In other words, this"},{"DocComment":" is a t root of unity."}],"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":1079},"src":"TopLevel","global_kind":"NamedConst","value":{"kind":{"Call":[{"kind":{"Fun":{"Regular":64}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},[]]},"ty":{"Deduplicated":1079}}},{"def_id":9,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Ident":["T_MINUS1_OVER2",0]}],"span":{"data":{"file_id":2,"beg":{"line":250,"col":0},"end":{"line":255,"col":2}},"generated_from_span":null},"source_text":"const T_MINUS1_OVER2: [u64; 4] = [\n 0x04a6_7c8d_cc96_9876,\n 0x0000_0000_1123_4c7e,\n 0x0000_0000_0000_0000,\n 0x0000_0000_2000_0000,\n];","attr_info":{"attributes":[{"DocComment":" `(t - 1) // 2` where t * 2^s + 1 = p with t odd."}],"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":1074},"src":"TopLevel","global_kind":"NamedConst","value":{"kind":{"Call":[{"kind":{"Fun":{"Regular":65}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},[]]},"ty":{"Deduplicated":1074}}},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":33,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":37}},{"Ident":["ZERO",0]}],"span":{"data":{"file_id":2,"beg":{"line":525,"col":4},"end":{"line":525,"col":36}},"generated_from_span":null},"source_text":"const ZERO: Self = Self::zero();","attr_info":{"attributes":[],"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":1079},"src":{"TraitImpl":{"impl_ref":{"id":37,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":24,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Const":0},"reuses_default":true}},"global_kind":"NamedConst","value":{"kind":{"Call":[{"kind":{"Fun":{"Regular":217}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},[]]},"ty":{"Deduplicated":1079}}},{"def_id":34,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":37}},{"Ident":["ONE",0]}],"span":{"data":{"file_id":2,"beg":{"line":526,"col":4},"end":{"line":526,"col":34}},"generated_from_span":null},"source_text":"const ONE: Self = Self::one();","attr_info":{"attributes":[],"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":1079},"src":{"TraitImpl":{"impl_ref":{"id":37,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":24,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"item_id":{"Const":1},"reuses_default":true}},"global_kind":"NamedConst","value":{"kind":{"Call":[{"kind":{"Fun":{"Regular":218}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},[]]},"ty":{"Deduplicated":1079}}},{"def_id":35,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["MODULUS",0]}],"span":{"data":{"file_id":2,"beg":{"line":623,"col":4},"end":{"line":624,"col":77}},"generated_from_span":null},"source_text":"const MODULUS: &'static str =\n \"0x40000000000000000000000000000000224698fc094cf91b992d30ed00000001\";","attr_info":{"attributes":[],"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":2250},"src":{"TraitImpl":{"impl_ref":{"id":38,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1895}],"const_generics":[],"trait_refs":[]}},"item_id":{"Const":0},"reuses_default":true}},"global_kind":"NamedConst","value":{"kind":{"Call":[{"kind":{"Fun":{"Regular":240}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},[]]},"ty":{"Deduplicated":2250}}},{"def_id":36,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["NUM_BITS",0]}],"span":{"data":{"file_id":2,"beg":{"line":631,"col":4},"end":{"line":631,"col":30}},"generated_from_span":null},"source_text":"const NUM_BITS: u32 = 255;","attr_info":{"attributes":[],"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":1834},"src":{"TraitImpl":{"impl_ref":{"id":38,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1895}],"const_generics":[],"trait_refs":[]}},"item_id":{"Const":1},"reuses_default":true}},"global_kind":"NamedConst","value":{"kind":{"Call":[{"kind":{"Fun":{"Regular":241}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},[]]},"ty":{"Deduplicated":1834}}},{"def_id":37,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["CAPACITY",0]}],"span":{"data":{"file_id":2,"beg":{"line":632,"col":4},"end":{"line":632,"col":30}},"generated_from_span":null},"source_text":"const CAPACITY: u32 = 254;","attr_info":{"attributes":[],"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":1834},"src":{"TraitImpl":{"impl_ref":{"id":38,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1895}],"const_generics":[],"trait_refs":[]}},"item_id":{"Const":2},"reuses_default":true}},"global_kind":"NamedConst","value":{"kind":{"Call":[{"kind":{"Fun":{"Regular":242}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},[]]},"ty":{"Deduplicated":1834}}},{"def_id":38,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["TWO_INV",0]}],"span":{"data":{"file_id":2,"beg":{"line":625,"col":4},"end":{"line":630,"col":7}},"generated_from_span":null},"source_text":"const TWO_INV: Self = Fp::from_raw([\n 0xcc96987680000001,\n 0x11234c7e04a67c8d,\n 0x0000000000000000,\n 0x2000000000000000,\n ]);","attr_info":{"attributes":[],"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":1079},"src":{"TraitImpl":{"impl_ref":{"id":38,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1895}],"const_generics":[],"trait_refs":[]}},"item_id":{"Const":3},"reuses_default":true}},"global_kind":"NamedConst","value":{"kind":{"Call":[{"kind":{"Fun":{"Regular":243}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},[]]},"ty":{"Deduplicated":1079}}},{"def_id":39,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["MULTIPLICATIVE_GENERATOR",0]}],"span":{"data":{"file_id":2,"beg":{"line":633,"col":4},"end":{"line":633,"col":53}},"generated_from_span":null},"source_text":"const MULTIPLICATIVE_GENERATOR: Self = GENERATOR;","attr_info":{"attributes":[],"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":1079},"src":{"TraitImpl":{"impl_ref":{"id":38,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1895}],"const_generics":[],"trait_refs":[]}},"item_id":{"Const":4},"reuses_default":true}},"global_kind":"NamedConst","value":{"kind":{"Call":[{"kind":{"Fun":{"Regular":244}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},[]]},"ty":{"Deduplicated":1079}}},{"def_id":40,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["S",0]}],"span":{"data":{"file_id":2,"beg":{"line":634,"col":4},"end":{"line":634,"col":21}},"generated_from_span":null},"source_text":"const S: u32 = S;","attr_info":{"attributes":[],"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":1834},"src":{"TraitImpl":{"impl_ref":{"id":38,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1895}],"const_generics":[],"trait_refs":[]}},"item_id":{"Const":5},"reuses_default":true}},"global_kind":"NamedConst","value":{"kind":{"Call":[{"kind":{"Fun":{"Regular":245}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},[]]},"ty":{"Deduplicated":1834}}},{"def_id":41,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["ROOT_OF_UNITY",0]}],"span":{"data":{"file_id":2,"beg":{"line":635,"col":4},"end":{"line":635,"col":46}},"generated_from_span":null},"source_text":"const ROOT_OF_UNITY: Self = ROOT_OF_UNITY;","attr_info":{"attributes":[],"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":1079},"src":{"TraitImpl":{"impl_ref":{"id":38,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1895}],"const_generics":[],"trait_refs":[]}},"item_id":{"Const":6},"reuses_default":true}},"global_kind":"NamedConst","value":{"kind":{"Call":[{"kind":{"Fun":{"Regular":246}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},[]]},"ty":{"Deduplicated":1079}}},{"def_id":42,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["ROOT_OF_UNITY_INV",0]}],"span":{"data":{"file_id":2,"beg":{"line":636,"col":4},"end":{"line":641,"col":7}},"generated_from_span":null},"source_text":"const ROOT_OF_UNITY_INV: Self = Fp::from_raw([\n 0xf0b87c7db2ce91f6,\n 0x84a0a1d8859f066f,\n 0xb4ed8e647196dad1,\n 0x2cd5282c53116b5c,\n ]);","attr_info":{"attributes":[],"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":1079},"src":{"TraitImpl":{"impl_ref":{"id":38,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1895}],"const_generics":[],"trait_refs":[]}},"item_id":{"Const":7},"reuses_default":true}},"global_kind":"NamedConst","value":{"kind":{"Call":[{"kind":{"Fun":{"Regular":247}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},[]]},"ty":{"Deduplicated":1079}}},{"def_id":43,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}},{"Ident":["DELTA",0]}],"span":{"data":{"file_id":2,"beg":{"line":642,"col":4},"end":{"line":642,"col":30}},"generated_from_span":null},"source_text":"const DELTA: Self = DELTA;","attr_info":{"attributes":[],"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":1079},"src":{"TraitImpl":{"impl_ref":{"id":38,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1895}],"const_generics":[],"trait_refs":[]}},"item_id":{"Const":8},"reuses_default":true}},"global_kind":"NamedConst","value":{"kind":{"Call":[{"kind":{"Fun":{"Regular":248}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},[]]},"ty":{"Deduplicated":1079}}},{"def_id":44,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":40}},{"Ident":["ZETA",0]}],"span":{"data":{"file_id":2,"beg":{"line":789,"col":4},"end":{"line":794,"col":7}},"generated_from_span":null},"source_text":"const ZETA: Self = Fp::from_raw([\n 0x1dad5ebdfdfe4ab9,\n 0x1d1f8bd237ad3149,\n 0x2caad5dc57aab1b0,\n 0x12ccca834acdba71,\n ]);","attr_info":{"attributes":[],"inline":null,"rename":null,"public":true},"is_local":true,"opacity":"Opaque","lang_item":null},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"ty":{"Deduplicated":1079},"src":{"TraitImpl":{"impl_ref":{"id":40,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":32,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1895}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["U8","3"]}}},"ty":{"Deduplicated":1894}}],"trait_refs":[]}},"item_id":{"Const":0},"reuses_default":true}},"global_kind":"NamedConst","value":{"kind":{"Call":[{"kind":{"Fun":{"Regular":251}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},[]]},"ty":{"Deduplicated":1079}}},null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"trait_decls":[null,{"def_id":1,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["clone",0]},{"Ident":["Clone",0]}],"span":{"data":{"file_id":4,"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":[{"HashConsedValue":[8361,{"Ref":[{"Var":{"Bound":[0,0]}},{"Deduplicated":8294},"Shared"]}]}],"output":{"Deduplicated":8294}},"item":{"id":1,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8362,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[1,0]}},null],"vtable":null},{"def_id":2,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["marker",0]},{"Ident":["Destruct",0]}],"span":{"data":{"file_id":6,"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":[{"HashConsedValue":[8363,{"Ref":[{"Var":{"Bound":[0,0]}},{"Deduplicated":8294},"Mut"]}]}],"output":{"Deduplicated":1108}},"item":{"id":115,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}},"kind":{"TraitMethod":[2,0]}}],"vtable":null},{"def_id":3,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["marker",0]},{"Ident":["Copy",0]}],"span":{"data":{"file_id":6,"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":6,"beg":{"line":454,"col":16},"end":{"line":454,"col":21}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}],"consts":[],"types":[],"methods":[],"vtable":null},{"def_id":4,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["Eq",0]}],"span":{"data":{"file_id":7,"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":7,"beg":{"line":338,"col":20},"end":{"line":338,"col":43}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":5,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}],"consts":[],"types":[],"methods":[null,{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"assert_fields_are_eq","attr_info":{"attributes":[],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8361}],"output":{"Deduplicated":1108}},"item":{"id":4,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8364,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":4,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[4,1]}}],"vtable":null},{"def_id":5,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialEq",0]}],"span":{"data":{"file_id":7,"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":8361},{"HashConsedValue":[8365,{"Ref":[{"Var":{"Bound":[0,1]}},{"Deduplicated":8295},"Shared"]}]}],"output":{"Deduplicated":1225}},"item":{"id":13,"generics":{"regions":[{"Var":{"Bound":[0,0]}},{"Var":{"Bound":[0,1]}}],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8366,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":5,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[5,0]}},null],"vtable":{"id":{"Adt":2},"generics":{"regions":[],"types":[{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}},{"def_id":6,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["fmt",0]},{"Ident":["Debug",0]}],"span":{"data":{"file_id":8,"beg":{"line":1053,"col":0},"end":{"line":1053,"col":29}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" `?` formatting."},{"DocComment":""},{"DocComment":" `Debug` should format the output in a programmer-facing, debugging context."},{"DocComment":""},{"DocComment":" Generally speaking, you should just `derive` a `Debug` implementation."},{"DocComment":""},{"DocComment":" When used with the alternate format specifier `#?`, the output is pretty-printed."},{"DocComment":""},{"DocComment":" For more information on formatters, see [the module-level documentation][module]."},{"DocComment":""},{"DocComment":" [module]: ../../std/fmt/index.html"},{"DocComment":""},{"DocComment":" This trait can be used with `#[derive]` if all fields implement `Debug`. When"},{"DocComment":" `derive`d for structs, it will use the name of the `struct`, then `{`, then a"},{"DocComment":" comma-separated list of each field's name and `Debug` value, then `}`. For"},{"DocComment":" `enum`s, it will use the name of the variant and, if applicable, `(`, then the"},{"DocComment":" `Debug` values of the fields, then `)`."},{"DocComment":""},{"DocComment":" # Stability"},{"DocComment":""},{"DocComment":" Derived `Debug` formats are not stable, and so may change with future Rust"},{"DocComment":" versions. Additionally, `Debug` implementations of types provided by the"},{"DocComment":" standard library (`std`, `core`, `alloc`, etc.) are not stable, and"},{"DocComment":" may also change with future Rust versions."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" Deriving an implementation:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" #[derive(Debug)]"},{"DocComment":" struct Point {"},{"DocComment":" x: i32,"},{"DocComment":" y: i32,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" let origin = Point { x: 0, y: 0 };"},{"DocComment":""},{"DocComment":" assert_eq!("},{"DocComment":" format!(\"The origin is: {origin:?}\"),"},{"DocComment":" \"The origin is: Point { x: 0, y: 0 }\","},{"DocComment":" );"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" Manually implementing:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::fmt;"},{"DocComment":""},{"DocComment":" struct Point {"},{"DocComment":" x: i32,"},{"DocComment":" y: i32,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl fmt::Debug for Point {"},{"DocComment":" fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {"},{"DocComment":" f.debug_struct(\"Point\")"},{"DocComment":" .field(\"x\", &self.x)"},{"DocComment":" .field(\"y\", &self.y)"},{"DocComment":" .finish()"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" let origin = Point { x: 0, y: 0 };"},{"DocComment":""},{"DocComment":" assert_eq!("},{"DocComment":" format!(\"The origin is: {origin:?}\"),"},{"DocComment":" \"The origin is: Point { x: 0, y: 0 }\","},{"DocComment":" );"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" There are a number of helper methods on the [`Formatter`] struct to help you with manual"},{"DocComment":" implementations, such as [`debug_struct`]."},{"DocComment":""},{"DocComment":" [`debug_struct`]: Formatter::debug_struct"},{"DocComment":""},{"DocComment":" Types that do not wish to use the standard suite of debug representations"},{"DocComment":" provided by the `Formatter` trait (`debug_struct`, `debug_tuple`,"},{"DocComment":" `debug_list`, `debug_set`, `debug_map`) can do something totally custom by"},{"DocComment":" manually writing an arbitrary representation to the `Formatter`."},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" # use std::fmt;"},{"DocComment":" # struct Point {"},{"DocComment":" # x: i32,"},{"DocComment":" # y: i32,"},{"DocComment":" # }"},{"DocComment":" #"},{"DocComment":" impl fmt::Debug for Point {"},{"DocComment":" fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {"},{"DocComment":" write!(f, \"Point [{} {}]\", self.x, self.y)"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" `Debug` implementations using either `derive` or the debug builder API"},{"DocComment":" on [`Formatter`] support pretty-printing using the alternate flag: `{:#?}`."},{"DocComment":""},{"DocComment":" Pretty-printing with `#?`:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" #[derive(Debug)]"},{"DocComment":" struct Point {"},{"DocComment":" x: i32,"},{"DocComment":" y: i32,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" let origin = Point { x: 0, y: 0 };"},{"DocComment":""},{"DocComment":" let expected = \"The origin is: Point {"},{"DocComment":" x: 0,"},{"DocComment":" y: 0,"},{"DocComment":" }\";"},{"DocComment":" assert_eq!(format!(\"The origin is: {origin:#?}\"), expected);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"Debug"},"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"},{"index":1,"name":null,"mutability":"Unknown"},{"index":2,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"fmt","attr_info":{"attributes":[{"DocComment":"Formats the value using the given formatter.\n\n# Errors\n\nThis function should return [`Err`] if, and only if, the provided [`Formatter`] returns [`Err`].\nString formatting is considered an infallible operation; this function only\nreturns a [`Result`] because writing to the underlying stream might fail and it must\nprovide a way to propagate the fact that an error has occurred back up the stack.\n"},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::fmt;"},{"DocComment":""},{"DocComment":" struct Position {"},{"DocComment":" longitude: f32,"},{"DocComment":" latitude: f32,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl fmt::Debug for Position {"},{"DocComment":" fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {"},{"DocComment":" f.debug_tuple(\"\")"},{"DocComment":" .field(&self.longitude)"},{"DocComment":" .field(&self.latitude)"},{"DocComment":" .finish()"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" let position = Position { longitude: 1.987, latitude: 2.983 };"},{"DocComment":" assert_eq!(format!(\"{position:?}\"), \"(1.987, 2.983)\");"},{"DocComment":""},{"DocComment":" assert_eq!(format!(\"{position:#?}\"), \"("},{"DocComment":" 1.987,"},{"DocComment":" 2.983,"},{"DocComment":" )\");"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8361},{"HashConsedValue":[2346,{"Ref":[{"Var":{"Bound":[0,1]}},{"HashConsedValue":[2345,{"Adt":{"id":{"Adt":9},"generics":{"regions":[{"Var":{"Bound":[0,2]}}],"types":[],"const_generics":[],"trait_refs":[]}}}]},"Mut"]}]}],"output":{"Deduplicated":2348}},"item":{"id":116,"generics":{"regions":[{"Var":{"Bound":[0,0]}},{"Var":{"Bound":[0,1]}},{"Var":{"Bound":[0,2]}}],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8367,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":6,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[6,0]}}],"vtable":{"id":{"Adt":8},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":7,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Ident":["From",0]}],"span":{"data":{"file_id":9,"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":8295}],"output":{"Deduplicated":8294}},"item":{"id":117,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8368,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":7,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[7,0]}}],"vtable":null},{"def_id":8,"item_meta":{"name":[{"Ident":["subtle",0]},{"Ident":["ConstantTimeEq",0]}],"span":{"data":{"file_id":10,"beg":{"line":262,"col":0},"end":{"line":262,"col":24}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" An `Eq`-like trait that produces a `Choice` instead of a `bool`."},{"DocComment":""},{"DocComment":" # Example"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use subtle::ConstantTimeEq;"},{"DocComment":" let x: u8 = 5;"},{"DocComment":" let y: u8 = 13;"},{"DocComment":""},{"DocComment":" assert_eq!(x.ct_eq(&y).unwrap_u8(), 0);"},{"DocComment":" assert_eq!(x.ct_eq(&x).unwrap_u8(), 1);"},{"DocComment":" ```"}],"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":[{"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":"ct_eq","attr_info":{"attributes":[{"DocComment":" Determine if two items are equal."},{"DocComment":""},{"DocComment":" The `ct_eq` function should execute in constant time."},{"DocComment":""},{"DocComment":" # Returns"},{"DocComment":""},{"DocComment":" * `Choice(1u8)` if `self == other`;"},{"DocComment":" * `Choice(0u8)` if `self != other`."}],"inline":"Hint","rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8361},{"HashConsedValue":[8369,{"Ref":[{"Var":{"Bound":[0,1]}},{"Deduplicated":8294},"Shared"]}]}],"output":{"Deduplicated":1250}},"item":{"id":10,"generics":{"regions":[{"Var":{"Bound":[0,0]}},{"Var":{"Bound":[0,1]}}],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8370,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":8,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[8,0]}},null],"vtable":null},{"def_id":9,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["Ord",0]}],"span":{"data":{"file_id":7,"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":7,"beg":{"line":982,"col":21},"end":{"line":982,"col":31}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":4,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":1,"span":{"data":{"file_id":7,"beg":{"line":982,"col":34},"end":{"line":982,"col":58}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":10,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8294}],"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":8361},{"Deduplicated":8369}],"output":{"Deduplicated":1299}},"item":{"id":16,"generics":{"regions":[{"Var":{"Bound":[0,0]}},{"Var":{"Bound":[0,1]}}],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8371,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":9,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[9,0]}},null,null,null],"vtable":null},{"def_id":10,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialOrd",0]}],"span":{"data":{"file_id":7,"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":7,"beg":{"line":1367,"col":4},"end":{"line":1367,"col":26}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":5,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"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":8361},{"Deduplicated":8365}],"output":{"Deduplicated":1352}},"item":{"id":21,"generics":{"regions":[{"Var":{"Bound":[0,0]}},{"Var":{"Bound":[0,1]}}],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8372,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":10,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[10,0]}},null,null,null,null,null,null,null,null],"vtable":{"id":{"Adt":4},"generics":{"regions":[],"types":[{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}},{"def_id":11,"item_meta":{"name":[{"Ident":["subtle",0]},{"Ident":["ConditionallySelectable",0]}],"span":{"data":{"file_id":10,"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":10,"beg":{"line":393,"col":35},"end":{"line":393,"col":39}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":3,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"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":8361},{"Deduplicated":8369},{"Deduplicated":1250}],"output":{"Deduplicated":8294}},"item":{"id":31,"generics":{"regions":[{"Var":{"Bound":[0,0]}},{"Var":{"Bound":[0,1]}}],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8373,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":11,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[11,0]}},null,null],"vtable":null},{"def_id":12,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["Neg",0]}],"span":{"data":{"file_id":14,"beg":{"line":690,"col":0},"end":{"line":690,"col":19}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" The unary negation operator `-`."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" An implementation of `Neg` for `Sign`, which allows the use of `-` to"},{"DocComment":" negate its value."},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::ops::Neg;"},{"DocComment":""},{"DocComment":" #[derive(Debug, PartialEq)]"},{"DocComment":" enum Sign {"},{"DocComment":" Negative,"},{"DocComment":" Zero,"},{"DocComment":" Positive,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl Neg for Sign {"},{"DocComment":" type Output = Self;"},{"DocComment":""},{"DocComment":" fn neg(self) -> Self::Output {"},{"DocComment":" match self {"},{"DocComment":" Sign::Negative => Sign::Positive,"},{"DocComment":" Sign::Zero => Sign::Zero,"},{"DocComment":" Sign::Positive => Sign::Negative,"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" // A negative positive is a negative."},{"DocComment":" assert_eq!(-Sign::Positive, Sign::Negative);"},{"DocComment":" // A double negative is a positive."},{"DocComment":" assert_eq!(-Sign::Negative, Sign::Positive);"},{"DocComment":" // Zero is its own negation."},{"DocComment":" assert_eq!(-Sign::Zero, Sign::Zero);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"neg"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"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":"neg","attr_info":{"attributes":[{"DocComment":" Performs the unary `-` operation."},{"DocComment":""},{"DocComment":" # Example"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let x: i32 = 12;"},{"DocComment":" assert_eq!(-x, -12);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8294}],"output":{"Deduplicated":8295}},"item":{"id":122,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8374,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":12,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[12,0]}}],"vtable":{"id":{"Adt":12},"generics":{"regions":[],"types":[{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}},{"def_id":13,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["Sub",0]}],"span":{"data":{"file_id":14,"beg":{"line":188,"col":0},"end":{"line":188,"col":31}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" The subtraction operator `-`."},{"DocComment":""},{"DocComment":" Note that `Rhs` is `Self` by default, but this is not mandatory. For"},{"DocComment":" example, [`std::time::SystemTime`] implements `Sub<Duration>`, which permits"},{"DocComment":" operations of the form `SystemTime = SystemTime - Duration`."},{"DocComment":""},{"DocComment":" [`std::time::SystemTime`]: ../../std/time/struct.SystemTime.html"},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ## `Sub`tractable points"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::ops::Sub;"},{"DocComment":""},{"DocComment":" #[derive(Debug, Copy, Clone, PartialEq)]"},{"DocComment":" struct Point {"},{"DocComment":" x: i32,"},{"DocComment":" y: i32,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl Sub for Point {"},{"DocComment":" type Output = Self;"},{"DocComment":""},{"DocComment":" fn sub(self, other: Self) -> Self::Output {"},{"DocComment":" Self {"},{"DocComment":" x: self.x - other.x,"},{"DocComment":" y: self.y - other.y,"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" assert_eq!(Point { x: 3, y: 3 } - Point { x: 2, y: 3 },"},{"DocComment":" Point { x: 1, y: 0 });"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" ## Implementing `Sub` with generics"},{"DocComment":""},{"DocComment":" Here is an example of the same `Point` struct implementing the `Sub` trait"},{"DocComment":" using generics."},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::ops::Sub;"},{"DocComment":""},{"DocComment":" #[derive(Debug, PartialEq)]"},{"DocComment":" struct Point<T> {"},{"DocComment":" x: T,"},{"DocComment":" y: T,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" // Notice that the implementation uses the associated type `Output`."},{"DocComment":" impl<T: Sub<Output = T>> Sub for Point<T> {"},{"DocComment":" type Output = Self;"},{"DocComment":""},{"DocComment":" fn sub(self, other: Self) -> Self::Output {"},{"DocComment":" Point {"},{"DocComment":" x: self.x - other.x,"},{"DocComment":" y: self.y - other.y,"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" assert_eq!(Point { x: 2, y: 3 } - Point { x: 1, y: 0 },"},{"DocComment":" Point { x: 1, y: 3 });"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"sub"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"Rhs"},{"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":"sub","attr_info":{"attributes":[{"DocComment":" Performs the `-` operation."},{"DocComment":""},{"DocComment":" # Example"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" assert_eq!(12 - 1, 11);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8294},{"Deduplicated":8295}],"output":{"Deduplicated":8348}},"item":{"id":123,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8375,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":13,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[13,0]}}],"vtable":{"id":{"Adt":13},"generics":{"regions":[],"types":[{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}},{"def_id":14,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["Add",0]}],"span":{"data":{"file_id":14,"beg":{"line":76,"col":0},"end":{"line":76,"col":31}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" The addition operator `+`."},{"DocComment":""},{"DocComment":" Note that `Rhs` is `Self` by default, but this is not mandatory. For"},{"DocComment":" example, [`std::time::SystemTime`] implements `Add<Duration>`, which permits"},{"DocComment":" operations of the form `SystemTime = SystemTime + Duration`."},{"DocComment":""},{"DocComment":" [`std::time::SystemTime`]: ../../std/time/struct.SystemTime.html"},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ## `Add`able points"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::ops::Add;"},{"DocComment":""},{"DocComment":" #[derive(Debug, Copy, Clone, PartialEq)]"},{"DocComment":" struct Point {"},{"DocComment":" x: i32,"},{"DocComment":" y: i32,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl Add for Point {"},{"DocComment":" type Output = Self;"},{"DocComment":""},{"DocComment":" fn add(self, other: Self) -> Self {"},{"DocComment":" Self {"},{"DocComment":" x: self.x + other.x,"},{"DocComment":" y: self.y + other.y,"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" assert_eq!(Point { x: 1, y: 0 } + Point { x: 2, y: 3 },"},{"DocComment":" Point { x: 3, y: 3 });"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" ## Implementing `Add` with generics"},{"DocComment":""},{"DocComment":" Here is an example of the same `Point` struct implementing the `Add` trait"},{"DocComment":" using generics."},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::ops::Add;"},{"DocComment":""},{"DocComment":" #[derive(Debug, Copy, Clone, PartialEq)]"},{"DocComment":" struct Point<T> {"},{"DocComment":" x: T,"},{"DocComment":" y: T,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" // Notice that the implementation uses the associated type `Output`."},{"DocComment":" impl<T: Add<Output = T>> Add for Point<T> {"},{"DocComment":" type Output = Self;"},{"DocComment":""},{"DocComment":" fn add(self, other: Self) -> Self::Output {"},{"DocComment":" Self {"},{"DocComment":" x: self.x + other.x,"},{"DocComment":" y: self.y + other.y,"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" assert_eq!(Point { x: 1, y: 0 } + Point { x: 2, y: 3 },"},{"DocComment":" Point { x: 3, y: 3 });"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"add"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"Rhs"},{"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":"add","attr_info":{"attributes":[{"DocComment":" Performs the `+` operation."},{"DocComment":""},{"DocComment":" # Example"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" assert_eq!(12 + 1, 13);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8294},{"Deduplicated":8295}],"output":{"Deduplicated":8348}},"item":{"id":124,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8376,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":14,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[14,0]}}],"vtable":{"id":{"Adt":14},"generics":{"regions":[],"types":[{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}},{"def_id":15,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["Mul",0]}],"span":{"data":{"file_id":14,"beg":{"line":322,"col":0},"end":{"line":322,"col":31}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" The multiplication operator `*`."},{"DocComment":""},{"DocComment":" Note that `Rhs` is `Self` by default, but this is not mandatory."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ## `Mul`tipliable rational numbers"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::ops::Mul;"},{"DocComment":""},{"DocComment":" // By the fundamental theorem of arithmetic, rational numbers in lowest"},{"DocComment":" // terms are unique. So, by keeping `Rational`s in reduced form, we can"},{"DocComment":" // derive `Eq` and `PartialEq`."},{"DocComment":" #[derive(Debug, Eq, PartialEq)]"},{"DocComment":" struct Rational {"},{"DocComment":" numerator: usize,"},{"DocComment":" denominator: usize,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl Rational {"},{"DocComment":" fn new(numerator: usize, denominator: usize) -> Self {"},{"DocComment":" if denominator == 0 {"},{"DocComment":" panic!(\"Zero is an invalid denominator!\");"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" // Reduce to lowest terms by dividing by the greatest common"},{"DocComment":" // divisor."},{"DocComment":" let gcd = gcd(numerator, denominator);"},{"DocComment":" Self {"},{"DocComment":" numerator: numerator / gcd,"},{"DocComment":" denominator: denominator / gcd,"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl Mul for Rational {"},{"DocComment":" // The multiplication of rational numbers is a closed operation."},{"DocComment":" type Output = Self;"},{"DocComment":""},{"DocComment":" fn mul(self, rhs: Self) -> Self {"},{"DocComment":" let numerator = self.numerator * rhs.numerator;"},{"DocComment":" let denominator = self.denominator * rhs.denominator;"},{"DocComment":" Self::new(numerator, denominator)"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" // Euclid's two-thousand-year-old algorithm for finding the greatest common"},{"DocComment":" // divisor."},{"DocComment":" fn gcd(x: usize, y: usize) -> usize {"},{"DocComment":" let mut x = x;"},{"DocComment":" let mut y = y;"},{"DocComment":" while y != 0 {"},{"DocComment":" let t = y;"},{"DocComment":" y = x % y;"},{"DocComment":" x = t;"},{"DocComment":" }"},{"DocComment":" x"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" assert_eq!(Rational::new(1, 2), Rational::new(2, 4));"},{"DocComment":" assert_eq!(Rational::new(2, 3) * Rational::new(3, 4),"},{"DocComment":" Rational::new(1, 2));"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" ## Multiplying vectors by scalars as in linear algebra"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::ops::Mul;"},{"DocComment":""},{"DocComment":" struct Scalar { value: usize }"},{"DocComment":""},{"DocComment":" #[derive(Debug, PartialEq)]"},{"DocComment":" struct Vector { value: Vec<usize> }"},{"DocComment":""},{"DocComment":" impl Mul<Scalar> for Vector {"},{"DocComment":" type Output = Self;"},{"DocComment":""},{"DocComment":" fn mul(self, rhs: Scalar) -> Self::Output {"},{"DocComment":" Self { value: self.value.iter().map(|v| v * rhs.value).collect() }"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" let vector = Vector { value: vec![2, 4, 6] };"},{"DocComment":" let scalar = Scalar { value: 3 };"},{"DocComment":" assert_eq!(vector * scalar, Vector { value: vec![6, 12, 18] });"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"mul"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"Rhs"},{"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":"mul","attr_info":{"attributes":[{"DocComment":" Performs the `*` operation."},{"DocComment":""},{"DocComment":" # Example"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" assert_eq!(12 * 2, 24);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8294},{"Deduplicated":8295}],"output":{"Deduplicated":8348}},"item":{"id":125,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8377,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":15,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[15,0]}}],"vtable":{"id":{"Adt":15},"generics":{"regions":[],"types":[{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}},{"def_id":16,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["SubAssign",0]}],"span":{"data":{"file_id":14,"beg":{"line":839,"col":0},"end":{"line":839,"col":37}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" The subtraction assignment operator `-=`."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" This example creates a `Point` struct that implements the `SubAssign`"},{"DocComment":" trait, and then demonstrates sub-assigning to a mutable `Point`."},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::ops::SubAssign;"},{"DocComment":""},{"DocComment":" #[derive(Debug, Copy, Clone, PartialEq)]"},{"DocComment":" struct Point {"},{"DocComment":" x: i32,"},{"DocComment":" y: i32,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl SubAssign for Point {"},{"DocComment":" fn sub_assign(&mut self, other: Self) {"},{"DocComment":" *self = Self {"},{"DocComment":" x: self.x - other.x,"},{"DocComment":" y: self.y - other.y,"},{"DocComment":" };"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" let mut point = Point { x: 3, y: 3 };"},{"DocComment":" point -= Point { x: 2, y: 3 };"},{"DocComment":" assert_eq!(point, Point {x: 1, y: 0});"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"sub_assign"},"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"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"sub_assign","attr_info":{"attributes":[{"DocComment":" Performs the `-=` operation."},{"DocComment":""},{"DocComment":" # Example"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let mut x: u32 = 12;"},{"DocComment":" x -= 1;"},{"DocComment":" assert_eq!(x, 11);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8363},{"Deduplicated":8295}],"output":{"Deduplicated":1108}},"item":{"id":126,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8378,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":16,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[16,0]}}],"vtable":{"id":{"Adt":16},"generics":{"regions":[],"types":[{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}},{"def_id":17,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["AddAssign",0]}],"span":{"data":{"file_id":14,"beg":{"line":768,"col":0},"end":{"line":768,"col":37}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" The addition assignment operator `+=`."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" This example creates a `Point` struct that implements the `AddAssign`"},{"DocComment":" trait, and then demonstrates add-assigning to a mutable `Point`."},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::ops::AddAssign;"},{"DocComment":""},{"DocComment":" #[derive(Debug, Copy, Clone, PartialEq)]"},{"DocComment":" struct Point {"},{"DocComment":" x: i32,"},{"DocComment":" y: i32,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl AddAssign for Point {"},{"DocComment":" fn add_assign(&mut self, other: Self) {"},{"DocComment":" *self = Self {"},{"DocComment":" x: self.x + other.x,"},{"DocComment":" y: self.y + other.y,"},{"DocComment":" };"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" let mut point = Point { x: 1, y: 0 };"},{"DocComment":" point += Point { x: 2, y: 3 };"},{"DocComment":" assert_eq!(point, Point { x: 3, y: 3 });"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"add_assign"},"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"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"add_assign","attr_info":{"attributes":[{"DocComment":" Performs the `+=` operation."},{"DocComment":""},{"DocComment":" # Example"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let mut x: u32 = 12;"},{"DocComment":" x += 1;"},{"DocComment":" assert_eq!(x, 13);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8363},{"Deduplicated":8295}],"output":{"Deduplicated":1108}},"item":{"id":127,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8379,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":17,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[17,0]}}],"vtable":{"id":{"Adt":17},"generics":{"regions":[],"types":[{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}},{"def_id":18,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["arith",0]},{"Ident":["MulAssign",0]}],"span":{"data":{"file_id":14,"beg":{"line":901,"col":0},"end":{"line":901,"col":37}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" The multiplication assignment operator `*=`."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::ops::MulAssign;"},{"DocComment":""},{"DocComment":" #[derive(Debug, PartialEq)]"},{"DocComment":" struct Frequency { hertz: f64 }"},{"DocComment":""},{"DocComment":" impl MulAssign<f64> for Frequency {"},{"DocComment":" fn mul_assign(&mut self, rhs: f64) {"},{"DocComment":" self.hertz *= rhs;"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" let mut frequency = Frequency { hertz: 50.0 };"},{"DocComment":" frequency *= 4.0;"},{"DocComment":" assert_eq!(Frequency { hertz: 200.0 }, frequency);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"mul_assign"},"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"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"mul_assign","attr_info":{"attributes":[{"DocComment":" Performs the `*=` operation."},{"DocComment":""},{"DocComment":" # Example"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let mut x: u32 = 12;"},{"DocComment":" x *= 2;"},{"DocComment":" assert_eq!(x, 24);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8363},{"Deduplicated":8295}],"output":{"Deduplicated":1108}},"item":{"id":128,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8380,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":18,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[18,0]}}],"vtable":{"id":{"Adt":18},"generics":{"regions":[],"types":[{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}},{"def_id":19,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["borrow",0]},{"Ident":["Borrow",0]}],"span":{"data":{"file_id":15,"beg":{"line":158,"col":0},"end":{"line":158,"col":40}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" A trait for borrowing data."},{"DocComment":""},{"DocComment":" In Rust, it is common to provide different representations of a type for"},{"DocComment":" different use cases. For instance, storage location and management for a"},{"DocComment":" value can be specifically chosen as appropriate for a particular use via"},{"DocComment":" pointer types such as [`Box<T>`] or [`Rc<T>`]. Beyond these generic"},{"DocComment":" wrappers that can be used with any type, some types provide optional"},{"DocComment":" facets providing potentially costly functionality. An example for such a"},{"DocComment":" type is [`String`] which adds the ability to extend a string to the basic"},{"DocComment":" [`str`]. This requires keeping additional information unnecessary for a"},{"DocComment":" simple, immutable string."},{"DocComment":""},{"DocComment":" These types provide access to the underlying data through references"},{"DocComment":" to the type of that data. They are said to be ‘borrowed as’ that type."},{"DocComment":" For instance, a [`Box<T>`] can be borrowed as `T` while a [`String`]"},{"DocComment":" can be borrowed as `str`."},{"DocComment":""},{"DocComment":" Types express that they can be borrowed as some type `T` by implementing"},{"DocComment":" `Borrow<T>`, providing a reference to a `T` in the trait’s"},{"DocComment":" [`borrow`] method. A type is free to borrow as several different types."},{"DocComment":" If it wishes to mutably borrow as the type, allowing the underlying data"},{"DocComment":" to be modified, it can additionally implement [`BorrowMut<T>`]."},{"DocComment":""},{"DocComment":" Further, when providing implementations for additional traits, it needs"},{"DocComment":" to be considered whether they should behave identically to those of the"},{"DocComment":" underlying type as a consequence of acting as a representation of that"},{"DocComment":" underlying type. Generic code typically uses `Borrow<T>` when it relies"},{"DocComment":" on the identical behavior of these additional trait implementations."},{"DocComment":" These traits will likely appear as additional trait bounds."},{"DocComment":""},{"DocComment":" In particular `Eq`, `Ord` and `Hash` must be equivalent for"},{"DocComment":" borrowed and owned values: `x.borrow() == y.borrow()` should give the"},{"DocComment":" same result as `x == y`."},{"DocComment":""},{"DocComment":" If generic code merely needs to work for all types that can"},{"DocComment":" provide a reference to related type `T`, it is often better to use"},{"DocComment":" [`AsRef<T>`] as more types can safely implement it."},{"DocComment":""},{"DocComment":" [`Box<T>`]: ../../std/boxed/struct.Box.html"},{"DocComment":" [`Mutex<T>`]: ../../std/sync/struct.Mutex.html"},{"DocComment":" [`Rc<T>`]: ../../std/rc/struct.Rc.html"},{"DocComment":" [`String`]: ../../std/string/struct.String.html"},{"DocComment":" [`borrow`]: Borrow::borrow"},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" As a data collection, [`HashMap<K, V>`] owns both keys and values. If"},{"DocComment":" the key’s actual data is wrapped in a managing type of some kind, it"},{"DocComment":" should, however, still be possible to search for a value using a"},{"DocComment":" reference to the key’s data. For instance, if the key is a string, then"},{"DocComment":" it is likely stored with the hash map as a [`String`], while it should"},{"DocComment":" be possible to search using a [`&str`][`str`]. Thus, `insert` needs to"},{"DocComment":" operate on a `String` while `get` needs to be able to use a `&str`."},{"DocComment":""},{"DocComment":" Slightly simplified, the relevant parts of `HashMap<K, V>` look like"},{"DocComment":" this:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::borrow::Borrow;"},{"DocComment":" use std::hash::Hash;"},{"DocComment":""},{"DocComment":" pub struct HashMap<K, V> {"},{"DocComment":" # marker: ::std::marker::PhantomData<(K, V)>,"},{"DocComment":" // fields omitted"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl<K, V> HashMap<K, V> {"},{"DocComment":" pub fn insert(&self, key: K, value: V) -> Option<V>"},{"DocComment":" where K: Hash + Eq"},{"DocComment":" {"},{"DocComment":" # unimplemented!()"},{"DocComment":" // ..."},{"DocComment":" }"},{"DocComment":""},{"DocComment":" pub fn get<Q>(&self, k: &Q) -> Option<&V>"},{"DocComment":" where"},{"DocComment":" K: Borrow<Q>,"},{"DocComment":" Q: Hash + Eq + ?Sized"},{"DocComment":" {"},{"DocComment":" # unimplemented!()"},{"DocComment":" // ..."},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" The entire hash map is generic over a key type `K`. Because these keys"},{"DocComment":" are stored with the hash map, this type has to own the key’s data."},{"DocComment":" When inserting a key-value pair, the map is given such a `K` and needs"},{"DocComment":" to find the correct hash bucket and check if the key is already present"},{"DocComment":" based on that `K`. It therefore requires `K: Hash + Eq`."},{"DocComment":""},{"DocComment":" When searching for a value in the map, however, having to provide a"},{"DocComment":" reference to a `K` as the key to search for would require to always"},{"DocComment":" create such an owned value. For string keys, this would mean a `String`"},{"DocComment":" value needs to be created just for the search for cases where only a"},{"DocComment":" `str` is available."},{"DocComment":""},{"DocComment":" Instead, the `get` method is generic over the type of the underlying key"},{"DocComment":" data, called `Q` in the method signature above. It states that `K`"},{"DocComment":" borrows as a `Q` by requiring that `K: Borrow<Q>`. By additionally"},{"DocComment":" requiring `Q: Hash + Eq`, it signals the requirement that `K` and `Q`"},{"DocComment":" have implementations of the `Hash` and `Eq` traits that produce identical"},{"DocComment":" results."},{"DocComment":""},{"DocComment":" The implementation of `get` relies in particular on identical"},{"DocComment":" implementations of `Hash` by determining the key’s hash bucket by calling"},{"DocComment":" `Hash::hash` on the `Q` value even though it inserted the key based on"},{"DocComment":" the hash value calculated from the `K` value."},{"DocComment":""},{"DocComment":" As a consequence, the hash map breaks if a `K` wrapping a `Q` value"},{"DocComment":" produces a different hash than `Q`. For instance, imagine you have a"},{"DocComment":" type that wraps a string but compares ASCII letters ignoring their case:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" pub struct CaseInsensitiveString(String);"},{"DocComment":""},{"DocComment":" impl PartialEq for CaseInsensitiveString {"},{"DocComment":" fn eq(&self, other: &Self) -> bool {"},{"DocComment":" self.0.eq_ignore_ascii_case(&other.0)"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl Eq for CaseInsensitiveString { }"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" Because two equal values need to produce the same hash value, the"},{"DocComment":" implementation of `Hash` needs to ignore ASCII case, too:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" # use std::hash::{Hash, Hasher};"},{"DocComment":" # pub struct CaseInsensitiveString(String);"},{"DocComment":" impl Hash for CaseInsensitiveString {"},{"DocComment":" fn hash<H: Hasher>(&self, state: &mut H) {"},{"DocComment":" for c in self.0.as_bytes() {"},{"DocComment":" c.to_ascii_lowercase().hash(state)"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" Can `CaseInsensitiveString` implement `Borrow<str>`? It certainly can"},{"DocComment":" provide a reference to a string slice via its contained owned string."},{"DocComment":" But because its `Hash` implementation differs, it behaves differently"},{"DocComment":" from `str` and therefore must not, in fact, implement `Borrow<str>`."},{"DocComment":" If it wants to allow others access to the underlying `str`, it can do"},{"DocComment":" that via `AsRef<str>` which doesn’t carry any extra requirements."},{"DocComment":""},{"DocComment":" [`Hash`]: crate::hash::Hash"},{"DocComment":" [`HashMap<K, V>`]: ../../std/collections/struct.HashMap.html"},{"DocComment":" [`String`]: ../../std/string/struct.String.html"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"Borrow"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"Borrowed"}],"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":"borrow","attr_info":{"attributes":[{"DocComment":" Immutably borrows from an owned value."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::borrow::Borrow;"},{"DocComment":""},{"DocComment":" fn check<T: Borrow<str>>(s: T) {"},{"DocComment":" assert_eq!(\"Hello\", s.borrow());"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" let s = \"Hello\".to_string();"},{"DocComment":""},{"DocComment":" check(s);"},{"DocComment":""},{"DocComment":" let s = \"Hello\";"},{"DocComment":""},{"DocComment":" check(s);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8361}],"output":{"HashConsedValue":[8381,{"Ref":[{"Var":{"Bound":[0,0]}},{"Deduplicated":8295},"Shared"]}]}},"item":{"id":129,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8382,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":19,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[19,0]}}],"vtable":{"id":{"Adt":19},"generics":{"regions":[],"types":[{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}},{"def_id":20,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["accum",0]},{"Ident":["Sum",0]}],"span":{"data":{"file_id":16,"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":16,"beg":{"line":22,"col":14},"end":{"line":22,"col":32}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":21,"generics":{"regions":[],"types":[{"HashConsedValue":[1092,{"TypeVar":{"Bound":[1,0]}}]},{"Deduplicated":8295}],"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":1091}],"output":{"Deduplicated":8294}},"item":{"id":130,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":1091}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8383,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":20,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[8384,{"kind":{"Clause":{"Bound":[0,0]}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":21,"generics":{"regions":[],"types":[{"Deduplicated":1092},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[20,0]}}],"vtable":null},{"def_id":21,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]}],"span":{"data":{"file_id":19,"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":[{"Deduplicated":8363}],"output":{"Deduplicated":8385}},"item":{"id":131,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8386,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":21,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[21,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":20},"generics":{"regions":[],"types":[{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}},{"def_id":22,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["accum",0]},{"Ident":["Product",0]}],"span":{"data":{"file_id":16,"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":16,"beg":{"line":44,"col":18},"end":{"line":44,"col":36}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":21,"generics":{"regions":[],"types":[{"Deduplicated":1092},{"Deduplicated":8295}],"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":1091}],"output":{"Deduplicated":8294}},"item":{"id":208,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":1091}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8387,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":22,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}]},{"Deduplicated":8384}]}}},"kind":{"TraitMethod":[22,0]}}],"vtable":null},{"def_id":23,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["default",0]},{"Ident":["Default",0]}],"span":{"data":{"file_id":20,"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":8294}},"item":{"id":209,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8388,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":23,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[23,0]}}],"vtable":null},{"def_id":24,"item_meta":{"name":[{"Ident":["ff",0]},{"Ident":["Field",0]}],"span":{"data":{"file_id":21,"beg":{"line":41,"col":0},"end":{"line":69,"col":33}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" This trait represents an element of a field."}],"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":[{"regions":[],"skip_binder":[{"Deduplicated":8294},"Static"]}],"trait_type_constraints":[]},"implied_clauses":[{"clause_id":0,"span":{"data":{"file_id":21,"beg":{"line":43,"col":6},"end":{"line":43,"col":8}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":4,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":1,"span":{"data":{"file_id":21,"beg":{"line":44,"col":6},"end":{"line":44,"col":10}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":3,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":2,"span":{"data":{"file_id":21,"beg":{"line":45,"col":6},"end":{"line":45,"col":11}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":3,"span":{"data":{"file_id":21,"beg":{"line":46,"col":6},"end":{"line":46,"col":13}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":23,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":4,"span":{"data":{"file_id":21,"beg":{"line":47,"col":6},"end":{"line":47,"col":10}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":25,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":5,"span":{"data":{"file_id":21,"beg":{"line":48,"col":6},"end":{"line":48,"col":10}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":26,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":6,"span":{"data":{"file_id":21,"beg":{"line":49,"col":6},"end":{"line":49,"col":16}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":6,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":7,"span":{"data":{"file_id":21,"beg":{"line":51,"col":6},"end":{"line":51,"col":29}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":11,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":8,"span":{"data":{"file_id":21,"beg":{"line":52,"col":6},"end":{"line":52,"col":20}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":8,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":9,"span":{"data":{"file_id":21,"beg":{"line":53,"col":6},"end":{"line":53,"col":24}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":12,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":10,"span":{"data":{"file_id":21,"beg":{"line":54,"col":6},"end":{"line":54,"col":24}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":14,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8294},{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":11,"span":{"data":{"file_id":21,"beg":{"line":55,"col":6},"end":{"line":55,"col":24}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":13,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8294},{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":12,"span":{"data":{"file_id":21,"beg":{"line":56,"col":6},"end":{"line":56,"col":24}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":15,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8294},{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":13,"span":{"data":{"file_id":21,"beg":{"line":57,"col":6},"end":{"line":57,"col":9}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":20,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":14,"span":{"data":{"file_id":21,"beg":{"line":58,"col":6},"end":{"line":58,"col":13}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":22,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":15,"span":{"data":{"file_id":21,"beg":{"line":59,"col":6},"end":{"line":59,"col":42}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[{"index":0,"name":"'a","mutability":"Unknown"}],"skip_binder":{"id":14,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8361},{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":16,"span":{"data":{"file_id":21,"beg":{"line":60,"col":6},"end":{"line":60,"col":42}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[{"index":0,"name":"'a","mutability":"Unknown"}],"skip_binder":{"id":13,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8361},{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":17,"span":{"data":{"file_id":21,"beg":{"line":61,"col":6},"end":{"line":61,"col":42}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[{"index":0,"name":"'a","mutability":"Unknown"}],"skip_binder":{"id":15,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8361},{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":18,"span":{"data":{"file_id":21,"beg":{"line":62,"col":6},"end":{"line":62,"col":27}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[{"index":0,"name":"'a","mutability":"Unknown"}],"skip_binder":{"id":20,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8361}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":19,"span":{"data":{"file_id":21,"beg":{"line":63,"col":6},"end":{"line":63,"col":31}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[{"index":0,"name":"'a","mutability":"Unknown"}],"skip_binder":{"id":22,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8361}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":20,"span":{"data":{"file_id":21,"beg":{"line":64,"col":6},"end":{"line":64,"col":15}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":17,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":21,"span":{"data":{"file_id":21,"beg":{"line":65,"col":6},"end":{"line":65,"col":15}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":16,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":22,"span":{"data":{"file_id":21,"beg":{"line":66,"col":6},"end":{"line":66,"col":15}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":18,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":23,"span":{"data":{"file_id":21,"beg":{"line":67,"col":6},"end":{"line":67,"col":33}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[{"index":0,"name":"'a","mutability":"Unknown"}],"skip_binder":{"id":17,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8361}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":24,"span":{"data":{"file_id":21,"beg":{"line":68,"col":6},"end":{"line":68,"col":33}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[{"index":0,"name":"'a","mutability":"Unknown"}],"skip_binder":{"id":16,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8361}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":25,"span":{"data":{"file_id":21,"beg":{"line":69,"col":6},"end":{"line":69,"col":33}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[{"index":0,"name":"'a","mutability":"Unknown"}],"skip_binder":{"id":18,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8361}],"const_generics":[],"trait_refs":[]}}}}],"consts":[{"name":"ZERO","attr_info":{"attributes":[{"DocComment":" The zero element of the field, the additive identity."}],"inline":null,"rename":null,"public":true},"ty":{"Deduplicated":8294},"default":null},{"name":"ONE","attr_info":{"attributes":[{"DocComment":" The one element of the field, the multiplicative identity."}],"inline":null,"rename":null,"public":true},"ty":{"Deduplicated":8294},"default":null}],"types":[],"methods":[{"params":{"regions":[],"types":[{"index":0,"name":"T1"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":21,"beg":{"line":78,"col":24},"end":{"line":78,"col":31}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":27,"generics":{"regions":[],"types":[{"Deduplicated":1092}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"random","attr_info":{"attributes":[{"DocComment":" Returns an element chosen uniformly at random using a user-provided RNG."}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":1091}],"output":{"Deduplicated":8294}},"item":{"id":83,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":1091}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8389,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":24,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[1996,{"kind":{"Clause":{"Bound":[0,0]}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":27,"generics":{"regions":[],"types":[{"Deduplicated":1092}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[24,0]}},null,null,{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"square","attr_info":{"attributes":[{"DocComment":" Squares this element."}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8361}],"output":{"Deduplicated":8294}},"item":{"id":86,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[{"Deduplicated":8389}]}}},"kind":{"TraitMethod":[24,3]}},null,{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"double","attr_info":{"attributes":[{"DocComment":" Doubles this element."}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8361}],"output":{"Deduplicated":8294}},"item":{"id":88,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[{"Deduplicated":8389}]}}},"kind":{"TraitMethod":[24,5]}},{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"invert","attr_info":{"attributes":[{"DocComment":" Computes the multiplicative inverse of this element,"},{"DocComment":" failing if the element is zero."}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8361}],"output":{"Deduplicated":8390}},"item":{"id":89,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[{"Deduplicated":8389}]}}},"kind":{"TraitMethod":[24,6]}},{"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":"sqrt_ratio","attr_info":{"attributes":[{"DocComment":" Computes:"},{"DocComment":""},{"DocComment":" - $(\\textsf{true}, \\sqrt{\\textsf{num}/\\textsf{div}})$, if $\\textsf{num}$ and"},{"DocComment":" $\\textsf{div}$ are nonzero and $\\textsf{num}/\\textsf{div}$ is a square in the"},{"DocComment":" field;"},{"DocComment":" - $(\\textsf{true}, 0)$, if $\\textsf{num}$ is zero;"},{"DocComment":" - $(\\textsf{false}, 0)$, if $\\textsf{num}$ is nonzero and $\\textsf{div}$ is zero;"},{"DocComment":" - $(\\textsf{false}, \\sqrt{G_S \\cdot \\textsf{num}/\\textsf{div}})$, if"},{"DocComment":" $\\textsf{num}$ and $\\textsf{div}$ are nonzero and $\\textsf{num}/\\textsf{div}$ is"},{"DocComment":" a nonsquare in the field;"},{"DocComment":""},{"DocComment":" where $G_S$ is a non-square."},{"DocComment":""},{"DocComment":" # Warnings"},{"DocComment":""},{"DocComment":" - The choice of root from `sqrt` is unspecified."},{"DocComment":" - The value of $G_S$ is unspecified, and cannot be assumed to have any specific"},{"DocComment":" value in a generic context."}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8361},{"Deduplicated":8369}],"output":{"Deduplicated":8391}},"item":{"id":90,"generics":{"regions":[{"Var":{"Bound":[0,0]}},{"Var":{"Bound":[0,1]}}],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[{"Deduplicated":8389}]}}},"kind":{"TraitMethod":[24,7]}},null,{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"sqrt","attr_info":{"attributes":[{"DocComment":" Returns the square root of the field element, if it is"},{"DocComment":" quadratic residue."},{"DocComment":""},{"DocComment":" The provided method is implemented in terms of [`Self::sqrt_ratio`]."}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8361}],"output":{"Deduplicated":8390}},"item":{"id":92,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[{"Deduplicated":8389}]}}},"kind":{"TraitMethod":[24,9]}},null,{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[{"index":0,"name":"S"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":21,"beg":{"line":178,"col":22},"end":{"line":178,"col":34}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":28,"generics":{"regions":[],"types":[{"Deduplicated":1092},{"Deduplicated":2074}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"pow_vartime","attr_info":{"attributes":[{"DocComment":" Exponentiates `self` by `exp`, where `exp` is a little-endian order integer"},{"DocComment":" exponent."},{"DocComment":""},{"DocComment":" # Guarantees"},{"DocComment":""},{"DocComment":" **This operation is variable time with respect to `self`, for all exponent.** If"},{"DocComment":" the exponent is fixed, this operation is effectively constant time. However, for"},{"DocComment":" stronger constant-time guarantees, [`Field::pow`] should be used."}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8361},{"Deduplicated":1091}],"output":{"Deduplicated":8294}},"item":{"id":94,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294},{"Deduplicated":1091}],"const_generics":[],"trait_refs":[{"Deduplicated":8389},{"HashConsedValue":[2077,{"kind":{"Clause":{"Bound":[0,0]}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":28,"generics":{"regions":[],"types":[{"Deduplicated":1092},{"Deduplicated":2074}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[24,11]}}],"vtable":null},{"def_id":25,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["marker",0]},{"Ident":["Send",0]}],"span":{"data":{"file_id":6,"beg":{"line":92,"col":0},"end":{"line":92,"col":26}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Types that can be transferred across thread boundaries."},{"DocComment":""},{"DocComment":" This trait is automatically implemented when the compiler determines it's"},{"DocComment":" appropriate."},{"DocComment":""},{"DocComment":" An example of a non-`Send` type is the reference-counting pointer"},{"DocComment":" [`rc::Rc`][`Rc`]. If two threads attempt to clone [`Rc`]s that point to the same"},{"DocComment":" reference-counted value, they might try to update the reference count at the"},{"DocComment":" same time, which is [undefined behavior][ub] because [`Rc`] doesn't use atomic"},{"DocComment":" operations. Its cousin [`sync::Arc`][arc] does use atomic operations (incurring"},{"DocComment":" some overhead) and thus is `Send`."},{"DocComment":""},{"DocComment":" See [the Nomicon](../../nomicon/send-and-sync.html) and the [`Sync`] trait for more details."},{"DocComment":""},{"DocComment":" [`Rc`]: ../../std/rc/struct.Rc.html"},{"DocComment":" [arc]: ../../std/sync/struct.Arc.html"},{"DocComment":" [ub]: ../../reference/behavior-considered-undefined.html"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"Send"},"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":49},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":26,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["marker",0]},{"Ident":["Sync",0]}],"span":{"data":{"file_id":6,"beg":{"line":657,"col":0},"end":{"line":657,"col":26}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Types for which it is safe to share references between threads."},{"DocComment":""},{"DocComment":" This trait is automatically implemented when the compiler determines"},{"DocComment":" it's appropriate."},{"DocComment":""},{"DocComment":" The precise definition is: a type `T` is [`Sync`] if and only if `&T` is"},{"DocComment":" [`Send`]. In other words, if there is no possibility of"},{"DocComment":" [undefined behavior][ub] (including data races) when passing"},{"DocComment":" `&T` references between threads."},{"DocComment":""},{"DocComment":" As one would expect, primitive types like [`u8`] and [`f64`]"},{"DocComment":" are all [`Sync`], and so are simple aggregate types containing them,"},{"DocComment":" like tuples, structs and enums. More examples of basic [`Sync`]"},{"DocComment":" types include \"immutable\" types like `&T`, and those with simple"},{"DocComment":" inherited mutability, such as [`Box<T>`][box], [`Vec<T>`][vec] and"},{"DocComment":" most other collection types. (Generic parameters need to be [`Sync`]"},{"DocComment":" for their container to be [`Sync`].)"},{"DocComment":""},{"DocComment":" A somewhat surprising consequence of the definition is that `&mut T`"},{"DocComment":" is `Sync` (if `T` is `Sync`) even though it seems like that might"},{"DocComment":" provide unsynchronized mutation. The trick is that a mutable"},{"DocComment":" reference behind a shared reference (that is, `& &mut T`)"},{"DocComment":" becomes read-only, as if it were a `& &T`. Hence there is no risk"},{"DocComment":" of a data race."},{"DocComment":""},{"DocComment":" A shorter overview of how [`Sync`] and [`Send`] relate to referencing:"},{"DocComment":" * `&T` is [`Send`] if and only if `T` is [`Sync`]"},{"DocComment":" * `&mut T` is [`Send`] if and only if `T` is [`Send`]"},{"DocComment":" * `&T` and `&mut T` are [`Sync`] if and only if `T` is [`Sync`]"},{"DocComment":""},{"DocComment":" Types that are not `Sync` are those that have \"interior"},{"DocComment":" mutability\" in a non-thread-safe form, such as [`Cell`][cell]"},{"DocComment":" and [`RefCell`][refcell]. These types allow for mutation of"},{"DocComment":" their contents even through an immutable, shared reference. For"},{"DocComment":" example the `set` method on [`Cell<T>`][cell] takes `&self`, so it requires"},{"DocComment":" only a shared reference [`&Cell<T>`][cell]. The method performs no"},{"DocComment":" synchronization, thus [`Cell`][cell] cannot be `Sync`."},{"DocComment":""},{"DocComment":" Another example of a non-`Sync` type is the reference-counting"},{"DocComment":" pointer [`Rc`][rc]. Given any reference [`&Rc<T>`][rc], you can clone"},{"DocComment":" a new [`Rc<T>`][rc], modifying the reference counts in a non-atomic way."},{"DocComment":""},{"DocComment":" For cases when one does need thread-safe interior mutability,"},{"DocComment":" Rust provides [atomic data types], as well as explicit locking via"},{"DocComment":" [`sync::Mutex`][mutex] and [`sync::RwLock`][rwlock]. These types"},{"DocComment":" ensure that any mutation cannot cause data races, hence the types"},{"DocComment":" are `Sync`. Likewise, [`sync::Arc`][arc] provides a thread-safe"},{"DocComment":" analogue of [`Rc`][rc]."},{"DocComment":""},{"DocComment":" Any types with interior mutability must also use the"},{"DocComment":" [`cell::UnsafeCell`][unsafecell] wrapper around the value(s) which"},{"DocComment":" can be mutated through a shared reference. Failing to doing this is"},{"DocComment":" [undefined behavior][ub]. For example, [`transmute`][transmute]-ing"},{"DocComment":" from `&T` to `&mut T` is invalid."},{"DocComment":""},{"DocComment":" See [the Nomicon][nomicon-send-and-sync] for more details about `Sync`."},{"DocComment":""},{"DocComment":" [box]: ../../std/boxed/struct.Box.html"},{"DocComment":" [vec]: ../../std/vec/struct.Vec.html"},{"DocComment":" [cell]: crate::cell::Cell"},{"DocComment":" [refcell]: crate::cell::RefCell"},{"DocComment":" [rc]: ../../std/rc/struct.Rc.html"},{"DocComment":" [arc]: ../../std/sync/struct.Arc.html"},{"DocComment":" [atomic data types]: crate::sync::atomic"},{"DocComment":" [mutex]: ../../std/sync/struct.Mutex.html"},{"DocComment":" [rwlock]: ../../std/sync/struct.RwLock.html"},{"DocComment":" [unsafecell]: crate::cell::UnsafeCell"},{"DocComment":" [ub]: ../../reference/behavior-considered-undefined.html"},{"DocComment":" [transmute]: crate::mem::transmute"},{"DocComment":" [nomicon-send-and-sync]: ../../nomicon/send-and-sync.html"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"sync"},"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":50},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":27,"item_meta":{"name":[{"Ident":["rand_core",0]},{"Ident":["RngCore",0]}],"span":{"data":{"file_id":22,"beg":{"line":142,"col":0},"end":{"line":142,"col":17}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" The core of a random number generator."},{"DocComment":""},{"DocComment":" This trait encapsulates the low-level functionality common to all"},{"DocComment":" generators, and is the \"back end\", to be implemented by generators."},{"DocComment":" End users should normally use the `Rng` trait from the [`rand`] crate,"},{"DocComment":" which is automatically implemented for every type implementing `RngCore`."},{"DocComment":""},{"DocComment":" Three different methods for generating random data are provided since the"},{"DocComment":" optimal implementation of each is dependent on the type of generator. There"},{"DocComment":" is no required relationship between the output of each; e.g. many"},{"DocComment":" implementations of [`fill_bytes`] consume a whole number of `u32` or `u64`"},{"DocComment":" values and drop any remaining unused bytes. The same can happen with the"},{"DocComment":" [`next_u32`] and [`next_u64`] methods, implementations may discard some"},{"DocComment":" random bits for efficiency."},{"DocComment":""},{"DocComment":" The [`try_fill_bytes`] method is a variant of [`fill_bytes`] allowing error"},{"DocComment":" handling; it is not deemed sufficiently useful to add equivalents for"},{"DocComment":" [`next_u32`] or [`next_u64`] since the latter methods are almost always used"},{"DocComment":" with algorithmic generators (PRNGs), which are normally infallible."},{"DocComment":""},{"DocComment":" Implementers should produce bits uniformly. Pathological RNGs (e.g. always"},{"DocComment":" returning the same value, or never setting certain bits) can break rejection"},{"DocComment":" sampling used by random distributions, and also break other RNGs when"},{"DocComment":" seeding them via [`SeedableRng::from_rng`]."},{"DocComment":""},{"DocComment":" Algorithmic generators implementing [`SeedableRng`] should normally have"},{"DocComment":" *portable, reproducible* output, i.e. fix Endianness when converting values"},{"DocComment":" to avoid platform differences, and avoid making any changes which affect"},{"DocComment":" output (except by communicating that the release has breaking changes)."},{"DocComment":""},{"DocComment":" Typically an RNG will implement only one of the methods available"},{"DocComment":" in this trait directly, then use the helper functions from the"},{"DocComment":" [`impls`] module to implement the other methods."},{"DocComment":""},{"DocComment":" It is recommended that implementations also implement:"},{"DocComment":""},{"DocComment":" - `Debug` with a custom implementation which *does not* print any internal"},{"DocComment":" state (at least, [`CryptoRng`]s should not risk leaking state through"},{"DocComment":" `Debug`)."},{"DocComment":" - `Serialize` and `Deserialize` (from Serde), preferably making Serde"},{"DocComment":" support optional at the crate level in PRNG libs."},{"DocComment":" - `Clone`, if possible."},{"DocComment":" - *never* implement `Copy` (accidental copies may cause repeated values)."},{"DocComment":" - *do not* implement `Default` for pseudorandom generators, but instead"},{"DocComment":" implement [`SeedableRng`], to guide users towards proper seeding."},{"DocComment":" External / hardware RNGs can choose to implement `Default`."},{"DocComment":" - `Eq` and `PartialEq` could be implemented, but are probably not useful."},{"DocComment":""},{"DocComment":" # Example"},{"DocComment":""},{"DocComment":" A simple example, obviously not generating very *random* output:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" #![allow(dead_code)]"},{"DocComment":" use rand_core::{RngCore, Error, impls};"},{"DocComment":""},{"DocComment":" struct CountingRng(u64);"},{"DocComment":""},{"DocComment":" impl RngCore for CountingRng {"},{"DocComment":" fn next_u32(&mut self) -> u32 {"},{"DocComment":" self.next_u64() as u32"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" fn next_u64(&mut self) -> u64 {"},{"DocComment":" self.0 += 1;"},{"DocComment":" self.0"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" fn fill_bytes(&mut self, dest: &mut [u8]) {"},{"DocComment":" impls::fill_bytes_via_next(self, dest)"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" fn try_fill_bytes(&mut self, dest: &mut [u8]) -> Result<(), Error> {"},{"DocComment":" Ok(self.fill_bytes(dest))"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" [`rand`]: https://docs.rs/rand"},{"DocComment":" [`try_fill_bytes`]: RngCore::try_fill_bytes"},{"DocComment":" [`fill_bytes`]: RngCore::fill_bytes"},{"DocComment":" [`next_u32`]: RngCore::next_u32"},{"DocComment":" [`next_u64`]: RngCore::next_u64"}],"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":[{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"next_u32","attr_info":{"attributes":[{"DocComment":" Return the next random `u32`."},{"DocComment":""},{"DocComment":" RNGs must implement at least one method from this trait directly. In"},{"DocComment":" the case this method is not implemented directly, it can be implemented"},{"DocComment":" using `self.next_u64() as u32` or via [`impls::next_u32_via_fill`]."}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8363}],"output":{"Deduplicated":1834}},"item":{"id":219,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8392,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":27,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[27,0]}},{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"next_u64","attr_info":{"attributes":[{"DocComment":" Return the next random `u64`."},{"DocComment":""},{"DocComment":" RNGs must implement at least one method from this trait directly. In"},{"DocComment":" the case this method is not implemented directly, it can be implemented"},{"DocComment":" via [`impls::next_u64_via_u32`] or via [`impls::next_u64_via_fill`]."}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8363}],"output":{"Deduplicated":1072}},"item":{"id":220,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[{"Deduplicated":8392}]}}},"kind":{"TraitMethod":[27,1]}},{"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":"fill_bytes","attr_info":{"attributes":[{"DocComment":" Fill `dest` with random data."},{"DocComment":""},{"DocComment":" RNGs must implement at least one method from this trait directly. In"},{"DocComment":" the case this method is not implemented directly, it can be implemented"},{"DocComment":" via [`impls::fill_bytes_via_next`] or"},{"DocComment":" via [`RngCore::try_fill_bytes`]; if this generator can"},{"DocComment":" fail the implementation must choose how best to handle errors here"},{"DocComment":" (e.g. panic with a descriptive message or log a warning and retry a few"},{"DocComment":" times)."},{"DocComment":""},{"DocComment":" This method should guarantee that `dest` is entirely filled"},{"DocComment":" with new data, and may panic if this is impossible"},{"DocComment":" (e.g. reading past the end of a file that is being used as the"},{"DocComment":" source of randomness)."}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8363},{"HashConsedValue":[4787,{"Ref":[{"Var":{"Bound":[0,1]}},{"Deduplicated":2162},"Mut"]}]}],"output":{"Deduplicated":1108}},"item":{"id":221,"generics":{"regions":[{"Var":{"Bound":[0,0]}},{"Var":{"Bound":[0,1]}}],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[{"Deduplicated":8392}]}}},"kind":{"TraitMethod":[27,2]}},{"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":"try_fill_bytes","attr_info":{"attributes":[{"DocComment":" Fill `dest` entirely with random data."},{"DocComment":""},{"DocComment":" This is the only method which allows an RNG to report errors while"},{"DocComment":" generating random data thus making this the primary method implemented"},{"DocComment":" by external (true) RNGs (e.g. `OsRng`) which can fail. It may be used"},{"DocComment":" directly to generate keys and to seed (infallible) PRNGs."},{"DocComment":""},{"DocComment":" Other than error handling, this method is identical to [`RngCore::fill_bytes`];"},{"DocComment":" thus this may be implemented using `Ok(self.fill_bytes(dest))` or"},{"DocComment":" `fill_bytes` may be implemented with"},{"DocComment":" `self.try_fill_bytes(dest).unwrap()` or more specific error handling."}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8363},{"Deduplicated":4787}],"output":{"Deduplicated":4813}},"item":{"id":222,"generics":{"regions":[{"Var":{"Bound":[0,0]}},{"Var":{"Bound":[0,1]}}],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[{"Deduplicated":8392}]}}},"kind":{"TraitMethod":[27,3]}}],"vtable":{"id":{"Adt":51},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":28,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Ident":["AsRef",0]}],"span":{"data":{"file_id":9,"beg":{"line":219,"col":0},"end":{"line":219,"col":52}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Used to do a cheap reference-to-reference conversion."},{"DocComment":""},{"DocComment":" This trait is similar to [`AsMut`] which is used for converting between mutable references."},{"DocComment":" If you need to do a costly conversion it is better to implement [`From`] with type"},{"DocComment":" `&T` or write a custom function."},{"DocComment":""},{"DocComment":" # Relation to `Borrow`"},{"DocComment":""},{"DocComment":" `AsRef` has the same signature as [`Borrow`], but [`Borrow`] is different in a few aspects:"},{"DocComment":""},{"DocComment":" - Unlike `AsRef`, [`Borrow`] has a blanket impl for any `T`, and can be used to accept either"},{"DocComment":" a reference or a value. (See also note on `AsRef`'s reflexibility below.)"},{"DocComment":" - [`Borrow`] also requires that [`Hash`], [`Eq`] and [`Ord`] for a borrowed value are"},{"DocComment":" equivalent to those of the owned value. For this reason, if you want to"},{"DocComment":" borrow only a single field of a struct you can implement `AsRef`, but not [`Borrow`]."},{"DocComment":""},{"DocComment":" **Note: This trait must not fail**. If the conversion can fail, use a"},{"DocComment":" dedicated method which returns an [`Option<T>`] or a [`Result<T, E>`]."},{"DocComment":""},{"DocComment":" # Generic Implementations"},{"DocComment":""},{"DocComment":" `AsRef` auto-dereferences if the inner type is a reference or a mutable reference"},{"DocComment":" (e.g.: `foo.as_ref()` will work the same if `foo` has type `&mut Foo` or `&&mut Foo`)."},{"DocComment":""},{"DocComment":" Note that due to historic reasons, the above currently does not hold generally for all"},{"DocComment":" [dereferenceable types], e.g. `foo.as_ref()` will *not* work the same as"},{"DocComment":" `Box::new(foo).as_ref()`. Instead, many smart pointers provide an `as_ref` implementation which"},{"DocComment":" simply returns a reference to the [pointed-to value] (but do not perform a cheap"},{"DocComment":" reference-to-reference conversion for that value). However, [`AsRef::as_ref`] should not be"},{"DocComment":" used for the sole purpose of dereferencing; instead ['`Deref` coercion'] can be used:"},{"DocComment":""},{"DocComment":" [dereferenceable types]: core::ops::Deref"},{"DocComment":" [pointed-to value]: core::ops::Deref::Target"},{"DocComment":" ['`Deref` coercion']: core::ops::Deref#deref-coercion"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let x = Box::new(5i32);"},{"DocComment":" // Avoid this:"},{"DocComment":" // let y: &i32 = x.as_ref();"},{"DocComment":" // Better just write:"},{"DocComment":" let y: &i32 = &x;"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" Types which implement [`Deref`] should consider implementing `AsRef<T>` as follows:"},{"DocComment":""},{"DocComment":" [`Deref`]: core::ops::Deref"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" # use core::ops::Deref;"},{"DocComment":" # struct SomeType;"},{"DocComment":" # impl Deref for SomeType {"},{"DocComment":" # type Target = [u8];"},{"DocComment":" # fn deref(&self) -> &[u8] {"},{"DocComment":" # &[]"},{"DocComment":" # }"},{"DocComment":" # }"},{"DocComment":" impl<T> AsRef<T> for SomeType"},{"DocComment":" where"},{"DocComment":" T: ?Sized,"},{"DocComment":" <SomeType as Deref>::Target: AsRef<T>,"},{"DocComment":" {"},{"DocComment":" fn as_ref(&self) -> &T {"},{"DocComment":" self.deref().as_ref()"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" # Reflexivity"},{"DocComment":""},{"DocComment":" Ideally, `AsRef` would be reflexive, i.e. there would be an `impl<T: ?Sized> AsRef<T> for T`"},{"DocComment":" with [`as_ref`] simply returning its argument unchanged."},{"DocComment":" Such a blanket implementation is currently *not* provided due to technical restrictions of"},{"DocComment":" Rust's type system (it would be overlapping with another existing blanket implementation for"},{"DocComment":" `&T where T: AsRef<U>` which allows `AsRef` to auto-dereference, see \"Generic Implementations\""},{"DocComment":" above)."},{"DocComment":""},{"DocComment":" [`as_ref`]: AsRef::as_ref"},{"DocComment":""},{"DocComment":" A trivial implementation of `AsRef<T> for T` must be added explicitly for a particular type `T`"},{"DocComment":" where needed or desired. Note, however, that not all types from `std` contain such an"},{"DocComment":" implementation, and those cannot be added by external code due to orphan rules."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" By using trait bounds we can accept arguments of different types as long as they can be"},{"DocComment":" converted to the specified type `T`."},{"DocComment":""},{"DocComment":" For example: By creating a generic function that takes an `AsRef<str>` we express that we"},{"DocComment":" want to accept all references that can be converted to [`&str`] as an argument."},{"DocComment":" Since both [`String`] and [`&str`] implement `AsRef<str>` we can accept both as input argument."},{"DocComment":""},{"DocComment":" [`&str`]: primitive@str"},{"DocComment":" [`Borrow`]: crate::borrow::Borrow"},{"DocComment":" [`Eq`]: crate::cmp::Eq"},{"DocComment":" [`Ord`]: crate::cmp::Ord"},{"DocComment":" [`String`]: ../../std/string/struct.String.html"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" fn is_hello<T: AsRef<str>>(s: T) {"},{"DocComment":" assert_eq!(\"hello\", s.as_ref());"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" let s = \"hello\";"},{"DocComment":" is_hello(s);"},{"DocComment":""},{"DocComment":" let s = \"hello\".to_string();"},{"DocComment":" is_hello(s);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"AsRef"},"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":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"as_ref","attr_info":{"attributes":[{"DocComment":" Converts this type into a shared reference of the (usually inferred) input type."}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8361}],"output":{"Deduplicated":8381}},"item":{"id":223,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8393,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":28,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[28,0]}}],"vtable":{"id":{"Adt":53},"generics":{"regions":[],"types":[{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}},{"def_id":29,"item_meta":{"name":[{"Ident":["ff",0]},{"Ident":["PrimeField",0]}],"span":{"data":{"file_id":21,"beg":{"line":195,"col":0},"end":{"line":195,"col":39}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" This represents an element of a non-binary prime field."}],"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_Repr"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[{"regions":[],"skip_binder":[{"Deduplicated":8295},"Static"]}],"trait_type_constraints":[]},"implied_clauses":[{"clause_id":0,"span":{"data":{"file_id":21,"beg":{"line":195,"col":22},"end":{"line":195,"col":27}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":24,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":1,"span":{"data":{"file_id":21,"beg":{"line":195,"col":30},"end":{"line":195,"col":39}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":7,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":1072}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":2,"span":{"data":{"file_id":21,"beg":{"line":198,"col":15},"end":{"line":198,"col":19}},"generated_from_span":null},"origin":{"TraitItem":0},"trait_":{"regions":[],"skip_binder":{"id":3,"generics":{"regions":[],"types":[{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":3,"span":{"data":{"file_id":21,"beg":{"line":198,"col":22},"end":{"line":198,"col":29}},"generated_from_span":null},"origin":{"TraitItem":0},"trait_":{"regions":[],"skip_binder":{"id":23,"generics":{"regions":[],"types":[{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":4,"span":{"data":{"file_id":21,"beg":{"line":198,"col":32},"end":{"line":198,"col":36}},"generated_from_span":null},"origin":{"TraitItem":0},"trait_":{"regions":[],"skip_binder":{"id":25,"generics":{"regions":[],"types":[{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":5,"span":{"data":{"file_id":21,"beg":{"line":198,"col":39},"end":{"line":198,"col":43}},"generated_from_span":null},"origin":{"TraitItem":0},"trait_":{"regions":[],"skip_binder":{"id":26,"generics":{"regions":[],"types":[{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":6,"span":{"data":{"file_id":21,"beg":{"line":198,"col":56},"end":{"line":198,"col":67}},"generated_from_span":null},"origin":{"TraitItem":0},"trait_":{"regions":[],"skip_binder":{"id":28,"generics":{"regions":[],"types":[{"Deduplicated":8295},{"Deduplicated":2162}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":7,"span":{"data":{"file_id":21,"beg":{"line":198,"col":70},"end":{"line":198,"col":81}},"generated_from_span":null},"origin":{"TraitItem":0},"trait_":{"regions":[],"skip_binder":{"id":30,"generics":{"regions":[],"types":[{"Deduplicated":8295},{"Deduplicated":2162}],"const_generics":[],"trait_refs":[]}}}}],"consts":[{"name":"MODULUS","attr_info":{"attributes":[{"DocComment":" Modulus of the field written as a string for debugging purposes."},{"DocComment":""},{"DocComment":" The encoding of the modulus is implementation-specific. Generic users of the"},{"DocComment":" `PrimeField` trait should treat this string as opaque."}],"inline":null,"rename":null,"public":true},"ty":{"Deduplicated":2250},"default":null},{"name":"NUM_BITS","attr_info":{"attributes":[{"DocComment":" How many bits are needed to represent an element of this field."}],"inline":null,"rename":null,"public":true},"ty":{"Deduplicated":1834},"default":null},{"name":"CAPACITY","attr_info":{"attributes":[{"DocComment":" How many bits of information can be reliably stored in the field element."},{"DocComment":""},{"DocComment":" This is usually `Self::NUM_BITS - 1`."}],"inline":null,"rename":null,"public":true},"ty":{"Deduplicated":1834},"default":null},{"name":"TWO_INV","attr_info":{"attributes":[{"DocComment":" Inverse of $2$ in the field."}],"inline":null,"rename":null,"public":true},"ty":{"Deduplicated":8294},"default":null},{"name":"MULTIPLICATIVE_GENERATOR","attr_info":{"attributes":[{"DocComment":" A fixed multiplicative generator of `modulus - 1` order. This element must also be"},{"DocComment":" a quadratic nonresidue."},{"DocComment":""},{"DocComment":" It can be calculated using [SageMath] as `GF(modulus).primitive_element()`."},{"DocComment":""},{"DocComment":" Implementations of this trait MUST ensure that this is the generator used to"},{"DocComment":" derive `Self::ROOT_OF_UNITY`."},{"DocComment":""},{"DocComment":" [SageMath]: https://www.sagemath.org/"}],"inline":null,"rename":null,"public":true},"ty":{"Deduplicated":8294},"default":null},{"name":"S","attr_info":{"attributes":[{"DocComment":" An integer `s` satisfying the equation `2^s * t = modulus - 1` with `t` odd."},{"DocComment":""},{"DocComment":" This is the number of leading zero bits in the little-endian bit representation of"},{"DocComment":" `modulus - 1`."}],"inline":null,"rename":null,"public":true},"ty":{"Deduplicated":1834},"default":null},{"name":"ROOT_OF_UNITY","attr_info":{"attributes":[{"DocComment":" The `2^s` root of unity."},{"DocComment":""},{"DocComment":" It can be calculated by exponentiating `Self::MULTIPLICATIVE_GENERATOR` by `t`,"},{"DocComment":" where `t = (modulus - 1) >> Self::S`."}],"inline":null,"rename":null,"public":true},"ty":{"Deduplicated":8294},"default":null},{"name":"ROOT_OF_UNITY_INV","attr_info":{"attributes":[{"DocComment":" Inverse of [`Self::ROOT_OF_UNITY`]."}],"inline":null,"rename":null,"public":true},"ty":{"Deduplicated":8294},"default":null},{"name":"DELTA","attr_info":{"attributes":[{"DocComment":" Generator of the `t-order` multiplicative subgroup."},{"DocComment":""},{"DocComment":" It can be calculated by exponentiating [`Self::MULTIPLICATIVE_GENERATOR`] by `2^s`,"},{"DocComment":" where `s` is [`Self::S`]."}],"inline":null,"rename":null,"public":true},"ty":{"Deduplicated":8294},"default":null}],"types":[null],"methods":[null,{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"from_u128","attr_info":{"attributes":[{"DocComment":" Obtains a field element congruent to the integer `v`."},{"DocComment":""},{"DocComment":" For fields where `Self::CAPACITY >= 128`, this is injective and will produce a"},{"DocComment":" unique field element."},{"DocComment":""},{"DocComment":" For fields where `Self::CAPACITY < 128`, this is surjective; some field elements"},{"DocComment":" will be produced by multiple values of `v`."},{"DocComment":""},{"DocComment":" If you want to deterministically sample a field element representing a value, use"},{"DocComment":" [`FromUniformBytes`] instead."}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":2226}],"output":{"Deduplicated":8294}},"item":{"id":102,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8394,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[29,1]}},{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"from_repr","attr_info":{"attributes":[{"DocComment":" Attempts to convert a byte representation of a field element into an element of"},{"DocComment":" this prime field, failing if the input is not canonical (is not smaller than the"},{"DocComment":" field's modulus)."},{"DocComment":""},{"DocComment":" The byte representation is interpreted with the same endianness as elements"},{"DocComment":" returned by [`PrimeField::to_repr`]."}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8295}],"output":{"Deduplicated":8390}},"item":{"id":103,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[{"Deduplicated":8394}]}}},"kind":{"TraitMethod":[29,2]}},null,{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"to_repr","attr_info":{"attributes":[{"DocComment":" Converts an element of the prime field into the standard byte representation for"},{"DocComment":" this field."},{"DocComment":""},{"DocComment":" The endianness of the byte representation is implementation-specific. Generic"},{"DocComment":" encodings of field elements should be treated as opaque."}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8361}],"output":{"Deduplicated":8295}},"item":{"id":105,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[{"Deduplicated":8394}]}}},"kind":{"TraitMethod":[29,4]}},{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"is_odd","attr_info":{"attributes":[{"DocComment":" Returns true iff this element is odd."}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8361}],"output":{"Deduplicated":1250}},"item":{"id":106,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[{"Deduplicated":8394}]}}},"kind":{"TraitMethod":[29,5]}},null],"vtable":null},{"def_id":30,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Ident":["AsMut",0]}],"span":{"data":{"file_id":9,"beg":{"line":371,"col":0},"end":{"line":371,"col":52}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Used to do a cheap mutable-to-mutable reference conversion."},{"DocComment":""},{"DocComment":" This trait is similar to [`AsRef`] but used for converting between mutable"},{"DocComment":" references. If you need to do a costly conversion it is better to"},{"DocComment":" implement [`From`] with type `&mut T` or write a custom function."},{"DocComment":""},{"DocComment":" **Note: This trait must not fail**. If the conversion can fail, use a"},{"DocComment":" dedicated method which returns an [`Option<T>`] or a [`Result<T, E>`]."},{"DocComment":""},{"DocComment":" # Generic Implementations"},{"DocComment":""},{"DocComment":" `AsMut` auto-dereferences if the inner type is a mutable reference"},{"DocComment":" (e.g.: `foo.as_mut()` will work the same if `foo` has type `&mut Foo` or `&mut &mut Foo`)."},{"DocComment":""},{"DocComment":" Note that due to historic reasons, the above currently does not hold generally for all"},{"DocComment":" [mutably dereferenceable types], e.g. `foo.as_mut()` will *not* work the same as"},{"DocComment":" `Box::new(foo).as_mut()`. Instead, many smart pointers provide an `as_mut` implementation which"},{"DocComment":" simply returns a reference to the [pointed-to value] (but do not perform a cheap"},{"DocComment":" reference-to-reference conversion for that value). However, [`AsMut::as_mut`] should not be"},{"DocComment":" used for the sole purpose of mutable dereferencing; instead ['`Deref` coercion'] can be used:"},{"DocComment":""},{"DocComment":" [mutably dereferenceable types]: core::ops::DerefMut"},{"DocComment":" [pointed-to value]: core::ops::Deref::Target"},{"DocComment":" ['`Deref` coercion']: core::ops::DerefMut#mutable-deref-coercion"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let mut x = Box::new(5i32);"},{"DocComment":" // Avoid this:"},{"DocComment":" // let y: &mut i32 = x.as_mut();"},{"DocComment":" // Better just write:"},{"DocComment":" let y: &mut i32 = &mut x;"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" Types which implement [`DerefMut`] should consider to add an implementation of `AsMut<T>` as"},{"DocComment":" follows:"},{"DocComment":""},{"DocComment":" [`DerefMut`]: core::ops::DerefMut"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" # use core::ops::{Deref, DerefMut};"},{"DocComment":" # struct SomeType;"},{"DocComment":" # impl Deref for SomeType {"},{"DocComment":" # type Target = [u8];"},{"DocComment":" # fn deref(&self) -> &[u8] {"},{"DocComment":" # &[]"},{"DocComment":" # }"},{"DocComment":" # }"},{"DocComment":" # impl DerefMut for SomeType {"},{"DocComment":" # fn deref_mut(&mut self) -> &mut [u8] {"},{"DocComment":" # &mut []"},{"DocComment":" # }"},{"DocComment":" # }"},{"DocComment":" impl<T> AsMut<T> for SomeType"},{"DocComment":" where"},{"DocComment":" <SomeType as Deref>::Target: AsMut<T>,"},{"DocComment":" {"},{"DocComment":" fn as_mut(&mut self) -> &mut T {"},{"DocComment":" self.deref_mut().as_mut()"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" # Reflexivity"},{"DocComment":""},{"DocComment":" Ideally, `AsMut` would be reflexive, i.e. there would be an `impl<T: ?Sized> AsMut<T> for T`"},{"DocComment":" with [`as_mut`] simply returning its argument unchanged."},{"DocComment":" Such a blanket implementation is currently *not* provided due to technical restrictions of"},{"DocComment":" Rust's type system (it would be overlapping with another existing blanket implementation for"},{"DocComment":" `&mut T where T: AsMut<U>` which allows `AsMut` to auto-dereference, see \"Generic"},{"DocComment":" Implementations\" above)."},{"DocComment":""},{"DocComment":" [`as_mut`]: AsMut::as_mut"},{"DocComment":""},{"DocComment":" A trivial implementation of `AsMut<T> for T` must be added explicitly for a particular type `T`"},{"DocComment":" where needed or desired. Note, however, that not all types from `std` contain such an"},{"DocComment":" implementation, and those cannot be added by external code due to orphan rules."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" Using `AsMut` as trait bound for a generic function, we can accept all mutable references that"},{"DocComment":" can be converted to type `&mut T`. Unlike [dereference], which has a single [target type],"},{"DocComment":" there can be multiple implementations of `AsMut` for a type. In particular, `Vec<T>` implements"},{"DocComment":" both `AsMut<Vec<T>>` and `AsMut<[T]>`."},{"DocComment":""},{"DocComment":" In the following, the example functions `caesar` and `null_terminate` provide a generic"},{"DocComment":" interface which works with any type that can be converted by cheap mutable-to-mutable conversion"},{"DocComment":" into a byte slice (`[u8]`) or a byte vector (`Vec<u8>`), respectively."},{"DocComment":""},{"DocComment":" [dereference]: core::ops::DerefMut"},{"DocComment":" [target type]: core::ops::Deref::Target"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" struct Document {"},{"DocComment":" info: String,"},{"DocComment":" content: Vec<u8>,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl<T: ?Sized> AsMut<T> for Document"},{"DocComment":" where"},{"DocComment":" Vec<u8>: AsMut<T>,"},{"DocComment":" {"},{"DocComment":" fn as_mut(&mut self) -> &mut T {"},{"DocComment":" self.content.as_mut()"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" fn caesar<T: AsMut<[u8]>>(data: &mut T, key: u8) {"},{"DocComment":" for byte in data.as_mut() {"},{"DocComment":" *byte = byte.wrapping_add(key);"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" fn null_terminate<T: AsMut<Vec<u8>>>(data: &mut T) {"},{"DocComment":" // Using a non-generic inner function, which contains most of the"},{"DocComment":" // functionality, helps to minimize monomorphization overhead."},{"DocComment":" fn doit(data: &mut Vec<u8>) {"},{"DocComment":" let len = data.len();"},{"DocComment":" if len == 0 || data[len-1] != 0 {"},{"DocComment":" data.push(0);"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":" doit(data.as_mut());"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" fn main() {"},{"DocComment":" let mut v: Vec<u8> = vec![1, 2, 3];"},{"DocComment":" caesar(&mut v, 5);"},{"DocComment":" assert_eq!(v, [6, 7, 8]);"},{"DocComment":" null_terminate(&mut v);"},{"DocComment":" assert_eq!(v, [6, 7, 8, 0]);"},{"DocComment":" let mut doc = Document {"},{"DocComment":" info: String::from(\"Example\"),"},{"DocComment":" content: vec![17, 19, 8],"},{"DocComment":" };"},{"DocComment":" caesar(&mut doc, 1);"},{"DocComment":" assert_eq!(doc.content, [18, 20, 9]);"},{"DocComment":" null_terminate(&mut doc);"},{"DocComment":" assert_eq!(doc.content, [18, 20, 9, 0]);"},{"DocComment":" }"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" Note, however, that APIs don't need to be generic. In many cases taking a `&mut [u8]` or"},{"DocComment":" `&mut Vec<u8>`, for example, is the better choice (callers need to pass the correct type then)."}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"AsMut"},"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":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"as_mut","attr_info":{"attributes":[{"DocComment":" Converts this type into a mutable reference of the (usually inferred) input type."}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8363}],"output":{"HashConsedValue":[8395,{"Ref":[{"Var":{"Bound":[0,0]}},{"Deduplicated":8295},"Mut"]}]}},"item":{"id":230,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8396,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":30,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[30,0]}}],"vtable":{"id":{"Adt":54},"generics":{"regions":[],"types":[{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}},{"def_id":31,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["arithmetic",0]},{"Ident":["fields",0]},{"Ident":["SqrtTableHelpers",0]}],"span":{"data":{"file_id":24,"beg":{"line":20,"col":0},"end":{"line":29,"col":1}},"generated_from_span":null},"source_text":"pub(crate) trait SqrtTableHelpers: ff::PrimeField {\n /// Raise this field element to the power $(t-1)/2$.\n ///\n /// Field implementations may override this to use an efficient addition chain.\n fn pow_by_t_minus1_over2(&self) -> Self;\n\n /// Gets the lower 32 bits of this field element when expressed\n /// canonically.\n fn get_lower_32(&self) -> u32;\n}","attr_info":{"attributes":[{"DocComment":" An internal trait that exposes additional operations related to calculating square roots of"},{"DocComment":" prime-order finite fields."}],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"Self_Clause0_Repr"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_clauses":[{"clause_id":0,"span":{"data":{"file_id":24,"beg":{"line":20,"col":35},"end":{"line":20,"col":49}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"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":"pow_by_t_minus1_over2","attr_info":{"attributes":[{"DocComment":" Raise this field element to the power $(t-1)/2$."},{"DocComment":""},{"DocComment":" Field implementations may override this to use an efficient addition chain."}],"inline":null,"rename":null,"public":false},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8361}],"output":{"Deduplicated":8294}},"item":{"id":249,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8397,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":31,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[31,0]}},{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"get_lower_32","attr_info":{"attributes":[{"DocComment":" Gets the lower 32 bits of this field element when expressed"},{"DocComment":" canonically."}],"inline":null,"rename":null,"public":false},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8361}],"output":{"Deduplicated":1834}},"item":{"id":250,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[{"Deduplicated":8397}]}}},"kind":{"TraitMethod":[31,1]}}],"vtable":null},{"def_id":32,"item_meta":{"name":[{"Ident":["ff",0]},{"Ident":["WithSmallOrderMulGroup",0]}],"span":{"data":{"file_id":21,"beg":{"line":358,"col":0},"end":{"line":358,"col":57}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" The subset of prime-order fields such that `(modulus - 1)` is divisible by `N`."},{"DocComment":""},{"DocComment":" If `N` is prime, there will be `N - 1` valid choices of [`Self::ZETA`]. Similarly to"},{"DocComment":" [`PrimeField::MULTIPLICATIVE_GENERATOR`], the specific choice does not matter, as long"},{"DocComment":" as the choice is consistent across all uses of the field."}],"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_Repr"}],"const_generics":[{"index":0,"name":"N","ty":{"Deduplicated":1894}}],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_clauses":[{"clause_id":0,"span":{"data":{"file_id":21,"beg":{"line":358,"col":47},"end":{"line":358,"col":57}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}],"consts":[{"name":"ZETA","attr_info":{"attributes":[{"DocComment":" A field element of small multiplicative order $N$."},{"DocComment":""},{"DocComment":" The presence of this element allows you to perform (certain types of)"},{"DocComment":" endomorphisms on some elliptic curves."},{"DocComment":""},{"DocComment":" It can be calculated using [SageMath] as"},{"DocComment":" `GF(modulus).primitive_element() ^ ((modulus - 1) // N)`."},{"DocComment":" Choosing the element of order $N$ that is smallest, when considered"},{"DocComment":" as an integer, may help to ensure consistency."},{"DocComment":""},{"DocComment":" [SageMath]: https://www.sagemath.org/"}],"inline":null,"rename":null,"public":true},"ty":{"Deduplicated":8294},"default":null}],"types":[],"methods":[],"vtable":null},{"def_id":33,"item_meta":{"name":[{"Ident":["ff",0]},{"Ident":["FromUniformBytes",0]}],"span":{"data":{"file_id":21,"beg":{"line":444,"col":0},"end":{"line":444,"col":54}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Trait for constructing a [`PrimeField`] element from a fixed-length uniform byte"},{"DocComment":" array."},{"DocComment":""},{"DocComment":" \"Uniform\" means that the byte array's contents must be indistinguishable from the"},{"DocComment":" [discrete uniform distribution]. Suitable byte arrays can be obtained:"},{"DocComment":" - from a cryptographically-secure randomness source (which makes this constructor"},{"DocComment":" equivalent to [`Field::random`])."},{"DocComment":" - from a cryptographic hash function output, which enables a \"random\" field element to"},{"DocComment":" be selected deterministically. This is the primary use case for `FromUniformBytes`."},{"DocComment":""},{"DocComment":" The length `N` of the byte array is chosen by the trait implementer such that the loss"},{"DocComment":" of uniformity in the mapping from byte arrays to field elements is cryptographically"},{"DocComment":" negligible."},{"DocComment":""},{"DocComment":" [discrete uniform distribution]: https://en.wikipedia.org/wiki/Discrete_uniform_distribution"},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" # #[cfg(feature = \"derive\")] {"},{"DocComment":" # // Fake this so we don't actually need a dev-dependency on bls12_381."},{"DocComment":" # mod bls12_381 {"},{"DocComment":" # use ff::{Field, PrimeField};"},{"DocComment":" #"},{"DocComment":" # #[derive(PrimeField)]"},{"DocComment":" # #[PrimeFieldModulus = \"52435875175126190479447740508185965837690552500527637822603658699938581184513\"]"},{"DocComment":" # #[PrimeFieldGenerator = \"7\"]"},{"DocComment":" # #[PrimeFieldReprEndianness = \"little\"]"},{"DocComment":" # pub struct Scalar([u64; 4]);"},{"DocComment":" #"},{"DocComment":" # impl ff::FromUniformBytes<64> for Scalar {"},{"DocComment":" # fn from_uniform_bytes(_bytes: &[u8; 64]) -> Self {"},{"DocComment":" # // Fake impl for doctest"},{"DocComment":" # Scalar::ONE"},{"DocComment":" # }"},{"DocComment":" # }"},{"DocComment":" # }"},{"DocComment":" #"},{"DocComment":" use blake2b_simd::blake2b;"},{"DocComment":" use bls12_381::Scalar;"},{"DocComment":" use ff::FromUniformBytes;"},{"DocComment":""},{"DocComment":" // `bls12_381::Scalar` implements `FromUniformBytes<64>`, and BLAKE2b (by default)"},{"DocComment":" // produces a 64-byte hash."},{"DocComment":" let hash = blake2b(b\"Some message\");"},{"DocComment":" let val = Scalar::from_uniform_bytes(hash.as_array());"},{"DocComment":" # }"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" # Implementing `FromUniformBytes`"},{"DocComment":""},{"DocComment":" [`Self::from_uniform_bytes`] should always be implemented by interpreting the provided"},{"DocComment":" byte array as the little endian unsigned encoding of an integer, and then reducing that"},{"DocComment":" integer modulo the field modulus."},{"DocComment":""},{"DocComment":" For security, `N` must be chosen so that `N * 8 >= Self::NUM_BITS + 128`. A larger"},{"DocComment":" value of `N` may be chosen for convenience; for example, for a field with a 255-bit"},{"DocComment":" modulus, `N = 64` is convenient as it matches the output length of several common"},{"DocComment":" cryptographic hash functions (such as SHA-512 and BLAKE2b)."},{"DocComment":""},{"DocComment":" ## Trait design"},{"DocComment":""},{"DocComment":" This trait exists because `PrimeField::from_uniform_bytes([u8; N])` cannot currently"},{"DocComment":" exist (trait methods cannot use associated constants in the const positions of their"},{"DocComment":" type signature, and we do not want `PrimeField` to require a generic const parameter)."},{"DocComment":" However, this has the side-effect that `FromUniformBytes` can be implemented multiple"},{"DocComment":" times for different values of `N`. Most implementations of [`PrimeField`] should only"},{"DocComment":" need to implement `FromUniformBytes` trait for one value of `N` (chosen following the"},{"DocComment":" above considerations); if you find yourself needing to implement it multiple times,"},{"DocComment":" please [let us know about your use case](https://github.com/zkcrypto/ff/issues/new) so"},{"DocComment":" we can take it into consideration for future evolutions of the `ff` traits."}],"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_Repr"}],"const_generics":[{"index":0,"name":"N","ty":{"Deduplicated":1073}}],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_clauses":[{"clause_id":0,"span":{"data":{"file_id":21,"beg":{"line":444,"col":44},"end":{"line":444,"col":54}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"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":"from_uniform_bytes","attr_info":{"attributes":[{"DocComment":" Returns a field element that is congruent to the provided little endian unsigned"},{"DocComment":" byte representation of an integer."}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"HashConsedValue":[8399,{"Ref":[{"Var":{"Bound":[0,0]}},{"Deduplicated":8398},"Shared"]}]}],"output":{"Deduplicated":8294}},"item":{"id":252,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[{"kind":{"Var":{"Free":0}},"ty":{"Deduplicated":1073}}],"trait_refs":[{"HashConsedValue":[8400,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":33,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[{"kind":{"Var":{"Free":0}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[33,0]}}],"vtable":null},{"def_id":34,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["nonzero",0]},{"Ident":["ZeroablePrimitive",0]}],"span":{"data":{"file_id":28,"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":28,"beg":{"line":34,"col":44},"end":{"line":34,"col":48}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":3,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":1,"span":{"data":{"file_id":28,"beg":{"line":34,"col":51},"end":{"line":34,"col":66}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":50,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":2,"span":{"data":{"file_id":28,"beg":{"line":36,"col":31},"end":{"line":36,"col":35}},"generated_from_span":null},"origin":{"TraitItem":0},"trait_":{"regions":[],"skip_binder":{"id":3,"generics":{"regions":[],"types":[{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}],"consts":[],"types":[null],"methods":[],"vtable":null},{"def_id":35,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["collect",0]},{"Ident":["IntoIterator",0]}],"span":{"data":{"file_id":32,"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":32,"beg":{"line":291,"col":19},"end":{"line":291,"col":46}},"generated_from_span":null},"origin":{"TraitItem":1},"trait_":{"regions":[],"skip_binder":{"id":21,"generics":{"regions":[],"types":[{"Deduplicated":8348},{"Deduplicated":8295}],"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":8294}],"output":{"Deduplicated":8348}},"item":{"id":255,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8401,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":35,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[35,0]}}],"vtable":{"id":{"Adt":58},"generics":{"regions":[],"types":[{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}},{"def_id":36,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["function",0]},{"Ident":["FnMut",0]}],"span":{"data":{"file_id":36,"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":36,"beg":{"line":163,"col":36},"end":{"line":163,"col":48}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":37,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"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":8363},{"Deduplicated":8295}],"output":{"Deduplicated":8348}},"item":{"id":256,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8402,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":36,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[36,0]}}],"vtable":{"id":{"Adt":59},"generics":{"regions":[],"types":[{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}},{"def_id":37,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["function",0]},{"Ident":["FnOnce",0]}],"span":{"data":{"file_id":36,"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":8294},{"Deduplicated":8295}],"output":{"Deduplicated":8348}},"item":{"id":257,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8403,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":37,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[37,0]}}],"vtable":{"id":{"Adt":60},"generics":{"regions":[],"types":[{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}},{"def_id":38,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["collect",0]},{"Ident":["FromIterator",0]}],"span":{"data":{"file_id":32,"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":32,"beg":{"line":152,"col":20},"end":{"line":152,"col":42}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":35,"generics":{"regions":[],"types":[{"Deduplicated":1092},{"Deduplicated":8295},{"HashConsedValue":[1263,{"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":[{"Deduplicated":1091}],"output":{"Deduplicated":8294}},"item":{"id":258,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":1091},{"Deduplicated":1262}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8404,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":38,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[8405,{"kind":{"Clause":{"Bound":[0,0]}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":35,"generics":{"regions":[],"types":[{"Deduplicated":1092},{"Deduplicated":8295},{"Deduplicated":1263}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[38,0]}}],"vtable":null},{"def_id":39,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["try_trait",0]},{"Ident":["Try",0]}],"span":{"data":{"file_id":52,"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":52,"beg":{"line":133,"col":21},"end":{"line":133,"col":41}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":51,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"HashConsedValue":[8407,{"TraitType":[{"HashConsedValue":[8406,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":39,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}]},1,{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}]}]}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":1,"span":{"data":{"file_id":52,"beg":{"line":160,"col":19},"end":{"line":160,"col":41}},"generated_from_span":null},"origin":{"TraitItem":1},"trait_":{"regions":[],"skip_binder":{"id":40,"generics":{"regions":[],"types":[{"Deduplicated":8407},{"HashConsedValue":[8408,{"TraitType":[{"Deduplicated":8406},0,{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}]}]},{"HashConsedValue":[8409,{"TraitType":[{"Deduplicated":8406},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":[39,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":[39,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":[39,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":8408}],"output":{"Deduplicated":8294}},"item":{"id":259,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[{"Deduplicated":8406}]}}},"kind":{"TraitMethod":[39,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":8294}],"output":{"HashConsedValue":[8410,{"Adt":{"id":{"Adt":6},"generics":{"regions":[],"types":[{"Deduplicated":8407},{"Deduplicated":8408}],"const_generics":[],"trait_refs":[]}}}]}},"item":{"id":260,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[{"Deduplicated":8406}]}}},"kind":{"TraitMethod":[39,1]}}],"vtable":null},{"def_id":40,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["try_trait",0]},{"Ident":["Residual",0]}],"span":{"data":{"file_id":52,"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":[8412,{"kind":{"ParentClause":[{"HashConsedValue":[8411,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":40,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}]},0]},"trait_decl_ref":{"regions":[],"skip_binder":{"id":39,"generics":{"regions":[],"types":[{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}]},"type_id":0,"ty":{"Deduplicated":8295}}},{"regions":[],"skip_binder":{"trait_ref":{"Deduplicated":8412},"type_id":1,"ty":{"Deduplicated":8294}}}]},"implied_clauses":[{"clause_id":0,"span":{"data":{"file_id":52,"beg":{"line":368,"col":18},"end":{"line":368,"col":58}},"generated_from_span":null},"origin":{"TraitItem":0},"trait_":{"regions":[],"skip_binder":{"id":39,"generics":{"regions":[],"types":[{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}],"consts":[],"types":[null],"methods":[],"vtable":null},{"def_id":41,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["collect",0]},{"Ident":["Extend",0]}],"span":{"data":{"file_id":32,"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":32,"beg":{"line":416,"col":17},"end":{"line":416,"col":39}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":35,"generics":{"regions":[],"types":[{"Deduplicated":1092},{"Deduplicated":8295},{"Deduplicated":1263}],"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":8363},{"Deduplicated":1091}],"output":{"Deduplicated":1108}},"item":{"id":261,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":1091},{"Deduplicated":1262}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8413,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":41,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}]},{"Deduplicated":8405}]}}},"kind":{"TraitMethod":[41,0]}},null,null,null],"vtable":null},{"def_id":42,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["double_ended",0]},{"Ident":["DoubleEndedIterator",0]}],"span":{"data":{"file_id":53,"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":53,"beg":{"line":43,"col":37},"end":{"line":43,"col":53}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":21,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"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":8363}],"output":{"Deduplicated":8385}},"item":{"id":265,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8414,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":42,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[42,0]}},null,null,null,null,null],"vtable":{"id":{"Adt":61},"generics":{"regions":[],"types":[{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}},{"def_id":43,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["exact_size",0]},{"Ident":["ExactSizeIterator",0]}],"span":{"data":{"file_id":54,"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":54,"beg":{"line":86,"col":29},"end":{"line":86,"col":37}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":21,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}],"consts":[],"types":[],"methods":[null,null],"vtable":{"id":{"Adt":62},"generics":{"regions":[],"types":[{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}},{"def_id":44,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["zip",0]},{"Ident":["TrustedRandomAccessNoCoerce",0]}],"span":{"data":{"file_id":34,"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":1225},"default":null}],"types":[],"methods":[null],"vtable":null},{"def_id":45,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["index",0]},{"Ident":["Index",0]}],"span":{"data":{"file_id":64,"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":8361},{"Deduplicated":8295}],"output":{"HashConsedValue":[8415,{"Ref":[{"Var":{"Bound":[0,0]}},{"Deduplicated":8348},"Shared"]}]}},"item":{"id":283,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8416,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":45,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[45,0]}}],"vtable":{"id":{"Adt":63},"generics":{"regions":[],"types":[{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}},{"def_id":46,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Ident":["SliceIndex",0]}],"span":{"data":{"file_id":65,"beg":{"line":163,"col":0},"end":{"line":163,"col":73}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" A helper trait used for indexing operations."},{"DocComment":""},{"DocComment":" Implementations of this trait have to promise that if the argument"},{"DocComment":" to `get_unchecked(_mut)` is a safe reference, then so is the result."}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"SliceIndex"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"T"},{"index":2,"name":"Self_Output"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_clauses":[{"clause_id":0,"span":{"data":{"file_id":65,"beg":{"line":163,"col":46},"end":{"line":163,"col":73}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":53,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"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":{"name":"get","attr_info":{"attributes":[{"DocComment":" Returns a shared reference to the output at this location, if in"},{"DocComment":" bounds."}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8294},{"Deduplicated":8381}],"output":{"HashConsedValue":[8417,{"Adt":{"id":{"Adt":5},"generics":{"regions":[],"types":[{"Deduplicated":8415}],"const_generics":[],"trait_refs":[]}}}]}},"item":{"id":285,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8418,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":46,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[46,0]}},{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"get_mut","attr_info":{"attributes":[{"DocComment":" Returns a mutable reference to the output at this location, if in"},{"DocComment":" bounds."}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8294},{"Deduplicated":8395}],"output":{"HashConsedValue":[8420,{"Adt":{"id":{"Adt":5},"generics":{"regions":[],"types":[{"HashConsedValue":[8419,{"Ref":[{"Var":{"Bound":[0,0]}},{"Deduplicated":8348},"Mut"]}]}],"const_generics":[],"trait_refs":[]}}}]}},"item":{"id":286,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[{"Deduplicated":8418}]}}},"kind":{"TraitMethod":[46,1]}},{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"get_unchecked","attr_info":{"attributes":[{"DocComment":" Returns a pointer to the output at this location, without"},{"DocComment":" performing any bounds checking."},{"DocComment":""},{"DocComment":" Calling this method with an out-of-bounds index or a dangling `slice` pointer"},{"DocComment":" is *[undefined behavior]* even if the resulting pointer is not used."},{"DocComment":""},{"DocComment":" [undefined behavior]: https://doc.rust-lang.org/reference/behavior-considered-undefined.html"}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":true,"abi":"Rust","inputs":[{"Deduplicated":8294},{"Deduplicated":8421}],"output":{"Deduplicated":8422}},"item":{"id":287,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[{"Deduplicated":8418}]}}},"kind":{"TraitMethod":[46,2]}},{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"get_unchecked_mut","attr_info":{"attributes":[{"DocComment":" Returns a mutable pointer to the output at this location, without"},{"DocComment":" performing any bounds checking."},{"DocComment":""},{"DocComment":" Calling this method with an out-of-bounds index or a dangling `slice` pointer"},{"DocComment":" is *[undefined behavior]* even if the resulting pointer is not used."},{"DocComment":""},{"DocComment":" [undefined behavior]: https://doc.rust-lang.org/reference/behavior-considered-undefined.html"}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":true,"abi":"Rust","inputs":[{"Deduplicated":8294},{"Deduplicated":8423}],"output":{"Deduplicated":8424}},"item":{"id":288,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[{"Deduplicated":8418}]}}},"kind":{"TraitMethod":[46,3]}},{"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":" Returns a shared reference to the output at this location, panicking"},{"DocComment":" if out of bounds."}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8294},{"Deduplicated":8381}],"output":{"Deduplicated":8415}},"item":{"id":289,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[{"Deduplicated":8418}]}}},"kind":{"TraitMethod":[46,4]}},{"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":" Returns a mutable reference to the output at this location, panicking"},{"DocComment":" if out of bounds."}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8294},{"Deduplicated":8395}],"output":{"Deduplicated":8419}},"item":{"id":290,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[{"Deduplicated":8418}]}}},"kind":{"TraitMethod":[46,5]}}],"vtable":{"id":{"Adt":64},"generics":{"regions":[],"types":[{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}},{"def_id":47,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Ident":["TryFrom",0]}],"span":{"data":{"file_id":9,"beg":{"line":694,"col":0},"end":{"line":694,"col":33}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Simple and safe type conversions that may fail in a controlled"},{"DocComment":" way under some circumstances. It is the reciprocal of [`TryInto`]."},{"DocComment":""},{"DocComment":" This is useful when you are doing a type conversion that may"},{"DocComment":" trivially succeed but may also need special handling."},{"DocComment":" For example, there is no way to convert an [`i64`] into an [`i32`]"},{"DocComment":" using the [`From`] trait, because an [`i64`] may contain a value"},{"DocComment":" that an [`i32`] cannot represent and so the conversion would lose data."},{"DocComment":" This might be handled by truncating the [`i64`] to an [`i32`] or by"},{"DocComment":" simply returning [`i32::MAX`], or by some other method. The [`From`]"},{"DocComment":" trait is intended for perfect conversions, so the `TryFrom` trait"},{"DocComment":" informs the programmer when a type conversion could go bad and lets"},{"DocComment":" them decide how to handle it."},{"DocComment":""},{"DocComment":" # Generic Implementations"},{"DocComment":""},{"DocComment":" - `TryFrom<T> for U` implies [`TryInto`]`<U> for T`"},{"DocComment":" - [`try_from`] is reflexive, which means that `TryFrom<T> for T`"},{"DocComment":" is implemented and cannot fail -- the associated `Error` type for"},{"DocComment":" calling `T::try_from()` on a value of type `T` is [`Infallible`]."},{"DocComment":" When the [`!`] type is stabilized [`Infallible`] and [`!`] will be"},{"DocComment":" equivalent."},{"DocComment":""},{"DocComment":" Prefer using [`TryInto`] over [`TryFrom`] when specifying trait bounds on a generic function"},{"DocComment":" to ensure that types that only implement [`TryInto`] can be used as well."},{"DocComment":""},{"DocComment":" `TryFrom<T>` can be implemented as follows:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" struct GreaterThanZero(i32);"},{"DocComment":""},{"DocComment":" impl TryFrom<i32> for GreaterThanZero {"},{"DocComment":" type Error = &'static str;"},{"DocComment":""},{"DocComment":" fn try_from(value: i32) -> Result<Self, Self::Error> {"},{"DocComment":" if value <= 0 {"},{"DocComment":" Err(\"GreaterThanZero only accepts values greater than zero!\")"},{"DocComment":" } else {"},{"DocComment":" Ok(GreaterThanZero(value))"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" As described, [`i32`] implements `TryFrom<`[`i64`]`>`:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let big_number = 1_000_000_000_000i64;"},{"DocComment":" // Silently truncates `big_number`, requires detecting"},{"DocComment":" // and handling the truncation after the fact."},{"DocComment":" let smaller_number = big_number as i32;"},{"DocComment":" assert_eq!(smaller_number, -727379968);"},{"DocComment":""},{"DocComment":" // Returns an error because `big_number` is too big to"},{"DocComment":" // fit in an `i32`."},{"DocComment":" let try_smaller_number = i32::try_from(big_number);"},{"DocComment":" assert!(try_smaller_number.is_err());"},{"DocComment":""},{"DocComment":" // Returns `Ok(3)`."},{"DocComment":" let try_successful_smaller_number = i32::try_from(3);"},{"DocComment":" assert!(try_successful_smaller_number.is_ok());"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" [`try_from`]: TryFrom::try_from"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"TryFrom"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"T"},{"index":2,"name":"Self_Error"}],"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":"try_from","attr_info":{"attributes":[{"DocComment":" Performs the conversion."}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8295}],"output":{"Deduplicated":8425}},"item":{"id":297,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8426,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":47,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[47,0]}}],"vtable":null},{"def_id":48,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["index",0]},{"Ident":["IndexMut",0]}],"span":{"data":{"file_id":64,"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":64,"beg":{"line":170,"col":39},"end":{"line":170,"col":57}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":45,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"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":8363},{"Deduplicated":8295}],"output":{"Deduplicated":8419}},"item":{"id":301,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8427,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":48,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[48,0]}}],"vtable":{"id":{"Adt":65},"generics":{"regions":[],"types":[{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}},{"def_id":49,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["bit",0]},{"Ident":["BitAnd",0]}],"span":{"data":{"file_id":66,"beg":{"line":150,"col":0},"end":{"line":150,"col":34}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" The bitwise AND operator `&`."},{"DocComment":""},{"DocComment":" Note that `Rhs` is `Self` by default, but this is not mandatory."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" An implementation of `BitAnd` for a wrapper around `bool`."},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::ops::BitAnd;"},{"DocComment":""},{"DocComment":" #[derive(Debug, PartialEq)]"},{"DocComment":" struct Scalar(bool);"},{"DocComment":""},{"DocComment":" impl BitAnd for Scalar {"},{"DocComment":" type Output = Self;"},{"DocComment":""},{"DocComment":" // rhs is the \"right-hand side\" of the expression `a & b`"},{"DocComment":" fn bitand(self, rhs: Self) -> Self::Output {"},{"DocComment":" Self(self.0 & rhs.0)"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" assert_eq!(Scalar(true) & Scalar(true), Scalar(true));"},{"DocComment":" assert_eq!(Scalar(true) & Scalar(false), Scalar(false));"},{"DocComment":" assert_eq!(Scalar(false) & Scalar(true), Scalar(false));"},{"DocComment":" assert_eq!(Scalar(false) & Scalar(false), Scalar(false));"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" An implementation of `BitAnd` for a wrapper around `Vec<bool>`."},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::ops::BitAnd;"},{"DocComment":""},{"DocComment":" #[derive(Debug, PartialEq)]"},{"DocComment":" struct BooleanVector(Vec<bool>);"},{"DocComment":""},{"DocComment":" impl BitAnd for BooleanVector {"},{"DocComment":" type Output = Self;"},{"DocComment":""},{"DocComment":" fn bitand(self, Self(rhs): Self) -> Self::Output {"},{"DocComment":" let Self(lhs) = self;"},{"DocComment":" assert_eq!(lhs.len(), rhs.len());"},{"DocComment":" Self("},{"DocComment":" lhs.iter()"},{"DocComment":" .zip(rhs.iter())"},{"DocComment":" .map(|(x, y)| *x & *y)"},{"DocComment":" .collect()"},{"DocComment":" )"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" let bv1 = BooleanVector(vec![true, true, false, false]);"},{"DocComment":" let bv2 = BooleanVector(vec![true, false, true, false]);"},{"DocComment":" let expected = BooleanVector(vec![true, false, false, false]);"},{"DocComment":" assert_eq!(bv1 & bv2, expected);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"bitand"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"Rhs"},{"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":"bitand","attr_info":{"attributes":[{"DocComment":" Performs the `&` operation."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" assert_eq!(true & false, false);"},{"DocComment":" assert_eq!(true & true, true);"},{"DocComment":" assert_eq!(5u8 & 1u8, 1);"},{"DocComment":" assert_eq!(5u8 & 2u8, 0);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8294},{"Deduplicated":8295}],"output":{"Deduplicated":8348}},"item":{"id":303,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8428,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":49,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[49,0]}}],"vtable":{"id":{"Adt":66},"generics":{"regions":[],"types":[{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}},{"def_id":50,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["nonzero",0]},{"Ident":["private",0]},{"Ident":["Sealed",0]}],"span":{"data":{"file_id":28,"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":67},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":51,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["try_trait",0]},{"Ident":["FromResidual",0]}],"span":{"data":{"file_id":52,"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":8295}],"output":{"Deduplicated":8294}},"item":{"id":304,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8429,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":51,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[51,0]}}],"vtable":null},{"def_id":52,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["bit",0]},{"Ident":["Not",0]}],"span":{"data":{"file_id":66,"beg":{"line":35,"col":0},"end":{"line":35,"col":19}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" The unary logical negation operator `!`."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" An implementation of `Not` for `Answer`, which enables the use of `!` to"},{"DocComment":" invert its value."},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::ops::Not;"},{"DocComment":""},{"DocComment":" #[derive(Debug, PartialEq)]"},{"DocComment":" enum Answer {"},{"DocComment":" Yes,"},{"DocComment":" No,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl Not for Answer {"},{"DocComment":" type Output = Self;"},{"DocComment":""},{"DocComment":" fn not(self) -> Self::Output {"},{"DocComment":" match self {"},{"DocComment":" Answer::Yes => Answer::No,"},{"DocComment":" Answer::No => Answer::Yes"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" assert_eq!(!Answer::Yes, Answer::No);"},{"DocComment":" assert_eq!(!Answer::No, Answer::Yes);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"not"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"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":"not","attr_info":{"attributes":[{"DocComment":" Performs the unary `!` operation."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" assert_eq!(!true, false);"},{"DocComment":" assert_eq!(!false, true);"},{"DocComment":" assert_eq!(!1u8, 254);"},{"DocComment":" assert_eq!(!0u8, 255);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8294}],"output":{"Deduplicated":8295}},"item":{"id":305,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8430,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":52,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[52,0]}}],"vtable":{"id":{"Adt":68},"generics":{"regions":[],"types":[{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}},{"def_id":53,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Ident":["private_slice_index",0]},{"Ident":["Sealed",0]}],"span":{"data":{"file_id":65,"beg":{"line":109,"col":4},"end":{"line":109,"col":20}},"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":69},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":54,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Ident":["TryInto",0]}],"span":{"data":{"file_id":9,"beg":{"line":615,"col":0},"end":{"line":615,"col":33}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" An attempted conversion that consumes `self`, which may or may not be"},{"DocComment":" expensive."},{"DocComment":""},{"DocComment":" Library authors should usually not directly implement this trait,"},{"DocComment":" but should prefer implementing the [`TryFrom`] trait, which offers"},{"DocComment":" greater flexibility and provides an equivalent `TryInto`"},{"DocComment":" implementation for free, thanks to a blanket implementation in the"},{"DocComment":" standard library. For more information on this, see the"},{"DocComment":" documentation for [`Into`]."},{"DocComment":""},{"DocComment":" Prefer using [`TryInto`] over [`TryFrom`] when specifying trait bounds on a generic function"},{"DocComment":" to ensure that types that only implement [`TryInto`] can be used as well."},{"DocComment":""},{"DocComment":" # Implementing `TryInto`"},{"DocComment":""},{"DocComment":" This suffers the same restrictions and reasoning as implementing"},{"DocComment":" [`Into`], see there for details."}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"TryInto"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"T"},{"index":2,"name":"Self_Error"}],"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":"try_into","attr_info":{"attributes":[{"DocComment":" Performs the conversion."}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":8294}],"output":{"Deduplicated":8431}},"item":{"id":306,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8432,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":54,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[54,0]}}],"vtable":null}],"trait_impls":[null,{"def_id":1,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":1}}],"span":{"data":{"file_id":2,"beg":{"line":29,"col":9},"end":{"line":29,"col":14}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"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":0,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[1,0]}},null],"vtable":null},{"def_id":2,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":2}}],"span":{"data":{"file_id":2,"beg":{"line":29,"col":16},"end":{"line":29,"col":20}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":3,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[{"HashConsedValue":[1081,{"kind":{"TraitImpl":{"id":1,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}}}]}],"consts":[],"types":[],"methods":[],"vtable":null},{"def_id":3,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":3}}],"span":{"data":{"file_id":2,"beg":{"line":29,"col":22},"end":{"line":29,"col":24}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":4,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[{"HashConsedValue":[1150,{"kind":{"TraitImpl":{"id":8,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":5,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}}}]}],"consts":[],"types":[],"methods":[null,{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":5,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[4,1]}}],"vtable":null},{"def_id":4,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":4}}],"span":{"data":{"file_id":2,"beg":{"line":33,"col":0},"end":{"line":42,"col":1}},"generated_from_span":null},"source_text":"impl fmt::Debug for Fp {\n fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {\n let tmp = self.to_repr();\n write!(f, \"0x\")?;\n for &b in tmp.iter().rev() {\n write!(f, \"{:02x}\", b)?;\n }\n Ok(())\n }\n}","attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":6,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"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"},{"index":2,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":6,"generics":{"regions":[{"Var":{"Bound":[0,0]}},{"Var":{"Bound":[0,1]}},{"Var":{"Bound":[0,2]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[6,0]}}],"vtable":{"id":10,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":5,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":5}}],"span":{"data":{"file_id":2,"beg":{"line":44,"col":0},"end":{"line":52,"col":1}},"generated_from_span":null},"source_text":"impl From<bool> for Fp {\n fn from(bit: bool) -> Fp {\n if bit {\n Fp::one()\n } else {\n Fp::zero()\n }\n }\n}","attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":7,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1225}],"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":7,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[7,0]}}],"vtable":null},{"def_id":6,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":6}}],"span":{"data":{"file_id":2,"beg":{"line":54,"col":0},"end":{"line":58,"col":1}},"generated_from_span":null},"source_text":"impl From<u64> for Fp {\n fn from(val: u64) -> Fp {\n Fp([val, 0, 0, 0]) * R2\n }\n}","attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":7,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1072}],"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":8,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[7,0]}}],"vtable":null},{"def_id":7,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":7}}],"span":{"data":{"file_id":2,"beg":{"line":60,"col":0},"end":{"line":67,"col":1}},"generated_from_span":null},"source_text":"impl ConstantTimeEq for Fp {\n fn ct_eq(&self, other: &Self) -> Choice {\n self.0[0].ct_eq(&other.0[0])\n & self.0[1].ct_eq(&other.0[1])\n & self.0[2].ct_eq(&other.0[2])\n & self.0[3].ct_eq(&other.0[3])\n }\n}","attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":8,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"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":9,"generics":{"regions":[{"Var":{"Bound":[0,0]}},{"Var":{"Bound":[0,1]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[8,0]}},null],"vtable":null},{"def_id":8,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":8}}],"span":{"data":{"file_id":2,"beg":{"line":69,"col":0},"end":{"line":74,"col":1}},"generated_from_span":null},"source_text":"impl PartialEq for Fp {\n #[inline]\n fn eq(&self, other: &Self) -> bool {\n self.ct_eq(other).unwrap_u8() == 1\n }\n}","attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":5,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1079}],"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":12,"generics":{"regions":[{"Var":{"Bound":[0,0]}},{"Var":{"Bound":[0,1]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[5,0]}},null],"vtable":{"id":11,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":9,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":9}}],"span":{"data":{"file_id":2,"beg":{"line":76,"col":0},"end":{"line":89,"col":1}},"generated_from_span":null},"source_text":"impl core::cmp::Ord for Fp {\n fn cmp(&self, other: &Self) -> core::cmp::Ordering {\n let left = self.to_repr();\n let right = other.to_repr();\n left.iter()\n .zip(right.iter())\n .rev()\n .find_map(|(left_byte, right_byte)| match left_byte.cmp(right_byte) {\n core::cmp::Ordering::Equal => None,\n res => Some(res),\n })\n .unwrap_or(core::cmp::Ordering::Equal)\n }\n}","attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":9,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[{"HashConsedValue":[1145,{"kind":{"TraitImpl":{"id":3,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":4,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[8296,{"kind":{"TraitImpl":{"id":10,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":10,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1079}],"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":15,"generics":{"regions":[{"Var":{"Bound":[0,0]}},{"Var":{"Bound":[0,1]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[9,0]}},null,null,null],"vtable":null},{"def_id":10,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":10}}],"span":{"data":{"file_id":2,"beg":{"line":91,"col":0},"end":{"line":95,"col":1}},"generated_from_span":null},"source_text":"impl core::cmp::PartialOrd for Fp {\n fn partial_cmp(&self, other: &Self) -> Option<core::cmp::Ordering> {\n Some(self.cmp(other))\n }\n}","attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":10,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[{"Deduplicated":1150}],"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":20,"generics":{"regions":[{"Var":{"Bound":[0,0]}},{"Var":{"Bound":[0,1]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[10,0]}},null,null,null,null,null,null,null,null],"vtable":{"id":12,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":11,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":11}}],"span":{"data":{"file_id":2,"beg":{"line":97,"col":0},"end":{"line":106,"col":1}},"generated_from_span":null},"source_text":"impl ConditionallySelectable for Fp {\n fn conditional_select(a: &Self, b: &Self, choice: Choice) -> Self {\n Fp([\n u64::conditional_select(&a.0[0], &b.0[0], choice),\n u64::conditional_select(&a.0[1], &b.0[1], choice),\n u64::conditional_select(&a.0[2], &b.0[2], choice),\n u64::conditional_select(&a.0[3], &b.0[3], choice),\n ])\n }\n}","attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":11,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[{"HashConsedValue":[1114,{"kind":{"TraitImpl":{"id":2,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":3,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"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":30,"generics":{"regions":[{"Var":{"Bound":[0,0]}},{"Var":{"Bound":[0,1]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[11,0]}},null,null],"vtable":null},{"def_id":12,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":12}}],"span":{"data":{"file_id":2,"beg":{"line":130,"col":0},"end":{"line":137,"col":1}},"generated_from_span":null},"source_text":"impl<'a> Neg for &'a Fp {\n type Output = Fp;\n\n #[inline]\n fn neg(self) -> Fp {\n self.neg()\n }\n}","attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":12,"generics":{"regions":[],"types":[{"Deduplicated":8297},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[{"index":0,"name":"'a","mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[],"consts":[],"types":[null],"methods":[{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":35,"generics":{"regions":[{"Var":{"Free":0}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[12,0]}}],"vtable":{"id":13,"generics":{"regions":[{"Var":{"Free":0}}],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":13,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":13}}],"span":{"data":{"file_id":2,"beg":{"line":139,"col":0},"end":{"line":146,"col":1}},"generated_from_span":null},"source_text":"impl Neg for Fp {\n type Output = Fp;\n\n #[inline]\n fn neg(self) -> Fp {\n -&self\n }\n}","attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":12,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1079}],"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":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":36,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[12,0]}}],"vtable":{"id":14,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":14,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":14}}],"span":{"data":{"file_id":2,"beg":{"line":148,"col":0},"end":{"line":155,"col":1}},"generated_from_span":null},"source_text":"impl<'a, 'b> Sub<&'b Fp> for &'a Fp {\n type Output = Fp;\n\n #[inline]\n fn sub(self, rhs: &'b Fp) -> Fp {\n self.sub(rhs)\n }\n}","attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":13,"generics":{"regions":[],"types":[{"Deduplicated":8297},{"Deduplicated":8298},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[{"index":0,"name":"'a","mutability":"Unknown"},{"index":1,"name":"'b","mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[],"consts":[],"types":[null],"methods":[{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":37,"generics":{"regions":[{"Var":{"Free":0}},{"Var":{"Free":1}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[13,0]}}],"vtable":{"id":15,"generics":{"regions":[{"Var":{"Free":0}},{"Var":{"Free":1}}],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":15,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":15}}],"span":{"data":{"file_id":2,"beg":{"line":157,"col":0},"end":{"line":164,"col":1}},"generated_from_span":null},"source_text":"impl<'a, 'b> Add<&'b Fp> for &'a Fp {\n type Output = Fp;\n\n #[inline]\n fn add(self, rhs: &'b Fp) -> Fp {\n self.add(rhs)\n }\n}","attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":14,"generics":{"regions":[],"types":[{"Deduplicated":8297},{"Deduplicated":8298},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[{"index":0,"name":"'a","mutability":"Unknown"},{"index":1,"name":"'b","mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[],"consts":[],"types":[null],"methods":[{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":38,"generics":{"regions":[{"Var":{"Free":0}},{"Var":{"Free":1}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[14,0]}}],"vtable":{"id":16,"generics":{"regions":[{"Var":{"Free":0}},{"Var":{"Free":1}}],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":16,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":16}}],"span":{"data":{"file_id":2,"beg":{"line":166,"col":0},"end":{"line":173,"col":1}},"generated_from_span":null},"source_text":"impl<'a, 'b> Mul<&'b Fp> for &'a Fp {\n type Output = Fp;\n\n #[inline]\n fn mul(self, rhs: &'b Fp) -> Fp {\n self.mul(rhs)\n }\n}","attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":15,"generics":{"regions":[],"types":[{"Deduplicated":8297},{"Deduplicated":8298},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[{"index":0,"name":"'a","mutability":"Unknown"},{"index":1,"name":"'b","mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[],"consts":[],"types":[null],"methods":[{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":39,"generics":{"regions":[{"Var":{"Free":0}},{"Var":{"Free":1}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[15,0]}}],"vtable":{"id":17,"generics":{"regions":[{"Var":{"Free":0}},{"Var":{"Free":1}}],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":17,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":17}}],"span":{"data":{"file_id":3,"beg":{"line":3,"col":8},"end":{"line":10,"col":9}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":14,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":8297},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[{"index":0,"name":"'b","mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[],"consts":[],"types":[null],"methods":[{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":40,"generics":{"regions":[{"Var":{"Free":0}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[14,0]}}],"vtable":{"id":18,"generics":{"regions":[{"Var":{"Free":0}}],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":18,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":18}}],"span":{"data":{"file_id":3,"beg":{"line":12,"col":8},"end":{"line":19,"col":9}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":14,"generics":{"regions":[],"types":[{"Deduplicated":8297},{"Deduplicated":1079},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[{"index":0,"name":"'a","mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[],"consts":[],"types":[null],"methods":[{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":41,"generics":{"regions":[{"Var":{"Free":0}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[14,0]}}],"vtable":{"id":19,"generics":{"regions":[{"Var":{"Free":0}}],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":19,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":19}}],"span":{"data":{"file_id":3,"beg":{"line":21,"col":8},"end":{"line":28,"col":9}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":14,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1079},{"Deduplicated":1079}],"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":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":42,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[14,0]}}],"vtable":{"id":20,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":20,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":20}}],"span":{"data":{"file_id":3,"beg":{"line":34,"col":8},"end":{"line":41,"col":9}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":13,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":8297},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[{"index":0,"name":"'b","mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[],"consts":[],"types":[null],"methods":[{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":43,"generics":{"regions":[{"Var":{"Free":0}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[13,0]}}],"vtable":{"id":21,"generics":{"regions":[{"Var":{"Free":0}}],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":21,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":21}}],"span":{"data":{"file_id":3,"beg":{"line":43,"col":8},"end":{"line":50,"col":9}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":13,"generics":{"regions":[],"types":[{"Deduplicated":8297},{"Deduplicated":1079},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[{"index":0,"name":"'a","mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[],"consts":[],"types":[null],"methods":[{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":44,"generics":{"regions":[{"Var":{"Free":0}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[13,0]}}],"vtable":{"id":22,"generics":{"regions":[{"Var":{"Free":0}}],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":22,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":22}}],"span":{"data":{"file_id":3,"beg":{"line":52,"col":8},"end":{"line":59,"col":9}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":13,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1079},{"Deduplicated":1079}],"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":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":45,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[13,0]}}],"vtable":{"id":23,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":23,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":23}}],"span":{"data":{"file_id":3,"beg":{"line":105,"col":8},"end":{"line":110,"col":9}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":16,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1079}],"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":46,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[16,0]}}],"vtable":{"id":24,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":24,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":24}}],"span":{"data":{"file_id":3,"beg":{"line":112,"col":8},"end":{"line":117,"col":9}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":17,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1079}],"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":47,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[17,0]}}],"vtable":{"id":25,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":25,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":25}}],"span":{"data":{"file_id":3,"beg":{"line":119,"col":8},"end":{"line":124,"col":9}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":16,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":8297}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[{"index":0,"name":"'b","mutability":"Unknown"}],"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":48,"generics":{"regions":[{"Var":{"Free":0}},{"Var":{"Bound":[0,0]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[16,0]}}],"vtable":{"id":26,"generics":{"regions":[{"Var":{"Free":0}}],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":26,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":26}}],"span":{"data":{"file_id":3,"beg":{"line":126,"col":8},"end":{"line":131,"col":9}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":17,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":8297}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[{"index":0,"name":"'b","mutability":"Unknown"}],"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":49,"generics":{"regions":[{"Var":{"Free":0}},{"Var":{"Bound":[0,0]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[17,0]}}],"vtable":{"id":27,"generics":{"regions":[{"Var":{"Free":0}}],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":27,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":27}}],"span":{"data":{"file_id":3,"beg":{"line":72,"col":8},"end":{"line":79,"col":9}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":15,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":8297},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[{"index":0,"name":"'b","mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[],"consts":[],"types":[null],"methods":[{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":50,"generics":{"regions":[{"Var":{"Free":0}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[15,0]}}],"vtable":{"id":28,"generics":{"regions":[{"Var":{"Free":0}}],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":28,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":28}}],"span":{"data":{"file_id":3,"beg":{"line":81,"col":8},"end":{"line":88,"col":9}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":15,"generics":{"regions":[],"types":[{"Deduplicated":8297},{"Deduplicated":1079},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[{"index":0,"name":"'a","mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[],"consts":[],"types":[null],"methods":[{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":51,"generics":{"regions":[{"Var":{"Free":0}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[15,0]}}],"vtable":{"id":29,"generics":{"regions":[{"Var":{"Free":0}}],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":29,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":29}}],"span":{"data":{"file_id":3,"beg":{"line":90,"col":8},"end":{"line":97,"col":9}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":15,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1079},{"Deduplicated":1079}],"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":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":52,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[15,0]}}],"vtable":{"id":30,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":30,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":30}}],"span":{"data":{"file_id":3,"beg":{"line":139,"col":8},"end":{"line":144,"col":9}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":18,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1079}],"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":53,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[18,0]}}],"vtable":{"id":31,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":31,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":31}}],"span":{"data":{"file_id":3,"beg":{"line":146,"col":8},"end":{"line":151,"col":9}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":18,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":8297}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[{"index":0,"name":"'b","mutability":"Unknown"}],"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":54,"generics":{"regions":[{"Var":{"Free":0}},{"Var":{"Bound":[0,0]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[18,0]}}],"vtable":{"id":32,"generics":{"regions":[{"Var":{"Free":0}}],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":32,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":32}}],"span":{"data":{"file_id":2,"beg":{"line":178,"col":0},"end":{"line":182,"col":1}},"generated_from_span":null},"source_text":"impl<T: ::core::borrow::Borrow<Fp>> ::core::iter::Sum<T> for Fp {\n fn sum<I: Iterator<Item = T>>(iter: I) -> Self {\n iter.fold(Self::ZERO, |acc, item| acc + item.borrow())\n }\n}","attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":20,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[{"index":0,"name":"T"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":2,"beg":{"line":178,"col":8},"end":{"line":178,"col":34}},"generated_from_span":null},"origin":"WhereClauseOnImpl","trait_":{"regions":[],"skip_binder":{"id":19,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[],"consts":[],"types":[],"methods":[{"params":{"regions":[],"types":[{"index":0,"name":"I"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":16,"beg":{"line":22,"col":14},"end":{"line":22,"col":32}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":21,"generics":{"regions":[],"types":[{"Deduplicated":1092},{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":55,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":1091}],"const_generics":[],"trait_refs":[{"Deduplicated":8299},{"HashConsedValue":[8300,{"kind":{"Clause":{"Bound":[0,0]}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":21,"generics":{"regions":[],"types":[{"Deduplicated":1092},{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}]}]}},"kind":{"TraitMethod":[20,0]}}],"vtable":null},{"def_id":33,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":33}}],"span":{"data":{"file_id":2,"beg":{"line":184,"col":0},"end":{"line":188,"col":1}},"generated_from_span":null},"source_text":"impl<T: ::core::borrow::Borrow<Fp>> ::core::iter::Product<T> for Fp {\n fn product<I: Iterator<Item = T>>(iter: I) -> Self {\n iter.fold(Self::ONE, |acc, item| acc * item.borrow())\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":1079},{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[{"index":0,"name":"T"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":2,"beg":{"line":184,"col":8},"end":{"line":184,"col":34}},"generated_from_span":null},"origin":"WhereClauseOnImpl","trait_":{"regions":[],"skip_binder":{"id":19,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[],"consts":[],"types":[],"methods":[{"params":{"regions":[],"types":[{"index":0,"name":"I"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":16,"beg":{"line":44,"col":18},"end":{"line":44,"col":36}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":21,"generics":{"regions":[],"types":[{"Deduplicated":1092},{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":56,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":1091}],"const_generics":[],"trait_refs":[{"Deduplicated":8299},{"Deduplicated":8300}]}},"kind":{"TraitMethod":[22,0]}}],"vtable":null},{"def_id":34,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":34}}],"span":{"data":{"file_id":2,"beg":{"line":257,"col":0},"end":{"line":262,"col":1}},"generated_from_span":null},"source_text":"impl Default for Fp {\n #[inline]\n fn default() -> Self {\n Self::zero()\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":1079}],"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":66,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[23,0]}}],"vtable":null},{"def_id":35,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":35}}],"span":{"data":{"file_id":2,"beg":{"line":512,"col":0},"end":{"line":516,"col":1}},"generated_from_span":null},"source_text":"impl From<Fp> for [u8; 32] {\n fn from(value: Fp) -> [u8; 32] {\n value.to_repr()\n }\n}","attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":7,"generics":{"regions":[],"types":[{"Deduplicated":1895},{"Deduplicated":1079}],"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":80,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[7,0]}}],"vtable":null},{"def_id":36,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":36}}],"span":{"data":{"file_id":2,"beg":{"line":518,"col":0},"end":{"line":522,"col":1}},"generated_from_span":null},"source_text":"impl<'a> From<&'a Fp> for [u8; 32] {\n fn from(value: &'a Fp) -> [u8; 32] {\n value.to_repr()\n }\n}","attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":7,"generics":{"regions":[],"types":[{"Deduplicated":1895},{"Deduplicated":8297}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[{"index":0,"name":"'a","mutability":"Unknown"}],"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":81,"generics":{"regions":[{"Var":{"Free":0}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[7,0]}}],"vtable":null},{"def_id":37,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":37}}],"span":{"data":{"file_id":2,"beg":{"line":524,"col":0},"end":{"line":618,"col":1}},"generated_from_span":null},"source_text":"impl ff::Field for Fp {\n const ZERO: Self = Self::zero();\n const ONE: Self = Self::one();\n\n fn random(mut rng: impl RngCore) -> Self {\n Self::from_u512([\n rng.next_u64(),\n rng.next_u64(),\n rng.next_u64(),\n rng.next_u64(),\n rng.next_u64(),\n rng.next_u64(),\n rng.next_u64(),\n rng.next_u64(),\n ])\n }\n\n fn double(&self) -> Self {\n self.double()\n }\n\n #[inline(always)]\n fn square(&self) -> Self {\n self.square()\n }\n\n fn sqrt_ratio(num: &Self, div: &Self) -> (Choice, Self) {\n #[cfg(feature = \"sqrt-table\")]\n {\n FP_TABLES.sqrt_ratio(num, div)\n }\n\n #[cfg(not(feature = \"sqrt-table\"))]\n ff::helpers::sqrt_ratio_generic(num, div)\n }\n\n #[cfg(feature = \"sqrt-table\")]\n fn sqrt_alt(&self) -> (Choice, Self) {\n FP_TABLES.sqrt_alt(self)\n }\n\n /// Computes the square root of this element, if it exists.\n fn sqrt(&self) -> CtOption<Self> {\n #[cfg(feature = \"sqrt-table\")]\n {\n let (is_square, res) = FP_TABLES.sqrt_alt(self);\n CtOption::new(res, is_square)\n }\n\n #[cfg(not(feature = \"sqrt-table\"))]\n ff::helpers::sqrt_tonelli_shanks(self, &T_MINUS1_OVER2)\n }\n\n /// Computes the multiplicative inverse of this element,\n /// failing if the element is zero.\n fn invert(&self) -> CtOption<Self> {\n let tmp = self.pow_vartime(&[\n 0x992d30ecffffffff,\n 0x224698fc094cf91b,\n 0x0,\n 0x4000000000000000,\n ]);\n\n CtOption::new(tmp, !self.ct_eq(&Self::zero()))\n }\n\n fn pow_vartime<S: AsRef<[u64]>>(&self, exp: S) -> Self {\n // PATCH (Aeneas compatibility): index-based loops instead of\n // `iter().rev()` / `(0..64).rev()` (double-ended range iterators have\n // no Aeneas model). Iteration order and arithmetic are IDENTICAL to\n // upstream: limbs from most- to least-significant, bits from high to\n // low, square-then-conditionally-multiply.\n let mut res = Self::one();\n let mut found_one = false;\n let exp = exp.as_ref();\n let mut j = exp.len();\n while j > 0 {\n j -= 1;\n let e = exp[j];\n let mut i = 64u32;\n while i > 0 {\n i -= 1;\n if found_one {\n res = res.square();\n }\n\n if ((e >> i) & 1) == 1 {\n found_one = true;\n res *= self;\n }\n }\n }\n res\n }\n}","attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":24,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[{"Deduplicated":1145},{"Deduplicated":1114},{"Deduplicated":1081},{"HashConsedValue":[8301,{"kind":{"TraitImpl":{"id":34,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":23,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[8302,{"kind":{"BuiltinOrAuto":{"builtin_data":"Auto","parent_trait_refs":[],"types":[]}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":25,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[8303,{"kind":{"BuiltinOrAuto":{"builtin_data":"Auto","parent_trait_refs":[],"types":[]}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":26,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[8304,{"kind":{"TraitImpl":{"id":4,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":6,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[8305,{"kind":{"TraitImpl":{"id":11,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":11,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[8306,{"kind":{"TraitImpl":{"id":7,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":8,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[8307,{"kind":{"TraitImpl":{"id":13,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":12,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[8308,{"kind":{"TraitImpl":{"id":19,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":14,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1079},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[8309,{"kind":{"TraitImpl":{"id":22,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":13,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1079},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[8310,{"kind":{"TraitImpl":{"id":29,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":15,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1079},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[8311,{"kind":{"TraitImpl":{"id":32,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[{"HashConsedValue":[1956,{"kind":{"TraitImpl":{"id":42,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":19,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":20,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[8312,{"kind":{"TraitImpl":{"id":33,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[{"Deduplicated":1956}]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":22,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[8313,{"kind":{"TraitImpl":{"id":17,"generics":{"regions":["Erased"],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[{"index":0,"name":"'a","mutability":"Unknown"}],"skip_binder":{"id":14,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"HashConsedValue":[1161,{"Ref":[{"Var":{"Bound":[0,0]}},{"Deduplicated":1079},"Shared"]}]},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[8314,{"kind":{"TraitImpl":{"id":20,"generics":{"regions":["Erased"],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[{"index":0,"name":"'a","mutability":"Unknown"}],"skip_binder":{"id":13,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1161},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[8315,{"kind":{"TraitImpl":{"id":27,"generics":{"regions":["Erased"],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[{"index":0,"name":"'a","mutability":"Unknown"}],"skip_binder":{"id":15,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1161},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[8316,{"kind":{"TraitImpl":{"id":32,"generics":{"regions":[],"types":[{"HashConsedValue":[1962,{"Ref":["Erased",{"Deduplicated":1079},"Shared"]}]}],"const_generics":[],"trait_refs":[{"HashConsedValue":[1975,{"kind":{"TraitImpl":{"id":43,"generics":{"regions":["Erased"],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":19,"generics":{"regions":[],"types":[{"Deduplicated":1962},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"trait_decl_ref":{"regions":[{"index":0,"name":"'a","mutability":"Unknown"}],"skip_binder":{"id":20,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1161}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[8317,{"kind":{"TraitImpl":{"id":33,"generics":{"regions":[],"types":[{"Deduplicated":1962}],"const_generics":[],"trait_refs":[{"Deduplicated":1975}]}}},"trait_decl_ref":{"regions":[{"index":0,"name":"'a","mutability":"Unknown"}],"skip_binder":{"id":22,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1161}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[8318,{"kind":{"TraitImpl":{"id":24,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":17,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[8319,{"kind":{"TraitImpl":{"id":23,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":16,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[8320,{"kind":{"TraitImpl":{"id":30,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":18,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[8321,{"kind":{"TraitImpl":{"id":26,"generics":{"regions":["Erased"],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[{"index":0,"name":"'a","mutability":"Unknown"}],"skip_binder":{"id":17,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1161}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[8322,{"kind":{"TraitImpl":{"id":25,"generics":{"regions":["Erased"],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[{"index":0,"name":"'a","mutability":"Unknown"}],"skip_binder":{"id":16,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1161}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[8323,{"kind":{"TraitImpl":{"id":31,"generics":{"regions":["Erased"],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[{"index":0,"name":"'a","mutability":"Unknown"}],"skip_binder":{"id":18,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1161}],"const_generics":[],"trait_refs":[]}}}}]}],"consts":[{"id":33,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},{"id":34,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}],"types":[],"methods":[{"params":{"regions":[],"types":[{"index":0,"name":"T0"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":21,"beg":{"line":78,"col":24},"end":{"line":78,"col":31}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":27,"generics":{"regions":[],"types":[{"Deduplicated":1092}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":82,"generics":{"regions":[],"types":[{"Deduplicated":1091}],"const_generics":[],"trait_refs":[{"Deduplicated":1996}]}},"kind":{"TraitMethod":[24,0]}},null,null,{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":95,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[24,3]}},null,{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":96,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[24,5]}},{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":97,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[24,6]}},{"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":98,"generics":{"regions":[{"Var":{"Bound":[0,0]}},{"Var":{"Bound":[0,1]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[24,7]}},null,{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":99,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[24,9]}},null,{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[{"index":0,"name":"S"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":21,"beg":{"line":178,"col":22},"end":{"line":178,"col":34}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":28,"generics":{"regions":[],"types":[{"Deduplicated":1092},{"Deduplicated":2074}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":100,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":1091}],"const_generics":[],"trait_refs":[{"Deduplicated":2077}]}},"kind":{"TraitMethod":[24,11]}}],"vtable":null},{"def_id":38,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":38}}],"span":{"data":{"file_id":2,"beg":{"line":620,"col":0},"end":{"line":691,"col":1}},"generated_from_span":null},"source_text":"impl ff::PrimeField for Fp {\n type Repr = [u8; 32];\n\n const MODULUS: &'static str =\n \"0x40000000000000000000000000000000224698fc094cf91b992d30ed00000001\";\n const TWO_INV: Self = Fp::from_raw([\n 0xcc96987680000001,\n 0x11234c7e04a67c8d,\n 0x0000000000000000,\n 0x2000000000000000,\n ]);\n const NUM_BITS: u32 = 255;\n const CAPACITY: u32 = 254;\n const MULTIPLICATIVE_GENERATOR: Self = GENERATOR;\n const S: u32 = S;\n const ROOT_OF_UNITY: Self = ROOT_OF_UNITY;\n const ROOT_OF_UNITY_INV: Self = Fp::from_raw([\n 0xf0b87c7db2ce91f6,\n 0x84a0a1d8859f066f,\n 0xb4ed8e647196dad1,\n 0x2cd5282c53116b5c,\n ]);\n const DELTA: Self = DELTA;\n\n fn from_u128(v: u128) -> Self {\n Fp::from_raw([v as u64, (v >> 64) as u64, 0, 0])\n }\n\n fn from_repr(repr: Self::Repr) -> CtOption<Self> {\n let mut tmp = Fp([0, 0, 0, 0]);\n\n tmp.0[0] = u64::from_le_bytes(repr[0..8].try_into().unwrap());\n tmp.0[1] = u64::from_le_bytes(repr[8..16].try_into().unwrap());\n tmp.0[2] = u64::from_le_bytes(repr[16..24].try_into().unwrap());\n tmp.0[3] = u64::from_le_bytes(repr[24..32].try_into().unwrap());\n\n // Try to subtract the modulus\n let (_, borrow) = sbb(tmp.0[0], MODULUS.0[0], 0);\n let (_, borrow) = sbb(tmp.0[1], MODULUS.0[1], borrow);\n let (_, borrow) = sbb(tmp.0[2], MODULUS.0[2], borrow);\n let (_, borrow) = sbb(tmp.0[3], MODULUS.0[3], borrow);\n\n // If the element is smaller than MODULUS then the\n // subtraction will underflow, producing a borrow value\n // of 0xffff...ffff. Otherwise, it'll be zero.\n let is_some = (borrow as u8) & 1;\n\n // Convert to Montgomery form by computing\n // (a.R^0 * R^2) / R = a.R\n tmp *= &R2;\n\n CtOption::new(tmp, Choice::from(is_some))\n }\n\n fn to_repr(&self) -> Self::Repr {\n // Turn into canonical form by computing\n // (a.R) / R = a\n let tmp = Fp::montgomery_reduce(self.0[0], self.0[1], self.0[2], self.0[3], 0, 0, 0, 0);\n\n let mut res = [0; 32];\n res[0..8].copy_from_slice(&tmp.0[0].to_le_bytes());\n res[8..16].copy_from_slice(&tmp.0[1].to_le_bytes());\n res[16..24].copy_from_slice(&tmp.0[2].to_le_bytes());\n res[24..32].copy_from_slice(&tmp.0[3].to_le_bytes());\n\n res\n }\n\n fn is_odd(&self) -> Choice {\n Choice::from(self.to_repr()[0] & 1)\n }\n}","attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1895}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[{"HashConsedValue":[8324,{"kind":{"TraitImpl":{"id":37,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":24,"generics":{"regions":[],"types":[{"Deduplicated":1079}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[8325,{"kind":{"TraitImpl":{"id":6,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":7,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1072}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[8326,{"kind":{"TraitImpl":{"id":44,"generics":{"regions":[],"types":[{"Deduplicated":1894}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","32"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[{"Deduplicated":2143}]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":3,"generics":{"regions":[],"types":[{"Deduplicated":1895}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[8328,{"kind":{"TraitImpl":{"id":46,"generics":{"regions":[],"types":[{"Deduplicated":1894}],"const_generics":[],"trait_refs":[{"HashConsedValue":[8327,{"kind":{"TraitImpl":{"id":47,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":23,"generics":{"regions":[],"types":[{"Deduplicated":1894}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":23,"generics":{"regions":[],"types":[{"Deduplicated":1895}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[8329,{"kind":{"BuiltinOrAuto":{"builtin_data":"Auto","parent_trait_refs":[],"types":[]}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":25,"generics":{"regions":[],"types":[{"Deduplicated":1895}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[8330,{"kind":{"BuiltinOrAuto":{"builtin_data":"Auto","parent_trait_refs":[],"types":[]}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":26,"generics":{"regions":[],"types":[{"Deduplicated":1895}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[8331,{"kind":{"TraitImpl":{"id":48,"generics":{"regions":[],"types":[{"Deduplicated":1894}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","32"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":28,"generics":{"regions":[],"types":[{"Deduplicated":1895},{"Deduplicated":2162}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[8332,{"kind":{"TraitImpl":{"id":49,"generics":{"regions":[],"types":[{"Deduplicated":1894}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","32"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":30,"generics":{"regions":[],"types":[{"Deduplicated":1895},{"Deduplicated":2162}],"const_generics":[],"trait_refs":[]}}}}]}],"consts":[{"id":35,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},{"id":36,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},{"id":37,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},{"id":38,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},{"id":39,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},{"id":40,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},{"id":41,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},{"id":42,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},{"id":43,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}],"types":[null],"methods":[null,{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":108,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[29,1]}},{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":109,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[29,2]}},null,{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":110,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[29,4]}},{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":111,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[29,5]}},null],"vtable":null},{"def_id":39,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":39}}],"span":{"data":{"file_id":2,"beg":{"line":748,"col":0},"end":{"line":786,"col":1}},"generated_from_span":null},"source_text":"impl SqrtTableHelpers for Fp {\n fn pow_by_t_minus1_over2(&self) -> Self {\n let sqr = |x: Fp, i: u32| (0..i).fold(x, |x, _| x.square());\n\n let r10 = self.square();\n let r11 = r10 * self;\n let r110 = r11.square();\n let r111 = r110 * self;\n let r1001 = r111 * r10;\n let r1101 = r111 * r110;\n let ra = sqr(*self, 129) * self;\n let rb = sqr(ra, 7) * r1001;\n let rc = sqr(rb, 7) * r1101;\n let rd = sqr(rc, 4) * r11;\n let re = sqr(rd, 6) * r111;\n let rf = sqr(re, 3) * r111;\n let rg = sqr(rf, 10) * r1001;\n let rh = sqr(rg, 5) * r1001;\n let ri = sqr(rh, 4) * r1001;\n let rj = sqr(ri, 3) * r111;\n let rk = sqr(rj, 4) * r1001;\n let rl = sqr(rk, 5) * r11;\n let rm = sqr(rl, 4) * r111;\n let rn = sqr(rm, 4) * r11;\n let ro = sqr(rn, 6) * r1001;\n let rp = sqr(ro, 5) * r1101;\n let rq = sqr(rp, 4) * r11;\n let rr = sqr(rq, 7) * r111;\n let rs = sqr(rr, 3) * r11;\n rs.square() // rt\n }\n\n fn get_lower_32(&self) -> u32 {\n // TODO: don't reduce, just hash the Montgomery form. (Requires rebuilding perfect hash table.)\n let tmp = Fp::montgomery_reduce(self.0[0], self.0[1], self.0[2], self.0[3], 0, 0, 0, 0);\n\n tmp.0[0] as u32\n }\n}","attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":31,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1895}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[{"HashConsedValue":[7600,{"kind":{"TraitImpl":{"id":38,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":29,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1895}],"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":112,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[31,0]}},{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":113,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[31,1]}}],"vtable":null},{"def_id":40,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":40}}],"span":{"data":{"file_id":2,"beg":{"line":788,"col":0},"end":{"line":795,"col":1}},"generated_from_span":null},"source_text":"impl WithSmallOrderMulGroup<3> for Fp {\n const ZETA: Self = Fp::from_raw([\n 0x1dad5ebdfdfe4ab9,\n 0x1d1f8bd237ad3149,\n 0x2caad5dc57aab1b0,\n 0x12ccca834acdba71,\n ]);\n}","attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":32,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1895}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["U8","3"]}}},"ty":{"Deduplicated":1894}}],"trait_refs":[]}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[{"Deduplicated":7600}],"consts":[{"id":44,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}],"types":[],"methods":[],"vtable":null},{"def_id":41,"item_meta":{"name":[{"Ident":["pasta_curves",0]},{"Ident":["fields",0]},{"Ident":["fp",0]},{"Impl":{"Trait":41}}],"span":{"data":{"file_id":2,"beg":{"line":797,"col":0},"end":{"line":812,"col":1}},"generated_from_span":null},"source_text":"impl FromUniformBytes<64> for Fp {\n /// Converts a 512-bit little endian integer into\n /// a `Fp` by reducing by the modulus.\n fn from_uniform_bytes(bytes: &[u8; 64]) -> Fp {\n Fp::from_u512([\n u64::from_le_bytes(bytes[0..8].try_into().unwrap()),\n u64::from_le_bytes(bytes[8..16].try_into().unwrap()),\n u64::from_le_bytes(bytes[16..24].try_into().unwrap()),\n u64::from_le_bytes(bytes[24..32].try_into().unwrap()),\n u64::from_le_bytes(bytes[32..40].try_into().unwrap()),\n u64::from_le_bytes(bytes[40..48].try_into().unwrap()),\n u64::from_le_bytes(bytes[48..56].try_into().unwrap()),\n u64::from_le_bytes(bytes[56..64].try_into().unwrap()),\n ])\n }\n}","attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":33,"generics":{"regions":[],"types":[{"Deduplicated":1079},{"Deduplicated":1895}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","64"]}}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[{"Deduplicated":7600}],"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":114,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[33,0]}}],"vtable":null},{"def_id":42,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["borrow",0]},{"Impl":{"Trait":42}}],"span":{"data":{"file_id":15,"beg":{"line":212,"col":0},"end":{"line":212,"col":37}},"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":8294},{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[{"index":0,"name":"T"}],"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":215,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[19,0]}}],"vtable":{"id":48,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}},{"def_id":43,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["borrow",0]},{"Impl":{"Trait":43}}],"span":{"data":{"file_id":15,"beg":{"line":229,"col":0},"end":{"line":229,"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},"impl_trait":{"id":19,"generics":{"regions":[],"types":[{"Deduplicated":8333},{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[{"index":0,"name":"T"}],"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":216,"generics":{"regions":[{"Var":{"Free":0}},{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[19,0]}}],"vtable":{"id":49,"generics":{"regions":[{"Var":{"Free":0}}],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}},{"def_id":44,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":44}}],"span":{"data":{"file_id":23,"beg":{"line":444,"col":0},"end":{"line":444,"col":45}},"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":3,"generics":{"regions":[],"types":[{"Deduplicated":8334}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[{"index":0,"name":"T"}],"const_generics":[{"index":0,"name":"N","ty":{"Deduplicated":1073}}],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":23,"beg":{"line":444,"col":8},"end":{"line":444,"col":12}},"generated_from_span":null},"origin":"WhereClauseOnImpl","trait_":{"regions":[],"skip_binder":{"id":3,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[{"HashConsedValue":[8337,{"kind":{"TraitImpl":{"id":56,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[{"kind":{"Var":{"Free":0}},"ty":{"Deduplicated":1073}}],"trait_refs":[{"HashConsedValue":[8336,{"kind":{"ParentClause":[{"Deduplicated":8335},0]},"trait_decl_ref":{"regions":[],"skip_binder":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":8334}],"const_generics":[],"trait_refs":[]}}}}]}],"consts":[],"types":[],"methods":[],"vtable":null},{"def_id":45,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["marker",0]},{"Impl":{"Trait":45}}],"span":{"data":{"file_id":6,"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":3,"generics":{"regions":[],"types":[{"Deduplicated":1894}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[{"HashConsedValue":[8338,{"kind":{"TraitImpl":{"id":57,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":1894}],"const_generics":[],"trait_refs":[]}}}}]}],"consts":[],"types":[],"methods":[],"vtable":null},{"def_id":46,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":46}}],"span":{"data":{"file_id":23,"beg":{"line":503,"col":8},"end":{"line":503,"col":52}},"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":23,"generics":{"regions":[],"types":[{"Deduplicated":8339}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[{"index":0,"name":"T"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":23,"beg":{"line":503,"col":45},"end":{"line":503,"col":52}},"generated_from_span":null},"origin":"WhereClauseOnImpl","trait_":{"regions":[],"skip_binder":{"id":23,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}],"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":227,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[{"Deduplicated":8340}]}},"kind":{"TraitMethod":[23,0]}}],"vtable":null},{"def_id":47,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["default",0]},{"Impl":{"Trait":47}}],"span":{"data":{"file_id":20,"beg":{"line":154,"col":8},"end":{"line":154,"col":33}},"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":23,"generics":{"regions":[],"types":[{"Deduplicated":1894}],"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":228,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[23,0]}}],"vtable":null},{"def_id":48,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":48}}],"span":{"data":{"file_id":23,"beg":{"line":206,"col":0},"end":{"line":206,"col":51}},"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":8334},{"Deduplicated":8341}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[{"index":0,"name":"T"}],"const_generics":[{"index":0,"name":"N","ty":{"Deduplicated":1073}}],"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":229,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294}],"const_generics":[{"kind":{"Var":{"Free":0}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}},"kind":{"TraitMethod":[28,0]}}],"vtable":{"id":51,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[{"kind":{"Var":{"Free":0}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},{"def_id":49,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":49}}],"span":{"data":{"file_id":23,"beg":{"line":215,"col":0},"end":{"line":215,"col":51}},"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":30,"generics":{"regions":[],"types":[{"Deduplicated":8334},{"Deduplicated":8341}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[{"index":0,"name":"T"}],"const_generics":[{"index":0,"name":"N","ty":{"Deduplicated":1073}}],"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":231,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294}],"const_generics":[{"kind":{"Var":{"Free":0}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}},"kind":{"TraitMethod":[30,0]}}],"vtable":{"id":52,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[{"kind":{"Var":{"Free":0}},"ty":{"Deduplicated":1073}}],"trait_refs":[]}}},{"def_id":50,"item_meta":{"name":[{"Ident":["subtle",0]},{"Impl":{"Trait":50}}],"span":{"data":{"file_id":10,"beg":{"line":346,"col":8},"end":{"line":346,"col":36}},"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":8,"generics":{"regions":[],"types":[{"Deduplicated":1072}],"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":118,"generics":{"regions":[{"Var":{"Bound":[0,0]}},{"Var":{"Bound":[0,1]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[8,0]}},null],"vtable":null},{"def_id":51,"item_meta":{"name":[{"Ident":["subtle",0]},{"Impl":{"Trait":51}}],"span":{"data":{"file_id":10,"beg":{"line":159,"col":0},"end":{"line":159,"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":49,"generics":{"regions":[],"types":[{"Deduplicated":1250},{"Deduplicated":1250},{"Deduplicated":1250}],"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":[],"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":[49,0]}}],"vtable":{"id":54,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":52,"item_meta":{"name":[{"Ident":["subtle",0]},{"Impl":{"Trait":52}}],"span":{"data":{"file_id":10,"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":11,"generics":{"regions":[],"types":[{"Deduplicated":1072}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[{"HashConsedValue":[8342,{"kind":{"TraitImpl":{"id":67,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":3,"generics":{"regions":[],"types":[{"Deduplicated":1072}],"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":121,"generics":{"regions":[{"Var":{"Bound":[0,0]}},{"Var":{"Bound":[0,1]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[11,0]}},null,null],"vtable":null},{"def_id":53,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["nonzero",0]},{"Impl":{"Trait":53}}],"span":{"data":{"file_id":28,"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":34,"generics":{"regions":[],"types":[{"Deduplicated":1073},{"Deduplicated":5731}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[{"HashConsedValue":[8343,{"kind":{"TraitImpl":{"id":68,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":3,"generics":{"regions":[],"types":[{"Deduplicated":1073}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[8344,{"kind":{"TraitImpl":{"id":69,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":50,"generics":{"regions":[],"types":[{"Deduplicated":1073}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[8345,{"kind":{"TraitImpl":{"id":70,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":3,"generics":{"regions":[],"types":[{"Deduplicated":5731}],"const_generics":[],"trait_refs":[]}}}}]}],"consts":[],"types":[null],"methods":[],"vtable":null},{"def_id":54,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Impl":{"Trait":54}}],"span":{"data":{"file_id":9,"beg":{"line":712,"col":0},"end":{"line":714,"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":28,"generics":{"regions":[],"types":[{"Deduplicated":8333},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[{"index":0,"name":"T"},{"index":1,"name":"U"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":9,"beg":{"line":714,"col":7},"end":{"line":714,"col":23}},"generated_from_span":null},"origin":"WhereClauseOnImpl","trait_":{"regions":[],"skip_binder":{"id":28,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[]}}}}],"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":279,"generics":{"regions":[{"Var":{"Free":0}},{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[{"Deduplicated":8346}]}},"kind":{"TraitMethod":[28,0]}}],"vtable":{"id":55,"generics":{"regions":[{"Var":{"Free":0}}],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[{"Deduplicated":8346}]}}},{"def_id":55,"item_meta":{"name":[{"Ident":["subtle",0]},{"Impl":{"Trait":55}}],"span":{"data":{"file_id":10,"beg":{"line":204,"col":0},"end":{"line":204,"col":19}},"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":52,"generics":{"regions":[],"types":[{"Deduplicated":1250},{"Deduplicated":1250}],"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":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":224,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[52,0]}}],"vtable":{"id":56,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":56,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":56}}],"span":{"data":{"file_id":23,"beg":{"line":447,"col":0},"end":{"line":447,"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":1,"generics":{"regions":[],"types":[{"Deduplicated":8334}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[{"index":0,"name":"T"}],"const_generics":[{"index":0,"name":"N","ty":{"Deduplicated":1073}}],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":23,"beg":{"line":447,"col":8},"end":{"line":447,"col":13}},"generated_from_span":null},"origin":"WhereClauseOnImpl","trait_":{"regions":[],"skip_binder":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}],"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":280,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294}],"const_generics":[{"kind":{"Var":{"Free":0}},"ty":{"Deduplicated":1073}}],"trait_refs":[{"Deduplicated":8347}]}},"kind":{"TraitMethod":[1,0]}},null],"vtable":null},{"def_id":57,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["clone",0]},{"Ident":["impls",0]},{"Impl":{"Trait":57}}],"span":{"data":{"file_id":4,"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":1,"generics":{"regions":[],"types":[{"Deduplicated":1894}],"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":282,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[1,0]}},null],"vtable":null},{"def_id":58,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":58}}],"span":{"data":{"file_id":23,"beg":{"line":383,"col":0},"end":{"line":385,"col":26}},"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":45,"generics":{"regions":[],"types":[{"Deduplicated":8334},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[{"index":0,"name":"T"},{"index":1,"name":"I"},{"index":2,"name":"Clause0_Output"}],"const_generics":[{"index":0,"name":"N","ty":{"Deduplicated":1073}}],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":23,"beg":{"line":385,"col":9},"end":{"line":385,"col":25}},"generated_from_span":null},"origin":"WhereClauseOnImpl","trait_":{"regions":[],"skip_binder":{"id":45,"generics":{"regions":[],"types":[{"Deduplicated":8341},{"Deduplicated":8295},{"Deduplicated":8348}],"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":232,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[{"kind":{"Var":{"Free":0}},"ty":{"Deduplicated":1073}}],"trait_refs":[{"Deduplicated":8349}]}},"kind":{"TraitMethod":[45,0]}}],"vtable":{"id":57,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[{"kind":{"Var":{"Free":0}},"ty":{"Deduplicated":1073}}],"trait_refs":[{"Deduplicated":8349}]}}},{"def_id":59,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Impl":{"Trait":59}}],"span":{"data":{"file_id":65,"beg":{"line":11,"col":0},"end":{"line":13,"col":31}},"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":45,"generics":{"regions":[],"types":[{"Deduplicated":8341},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[{"index":0,"name":"T"},{"index":1,"name":"I"},{"index":2,"name":"Clause0_Output"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":65,"beg":{"line":13,"col":7},"end":{"line":13,"col":30}},"generated_from_span":null},"origin":"WhereClauseOnImpl","trait_":{"regions":[],"skip_binder":{"id":46,"generics":{"regions":[],"types":[{"Deduplicated":8295},{"Deduplicated":8341},{"Deduplicated":8348}],"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":284,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[{"Deduplicated":8350}]}},"kind":{"TraitMethod":[45,0]}}],"vtable":{"id":58,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[{"Deduplicated":8350}]}}},{"def_id":60,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Impl":{"Trait":60}}],"span":{"data":{"file_id":65,"beg":{"line":362,"col":0},"end":{"line":362,"col":58}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" The methods `index` and `index_mut` panic if:"},{"DocComment":" - the start of the range is greater than the end of the range or"},{"DocComment":" - the end of the range is out of bounds."}],"inline":null,"rename":null,"public":false},"is_local":false,"opacity":"Foreign","lang_item":null},"impl_trait":{"id":46,"generics":{"regions":[],"types":[{"Deduplicated":5197},{"Deduplicated":8341},{"Deduplicated":8341}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[{"index":0,"name":"T"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[{"HashConsedValue":[8351,{"kind":{"TraitImpl":{"id":71,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":53,"generics":{"regions":[],"types":[{"Deduplicated":5197}],"const_generics":[],"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":291,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[46,0]}},{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":292,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[46,1]}},{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":293,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[46,2]}},{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":294,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[46,3]}},{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":295,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[46,4]}},{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":296,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[46,5]}}],"vtable":{"id":59,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}},{"def_id":61,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Impl":{"Trait":61}}],"span":{"data":{"file_id":9,"beg":{"line":811,"col":0},"end":{"line":813,"col":26}},"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":54,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[{"index":0,"name":"T"},{"index":1,"name":"U"},{"index":2,"name":"Clause0_Error"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":9,"beg":{"line":813,"col":7},"end":{"line":813,"col":25}},"generated_from_span":null},"origin":"WhereClauseOnImpl","trait_":{"regions":[],"skip_binder":{"id":47,"generics":{"regions":[],"types":[{"Deduplicated":8295},{"Deduplicated":8294},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[],"consts":[],"types":[null],"methods":[{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":233,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[{"Deduplicated":8352}]}},"kind":{"TraitMethod":[54,0]}}],"vtable":null},{"def_id":62,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":62}}],"span":{"data":{"file_id":23,"beg":{"line":252,"col":0},"end":{"line":254,"col":12}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Tries to create an array `[T; N]` by copying from a slice `&[T]`."},{"DocComment":" Succeeds if `slice.len() == N`."},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let bytes: [u8; 3] = [1, 0, 2];"},{"DocComment":""},{"DocComment":" let bytes_head: [u8; 2] = <[u8; 2]>::try_from(&bytes[0..2]).unwrap();"},{"DocComment":" assert_eq!(1, u16::from_le_bytes(bytes_head));"},{"DocComment":""},{"DocComment":" let bytes_tail: [u8; 2] = bytes[1..3].try_into().unwrap();"},{"DocComment":" assert_eq!(512, u16::from_le_bytes(bytes_tail));"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":false},"is_local":false,"opacity":"Foreign","lang_item":null},"impl_trait":{"id":47,"generics":{"regions":[],"types":[{"Deduplicated":8334},{"Deduplicated":8353},{"Deduplicated":5172}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[{"index":0,"name":"T"}],"const_generics":[{"index":0,"name":"N","ty":{"Deduplicated":1073}}],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":23,"beg":{"line":254,"col":7},"end":{"line":254,"col":11}},"generated_from_span":null},"origin":"WhereClauseOnImpl","trait_":{"regions":[],"skip_binder":{"id":3,"generics":{"regions":[],"types":[{"Deduplicated":8294}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[],"consts":[],"types":[null],"methods":[{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":298,"generics":{"regions":[{"Var":{"Free":0}}],"types":[{"Deduplicated":8294}],"const_generics":[{"kind":{"Var":{"Free":0}},"ty":{"Deduplicated":1073}}],"trait_refs":[{"Deduplicated":8335}]}},"kind":{"TraitMethod":[47,0]}}],"vtable":null},{"def_id":63,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":63}}],"span":{"data":{"file_id":23,"beg":{"line":182,"col":9},"end":{"line":182,"col":14}},"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":6,"generics":{"regions":[],"types":[{"Deduplicated":5172}],"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"},{"index":2,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":299,"generics":{"regions":[{"Var":{"Bound":[0,0]}},{"Var":{"Bound":[0,1]}},{"Var":{"Bound":[0,2]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[6,0]}}],"vtable":{"id":60,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":64,"item_meta":{"name":[{"Ident":["subtle",0]},{"Impl":{"Trait":64}}],"span":{"data":{"file_id":10,"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":7,"generics":{"regions":[],"types":[{"Deduplicated":1250},{"Deduplicated":1894}],"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":236,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[7,0]}}],"vtable":null},{"def_id":65,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["array",0]},{"Impl":{"Trait":65}}],"span":{"data":{"file_id":23,"beg":{"line":397,"col":0},"end":{"line":399,"col":29}},"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":48,"generics":{"regions":[],"types":[{"Deduplicated":8334},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[{"index":0,"name":"T"},{"index":1,"name":"I"},{"index":2,"name":"Clause0_Clause0_Output"}],"const_generics":[{"index":0,"name":"N","ty":{"Deduplicated":1073}}],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":23,"beg":{"line":399,"col":9},"end":{"line":399,"col":28}},"generated_from_span":null},"origin":"WhereClauseOnImpl","trait_":{"regions":[],"skip_binder":{"id":48,"generics":{"regions":[],"types":[{"Deduplicated":8341},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[{"HashConsedValue":[8356,{"kind":{"TraitImpl":{"id":58,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[{"kind":{"Var":{"Free":0}},"ty":{"Deduplicated":1073}}],"trait_refs":[{"HashConsedValue":[8355,{"kind":{"ParentClause":[{"Deduplicated":8354},0]},"trait_decl_ref":{"regions":[],"skip_binder":{"id":45,"generics":{"regions":[],"types":[{"Deduplicated":8341},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":45,"generics":{"regions":[],"types":[{"Deduplicated":8334},{"Deduplicated":8295},{"Deduplicated":8348}],"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":237,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[{"kind":{"Var":{"Free":0}},"ty":{"Deduplicated":1073}}],"trait_refs":[{"Deduplicated":8354}]}},"kind":{"TraitMethod":[48,0]}}],"vtable":{"id":61,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[{"kind":{"Var":{"Free":0}},"ty":{"Deduplicated":1073}}],"trait_refs":[{"Deduplicated":8354}]}}},{"def_id":66,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Impl":{"Trait":66}}],"span":{"data":{"file_id":65,"beg":{"line":25,"col":0},"end":{"line":27,"col":31}},"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":48,"generics":{"regions":[],"types":[{"Deduplicated":8341},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[{"index":0,"name":"T"},{"index":1,"name":"I"},{"index":2,"name":"Clause0_Output"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":65,"beg":{"line":27,"col":7},"end":{"line":27,"col":30}},"generated_from_span":null},"origin":"WhereClauseOnImpl","trait_":{"regions":[],"skip_binder":{"id":46,"generics":{"regions":[],"types":[{"Deduplicated":8295},{"Deduplicated":8341},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[{"HashConsedValue":[8357,{"kind":{"TraitImpl":{"id":59,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[{"Deduplicated":8350}]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":45,"generics":{"regions":[],"types":[{"Deduplicated":8341},{"Deduplicated":8295},{"Deduplicated":8348}],"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":302,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":8294},{"Deduplicated":8295},{"Deduplicated":8348}],"const_generics":[],"trait_refs":[{"Deduplicated":8350}]}},"kind":{"TraitMethod":[48,0]}}],"vtable":{"id":62,"generics":{"regions":[],"types":[{"Deduplicated":8294},{"Deduplicated":8295}],"const_generics":[],"trait_refs":[{"Deduplicated":8350}]}}},{"def_id":67,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["marker",0]},{"Impl":{"Trait":67}}],"span":{"data":{"file_id":6,"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":3,"generics":{"regions":[],"types":[{"Deduplicated":1072}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[{"HashConsedValue":[8358,{"kind":{"TraitImpl":{"id":72,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":1072}],"const_generics":[],"trait_refs":[]}}}}]}],"consts":[],"types":[],"methods":[],"vtable":null},{"def_id":68,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["marker",0]},{"Impl":{"Trait":68}}],"span":{"data":{"file_id":6,"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":3,"generics":{"regions":[],"types":[{"Deduplicated":1073}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[{"HashConsedValue":[8359,{"kind":{"TraitImpl":{"id":73,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":1073}],"const_generics":[],"trait_refs":[]}}}}]}],"consts":[],"types":[],"methods":[],"vtable":null},{"def_id":69,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["nonzero",0]},{"Impl":{"Trait":69}}],"span":{"data":{"file_id":28,"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":50,"generics":{"regions":[],"types":[{"Deduplicated":1073}],"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":63,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":70,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["niche_types",0]},{"Impl":{"Trait":70}}],"span":{"data":{"file_id":67,"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":3,"generics":{"regions":[],"types":[{"Deduplicated":5731}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[{"HashConsedValue":[8360,{"kind":{"TraitImpl":{"id":74,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":5731}],"const_generics":[],"trait_refs":[]}}}}]}],"consts":[],"types":[],"methods":[],"vtable":null},{"def_id":71,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["slice",0]},{"Ident":["index",0]},{"Ident":["private_slice_index",0]},{"Impl":{"Trait":71}}],"span":{"data":{"file_id":65,"beg":{"line":114,"col":4},"end":{"line":114,"col":37}},"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":53,"generics":{"regions":[],"types":[{"Deduplicated":5197}],"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":64,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":72,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["clone",0]},{"Ident":["impls",0]},{"Impl":{"Trait":72}}],"span":{"data":{"file_id":4,"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":1,"generics":{"regions":[],"types":[{"Deduplicated":1072}],"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":307,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[1,0]}},null],"vtable":null},{"def_id":73,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["clone",0]},{"Ident":["impls",0]},{"Impl":{"Trait":73}}],"span":{"data":{"file_id":4,"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":1,"generics":{"regions":[],"types":[{"Deduplicated":1073}],"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":308,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[1,0]}},null],"vtable":null},{"def_id":74,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["niche_types",0]},{"Impl":{"Trait":74}}],"span":{"data":{"file_id":67,"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":1,"generics":{"regions":[],"types":[{"Deduplicated":5731}],"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":309,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[1,0]}},null],"vtable":null}],"ordered_decls":[{"Type":{"NonRec":10}},{"Type":{"NonRec":9}},{"Type":{"NonRec":11}},{"TraitDecl":{"NonRec":6}},{"Type":{"NonRec":55}},{"Fun":{"NonRec":299}},{"TraitImpl":{"NonRec":63}},{"TraitDecl":{"NonRec":28}},{"Fun":{"NonRec":229}},{"TraitImpl":{"NonRec":48}},{"TraitDecl":{"NonRec":30}},{"Fun":{"NonRec":231}},{"TraitImpl":{"NonRec":49}},{"TraitDecl":{"NonRec":1}},{"TraitDecl":{"NonRec":3}},{"TraitDecl":{"NonRec":47}},{"Fun":{"NonRec":298}},{"TraitImpl":{"NonRec":62}},{"TraitDecl":{"NonRec":45}},{"Fun":{"NonRec":232}},{"TraitDecl":{"NonRec":48}},{"Fun":{"NonRec":237}},{"Fun":{"NonRec":280}},{"TraitImpl":{"NonRec":56}},{"TraitImpl":{"NonRec":44}},{"TraitDecl":{"NonRec":23}},{"Fun":{"NonRec":227}},{"TraitImpl":{"NonRec":46}},{"TraitDecl":{"NonRec":19}},{"Fun":{"NonRec":129}},{"Fun":{"NonRec":215}},{"TraitImpl":{"NonRec":42}},{"Fun":{"NonRec":216}},{"TraitImpl":{"NonRec":43}},{"Fun":{"NonRec":1}},{"Fun":{"NonRec":282}},{"TraitImpl":{"NonRec":57}},{"TraitDecl":{"NonRec":5}},{"Fun":{"NonRec":13}},{"TraitDecl":{"NonRec":4}},{"Fun":{"NonRec":4}},{"Type":{"NonRec":3}},{"Type":{"NonRec":5}},{"TraitDecl":{"NonRec":10}},{"TraitDecl":{"NonRec":9}},{"Fun":{"NonRec":16}},{"Fun":{"NonRec":21}},{"Fun":{"NonRec":223}},{"Fun":{"NonRec":230}},{"TraitDecl":{"NonRec":7}},{"Fun":{"NonRec":117}},{"Fun":{"NonRec":297}},{"Fun":{"NonRec":279}},{"TraitImpl":{"NonRec":54}},{"Fun":{"NonRec":233}},{"Fun":{"NonRec":209}},{"Fun":{"NonRec":228}},{"TraitImpl":{"NonRec":47}},{"Fun":{"NonRec":116}},{"TraitDecl":{"NonRec":21}},{"TraitDecl":{"NonRec":20}},{"Fun":{"NonRec":130}},{"TraitDecl":{"NonRec":22}},{"Fun":{"NonRec":208}},{"Fun":{"NonRec":131}},{"TraitImpl":{"NonRec":45}},{"TraitDecl":{"NonRec":25}},{"TraitDecl":{"NonRec":26}},{"TraitDecl":{"NonRec":2}},{"Fun":{"NonRec":115}},{"Fun":{"NonRec":214}},{"Fun":{"NonRec":276}},{"Fun":{"NonRec":210}},{"Fun":{"NonRec":238}},{"Fun":{"NonRec":235}},{"TraitDecl":{"NonRec":14}},{"Fun":{"NonRec":124}},{"TraitDecl":{"NonRec":13}},{"Fun":{"NonRec":123}},{"TraitDecl":{"NonRec":15}},{"Fun":{"NonRec":125}},{"TraitDecl":{"NonRec":12}},{"Fun":{"NonRec":122}},{"TraitDecl":{"NonRec":17}},{"Fun":{"NonRec":127}},{"TraitDecl":{"NonRec":16}},{"Fun":{"NonRec":126}},{"TraitDecl":{"NonRec":18}},{"Fun":{"NonRec":128}},{"Fun":{"NonRec":283}},{"Fun":{"NonRec":301}},{"Type":{"NonRec":56}},{"Fun":{"NonRec":234}},{"TraitDecl":{"NonRec":53}},{"TraitDecl":{"NonRec":46}},{"Fun":{"NonRec":284}},{"TraitImpl":{"NonRec":59}},{"Fun":{"NonRec":302}},{"TraitImpl":{"NonRec":66}},{"TraitImpl":{"NonRec":71}},{"Fun":{"NonRec":285}},{"Fun":{"NonRec":286}},{"Fun":{"NonRec":287}},{"Fun":{"NonRec":288}},{"Fun":{"NonRec":289}},{"Fun":{"NonRec":290}},{"Fun":{"NonRec":296}},{"Fun":{"NonRec":295}},{"Fun":{"NonRec":294}},{"Fun":{"NonRec":293}},{"Fun":{"NonRec":292}},{"Fun":{"NonRec":291}},{"TraitImpl":{"NonRec":60}},{"Fun":{"NonRec":226}},{"Fun":{"NonRec":239}},{"Type":{"NonRec":7}},{"Type":{"NonRec":1}},{"TraitDecl":{"NonRec":11}},{"TraitDecl":{"NonRec":8}},{"Type":{"NonRec":52}},{"TraitDecl":{"NonRec":27}},{"TraitDecl":{"NonRec":24}},{"Fun":{"NonRec":83}},{"Fun":{"NonRec":86}},{"Fun":{"NonRec":88}},{"Fun":{"NonRec":89}},{"Fun":{"NonRec":90}},{"Fun":{"NonRec":92}},{"Fun":{"NonRec":94}},{"TraitDecl":{"NonRec":29}},{"Fun":{"NonRec":102}},{"Fun":{"NonRec":103}},{"Fun":{"NonRec":105}},{"Fun":{"NonRec":106}},{"TraitDecl":{"NonRec":32}},{"TraitDecl":{"NonRec":33}},{"Fun":{"NonRec":252}},{"Fun":{"NonRec":219}},{"Fun":{"NonRec":220}},{"Fun":{"NonRec":221}},{"Fun":{"NonRec":222}},{"Fun":{"NonRec":120}},{"Fun":{"NonRec":119}},{"Fun":{"NonRec":224}},{"Fun":{"NonRec":236}},{"Fun":{"NonRec":10}},{"Fun":{"NonRec":118}},{"Fun":{"NonRec":31}},{"Fun":{"NonRec":121}},{"Fun":{"NonRec":225}},{"TraitDecl":{"NonRec":31}},{"Fun":{"NonRec":249}},{"Fun":{"NonRec":250}},{"Fun":{"NonRec":212}},{"Fun":{"NonRec":213}},{"Fun":{"NonRec":211}},{"Type":{"NonRec":0}},{"Fun":{"NonRec":0}},{"TraitImpl":{"NonRec":1}},{"TraitImpl":{"NonRec":2}},{"Fun":{"NonRec":9}},{"Fun":{"NonRec":12}},{"TraitImpl":{"NonRec":8}},{"Fun":{"NonRec":5}},{"TraitImpl":{"NonRec":3}},{"Fun":{"NonRec":6}},{"TraitImpl":{"NonRec":4}},{"Fun":{"NonRec":58}},{"Global":{"NonRec":2}},{"Fun":{"NonRec":68}},{"Fun":{"NonRec":67}},{"Fun":{"NonRec":7}},{"TraitImpl":{"NonRec":5}},{"Fun":{"NonRec":78}},{"Fun":{"NonRec":34}},{"Global":{"NonRec":0}},{"Fun":{"NonRec":75}},{"Fun":{"NonRec":57}},{"Global":{"NonRec":1}},{"Fun":{"NonRec":73}},{"Fun":{"NonRec":74}},{"Fun":{"NonRec":39}},{"Fun":{"NonRec":52}},{"Fun":{"NonRec":59}},{"Global":{"NonRec":3}},{"Fun":{"NonRec":8}},{"TraitImpl":{"NonRec":6}},{"TraitImpl":{"NonRec":7}},{"Fun":{"NonRec":20}},{"TraitImpl":{"NonRec":10}},{"Fun":{"NonRec":15}},{"TraitImpl":{"NonRec":9}},{"Fun":{"NonRec":30}},{"TraitImpl":{"NonRec":11}},{"Fun":{"NonRec":77}},{"Fun":{"NonRec":35}},{"TraitImpl":{"NonRec":12}},{"Fun":{"NonRec":36}},{"TraitImpl":{"NonRec":13}},{"Fun":{"NonRec":37}},{"TraitImpl":{"NonRec":14}},{"Fun":{"NonRec":76}},{"Fun":{"NonRec":38}},{"TraitImpl":{"NonRec":15}},{"TraitImpl":{"NonRec":16}},{"Fun":{"NonRec":55}},{"TraitImpl":{"NonRec":32}},{"Fun":{"NonRec":56}},{"TraitImpl":{"NonRec":33}},{"Fun":{"NonRec":60}},{"Global":{"NonRec":4}},{"Fun":{"NonRec":71}},{"Fun":{"NonRec":61}},{"Global":{"NonRec":5}},{"Fun":{"NonRec":62}},{"Global":{"NonRec":6}},{"Fun":{"NonRec":63}},{"Global":{"NonRec":7}},{"Fun":{"NonRec":64}},{"Global":{"NonRec":8}},{"Fun":{"NonRec":65}},{"Global":{"NonRec":9}},{"Fun":{"NonRec":66}},{"TraitImpl":{"NonRec":34}},{"Fun":{"NonRec":69}},{"Fun":{"NonRec":42}},{"Fun":{"NonRec":70}},{"Fun":{"NonRec":79}},{"Fun":{"NonRec":72}},{"Fun":{"NonRec":110}},{"Fun":{"NonRec":80}},{"TraitImpl":{"NonRec":35}},{"Fun":{"NonRec":81}},{"TraitImpl":{"NonRec":36}},{"Fun":{"NonRec":54}},{"TraitImpl":{"NonRec":31}},{"Fun":{"NonRec":53}},{"TraitImpl":{"NonRec":30}},{"Fun":{"NonRec":49}},{"TraitImpl":{"NonRec":26}},{"Fun":{"NonRec":48}},{"TraitImpl":{"NonRec":25}},{"Fun":{"NonRec":47}},{"TraitImpl":{"NonRec":24}},{"Fun":{"NonRec":46}},{"TraitImpl":{"NonRec":23}},{"TraitImpl":{"NonRec":29}},{"Fun":{"NonRec":50}},{"TraitImpl":{"NonRec":27}},{"Fun":{"NonRec":45}},{"TraitImpl":{"NonRec":22}},{"Fun":{"NonRec":43}},{"TraitImpl":{"NonRec":20}},{"TraitImpl":{"NonRec":19}},{"Fun":{"NonRec":40}},{"TraitImpl":{"NonRec":17}},{"Fun":{"NonRec":100}},{"Fun":{"NonRec":97}},{"Fun":{"NonRec":99}},{"Fun":{"NonRec":98}},{"Fun":{"NonRec":95}},{"Fun":{"NonRec":96}},{"Fun":{"NonRec":82}},{"Fun":{"NonRec":218}},{"Global":{"NonRec":34}},{"Fun":{"NonRec":217}},{"Global":{"NonRec":33}},{"TraitImpl":{"NonRec":37}},{"Fun":{"NonRec":111}},{"Fun":{"NonRec":109}},{"Fun":{"NonRec":108}},{"Fun":{"NonRec":248}},{"Global":{"NonRec":43}},{"Fun":{"NonRec":247}},{"Global":{"NonRec":42}},{"Fun":{"NonRec":246}},{"Global":{"NonRec":41}},{"Fun":{"NonRec":245}},{"Global":{"NonRec":40}},{"Fun":{"NonRec":244}},{"Global":{"NonRec":39}},{"Fun":{"NonRec":242}},{"Global":{"NonRec":37}},{"Fun":{"NonRec":241}},{"Global":{"NonRec":36}},{"Fun":{"NonRec":243}},{"Global":{"NonRec":38}},{"Fun":{"NonRec":240}},{"Global":{"NonRec":35}},{"TraitImpl":{"NonRec":38}},{"Fun":{"NonRec":113}},{"Fun":{"NonRec":112}},{"TraitImpl":{"NonRec":39}},{"Fun":{"NonRec":251}},{"Global":{"NonRec":44}},{"TraitImpl":{"NonRec":40}},{"Fun":{"NonRec":114}},{"TraitImpl":{"NonRec":41}},{"Fun":{"NonRec":41}},{"TraitImpl":{"NonRec":18}},{"Fun":{"NonRec":44}},{"TraitImpl":{"NonRec":21}},{"Fun":{"NonRec":51}},{"TraitImpl":{"NonRec":28}}]},"has_errors":false} |