; ModuleID = 'core.3a1fbbbh-cgu.0'
source_filename = "core.3a1fbbbh-cgu.0"
target datalayout = "e-P1-p:16:8-i8:8-i16:8-i32:8-i64:8-f32:8-f64:8-n8-a:8"
target triple = "avr-unknown-unknown"

%"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeDebugContinue>, char::EscapeDebug>" = type { [0 x i8], { i8*, i8* }, [0 x i8], %"option::Option<char::EscapeDebug>", [0 x i8], %"option::Option<char::EscapeDebug>", [0 x i8] }
%"option::Option<char::EscapeDebug>" = type { [0 x i8], i8, [7 x i8] }
%"fmt::Formatter" = type { [0 x i8], i32, [0 x i8], i32, [0 x i8], i8, [0 x i8], { i8, i16 }, [0 x i8], { i8, i16 }, [0 x i8], { {}*, [3 x i16]* }, [0 x i8] }
%"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeDefault>, char::EscapeDefault>" = type { [0 x i8], { i8*, i8* }, [0 x i8], %"option::Option<char::EscapeDefault>", [0 x i8], %"option::Option<char::EscapeDefault>", [0 x i8] }
%"option::Option<char::EscapeDefault>" = type { [0 x i8], i8, [7 x i8] }
%"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeUnicode>, char::EscapeUnicode>" = type { [0 x i8], { i8*, i8* }, [0 x i8], %"option::Option<char::EscapeUnicode>", [0 x i8], %"option::Option<char::EscapeUnicode>", [0 x i8] }
%"option::Option<char::EscapeUnicode>" = type { [0 x i8], i32, [3 x i8] }
%"iter::adapters::flatten::FlattenCompat<option::IntoIter<char::EscapeDebug>, char::EscapeDebug>" = type { [0 x i8], %"iter::adapters::fuse::Fuse<option::IntoIter<char::EscapeDebug>>", [0 x i8], %"option::Option<char::EscapeDebug>", [0 x i8], %"option::Option<char::EscapeDebug>", [0 x i8] }
%"iter::adapters::fuse::Fuse<option::IntoIter<char::EscapeDebug>>" = type { [0 x i8], %"option::Option<option::IntoIter<char::EscapeDebug>>", [0 x i8] }
%"option::Option<option::IntoIter<char::EscapeDebug>>" = type { [0 x i8], i8, [7 x i8] }
%"iter::adapters::Filter<slice::Split<u8, str::IsAsciiWhitespace>, str::BytesIsNotEmpty>" = type { [0 x i8], %"str::BytesIsNotEmpty", [0 x i8], %"slice::Split<u8, str::IsAsciiWhitespace>", [0 x i8] }
%"str::BytesIsNotEmpty" = type {}
%"slice::Split<u8, str::IsAsciiWhitespace>" = type { [0 x i8], %"str::IsAsciiWhitespace", [0 x i8], { [0 x i8]*, i16 }, [0 x i8], i8, [0 x i8] }
%"str::IsAsciiWhitespace" = type {}
%"str::SplitTerminator<char>" = type { [0 x i8], %"str::SplitInternal<char>", [0 x i8] }
%"str::SplitInternal<char>" = type { [0 x i8], i16, [0 x i8], i16, [0 x i8], %"str::pattern::CharSearcher", [0 x i8], i8, [0 x i8], i8, [0 x i8] }
%"str::pattern::CharSearcher" = type { [0 x i8], { [0 x i8]*, i16 }, [0 x i8], i16, [0 x i8], i16, [0 x i8], i32, [0 x i8], i16, [0 x i8], [4 x i8], [0 x i8] }
%"str::Split<str::IsWhitespace>" = type { [0 x i8], %"str::SplitInternal<str::IsWhitespace>", [0 x i8] }
%"str::SplitInternal<str::IsWhitespace>" = type { [0 x i8], i16, [0 x i8], i16, [0 x i8], %"str::pattern::CharPredicateSearcher<str::IsWhitespace>", [0 x i8], i8, [0 x i8], i8, [0 x i8] }
%"str::pattern::CharPredicateSearcher<str::IsWhitespace>" = type { [0 x i8], %"str::pattern::MultiCharEqSearcher<str::IsWhitespace>", [0 x i8] }
%"str::pattern::MultiCharEqSearcher<str::IsWhitespace>" = type { [0 x i8], %"str::IsWhitespace", [0 x i8], { [0 x i8]*, i16 }, [0 x i8], %"str::CharIndices", [0 x i8] }
%"str::IsWhitespace" = type {}
%"str::CharIndices" = type { [0 x i8], i16, [0 x i8], { i8*, i8* }, [0 x i8] }
%"panic::{{impl}}::internal_constructor::NoPayload" = type {}
%"fmt::builders::PadAdapter" = type { [0 x i8], { {}*, [3 x i16]* }, [0 x i8], i8*, [0 x i8] }
%"fmt::Arguments" = type { [0 x i8], { [0 x { [0 x i8]*, i16 }]*, i16 }, [0 x i8], { i8*, i16 }, [0 x i8], { [0 x { i8*, i8 addrspace(1)* }]*, i16 }, [0 x i8] }
%"task::wake::RawWakerVTable" = type { [0 x i8], { i8*, i8* } ({}*) addrspace(1)*, [0 x i8], void ({}*) addrspace(1)*, [0 x i8], void ({}*) addrspace(1)*, [0 x i8], void ({}*) addrspace(1)*, [0 x i8] }
%"num::dec2flt::parse::Decimal" = type { [0 x i8], { [0 x i8]*, i16 }, [0 x i8], { [0 x i8]*, i16 }, [0 x i8], i64, [0 x i8] }
%"num::flt2dec::decoder::Decoded" = type { [0 x i8], i64, [0 x i8], i64, [0 x i8], i64, [0 x i8], i16, [0 x i8], i8, [0 x i8] }
%"char::EscapeDefaultState" = type { [0 x i8], i8, [7 x i8] }
%"char::EscapeUnicode" = type { [0 x i8], i32, [0 x i8], i8, [0 x i8], i16, [0 x i8] }
%"char::EscapeDefault" = type { [0 x i8], %"char::EscapeDefaultState", [0 x i8] }
%"char::CaseMappingIter" = type { [0 x i8], i8, [12 x i8] }
%"marker::PhantomData<&mut ffi::VaListImpl>" = type {}
%"option::Option<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>>" = type { [8 x i8], i8, [15 x i8] }
%"option::Option<iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>" = type { [4 x i8], i8, [15 x i8] }
%"char::EscapeDebug" = type { [0 x i8], %"char::EscapeDefault", [0 x i8] }
%"iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>" = type { [0 x i8], %"iter::adapters::flatten::FlattenCompat<option::IntoIter<char::EscapeDebug>, char::EscapeDebug>", [0 x i8] }
%"option::IntoIter<char::EscapeDebug>" = type { [0 x i8], %"option::Item<char::EscapeDebug>", [0 x i8] }
%"option::Item<char::EscapeDebug>" = type { [0 x i8], %"option::Option<char::EscapeDebug>", [0 x i8] }
%"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>" = type { [0 x i8], %"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeDebugContinue>, char::EscapeDebug>", [0 x i8] }
%"panic::Location" = type { [0 x i8], { [0 x i8]*, i16 }, [0 x i8], i32, [0 x i8], i32, [0 x i8] }
%"hash::sip::Hasher<hash::sip::Sip13Rounds>" = type { [0 x i8], %"marker::PhantomData<hash::sip::Sip13Rounds>", [0 x i8], i64, [0 x i8], i64, [0 x i8], i16, [0 x i8], %"hash::sip::State", [0 x i8], i64, [0 x i8], i16, [0 x i8] }
%"marker::PhantomData<hash::sip::Sip13Rounds>" = type {}
%"hash::sip::State" = type { [0 x i8], i64, [0 x i8], i64, [0 x i8], i64, [0 x i8], i64, [0 x i8] }
%"hash::sip::Hasher<hash::sip::Sip24Rounds>" = type { [0 x i8], %"marker::PhantomData<hash::sip::Sip24Rounds>", [0 x i8], i64, [0 x i8], i64, [0 x i8], i16, [0 x i8], %"hash::sip::State", [0 x i8], i64, [0 x i8], i16, [0 x i8] }
%"marker::PhantomData<hash::sip::Sip24Rounds>" = type {}
%"hash::sip::SipHasher24" = type { [0 x i8], %"hash::sip::Hasher<hash::sip::Sip24Rounds>", [0 x i8] }
%"str::pattern::MultiCharEqSearcher<&[char]>" = type { [0 x i8], { [0 x i32]*, i16 }, [0 x i8], { [0 x i8]*, i16 }, [0 x i8], %"str::CharIndices", [0 x i8] }
%"str::pattern::StrSearcherImpl" = type { [0 x i8], i8, [22 x i8] }
%"str::pattern::TwoWaySearcher" = type { [0 x i8], i16, [0 x i8], i16, [0 x i8], i16, [0 x i8], i64, [0 x i8], i16, [0 x i8], i16, [0 x i8], i16, [0 x i8], i16, [0 x i8] }
%"str::pattern::EmptyNeedle" = type { [0 x i8], i16, [0 x i8], i16, [0 x i8], i8, [0 x i8], i8, [0 x i8] }
%"iter::adapters::Map<str::SplitTerminator<char>, str::LinesAnyMap>" = type { [0 x i8], %"str::LinesAnyMap", [0 x i8], %"str::SplitTerminator<char>", [0 x i8] }
%"str::LinesAnyMap" = type {}
%"str::Lines" = type { [0 x i8], %"iter::adapters::Map<str::SplitTerminator<char>, str::LinesAnyMap>", [0 x i8] }
%"iter::adapters::Filter<str::Split<str::IsWhitespace>, str::IsNotEmpty>" = type { [0 x i8], %"str::IsNotEmpty", [0 x i8], %"str::Split<str::IsWhitespace>", [0 x i8] }
%"str::IsNotEmpty" = type {}
%"iter::adapters::Map<iter::adapters::Filter<slice::Split<u8, str::IsAsciiWhitespace>, str::BytesIsNotEmpty>, str::UnsafeBytesToStr>" = type { [0 x i8], %"str::UnsafeBytesToStr", [0 x i8], %"iter::adapters::Filter<slice::Split<u8, str::IsAsciiWhitespace>, str::BytesIsNotEmpty>", [0 x i8] }
%"str::UnsafeBytesToStr" = type {}
%"iter::adapters::chain::Chain<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>, iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>" = type { [0 x i8], %"option::Option<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>>", [0 x i8], %"option::Option<iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>", [0 x i8] }
%"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDefault, str::CharEscapeDefault>" = type { [0 x i8], %"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeDefault>, char::EscapeDefault>", [0 x i8] }
%"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeUnicode, str::CharEscapeUnicode>" = type { [0 x i8], %"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeUnicode>, char::EscapeUnicode>", [0 x i8] }
%"convert::Infallible" = type { [0 x i8] }
%"fmt::builders::DebugList" = type { [0 x i8], %"fmt::builders::DebugInner", [0 x i8] }
%"fmt::builders::DebugInner" = type { [0 x i8], %"fmt::Formatter"*, [0 x i8], i8, [0 x i8], i8, [0 x i8] }
%"result::Result<usize, num::ParseIntError>" = type { [0 x i8], i8, [2 x i8] }
%"char::ToUppercase" = type { [0 x i8], %"char::CaseMappingIter", [0 x i8] }
%"str::lossy::Utf8Lossy" = type { [0 x i8], [0 x i8] }
%"result::Result<num::NonZeroUsize, num::ParseIntError>" = type { [0 x i8], i8, [2 x i8] }
%"result::Result<num::NonZeroIsize, num::ParseIntError>" = type { [0 x i8], i8, [2 x i8] }
%"num::bignum::Big32x40" = type { [0 x i8], i16, [0 x i8], [40 x i32], [0 x i8] }
%"num::dec2flt::parse::ParseResult" = type { [0 x i8], i8, [16 x i8] }
%"option::Option<(usize, i16)>" = type { [0 x i8], i8, [4 x i8] }
%"num::flt2dec::Part" = type { [0 x i8], i8, [4 x i8] }
%"num::flt2dec::Formatted" = type { [0 x i8], { [0 x i8]*, i16 }, [0 x i8], { [0 x %"num::flt2dec::Part"]*, i16 }, [0 x i8] }
%"num::flt2dec::decoder::FullDecoded" = type { [26 x i8], i8, [0 x i8] }
%"num::TryFromIntError" = type { [0 x i8], {}, [0 x i8] }
%"result::Result<u64, num::ParseIntError>" = type { [0 x i8], i8, [8 x i8] }
%"result::Result<i16, num::ParseIntError>" = type { [0 x i8], i8, [2 x i8] }
%"result::Result<i128, num::ParseIntError>" = type { [0 x i8], i8, [16 x i8] }
%"result::Result<u16, num::ParseIntError>" = type { [0 x i8], i8, [2 x i8] }
%"result::Result<u32, num::ParseIntError>" = type { [0 x i8], i8, [4 x i8] }
%"result::Result<i64, num::ParseIntError>" = type { [0 x i8], i8, [8 x i8] }
%"result::Result<i32, num::ParseIntError>" = type { [0 x i8], i8, [4 x i8] }
%"result::Result<u128, num::ParseIntError>" = type { [0 x i8], i8, [16 x i8] }
%"ops::range::RangeFull" = type {}
%"ascii::EscapeDefault" = type { [0 x i8], { i16, i16 }, [0 x i8], [4 x i8], [0 x i8] }
%"cell::BorrowError" = type { [0 x i8], {}, [0 x i8] }
%"cell::BorrowMutError" = type { [0 x i8], {}, [0 x i8] }
%"char::convert::CharTryFromError" = type { [0 x i8], {}, [0 x i8] }
%"char::ToLowercase" = type { [0 x i8], %"char::CaseMappingIter", [0 x i8] }
%"fmt::builders::DebugStruct" = type { [0 x i8], %"fmt::Formatter"*, [0 x i8], i8, [0 x i8], i8, [0 x i8] }
%"panic::PanicInfo" = type { [0 x i8], { {}*, [3 x i16]* }, [0 x i8], i8*, [0 x i8], %"panic::Location"*, [0 x i8] }
%"sync::atomic::AtomicBool" = type { [0 x i8], i8, [0 x i8] }
%"option::Option<fmt::builders::PadAdapter>" = type { [0 x i8], {}*, [4 x i8] }
%"fmt::builders::DebugTuple" = type { [0 x i8], %"fmt::Formatter"*, [0 x i8], i8, [0 x i8], i16, [0 x i8], i8, [0 x i8] }
%"fmt::builders::DebugSet" = type { [0 x i8], %"fmt::builders::DebugInner", [0 x i8] }
%"fmt::builders::DebugMap" = type { [0 x i8], %"fmt::Formatter"*, [0 x i8], i8, [0 x i8], i8, [0 x i8], i8, [0 x i8], i8, [0 x i8] }
%"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>" = type { [20 x i8] }
%"mem::maybe_uninit::MaybeUninit<[u8; 1024]>" = type { [1024 x i8] }
%"mem::maybe_uninit::MaybeUninit<[u8; 17]>" = type { [17 x i8] }
%"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>" = type { [30 x i8] }
%"fmt::rt::v1::Argument" = type { [0 x i8], i16, [0 x i8], %"fmt::rt::v1::FormatSpec", [0 x i8] }
%"fmt::rt::v1::FormatSpec" = type { [0 x i8], i32, [0 x i8], i8, [0 x i8], i32, [0 x i8], { i8, i16 }, [0 x i8], { i8, i16 }, [0 x i8] }
%"fmt::::Opaque" = type {}
%"fmt::Error" = type {}
%"str::traits::{{impl}}::index::{{closure}}.0" = type { [0 x i8], { [0 x i8]*, i16 }*, [0 x i8], i16*, [0 x i8], i16*, [0 x i8] }
%"fmt::{{impl}}::fmt::BorrowedPlaceholder" = type {}
%"str::pattern::StrSearcher" = type { [0 x i8], { [0 x i8]*, i16 }, [0 x i8], { [0 x i8]*, i16 }, [0 x i8], %"str::pattern::StrSearcherImpl", [0 x i8] }
%"option::Option<str::lossy::Utf8LossyChunk>" = type { [0 x i8], {}*, [6 x i8] }
%"str::ParseBoolError" = type { [0 x i8], {}, [0 x i8] }
%"str::Utf8Error" = type { [0 x i8], i16, [0 x i8], { i8, i8 }, [0 x i8] }
%"result::Result<&str, str::Utf8Error>" = type { [0 x i8], i8, [4 x i8] }
%"result::Result<&mut str, str::Utf8Error>" = type { [0 x i8], i8, [4 x i8] }
%"str::EncodeUtf16" = type { [0 x i8], { i8*, i8* }, [0 x i8], i16, [0 x i8] }
%"str::EscapeDebug" = type { [0 x i8], %"iter::adapters::chain::Chain<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>, iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>", [0 x i8] }
%"str::EscapeDefault" = type { [0 x i8], %"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDefault, str::CharEscapeDefault>", [0 x i8] }
%"str::EscapeUnicode" = type { [0 x i8], %"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeUnicode, str::CharEscapeUnicode>", [0 x i8] }
%"alloc::layout::LayoutErr" = type { [0 x i8], {}, [0 x i8] }
%"alloc::AllocErr" = type {}
%"result::Result<num::NonZeroU16, num::ParseIntError>" = type { [0 x i8], i8, [2 x i8] }
%"result::Result<num::NonZeroU32, num::ParseIntError>" = type { [0 x i8], i8, [4 x i8] }
%"result::Result<num::NonZeroU64, num::ParseIntError>" = type { [0 x i8], i8, [8 x i8] }
%"result::Result<num::NonZeroU128, num::ParseIntError>" = type { [0 x i8], i8, [16 x i8] }
%"result::Result<num::NonZeroI16, num::ParseIntError>" = type { [0 x i8], i8, [2 x i8] }
%"result::Result<num::NonZeroI32, num::ParseIntError>" = type { [0 x i8], i8, [4 x i8] }
%"result::Result<num::NonZeroI64, num::ParseIntError>" = type { [0 x i8], i8, [8 x i8] }
%"result::Result<num::NonZeroI128, num::ParseIntError>" = type { [0 x i8], i8, [16 x i8] }
%"num::bignum::tests::Big8x3" = type { [0 x i8], i16, [0 x i8], [3 x i8], [0 x i8] }
%"result::Result<isize, num::ParseIntError>" = type { [0 x i8], i8, [2 x i8] }
%"marker::PhantomPinned" = type {}
%"array::TryFromSliceError" = type { [0 x i8], {}, [0 x i8] }
%"option::NoneError" = type {}
%"sync::atomic::AtomicI8" = type { [0 x i8], i8, [0 x i8] }
%"sync::atomic::AtomicU8" = type { [0 x i8], i8, [0 x i8] }
%"sync::atomic::AtomicI16" = type { [0 x i8], i16, [0 x i8] }
%"sync::atomic::AtomicU16" = type { [0 x i8], i16, [0 x i8] }
%"sync::atomic::AtomicIsize" = type { [0 x i8], i16, [0 x i8] }
%"sync::atomic::AtomicUsize" = type { [0 x i8], i16, [0 x i8] }
%"hash::sip::SipHasher13" = type { [0 x i8], %"hash::sip::Hasher<hash::sip::Sip13Rounds>", [0 x i8] }
%"hash::sip::SipHasher" = type { [0 x i8], %"hash::sip::SipHasher24", [0 x i8] }
%"hash::sip::Sip13Rounds" = type {}
%"hash::sip::Sip24Rounds" = type {}
%"str::pattern::SearchStep" = type { [0 x i8], i8, [4 x i8] }
%"str::pattern::CharSliceSearcher" = type { [0 x i8], %"str::pattern::MultiCharEqSearcher<&[char]>", [0 x i8] }
%"str::lossy::Utf8LossyChunk" = type { [0 x i8], { [0 x i8]*, i16 }, [0 x i8], { [0 x i8]*, i16 }, [0 x i8] }
%"str::LinesAny" = type { [0 x i8], %"str::Lines", [0 x i8] }
%"str::SplitWhitespace" = type { [0 x i8], %"iter::adapters::Filter<str::Split<str::IsWhitespace>, str::IsNotEmpty>", [0 x i8] }
%"str::SplitAsciiWhitespace" = type { [0 x i8], %"iter::adapters::Map<iter::adapters::Filter<slice::Split<u8, str::IsAsciiWhitespace>, str::BytesIsNotEmpty>, str::UnsafeBytesToStr>", [0 x i8] }

@alloc18113 = private unnamed_addr constant <{ [35 x i8] }> <{ [35 x i8] c"assertion failed: e >= table::MIN_E" }>, align 1
@alloc18118 = private unnamed_addr constant <{ [92 x i8] }> <{ [92 x i8] c"/home/dylan/projects/avr-rust/rust/avr-support-upstream/src/libcore/num/dec2flt/algorithm.rs" }>, align 1
@alloc18115 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [92 x i8] }>, <{ [92 x i8] }>* @alloc18118, i32 0, i32 0, i32 0), [10 x i8] c"\\\00\11\00\00\00\05\00\00\00" }>, align 1
@0 = private unnamed_addr constant <{ [6110 x i8] }> <{ [6110 x i8] c"<\A8\AB)).\B6\E0&I\0B\BA\D9\DCq\8Co\1B\8E(\10T\8E\AFK\A2\B12\14\E9q\DBo\05\AF\9F\AC1'\89\CA\C6\9A\C7\17\FEp\AB}x\81\B9\9D=M\D6N\EB\F0\93\82F\F0\85\22&\ED8#Xl\A7\AAo(\07,nG\D1\CAEy\84\DB\A4\CC\82=\97\97e\12\CE\7F\A3\0C}\FD\FE\96\C1_\CCO\DC\BC\BE\FC\B1w\FF\B1\096\F7=\CF\AA\9F\1E\8C\03u\0D\83\95\C7%oD\D2\D0\E3z\F9w\C5j\83b\CE\EC\9B\D5vE$\FB\01\E8\C2\8A\D4V\EDy\02\A2\F3\D7DV4\8CAE\98\0C\D6kA\EF\91V\BE\8F\CB\C6\11k6\EC\ED9?\1C\EB\02\A2\B3\94\08O\E3\A5\83\8A\E0\B9\CA\22\\\8F$\ADX\E8\BE\95\99\D96l7\91.\FB\FF\8FDG\85\B5\F9\F9\FF\B3\15\99\E6\E2<\FC\7F\90\AD\1F\D0\8DK\FB\9F\F4\98'D\B1\1D\FA\C71\7F1\95\DDR\FC\1C\7F\EF>}\8Ag;\E4^\AB\8E\1C\ADAJ\9D6V\B2c\D8hN\22\E2uO>\87\02\E2\AAZS\E3\0D\A9\83\9AU1(\\Q\D3\92\80\D5\1E\99\D9\12\84\B6\E0\8Af\FF\8F\17\A5\E4\98-@\FFs]\CE\8E\7F\1C\88\7Fh\FA\80r\9F#j\9F\029\A1O\87\ACDGC\87\C9\22\A9\D7\15\19\14\E9\FB\B5\C9\A6\AD\8F\ACq\9D#|\10\99\B3\17\CE\C4+\9BT\7F\A0\9D\01\F6\FB\E0\94O\84\02\C1\99:\19zc%C1\C0\88\9FX\BC\EE\93=\F0\B5c\B75u|&\96\A3<%\83\92\1B\B0\BB\CB\8B\EE#w\22\9C\EA_\17uv\8A\95\A1\927]\12\14\ED\FAI\B7\85\F4\16Y\A8y\1C\E5\D3X\AE7\09\CC1\8F\08\EF\99\85\0B?\FE\B2\C9j\00g\CE\CE\BD\DF\BEB`\00A\A1\D6\8BmSx@\91I\CC\AEIh\96\90\F5[\7F\DA-\01^zy\99\8F\88y\81\F5\D8\D7\7F\B3\AA\D7\E12\CF\CD_`\D5&\CD\7F\A1\E0;\\\85p\C0\DF\C9\D8J\B3\A6\8C\B0W\FC\8E\1D`\D0W\CE\B6]y\12<\82\ED\81$\B5\17\17\CB\A2i\A2m\A2\DD\DC}\CB\03\0B\09\0B\15T]\FE\E2\A6\E5&\8DT\FA\9E\9A\10\9Fp\B0\E9\B8\C6\C1\D4\C6\8C\1C$g\F8\F8D\FC\D7\91v@\9B7V\FBM6\94\10\C2\C4+z\E1C\B9\94\F2[[\ECl\CA\F3\9C\971r'\08\BD0\84\BD\BEN1J\EC<\E5\EC7\D1^\AE\13F\0F\94\84\85\F6\99\98\17\13\B9\E5&t\C0~\DDW\E7O\98H8o\EA\96\90c\BEZ\06\0B\A5\BC\B4\FCm\F1\C7M\CE\EB\E1\BD\E4\F6\9C\F0`3\8D\ED\9D4\C4,9\80\B0h\C5A\F5wG\A0\DCa\1BI\F9\AA,\E4\899b\9B\B7\D57]\AC\C7:\82%\CB\85t\D7\BDdq\F7\9E\D3\A8\86\EC\BDM\B5\86\08S\A8g-\A1b\A8\CAg\D2`\BC\A4=\A9\DE\80\83x\EB\0D\8DS\16a\A4VfQp\E8[y\CD\F6\DF2Fq\D9k\80\F4\97\BF\97\CD\CF\86\A0\F0}\AF\FD\C0\83\A8\C8l]\1B=\B1\A4\D2\FAd\1A1\C6\EE\A6\C3\9C\FD`\BDw\AA\90\F4\C3<\B9\AC\15\D5\B4\F1\F4\C5\F3\8B-\05\11\17\99\B7\F0\EExF\D5\\\BF\E5\AC*\17\98\0A4\EF\0F\ACz\0E\9F\86\80\95\13W\19\D2F\A8\E0\BA\D7\AC\9F\86X\D2\98\E9\06\CC#Tw\83\FF\91\08\BF,)Ud\7F\B6\CA\EEwsj=\1F\E4>\F5*\88b\86\93\8E\8E\B25*\FBg8\B21\1F\C3\F4\F9\81\C6\DE\7F\F3\F98<\11<\8B_p8G\8B\15\0B\AEv\8C\06\19\EE\DA\8D\D9\CA\17\A4\CF\D4\A8\F8\87\BC\1D\8D\03\0A\D3\F6\A9+ep\84\CC\87t\D4;?\C6\D2\DF\D4\C8\84\0A\CFw\C7\17\0A\FB\A5\CC\C2U\B9\9D\CCy\CF\C0\99\D5\93\E2\1F\AC\810\00\CB8\DB'\17\A2<\C0\FD\06\D2\F1\9C\CAK0\BD\88F.D\FD/>v\15\EC\9CJ\9E\BA\CD\D3\1A'D\DD\C5)\C1\88\E10\95T\F7\BAx\F5\8C>\DD\94\9A\E8\D620\8E\14:\C1\A2\8C?\BC\B1\99\88\F1\E5\B7\A7\15\0F`\F5\96\DE\A5\11\DB\12\B8\B2\BCV\0F\D6\91\17f\DF\EB\96\C9%\BB\CE\9Fk\93\FB;\EFi\C2\87F\B8\FA\0Ak\04\B3)X\E6\DC\E6\C2\E2\0F\1A\F7\8F\93\A0s\DB\93\E0\F4\B3\B8\88P\D2\B8\18\F2\E0sUr\83sO\97\8C\D0\EANdP#\BD\AF\84\A5b}$l\AC\DBr\A7]\CE\96\C3K\89O\11\F5\81|\B4\9E\AB\A3Ur\A2\9Ba\86\D6\86u\87E\01\FD\13\86\E7R\E9\96A\FC\98\A7\A1\A7\A3\FCQ;\7F\D1\C5H\E6=\13\85\EF\82\F6\DA_\0DXf\AB\A3\B3\D1\B7\10\EE?\96\CC \C6\E5\94\E9\CF\BB\FF\D4\9B\0F\FD\F1a\D5\9F\C9\82S|n\BA\CA\C7{ch\1B\0Ai\BD\F9->!Q\A6a\16\9C\B8\8Di\E5\0F\FA\1B\C3&\F1\C3\DE\93\F8\E2\F3\B8v:k\\\DBm\98f\14\09\863R\89\BE\7FY\8Bg\C0\A6+\EE\F0\17\B7@8H\DB\94\EC\DD\E4PF\1A\12\BAf\15\1E\E5\D7\A0\96\E8`\CD2\EF\86$^\91\B8\80\FF\AA\A8\AD\B5\B5\E6`\BF\D5\12\19#\E3\90\9C\97\C5\AB\EF\F5\8D\B4\83\FD\B6\96ks\B1\A1\E4\BCd|F\D0\DD\E4\0E\F6\BE\0D,\A2\8A\9E\92\B3.\11\B7J\ADEw`z\D5d\9D\D8\8BJ|l\05_b\87.]\9B\C7\C6\F6:\A9y4\82yx\B4\89\D3\CC`\F1K\CB\106\84\FF\B8\ED\1E\FE\94C\A5>'\A9\A6=z\94\CE\87\B8)\88f\CC\1C\81\A9&4*\80\FFc\A1S0\C14`\FF\BC\C9h|\F1A8?,\FC\C1\ED6)\83\A7\9B\9D1\A9\84\F3c\91\02\C5}\D3e\F0\BC5C\F6.\A4?\16\96\01\EA\99:\8D\CF\9B\FB\81d\C0\88p\C3\82z\A2}\F0U&\BA\91\8C\85N\96\EB\AF(\B6\EF&\E2\BB\E5\DB\B2\A3\AB\B0\DA\EAo\C9OFk\AE\C8\92\CB\BB\E3\17\06\DAz\B7\BE\AA\DC\9D\87\90Y\E5\B7\EA\A9\C2T\FAW\8FdeT\F3\E9\F8-\B3\BD~)p$w\F9\DF6\EF\19\C6v\EA\FB\8B\04k\A0w\14\E5\FA\AE\C5\85\88\95Y\9E\B9\DA\9BSu\FD\F7\02\B4\88\82\A8\D2\FC\B5\03\E1\AA\A2R\07|\A3D\99\D5\A5\93\84-\E6\CA\7F\85\8F\B8\E5\B8\9F\BD\DF\A6\B2&\1F\A7\07\AD\97\D00xs\C8$\CC^\82;V\90\FA-\7F\F6\A2\CAk4y\F9\1E\B4\CB\BD\86\81\D7\B7&\A1\FE6\F4\B0\E62\B8$\9FD1]\A0?\E6\ED\C6\94}t\88\CF_\A9\F8}\CEH\B5\E1\DBi\9B\1C\02\9B\22\DARD\C2\A3\C2A\AB\90g\D5\F2\A6\19\09k\BA`\C5\97\0F`\CB\05\E9\B8\B6\BD\138>G#g$\ED\0C\E3\86\0Cv\C06\94\CF\9B\A8\8F\93pD\B9\C3\C2\92s\B8\8C\95\E7\BA\B9;H\F3w\BD\90(\A8J\1A\F0\D5\EC\B42R\DD l\0B(\E2_S\8A\94#\07Y\8D7\E8\ACy\ECH\AF\B0E\22\18\98'\1B\DB\DCk\15\0F\BF\F8\F0\08\8A\C6\DA\D2\EE6-\8B\ACw\91\87\AA\84\F8\AD\D7\EB\BA\94\EAR\BB\CC\86\A5\E99\A5'\EA\7F\A8\0Fd\88\8E\B1\E4\9F\D2\89>\15\F9\EE\EE\A3\83+\8EZ\B7\AA\EA\8C\A4\B611eU%\B0\CD\12\BF>_U\17\8E\80\D6n\0E\B7*\9D\B1\A0\8C\0A\D2du\04\DE\C8/\8D\06\BE\92\85\15\FB=\18\C4\B6{s\ED\9CM\1Eu\A4Z\D0(\C4\E0e\92Mq\043\F5\AC\7F{\D0\C6\E2?\99\97_\9A\84x\DB\8F\BF}\F7\C0\A5V\D2s\EF\AE\9A\98'vc\A8\95Y\C1~\B1S|\12\BB\B0q\DE\9Dh\1B\D7\E9\0E\07\ABb!q&\92\D1\C8U\BBi\0D\B0\B6\06;+*\C4\10\\\E4\E3\04[\9Az\8A\B9\8E\1C\C6\F1@\19\EDg\B2\A37.\91_\E8\01\DF\C6\E2\BC\BA;1a\8Bx\1Bl\A9\8A}9\AEV\22\C7S\ED\DC\C7\D9uu\\T\14\EA\1C\88\D3\92si\99$$\AA\88w\D0\C3\BF-\AD\D4\B5Jb\DA\97<\EC\84b\DD\FA\D0\BDK'\A6\BA\949E\AD\1E\B1\CF\F5\FCCK,\B3\CE\812\FC\14^\F7_B\A2>;\9A5\F5\F7\D2\CA\0E\CA\00\83\F2\B5\87\FDH~\E0\91\B7\D1t\9E\DB\9DXv%\06\12\C6Q\C5\EE\D3\AE\87\96\F7S;uD\CD\14\BE\9A'\8A\92\95\00\9Am\C1\B1,\F7\BA\80\00\C9\F1\EF{\DAtP\A0\1D\97\EB\1A\11\92d\08\E5\BC\A5a\95\B6}J\1E\EC\07]\1D\92\8E\EE\92\93I\B4\A462\AAw\B8[\E1M\C4\BE\94\95\E6\D9\AC\B0:\F7|\1D\90\0F\D8\\\095\DC$\B4\13\0E\B4KB\13.\E1\CC\88Po\09\CC\BC\8C\FF\AA$\CB\0B\FF\EB\AF\BF\D5\ED\BD\CE\FE\E6\DB\97\A5\B46A_p\89\FD\CEa\84\11w\CC\AB\BCBz\E5\D5\94\BF\D6\B6il\AF\05\BD7\86#\84G\1BG\AC\C5\A7,e\19\E2X\17\B7\D1;\DFO\8D\97n\12\83\0A\D7\A3p=\0A\D7\A3\CD\CC\CC\CC\CC\CC\CC\CC\00\00\00\00\00\00\00\80\00\00\00\00\00\00\00\A0\00\00\00\00\00\00\00\C8\00\00\00\00\00\00\00\FA\00\00\00\00\00\00@\9C\00\00\00\00\00\00P\C3\00\00\00\00\00\00$\F4\00\00\00\00\00\80\96\98\00\00\00\00\00 \BC\BE\00\00\00\00\00(k\EE\00\00\00\00\00\F9\02\95\00\00\00\00@\B7C\BA\00\00\00\00\10\A5\D4\E8\00\00\00\00*\E7\84\91\00\00\00\80\F4 \E6\B5\00\00\00\A01\A9_\E3\00\00\00\04\BF\C9\1B\8E\00\00\00\C5.\BC\A2\B1\00\00@v:k\0B\DE\00\00\E8\89\04#\C7\8A\00\00b\AC\C5\EBx\AD\00\80z\17\B7&\D7\D8\00\90\ACn2x\86\87\00\B4W\0A?\16h\A9\00\A1\ED\CC\CE\1B\C2\D3\A0\84\14@aQY\84\C8\A5\19\90\B9\A5o\A5:\0F \F4'\8F\CB\CE\84\09\94\F8x9?\81\E5\0B\B96\D7\07\8F\A1\DFNg\04\CD\C9\F2\C9\96\22\81E@|o\FC\9E\B5p+\A8\AD\C5\9D\05\E3L6\12\197\C5\C7\1B\E0\C3V\DF\84\F6\\\11l:\96\0B\13\9A\B3\15\07\C9{\CE\97\C0 \DBH\BB\1A\C2\BD\F0\F4\88\0D\B5P\99v\961\EBP\E2\A4?\14\BC\FD%\E5\1A\8EO\19\EB\BE7\CF\D0\B8\D1\EF\92\AE\05\03\05'\C6\AB\B7\19\C7C\C6\B0\B7\96\E5p\\\EA{\CE2~\8F\8C\F3\E4\1A\82\BF]\B3o0\9E\A1b/5\E0E\DE\02\A5\9D=!\8C\D7\95C\0E\05\8D)\AFL{\D4QF\F0\F3\DA\10\CD$\F3+v\D8\88T\00\EE\EF\B6\93\0E\ABh\80\E9\AB\A48\D2\D5A\F0q\EBfc\A3\85RlN\A6@<\0C\A7f\07\E2\CFPK\CF\D0\A0D\ED\81\12\8F\81\82\C8\95h\22\D7\F2!\A3:\BB\02\EB\8Co\EA\CB\08j\C3%p\0B\E5\FEE\22\9A\17&'O\9F\D6\AA\80\9D\EF\F0\22\C7\8C\D5\E0\84+\AD\EB\F8w\85\0C3;L\93\9B\D5\A6\CF\FFI\1Fx\C2\8B\90\C3\7F\1C'\16\F3W:\DA\CFq\D8\ED\97\EC\C8\D0C\8EN\E9\BD'\FB\C4\D41\A2c\ED\F9\1C\FB$_E^\947\E49\EE\B6\D6u\B9D]\C8\A9dL\D3\E7K:\1D\EA\BE\0F\E4\90\DD\88\A4\A4\AE\13\1D\B5\15\AB\CDM\9AXd\E2\ED\8A\A0p`\B7~\8D\A8\AD\C8\8C8e\DE\B0\12\D9\FA\AF\86\FE\15\DD\AB\C7\FC-\14\BF-\8A\96\F9{9\D9.\B9\AC\FC\F7\DA\87\8Fz\E7\D7\FD\DA\E8\B4\99\AC\F0\86\BD\11#\22\C0\D7\AC\A8,\D6\AB*\B0\0D\D8\D2\DBe\AB\1A\8E\08\C7\83R?V\A1\B1\CA\B8\A4'\CF\AB\09^\FD\E6\CDxa\0B\C6Z^\B0\80\D69\8Ew\F1u\DC\A0L\C8q\D5m\93\13\C9_:\CEJIxX\FB{\E4\C0\CE-K\17\9D\9A\1DqB\F9\1D]\C4\01e\0D\93wet\F5 _\E8\BBj\BFh\99\E9v\E2jE\EF\C2\BF\A3\14\9B\C5\16\AB\B3\EF\E6\EC\80;\EEJ\D0\95\1F(a\CA\A9]D\BB'r\F9<\14u\15\EAX\E7\1B\A6,iM\92.\E1\A2\CFw\C3\E0\B6z\99\8B\C3U\F4\98\E4\EC?7\9A\B5\98\DF\8E\E7\0F\C5\00\E3~\97\B2\E1S\F6\C0\9B^=\DFm\F4\99X![\86\8B\88q\C0\AE\E9\F1g\AE\EA\8Dp\1Ad\EE\01\DA\B2X\86\90\FE4A\88\DF\EE\A74>\82Q\AA\96\EA\D1\C1\CD\E2\E5\D4\9E2#\99\C0\AD\0F\85F\FFk\BF0\99S\A6\17\FFF\EF|\7F\E8\CFn_\8C\15\AEO\F1\81Jw\EF\9A\99\A3m\A2\1CU\AB\01\80\0C\09\CBc*\16\02\A0O\CB\FD~\DAM\01\C4\11\9F\9E\1EQ\A1\015\D6F\C6e\A5\09B\C2\8B\D8\F7_\07FiYW\E7\9A7\89\97\C3/-\A1\C1\85k}\B4{x\09\F23c\CEPM\EBE\97\00\FC\01\A5 f\17\BD\00{B\CE\A8?]\EC\E0\8C\E9\80\C9G\BA\93\18\F0#\E1\BB\D9\A8\B8\1E\ECl\D9*\10\D3\E6\93\13\E4\C7\1A\EAC\90w\18\DDy\A1\E4T\B4\95^T\D8\C9\1Dj\E1\1D\BB4'\9ER\E2\8C\E4\E9\01\B1E\E7\1A\B0]dB\1D\17\A1!\DC\BA~Ir\AE\04\95\89i\DE\DB\0E\DAE\FA\AB\03\D6\92\92P\D7\F8\D6\C2\C5\9B[\92\86[\863\B7\82\F26h\F2\A7\FFd#\AFD\02\EF\D1\1F\1Fv\EDja5\83\E7\A6\D3\A8\C5\B9\02\A4\A1\90\08\137h\03\CDeZ\E5k\22!\22\80\FE\B0\DE\06k\A9*\A0=]\96\C8\C5S5\C8\8D\F4\BB:\B7\A8B\FA\D8x\B5\84r\A9i\9C\0E\D7\E2%\CF\13\84\C3\D1\8C[\EF\C2\18e\F4\038\99\D5y/\BF\98\04\86\FFJX\FB\EE\BE\85g\BF].\BA\AA\EE\B3\A0\97\FA\\\B4*\95\E0\88=9tau\BA\17\EB\8CG\D1\B9\12\E9\EF\12\B8\CC\22\B4\AB\91\AA\17\E6\7F+\A1\16\B6\95\9D\DF_vI\9C\E3}\C2\EB\FB\E9\ADA\8E\1C\B3\E6zd\19\D2\B1\E3_\A0\99\BD\9FF\DE\EE;\04\80\D6#\EC\8A\EAJ\05 \CC,\A7\AD\A4\9D\06(\FF\F7\10\D9\87\22\04y\FF\9A\AA\87(+EW\BFA\95\A9\F2u\16-/\92\FA\D3\B7\09.|]\9B|\84%\8C9\DB4\C2\9B\A5/\EF\07\12\C2\B2\02\CF}\F5DK\B9\AFa\81\DC2\16\9E\A7\1B\BA\A1\93\BF\9B\85\91\A2(\CAx\AF\02\E75\CB\B2\FC\AB\ADa\B0\01\BF\EF\9D\16\19z\1C\C2\AEk\C5\\\9F\98\A3r\9A\C6\F6\99c?\A6\87 <\9A\80<\CF\8F\A9(\CB\C0\9F\0B\C3\F3\D3\F2\FD\F0D\E7Yx\C4\B7\9E\96\15ap\96\B5eF\BCZy\0C\FC\22\FFW\EB\D8\CB\87\DDu\FF\16\93\CE\BE\E9TS\BF\DC\B7\82.$*(\EF\D3\E5\11\9DV\1Ayu\A4\8FUD\EC`\D7\92\8D\B3kU'9\8D\F7p\E0c\95\B8C\B8\9AF\8C\BB\BA\A6TfAX\AFji\D0\E9\BFQ.\DB\E2A\22\F2\17\F3\FC\88[\D2\AA\EE\DD/<\AB\F2\86Uj\D5;\0B\D6Wtube\05\C7\85m\D1\12\BB\BE\C68\A7\C8\85\D7in\F8\06\D1\9D\B3&\02E[\A4\82\84`\B0B\16rM\A3\A5x\\\D3\9B\CE \CC\CE\963\C8B\02)\FFA> \BDi\A1y\9F\D1Mh,\C4\09X\C7Fa\8275\0C.\F9\CC|\B1B\A1\C7\BC\9B\FE\DB]\93\89\F9\AB\C2\FER5\F8\EB\F7V\F3\DFS!{\F3Z\16\98\D6\A8\E9Y\B0\F1\1B\BE\0C\13dp\1C\EE\A2\ED\E8\8B>\C6\D1\D4\85\94\E1.\CE7\06J\A7\B9\9A\BA\C1\C5\87\1C\11\E8\A0\14\99\DB\D4\B1\0A\91\C8Y\7F\12J^M\B5:0\1F\97\DC\B5\A0\E2$~s\DE\A9q\A4\8D\AD]\10V\14\8E\0D\B1\19u\94k\99\F1P\DD0\C9<\E3\FF\96R\8A{\FB\0B\DC\BF<\E7\ACZ\FA\0E\D3\EF\0B!\D8x\\\E9\E3u\A7\14\87\96\B3\E3\\S\D1\D9\A8|\A0\1C4\A8E\10\D3N\E4\91 \89+\EA\83a]\B6hk\B6\E4\A4\B9\F4\E3B\06\E4\1D\CE\F4x\CE\E9\83\AE\D2\801\17B\E4$Z\07\A1\FD\9CR\1D\AE0I\C9<D\A7\A4\D9|\9B\FB\A6\8A\E8\06\08.A\9DO\AD\A2\08\8Ay\91\C4\A3X\CB\8A\EC\D7\B5\F5f\17\BF\D6\F3\A6\91\99?\DDn\CC\B0\10\F6\BF\8F\94\8A\FF\DC\94\F3\EF\D9\9C\B6\1F\0A=\F8\95\10D\A4\A7LLv\BB\14U\8D\D1_\DFS\EA,U\F8\E2\9Bkt\92wj\B6\DB\82\86\11\B7\15\05\A4\92#\E8\D5\E4-\83\A6;\16\B1\05\8F\F8#\90\CA[\1D\C7\B2\F7,4\BD\B2\E4x\DF\1A\9C@\B6\EF\8E\AB\8B!\C3\D0\A3\ABr\96\AE\E9\F3\C4\8CV\0F<\DAq\18\FB\17\96\89e\88\8E\DE\F9\9D\FB\EB~\AA1Vx\85\FA\A6\1E\D5\DF5k\93\\(3\85W\03F\B8s\F2\7F\A6,\84W\A6\10\EF\1F\D0\9C\B2\F6gj\F5\13\82C_\F4\01\C5\F2\98\A2\13wqBv/?\CB\D8\D4\0D\D3S\FB\0E\FE\07\A5\E8c\14]\C9\9EI\CE\E2|Y\B4{\C6\DB\81\1B\DCo\A1\1A\F8)1\91\E9\E5\A4\10\9Bs}\F5c\1F\CE\D4\C1\D0\DC\F2<\A7\01J\F2\02\CA\17\86\08An\97\82\BC\9D\A7J\D1I\BD\A3+\85Q\9DE\9C\ECF;\F3R\82\AB\E1\93\17\0A\B0\E7b\16\DA\B8\9D\0C\9C\A1\FB\9B\10\E7\E2\87\01E}aj\90\DB\E9A\96\DC\F9\84\B4Qd\D2\BBS8\A6\E1\B3~cU4\E3\07\8D`^\BCj\01\DCI\B0\F7uk\C5\01S\\\DC\BB)c\1B\E1\B3\B9\89)\F4;b\D9 (\AC4\F1\CA\BA\0F)2\D7\C0\D6\BE\D4\A9Y\7F\86p\8C\EEI\140\1F\A8\8C/j\\\19\FC&\D2\B8]\C2\D9\8F]X\83&\F52\D0\F3t.\A4o\B2?\C40\12:\CD\85\CF\A7z^KD\80g\C3Q\196^U\A0A4\A6\9F\C3\B5j\C8Q\C1\8F\874c\85\FA\D2\D8\B9\D4\00^\93\9C\07O\E8\09\815\B8\C3\C9bbL\E1B\A6\F4\BE}\BD\CF\CC\E9\E7\98-\DD\AC\03@\E4!\BFx\14\98\04P]\EA\EE\CB\0C\DF\02RzR\95\FE\CF\96\83\E6\18\A7\BA\FD\83|$ \DFP\E9~\D2\CD\16t\8B\D2\91\CB\FB\CF\FB\D2\FB\D5\FB\D9\FB\DC\FB\DF\FB\E3\FB\E6\FB\E9\FB\ED\FB\F0\FB\F3\FB\F6\FB\FA\FB\FD\FB\00\FC\04\FC\07\FC\0A\FC\0E\FC\11\FC\14\FC\18\FC\1B\FC\1E\FC\22\FC%\FC(\FC,\FC/\FC2\FC6\FC9\FC<\FC@\FCC\FCF\FCJ\FCM\FCP\FCT\FCW\FCZ\FC]\FCa\FCd\FCg\FCk\FCn\FCq\FCu\FCx\FC{\FC\7F\FC\82\FC\85\FC\89\FC\8C\FC\8F\FC\93\FC\96\FC\99\FC\9D\FC\A0\FC\A3\FC\A7\FC\AA\FC\AD\FC\B1\FC\B4\FC\B7\FC\BA\FC\BE\FC\C1\FC\C4\FC\C8\FC\CB\FC\CE\FC\D2\FC\D5\FC\D8\FC\DC\FC\DF\FC\E2\FC\E6\FC\E9\FC\EC\FC\F0\FC\F3\FC\F6\FC\FA\FC\FD\FC\00\FD\04\FD\07\FD\0A\FD\0E\FD\11\FD\14\FD\18\FD\1B\FD\1E\FD!\FD%\FD(\FD+\FD/\FD2\FD5\FD9\FD<\FD?\FDC\FDF\FDI\FDM\FDP\FDS\FDW\FDZ\FD]\FDa\FDd\FDg\FDk\FDn\FDq\FDu\FDx\FD{\FD~\FD\82\FD\85\FD\88\FD\8C\FD\8F\FD\92\FD\96\FD\99\FD\9C\FD\A0\FD\A3\FD\A6\FD\AA\FD\AD\FD\B0\FD\B4\FD\B7\FD\BA\FD\BE\FD\C1\FD\C4\FD\C8\FD\CB\FD\CE\FD\D2\FD\D5\FD\D8\FD\DB\FD\DF\FD\E2\FD\E5\FD\E9\FD\EC\FD\EF\FD\F3\FD\F6\FD\F9\FD\FD\FD\00\FE\03\FE\07\FE\0A\FE\0D\FE\11\FE\14\FE\17\FE\1B\FE\1E\FE!\FE%\FE(\FE+\FE/\FE2\FE5\FE9\FE<\FE?\FEB\FEF\FEI\FEL\FEP\FES\FEV\FEZ\FE]\FE`\FEd\FEg\FEj\FEn\FEq\FEt\FEx\FE{\FE~\FE\82\FE\85\FE\88\FE\8C\FE\8F\FE\92\FE\96\FE\99\FE\9C\FE\9F\FE\A3\FE\A6\FE\A9\FE\AD\FE\B0\FE\B3\FE\B7\FE\BA\FE\BD\FE\C1\FE\C4\FE\C7\FE\CB\FE\CE\FE\D1\FE\D5\FE\D8\FE\DB\FE\DF\FE\E2\FE\E5\FE\E9\FE\EC\FE\EF\FE\F3\FE\F6\FE\F9\FE\FD\FE\00\FF\03\FF\06\FF\0A\FF\0D\FF\10\FF\14\FF\17\FF\1A\FF\1E\FF!\FF$\FF(\FF+\FF.\FF2\FF5\FF8\FF<\FF?\FFB\FFF\FFI\FFL\FFP\FFS\FFV\FFZ\FF]\FF`\FFc\FFg\FFj\FFm\FFq\FFt\FFw\FF{\FF~\FF\81\FF\85\FF\88\FF\8B\FF\8F\FF\92\FF\95\FF\99\FF\9C\FF\9F\FF\A3\FF\A6\FF\A9\FF\AD\FF\B0\FF\B3\FF\B7\FF\BA\FF\BD\FF\C1\FF\C4\FF\C7\FF\CA\FF\CE\FF\D1\FF\D4\FF\D8\FF\DB\FF\DE\FF\E2\FF\E5\FF\E8\FF\EC\FF\EF\FF\F2\FF\F6\FF\F9\FF\FC\FF\00\00\03\00\06\00\0A\00\0D\00\10\00\14\00\17\00\1A\00\1E\00!\00$\00'\00+\00.\001\005\008\00;\00?\00B\00E\00I\00L\00O\00S\00V\00Y\00]\00`\00c\00g\00j\00m\00q\00t\00w\00{\00~\00\81\00\84\00\88\00\8B\00\8E\00\92\00\95\00\98\00\9C\00\9F\00\A2\00\A6\00\A9\00\AC\00\B0\00\B3\00\B6\00\BA\00\BD\00\C0\00\C4\00\C7\00\CA\00\CE\00\D1\00\D4\00\D8\00\DB\00\DE\00\E2\00\E5\00\E8\00\EB\00\EF\00\F2\00\F5\00\F9\00\FC\00\FF\00\03\01\06\01\09\01\0D\01\10\01\13\01\17\01\1A\01\1D\01!\01$\01'\01+\01.\011\015\018\01;\01?\01B\01E\01H\01L\01O\01R\01V\01Y\01\\\01`\01c\01f\01j\01m\01p\01t\01w\01z\01~\01\81\01\84\01\88\01\8B\01\8E\01\92\01\95\01\98\01\9C\01\9F\01\A2\01\A6\01\A9\01\AC\01\AF\01\B3\01\B6\01\B9\01\BD\01\C0\01\C3\01\C7\01\CA\01\CD\01\D1\01\D4\01\D7\01\DB\01\DE\01\E1\01\E5\01\E8\01\EB\01\EF\01\F2\01\F5\01\F9\01\FC\01\FF\01\03\02\06\02\09\02\0C\02\10\02\13\02\16\02\1A\02\1D\02 \02$\02'\02*\02.\021\024\028\02;\02>\02B\02E\02H\02L\02O\02R\02V\02Y\02\\\02`\02c\02f\02i\02m\02p\02s\02w\02z\02}\02\81\02\84\02\87\02\8B\02\8E\02\91\02\95\02\98\02\9B\02\9F\02\A2\02\A5\02\A9\02\AC\02\AF\02\B3\02\B6\02\B9\02\BD\02\C0\02\C3\02\C7\02\CA\02\CD\02\D0\02\D4\02\D7\02\DA\02\DE\02\E1\02\E4\02\E8\02\EB\02\EE\02\F2\02\F5\02\F8\02\FC\02\FF\02\02\03\06\03\09\03\0C\03\10\03\13\03\16\03\1A\03\1D\03 \03$\03'\03*\03-\031\034\037\03;\03>\03A\03E\03H\03K\03O\03R\03U\03Y\03\\\03_\03c\03f\03i\03m\03p\03s\03w\03z\03}\03\81\03\84\03\87\03\8B\03\8E\03\91\03\94\03\98\03\9B\03\9E\03\A2\03\A5\03\A8\03\AC\03\AF\03\B2\03\B6\03" }>, align 1
@alloc18117 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [92 x i8] }>, <{ [92 x i8] }>* @alloc18118, i32 0, i32 0, i32 0), [10 x i8] c"\\\00\13\00\00\00\0F\00\00\00" }>, align 1
@alloc18120 = private unnamed_addr constant <{ [37 x i8] }> <{ [37 x i8] c"assertion failed: x.bit_length() < 64" }>, align 1
@alloc18130 = private unnamed_addr constant <{ [86 x i8] }> <{ [86 x i8] c"/home/dylan/projects/avr-rust/rust/avr-support-upstream/src/libcore/num/dec2flt/num.rs" }>, align 1
@alloc18122 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [86 x i8] }>, <{ [86 x i8] }>* @alloc18130, i32 0, i32 0, i32 0), [10 x i8] c"V\00A\00\00\00\05\00\00\00" }>, align 1
@alloc18124 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [86 x i8] }>, <{ [86 x i8] }>* @alloc18130, i32 0, i32 0, i32 0), [10 x i8] c"V\00C\00\00\00\16\00\00\00" }>, align 1
@alloc18129 = private unnamed_addr constant <{ [35 x i8] }> <{ [35 x i8] c"assertion failed: end - start <= 64" }>, align 1
@alloc18131 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [86 x i8] }>, <{ [86 x i8] }>* @alloc18130, i32 0, i32 0, i32 0), [10 x i8] c"V\00K\00\00\00\05\00\00\00" }>, align 1
@alloc18150 = private unnamed_addr constant <{ [88 x i8] }> <{ [88 x i8] c"/home/dylan/projects/avr-rust/rust/avr-support-upstream/src/libcore/num/dec2flt/parse.rs" }>, align 1
@alloc19125 = private unnamed_addr constant <{ [0 x i8] }> zeroinitializer, align 1
@alloc18143 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [88 x i8] }>, <{ [88 x i8] }>* @alloc18150, i32 0, i32 0, i32 0), [10 x i8] c"X\00W\00\00\00\07\00\00\00" }>, align 1
@alloc247 = private unnamed_addr constant <{ [1 x i8] }> <{ [1 x i8] c"0" }>, align 1
@alloc18151 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [88 x i8] }>, <{ [88 x i8] }>* @alloc18150, i32 0, i32 0, i32 0), [10 x i8] c"X\00n\00\00\00\13\00\00\00" }>, align 1
@1 = private unnamed_addr constant <{ [44 x i8] }> <{ [44 x i8] c"\00\00\80?\00\00 A\00\00\C8B\00\00zD\00@\1CF\00P\C3G\00$tI\80\96\18K \BC\BEL(knN\F9\02\15P" }>, align 1
@alloc18157 = private unnamed_addr constant <{ [88 x i8] }> <{ [88 x i8] c"/home/dylan/projects/avr-rust/rust/avr-support-upstream/src/libcore/num/dec2flt/rawfp.rs" }>, align 1
@alloc18153 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [88 x i8] }>, <{ [88 x i8] }>* @alloc18157, i32 0, i32 0, i32 0), [10 x i8] c"X\00\B4\00\00\00\09\00\00\00" }>, align 1
@2 = private unnamed_addr constant <{ [184 x i8] }> <{ [184 x i8] c"\00\00\00\00\00\00\F0?\00\00\00\00\00\00$@\00\00\00\00\00\00Y@\00\00\00\00\00@\8F@\00\00\00\00\00\88\C3@\00\00\00\00\00j\F8@\00\00\00\00\80\84.A\00\00\00\00\D0\12cA\00\00\00\00\84\D7\97A\00\00\00\00e\CD\CDA\00\00\00 _\A0\02B\00\00\00\E8vH7B\00\00\00\A2\94\1AmB\00\00@\E5\9C0\A2B\00\00\90\1E\C4\BC\D6B\00\004&\F5k\0CC\00\80\E07y\C3AC\00\A0\D8\85W4vC\00\C8Ngm\C1\ABC\00=\91`\E4X\E1C@\8C\B5x\1D\AF\15DP\EF\E2\D6\E4\1AKD\92\D5M\06\CF\F0\80D" }>, align 1
@alloc18155 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [88 x i8] }>, <{ [88 x i8] }>* @alloc18157, i32 0, i32 0, i32 0), [10 x i8] c"X\00\E8\00\00\00\09\00\00\00" }>, align 1
@alloc18156 = private unnamed_addr constant <{ [38 x i8] }> <{ [38 x i8] c"big_to_fp: unexpectedly, input is zero" }>, align 1
@alloc18158 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [88 x i8] }>, <{ [88 x i8] }>* @alloc18157, i32 0, i32 0, i32 0), [10 x i8] c"X\004\01\00\00\05\00\00\00" }>, align 1
@alloc18159 = private unnamed_addr constant <{ [21 x i8] }> <{ [21 x i8] c"invalid float literal" }>, align 1
@alloc18160 = private unnamed_addr constant <{ [36 x i8] }> <{ [36 x i8] c"cannot parse float from empty string" }>, align 1
@alloc18165 = private unnamed_addr constant <{ [86 x i8] }> <{ [86 x i8] c"/home/dylan/projects/avr-rust/rust/avr-support-upstream/src/libcore/num/dec2flt/mod.rs" }>, align 1
@alloc18162 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [86 x i8] }>, <{ [86 x i8] }>* @alloc18165, i32 0, i32 0, i32 0), [10 x i8] c"V\00\DA\00\00\00\0B\00\00\00" }>, align 1
@alloc18167 = private unnamed_addr constant <{ [29 x i8] }> <{ [29 x i8] c"assertion failed: edelta >= 0" }>, align 1
@alloc18170 = private unnamed_addr constant <{ [84 x i8] }> <{ [84 x i8] c"/home/dylan/projects/avr-rust/rust/avr-support-upstream/src/libcore/num/diy_float.rs" }>, align 1
@alloc18169 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [84 x i8] }>, <{ [84 x i8] }>* @alloc18170, i32 0, i32 0, i32 0), [10 x i8] c"T\00L\00\00\00\09\00\00\00" }>, align 1
@alloc16391 = private unnamed_addr constant <{ [45 x i8] }> <{ [45 x i8] c"assertion failed: `(left == right)`\0A  left: `" }>, align 1
@alloc16392 = private unnamed_addr constant <{ [12 x i8] }> <{ [12 x i8] c"`,\0A right: `" }>, align 1
@alloc15830 = private unnamed_addr constant <{ [1 x i8] }> <{ [1 x i8] c"`" }>, align 1
@alloc16655 = private unnamed_addr constant <{ i8*, [2 x i8], i8*, [2 x i8], i8*, [2 x i8] }> <{ i8* getelementptr inbounds (<{ [45 x i8] }>, <{ [45 x i8] }>* @alloc16391, i32 0, i32 0, i32 0), [2 x i8] c"-\00", i8* getelementptr inbounds (<{ [12 x i8] }>, <{ [12 x i8] }>* @alloc16392, i32 0, i32 0, i32 0), [2 x i8] c"\0C\00", i8* getelementptr inbounds (<{ [1 x i8] }>, <{ [1 x i8] }>* @alloc15830, i32 0, i32 0, i32 0), [2 x i8] c"\01\00" }>, align 1
@alloc18171 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [84 x i8] }>, <{ [84 x i8] }>* @alloc18170, i32 0, i32 0, i32 0), [10 x i8] c"T\00N\00\00\00\09\00\00\00" }>, align 1
@_ZN4core3num7flt2dec8strategy6dragon5POW1017hc92859078f5b25a5E = internal unnamed_addr constant <{ [40 x i8] }> <{ [40 x i8] c"\01\00\00\00\0A\00\00\00d\00\00\00\E8\03\00\00\10'\00\00\A0\86\01\00@B\0F\00\80\96\98\00\00\E1\F5\05\00\CA\9A;" }>, align 1
@_ZN4core3num7flt2dec8strategy6dragon8TWOPOW1017h0d6ae407fa6ef985E = internal unnamed_addr constant <{ [40 x i8] }> <{ [40 x i8] c"\02\00\00\00\14\00\00\00\C8\00\00\00\D0\07\00\00 N\00\00@\0D\03\00\80\84\1E\00\00-1\01\00\C2\EB\0B\00\945w" }>, align 1
@_ZN4core3num7flt2dec8strategy6dragon9POW10TO1617h132fe39569e0e6d6E = internal constant <{ [8 x i8] }> <{ [8 x i8] c"\00\00\C1o\F2\86#\00" }>, align 1
@_ZN4core3num7flt2dec8strategy6dragon9POW10TO3217h0018191b6fd28150E = internal constant <{ [16 x i8] }> <{ [16 x i8] c"\00\00\00\00\81\EF\AC\85[Am-\EE\04\00\00" }>, align 1
@_ZN4core3num7flt2dec8strategy6dragon9POW10TO6417h41a8dce6686980ecE = internal constant <{ [28 x i8] }> <{ [28 x i8] c"\00\00\00\00\00\00\00\00\01\1Fj\BFd\ED8n\ED\97\A7\DA\F4\F9?\E9\03O\18\00" }>, align 1
@_ZN4core3num7flt2dec8strategy6dragon10POW10TO12817h85a7f087c30d6154E = internal constant <{ [56 x i8] }> <{ [56 x i8] c"\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\01>\95.\09\99\DF\03\FD8\15\0F/\E4t#\EC\F5\CF\D3\08\DC\04\C4\DA\B0\CD\BC\19\7F3\A6\03&\1F\E9N\02\00\00" }>, align 1
@_ZN4core3num7flt2dec8strategy6dragon10POW10TO25617hb3b8f4268a0e6c0eE = internal constant <{ [108 x i8] }> <{ [108 x i8] c"\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\01|.\98[\87\D3\BEr\9F\D9\D8\87/\15\12\C6P\DEkpnJ\CF\0F\D8\95\D5nq\B2&\B0f\C6\AD$6\15\1DZ\D3B<\0ET\FFc\C0sU\CC\17\EF\F9e\F2(\BCU\F7\C7\DC\80\DC\EDn\F4\CE\EF\DC_\F7S\05\00" }>, align 1
@alloc18221 = private unnamed_addr constant <{ [98 x i8] }> <{ [98 x i8] c"/home/dylan/projects/avr-rust/rust/avr-support-upstream/src/libcore/num/flt2dec/strategy/dragon.rs" }>, align 1
@alloc18265 = private unnamed_addr constant <{ [28 x i8] }> <{ [28 x i8] c"assertion failed: d.mant > 0" }>, align 1
@alloc18180 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [98 x i8] }>, <{ [98 x i8] }>* @alloc18221, i32 0, i32 0, i32 0), [10 x i8] c"b\00q\00\00\00\05\00\00\00" }>, align 1
@alloc18230 = private unnamed_addr constant <{ [29 x i8] }> <{ [29 x i8] c"assertion failed: d.minus > 0" }>, align 1
@alloc18183 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [98 x i8] }>, <{ [98 x i8] }>* @alloc18221, i32 0, i32 0, i32 0), [10 x i8] c"b\00r\00\00\00\05\00\00\00" }>, align 1
@alloc18233 = private unnamed_addr constant <{ [28 x i8] }> <{ [28 x i8] c"assertion failed: d.plus > 0" }>, align 1
@alloc18186 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [98 x i8] }>, <{ [98 x i8] }>* @alloc18221, i32 0, i32 0, i32 0), [10 x i8] c"b\00s\00\00\00\05\00\00\00" }>, align 1
@alloc18236 = private unnamed_addr constant <{ [54 x i8] }> <{ [54 x i8] c"assertion failed: d.mant.checked_add(d.plus).is_some()" }>, align 1
@alloc18189 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [98 x i8] }>, <{ [98 x i8] }>* @alloc18221, i32 0, i32 0, i32 0), [10 x i8] c"b\00t\00\00\00\05\00\00\00" }>, align 1
@alloc18239 = private unnamed_addr constant <{ [55 x i8] }> <{ [55 x i8] c"assertion failed: d.mant.checked_sub(d.minus).is_some()" }>, align 1
@alloc18192 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [98 x i8] }>, <{ [98 x i8] }>* @alloc18221, i32 0, i32 0, i32 0), [10 x i8] c"b\00u\00\00\00\05\00\00\00" }>, align 1
@alloc18453 = private unnamed_addr constant <{ [45 x i8] }> <{ [45 x i8] c"assertion failed: buf.len() >= MAX_SIG_DIGITS" }>, align 1
@alloc18195 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [98 x i8] }>, <{ [98 x i8] }>* @alloc18221, i32 0, i32 0, i32 0), [10 x i8] c"b\00v\00\00\00\05\00\00\00" }>, align 1
@alloc18197 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [98 x i8] }>, <{ [98 x i8] }>* @alloc18221, i32 0, i32 0, i32 0), [10 x i8] c"b\00\BD\00\00\00\09\00\00\00" }>, align 1
@alloc18199 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [98 x i8] }>, <{ [98 x i8] }>* @alloc18221, i32 0, i32 0, i32 0), [10 x i8] c"b\00\F5\00\00\00\0D\00\00\00" }>, align 1
@alloc18202 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [98 x i8] }>, <{ [98 x i8] }>* @alloc18221, i32 0, i32 0, i32 0), [10 x i8] c"b\00\00\01\00\00\05\00\00\00" }>, align 1
@alloc18205 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [98 x i8] }>, <{ [98 x i8] }>* @alloc18221, i32 0, i32 0, i32 0), [10 x i8] c"b\00\01\01\00\00\05\00\00\00" }>, align 1
@alloc18208 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [98 x i8] }>, <{ [98 x i8] }>* @alloc18221, i32 0, i32 0, i32 0), [10 x i8] c"b\00\02\01\00\00\05\00\00\00" }>, align 1
@alloc18211 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [98 x i8] }>, <{ [98 x i8] }>* @alloc18221, i32 0, i32 0, i32 0), [10 x i8] c"b\00\03\01\00\00\05\00\00\00" }>, align 1
@alloc18214 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [98 x i8] }>, <{ [98 x i8] }>* @alloc18221, i32 0, i32 0, i32 0), [10 x i8] c"b\00\04\01\00\00\05\00\00\00" }>, align 1
@alloc18216 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [98 x i8] }>, <{ [98 x i8] }>* @alloc18221, i32 0, i32 0, i32 0), [10 x i8] c"b\00A\01\00\00\1F\00\00\00" }>, align 1
@alloc18218 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [98 x i8] }>, <{ [98 x i8] }>* @alloc18221, i32 0, i32 0, i32 0), [10 x i8] c"b\00Z\01\00\00\0D\00\00\00" }>, align 1
@alloc17526 = private unnamed_addr constant <{ [1 x i8] }> <{ [1 x i8] c"\01" }>, align 1
@alloc16693 = private unnamed_addr constant <{ [1 x i8] }> zeroinitializer, align 1
@alloc18220 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [98 x i8] }>, <{ [98 x i8] }>* @alloc18221, i32 0, i32 0, i32 0), [10 x i8] c"b\00d\01\00\006\00\00\00" }>, align 1
@_ZN4core3num7flt2dec8strategy5grisu12CACHED_POW1017hfa9f1ed7fffa0d3fE = local_unnamed_addr constant <{ [972 x i8] }> <{ [972 x i8] c"\DFE\1A=\03\CF\1A\E6\C1\FB\CC\FE\CA\C6\9A\C7\17\FEp\AB\DC\FB\D4\FEO\DC\BC\BE\FC\B1w\FF\F6\FB\DC\FE\0C\D6kA\EF\91V\BE\11\FC\E4\FE<\FC\7F\90\AD\1F\D0\8D,\FC\EC\FE\83\9AU1(\\Q\D3F\FC\F4\FE\B5\C9\A6\AD\8F\ACq\9Da\FC\FC\FE\CB\8B\EE#w\22\9C\EA{\FC\04\FFmSx@\91I\CC\AE\96\FC\0C\FFW\CE\B6]y\12<\82\B1\FC\14\FF7V\FBM6\94\10\C2\CB\FC\1C\FFO\98H8o\EA\96\90\E6\FC$\FF\C7:\82%\CB\85t\D7\00\FD,\FF\F4\97\BF\97\CD\CF\86\A0\1B\FD4\FF\E5\AC*\17\98\0A4\EF5\FD<\FF\8E\B25*\FBg8\B2P\FDD\FF;?\C6\D2\DF\D4\C8\84k\FDL\FF\BA\CD\D3\1A'D\DD\C5\85\FDT\FF\96\C9%\BB\CE\9Fk\93\A0\FD\\\FF\84\A5b}$l\AC\DB\BA\FDd\FF\F6\DA_\0DXf\AB\A3\D5\FDl\FF&\F1\C3\DE\93\F8\E2\F3\EF\FDt\FF\B8\80\FF\AA\A8\AD\B5\B5\0A\FE|\FF\8BJ|l\05_b\87%\FE\84\FFS0\C14`\FF\BC\C9?\FE\8C\FFU&\BA\91\8C\85N\96Z\FE\94\FF\BD~)p$w\F9\DFt\FE\9C\FF\8F\B8\E5\B8\9F\BD\DF\A6\8F\FE\A4\FF\94}t\88\CF_\A9\F8\A9\FE\AC\FF\CF\9B\A8\8F\93pD\B9\C4\FE\B4\FFk\15\0F\BF\F8\F0\08\8A\DF\FE\BC\FF\B611eU%\B0\CD\F9\FE\C4\FF\AC\7F{\D0\C6\E2?\99\14\FF\CC\FF\06;+*\C4\10\\\E4.\FF\D4\FF\D3\92si\99$$\AAI\FF\DC\FF\0E\CA\00\83\F2\B5\87\FDc\FF\E4\FF\EB\1A\11\92d\08\E5\BC~\FF\EC\FF\CC\88Po\09\CC\BC\8C\99\FF\F4\FF,e\19\E2X\17\B7\D1\B3\FF\FC\FF\00\00\00\00\00\00@\9C\CE\FF\04\00\00\00\00\00\10\A5\D4\E8\E8\FF\0C\00\00\00b\AC\C5\EBx\AD\03\00\14\00\84\09\94\F8x9?\81\1E\00\1C\00\B3\15\07\C9{\CE\97\C08\00$\00p\\\EA{\CE2~\8FS\00,\00h\80\E9\AB\A48\D2\D5m\004\00E\22\9A\17&'O\9F\88\00<\00'\FB\C4\D41\A2c\ED\A2\00D\00\A8\AD\C8\8C8e\DE\B0\BD\00L\00\DBe\AB\1A\8E\08\C7\83\D8\00T\00\9A\1DqB\F9\1D]\C4\F2\00\\\00X\E7\1B\A6,iM\92\0D\01d\00\EA\8Dp\1Ad\EE\01\DA'\01l\00Jw\EF\9A\99\A3m\A2B\01t\00\85k}\B4{x\09\F2\\\01|\00w\18\DDy\A1\E4T\B4w\01\84\00\C2\C5\9B[\92\86[\86\92\01\8C\00=]\96\C8\C5S5\C8\AC\01\94\00\B3\A0\97\FA\\\B4*\95\C7\01\9C\00\E3_\A0\99\BD\9FF\DE\E1\01\A4\00%\8C9\DB4\C2\9B\A5\FC\01\AC\00\\\9F\98\A3r\9A\C6\F6\16\02\B4\00\CE\BE\E9TS\BF\DC\B71\02\BC\00\E2A\22\F2\17\F3\FC\88L\02\C4\00\A5x\\\D3\9B\CE \CCf\02\CC\00\DFS!{\F3Z\16\98\81\02\D4\00:0\1F\97\DC\B5\A0\E2\9B\02\DC\00\96\B3\E3\\S\D1\D9\A8\B6\02\E4\00<D\A7\A4\D9|\9B\FB\D0\02\EC\00\10D\A4\A7LLv\BB\EB\02\F4\00\1A\9C@\B6\EF\8E\AB\8B\06\03\FC\00,\84W\A6\10\EF\1F\D0 \03\04\01)1\91\E9\E5\A4\10\9B;\03\0C\01\9D\0C\9C\A1\FB\9B\10\E7U\03\14\01)\F4;b\D9 (\ACp\03\1C\01\85\CF\A7z^KD\80\8B\03$\01-\DD\AC\03@\E4!\BF\A5\03,\01\8F\FFD^/\9Cg\8E\C0\034\01A\B8\8C\9C\9D\173\D4\DA\03<\01\A9\1B\E3\B4\92\DB\19\9E\F5\03D\01\D9w\DF\BAn\BF\96\EB\0F\04L\01" }>, align 1
@alloc18282 = private unnamed_addr constant <{ [97 x i8] }> <{ [97 x i8] c"/home/dylan/projects/avr-rust/rust/avr-support-upstream/src/libcore/num/flt2dec/strategy/grisu.rs" }>, align 1
@alloc18226 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [97 x i8] }>, <{ [97 x i8] }>* @alloc18282, i32 0, i32 0, i32 0), [10 x i8] c"a\00|\00\00\00\15\00\00\00" }>, align 1
@alloc18229 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [97 x i8] }>, <{ [97 x i8] }>* @alloc18282, i32 0, i32 0, i32 0), [10 x i8] c"a\00\A8\00\00\00\05\00\00\00" }>, align 1
@alloc18232 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [97 x i8] }>, <{ [97 x i8] }>* @alloc18282, i32 0, i32 0, i32 0), [10 x i8] c"a\00\A9\00\00\00\05\00\00\00" }>, align 1
@alloc18235 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [97 x i8] }>, <{ [97 x i8] }>* @alloc18282, i32 0, i32 0, i32 0), [10 x i8] c"a\00\AA\00\00\00\05\00\00\00" }>, align 1
@alloc18238 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [97 x i8] }>, <{ [97 x i8] }>* @alloc18282, i32 0, i32 0, i32 0), [10 x i8] c"a\00\AB\00\00\00\05\00\00\00" }>, align 1
@alloc18241 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [97 x i8] }>, <{ [97 x i8] }>* @alloc18282, i32 0, i32 0, i32 0), [10 x i8] c"a\00\AC\00\00\00\05\00\00\00" }>, align 1
@alloc18244 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [97 x i8] }>, <{ [97 x i8] }>* @alloc18282, i32 0, i32 0, i32 0), [10 x i8] c"a\00\AD\00\00\00\05\00\00\00" }>, align 1
@alloc18245 = private unnamed_addr constant <{ [45 x i8] }> <{ [45 x i8] c"assertion failed: d.mant + d.plus < (1 << 61)" }>, align 1
@alloc18247 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [97 x i8] }>, <{ [97 x i8] }>* @alloc18282, i32 0, i32 0, i32 0), [10 x i8] c"a\00\AE\00\00\00\05\00\00\00" }>, align 1
@alloc18249 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [97 x i8] }>, <{ [97 x i8] }>* @alloc18282, i32 0, i32 0, i32 0), [10 x i8] c"a\00\0A\01\00\00\11\00\00\00" }>, align 1
@str.1 = internal constant [25 x i8] c"attempt to divide by zero"
@alloc18253 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [97 x i8] }>, <{ [97 x i8] }>* @alloc18282, i32 0, i32 0, i32 0), [10 x i8] c"a\00\0D\01\00\00\09\00\00\00" }>, align 1
@alloc18257 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [97 x i8] }>, <{ [97 x i8] }>* @alloc18282, i32 0, i32 0, i32 0), [10 x i8] c"a\009\01\00\00\09\00\00\00" }>, align 1
@alloc18355 = private unnamed_addr constant <{ [33 x i8] }> <{ [33 x i8] c"assertion failed: !buf.is_empty()" }>, align 1
@alloc18267 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [97 x i8] }>, <{ [97 x i8] }>* @alloc18282, i32 0, i32 0, i32 0), [10 x i8] c"a\00\D3\01\00\00\05\00\00\00" }>, align 1
@alloc18268 = private unnamed_addr constant <{ [36 x i8] }> <{ [36 x i8] c"assertion failed: d.mant < (1 << 61)" }>, align 1
@alloc18270 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [97 x i8] }>, <{ [97 x i8] }>* @alloc18282, i32 0, i32 0, i32 0), [10 x i8] c"a\00\D4\01\00\00\05\00\00\00" }>, align 1
@alloc18273 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [97 x i8] }>, <{ [97 x i8] }>* @alloc18282, i32 0, i32 0, i32 0), [10 x i8] c"a\00\D5\01\00\00\05\00\00\00" }>, align 1
@alloc18275 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [97 x i8] }>, <{ [97 x i8] }>* @alloc18282, i32 0, i32 0, i32 0), [10 x i8] c"a\00\16\02\00\00\11\00\00\00" }>, align 1
@alloc18279 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [97 x i8] }>, <{ [97 x i8] }>* @alloc18282, i32 0, i32 0, i32 0), [10 x i8] c"a\00\19\02\00\00\09\00\00\00" }>, align 1
@alloc18281 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [97 x i8] }>, <{ [97 x i8] }>* @alloc18282, i32 0, i32 0, i32 0), [10 x i8] c"a\00L\02\00\00\09\00\00\00" }>, align 1
@alloc18527 = private unnamed_addr constant <{ [86 x i8] }> <{ [86 x i8] c"/home/dylan/projects/avr-rust/rust/avr-support-upstream/src/libcore/num/flt2dec/mod.rs" }>, align 1
@alloc18285 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [86 x i8] }>, <{ [86 x i8] }>* @alloc18527, i32 0, i32 0, i32 0), [10 x i8] c"V\00\93\00\00\00\0B\00\00\00" }>, align 1
@alloc18287 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [86 x i8] }>, <{ [86 x i8] }>* @alloc18527, i32 0, i32 0, i32 0), [10 x i8] c"V\00\96\00\00\00\0D\00\00\00" }>, align 1
@alloc18289 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [86 x i8] }>, <{ [86 x i8] }>* @alloc18527, i32 0, i32 0, i32 0), [10 x i8] c"V\00\98\00\00\00\11\00\00\00" }>, align 1
@alloc18291 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [86 x i8] }>, <{ [86 x i8] }>* @alloc18527, i32 0, i32 0, i32 0), [10 x i8] c"V\00\9E\00\00\00\0D\00\00\00" }>, align 1
@alloc18293 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [86 x i8] }>, <{ [86 x i8] }>* @alloc18527, i32 0, i32 0, i32 0), [10 x i8] c"V\00\A0\00\00\00\11\00\00\00" }>, align 1
@alloc18295 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [86 x i8] }>, <{ [86 x i8] }>* @alloc18527, i32 0, i32 0, i32 0), [10 x i8] c"V\00\DF\00\00\00\15\00\00\00" }>, align 1
@alloc18299 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [86 x i8] }>, <{ [86 x i8] }>* @alloc18527, i32 0, i32 0, i32 0), [10 x i8] c"V\00\D4\00\00\00#\00\00\00" }>, align 1
@alloc18303 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [86 x i8] }>, <{ [86 x i8] }>* @alloc18527, i32 0, i32 0, i32 0), [10 x i8] c"V\00\09\01\00\00'\00\00\00" }>, align 1
@alloc18306 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [86 x i8] }>, <{ [86 x i8] }>* @alloc18527, i32 0, i32 0, i32 0), [10 x i8] c"V\00\1E\01\00\00\05\00\00\00" }>, align 1
@alloc18360 = private unnamed_addr constant <{ [31 x i8] }> <{ [31 x i8] c"assertion failed: buf[0] > b'0'" }>, align 1
@alloc18311 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [86 x i8] }>, <{ [86 x i8] }>* @alloc18527, i32 0, i32 0, i32 0), [10 x i8] c"V\00\1F\01\00\00\05\00\00\00" }>, align 1
@alloc18529 = private unnamed_addr constant <{ [34 x i8] }> <{ [34 x i8] c"assertion failed: parts.len() >= 4" }>, align 1
@alloc18314 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [86 x i8] }>, <{ [86 x i8] }>* @alloc18527, i32 0, i32 0, i32 0), [10 x i8] c"V\00 \01\00\00\05\00\00\00" }>, align 1
@alloc239 = private unnamed_addr constant <{ [2 x i8] }> <{ [2 x i8] c"0." }>, align 1
@alloc16827 = private unnamed_addr constant <{ [1 x i8] }> <{ [1 x i8] c"." }>, align 1
@alloc18357 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [86 x i8] }>, <{ [86 x i8] }>* @alloc18527, i32 0, i32 0, i32 0), [10 x i8] c"V\00g\01\00\00\05\00\00\00" }>, align 1
@alloc18362 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [86 x i8] }>, <{ [86 x i8] }>* @alloc18527, i32 0, i32 0, i32 0), [10 x i8] c"V\00h\01\00\00\05\00\00\00" }>, align 1
@alloc18488 = private unnamed_addr constant <{ [34 x i8] }> <{ [34 x i8] c"assertion failed: parts.len() >= 6" }>, align 1
@alloc18365 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [86 x i8] }>, <{ [86 x i8] }>* @alloc18527, i32 0, i32 0, i32 0), [10 x i8] c"V\00i\01\00\00\05\00\00\00" }>, align 1
@alloc241 = private unnamed_addr constant <{ [2 x i8] }> <{ [2 x i8] c"E-" }>, align 1
@alloc242 = private unnamed_addr constant <{ [2 x i8] }> <{ [2 x i8] c"e-" }>, align 1
@alloc18379 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [86 x i8] }>, <{ [86 x i8] }>* @alloc18527, i32 0, i32 0, i32 0), [10 x i8] c"V\00}\01\00\00\09\00\00\00" }>, align 1
@alloc18381 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [86 x i8] }>, <{ [86 x i8] }>* @alloc18527, i32 0, i32 0, i32 0), [10 x i8] c"V\00~\01\00\00\09\00\00\00" }>, align 1
@alloc243 = private unnamed_addr constant <{ [1 x i8] }> <{ [1 x i8] c"E" }>, align 1
@alloc18945 = private unnamed_addr constant <{ [1 x i8] }> <{ [1 x i8] c"e" }>, align 1
@alloc18383 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [86 x i8] }>, <{ [86 x i8] }>* @alloc18527, i32 0, i32 0, i32 0), [10 x i8] c"V\00\80\01\00\00\09\00\00\00" }>, align 1
@alloc18385 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [86 x i8] }>, <{ [86 x i8] }>* @alloc18527, i32 0, i32 0, i32 0), [10 x i8] c"V\00\81\01\00\00\09\00\00\00" }>, align 1
@alloc18387 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [86 x i8] }>, <{ [86 x i8] }>* @alloc18527, i32 0, i32 0, i32 0), [10 x i8] c"V\00\83\01\00\00\06\00\00\00" }>, align 1
@alloc19123 = private unnamed_addr constant <{ [1 x i8] }> <{ [1 x i8] c"-" }>, align 1
@alloc19124 = private unnamed_addr constant <{ [1 x i8] }> <{ [1 x i8] c"+" }>, align 1
@alloc18406 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [86 x i8] }>, <{ [86 x i8] }>* @alloc18527, i32 0, i32 0, i32 0), [10 x i8] c"V\00\F2\01\00\009\00\00\00" }>, align 1
@alloc246 = private unnamed_addr constant <{ [3 x i8] }> <{ [3 x i8] c"inf" }>, align 1
@alloc245 = private unnamed_addr constant <{ [3 x i8] }> <{ [3 x i8] c"NaN" }>, align 1
@alloc18439 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [86 x i8] }>, <{ [86 x i8] }>* @alloc18527, i32 0, i32 0, i32 0), [10 x i8] c"V\004\02\00\00$\00\00\00" }>, align 1
@alloc248 = private unnamed_addr constant <{ [3 x i8] }> <{ [3 x i8] c"0E0" }>, align 1
@alloc249 = private unnamed_addr constant <{ [3 x i8] }> <{ [3 x i8] c"0e0" }>, align 1
@alloc18489 = private unnamed_addr constant <{ [29 x i8] }> <{ [29 x i8] c"assertion failed: ndigits > 0" }>, align 1
@alloc18460 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [86 x i8] }>, <{ [86 x i8] }>* @alloc18527, i32 0, i32 0, i32 0), [10 x i8] c"V\00p\02\00\00\05\00\00\00" }>, align 1
@alloc18490 = private unnamed_addr constant <{ [61 x i8] }> <{ [61 x i8] c"assertion failed: buf.len() >= ndigits || buf.len() >= maxlen" }>, align 1
@alloc18463 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [86 x i8] }>, <{ [86 x i8] }>* @alloc18527, i32 0, i32 0, i32 0), [10 x i8] c"V\00\8B\02\00\00\0D\00\00\00" }>, align 1
@alloc18465 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [86 x i8] }>, <{ [86 x i8] }>* @alloc18527, i32 0, i32 0, i32 0), [10 x i8] c"V\00\8E\02\00\009\00\00\00" }>, align 1
@alloc18467 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [86 x i8] }>, <{ [86 x i8] }>* @alloc18527, i32 0, i32 0, i32 0), [10 x i8] c"V\00\8F\02\00\009\00\00\00" }>, align 1
@alloc250 = private unnamed_addr constant <{ [2 x i8] }> <{ [2 x i8] c"E0" }>, align 1
@alloc251 = private unnamed_addr constant <{ [2 x i8] }> <{ [2 x i8] c"e0" }>, align 1
@alloc18530 = private unnamed_addr constant <{ [37 x i8] }> <{ [37 x i8] c"assertion failed: buf.len() >= maxlen" }>, align 1
@alloc18496 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [86 x i8] }>, <{ [86 x i8] }>* @alloc18527, i32 0, i32 0, i32 0), [10 x i8] c"V\00\C9\02\00\00\0D\00\00\00" }>, align 1
@alloc18510 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [86 x i8] }>, <{ [86 x i8] }>* @alloc18527, i32 0, i32 0, i32 0), [10 x i8] c"V\00\DF\02\00\00=\00\00\00" }>, align 1
@alloc18531 = private unnamed_addr constant <{ [47 x i8] }> <{ [47 x i8] c"out of range integral type conversion attempted" }>, align 1
@alloc16904 = private unnamed_addr constant <{ [60 x i8] }> <{ [60 x i8] c"from_str_radix_int: must lie in the range `[2, 36]` - found " }>, align 1
@alloc16905 = private unnamed_addr constant <{ i8*, [2 x i8] }> <{ i8* getelementptr inbounds (<{ [60 x i8] }>, <{ [60 x i8] }>* @alloc16904, i32 0, i32 0, i32 0), [2 x i8] c"<\00" }>, align 1
@alloc18538 = private unnamed_addr constant <{ [78 x i8] }> <{ [78 x i8] c"/home/dylan/projects/avr-rust/rust/avr-support-upstream/src/libcore/num/mod.rs" }>, align 1
@alloc18533 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [78 x i8] }>, <{ [78 x i8] }>* @alloc18538, i32 0, i32 0, i32 0), [10 x i8] c"N\00E\14\00\00\05\00\00\00" }>, align 1
@alloc18540 = private unnamed_addr constant <{ [38 x i8] }> <{ [38 x i8] c"number would be zero for non-zero type" }>, align 1
@alloc18541 = private unnamed_addr constant <{ [38 x i8] }> <{ [38 x i8] c"number too small to fit in target type" }>, align 1
@alloc18542 = private unnamed_addr constant <{ [38 x i8] }> <{ [38 x i8] c"number too large to fit in target type" }>, align 1
@alloc18543 = private unnamed_addr constant <{ [29 x i8] }> <{ [29 x i8] c"invalid digit found in string" }>, align 1
@alloc18544 = private unnamed_addr constant <{ [38 x i8] }> <{ [38 x i8] c"cannot parse integer from empty string" }>, align 1
@alloc15881 = private unnamed_addr constant <{ [2 x i8] }> <{ [2 x i8] c".." }>, align 1
@alloc15882 = private unnamed_addr constant <{ i8*, [2 x i8] }> <{ i8* getelementptr inbounds (<{ [2 x i8] }>, <{ [2 x i8] }>* @alloc15881, i32 0, i32 0, i32 0), [2 x i8] c"\02\00" }>, align 1
@alloc18552 = private unnamed_addr constant <{ [3 x i8] }> <{ [3 x i8] c"Any" }>, align 1
@alloc18559 = private unnamed_addr constant <{ [76 x i8] }> <{ [76 x i8] c"/home/dylan/projects/avr-rust/rust/avr-support-upstream/src/libcore/ascii.rs" }>, align 1
@alloc18556 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [76 x i8] }>, <{ [76 x i8] }>* @alloc18559, i32 0, i32 0, i32 0), [10 x i8] c"L\00y\00\00\00#\00\00\00" }>, align 1
@alloc18558 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [76 x i8] }>, <{ [76 x i8] }>* @alloc18559, i32 0, i32 0, i32 0), [10 x i8] c"L\00\85\00\00\00(\00\00\00" }>, align 1
@alloc18560 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [76 x i8] }>, <{ [76 x i8] }>* @alloc18559, i32 0, i32 0, i32 0), [10 x i8] c"L\00\91\00\00\003\00\00\00" }>, align 1
@alloc18561 = private unnamed_addr constant <{ [20 x i8] }> <{ [20 x i8] c"EscapeDefault { .. }" }>, align 1
@alloc18562 = private unnamed_addr constant <{ [11 x i8] }> <{ [11 x i8] c"BorrowError" }>, align 1
@alloc18563 = private unnamed_addr constant <{ [24 x i8] }> <{ [24 x i8] c"already mutably borrowed" }>, align 1
@alloc18564 = private unnamed_addr constant <{ [14 x i8] }> <{ [14 x i8] c"BorrowMutError" }>, align 1
@alloc18565 = private unnamed_addr constant <{ [16 x i8] }> <{ [16 x i8] c"already borrowed" }>, align 1
@alloc18566 = private unnamed_addr constant <{ [29 x i8] }> <{ [29 x i8] c"too many characters in string" }>, align 1
@alloc18567 = private unnamed_addr constant <{ [35 x i8] }> <{ [35 x i8] c"cannot parse char from empty string" }>, align 1
@alloc18568 = private unnamed_addr constant <{ [41 x i8] }> <{ [41 x i8] c"converted integer out of range for `char`" }>, align 1
@alloc16485 = private unnamed_addr constant <{ [26 x i8] }> <{ [26 x i8] c"unpaired surrogate found: " }>, align 1
@alloc16486 = private unnamed_addr constant <{ i8*, [2 x i8] }> <{ i8* getelementptr inbounds (<{ [26 x i8] }>, <{ [26 x i8] }>* @alloc16485, i32 0, i32 0, i32 0), [2 x i8] c"\1A\00" }>, align 1
@alloc18583 = private unnamed_addr constant <{ [6 x i8] }> <{ [6 x i8] c"c_void" }>, align 1
@alloc16541 = private unnamed_addr constant <{ [9 x i8] }> <{ [9 x i8] c"va_list* " }>, align 1
@alloc16542 = private unnamed_addr constant <{ i8*, [2 x i8] }> <{ i8* getelementptr inbounds (<{ [9 x i8] }>, <{ [9 x i8] }>* @alloc16541, i32 0, i32 0, i32 0), [2 x i8] c"\09\00" }>, align 1
@alloc18588 = private unnamed_addr constant <{ [7 x i8] }> <{ [7 x i8] c"FlatMap" }>, align 1
@alloc19218 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"inner" }>, align 1
@vtable.3 = private unnamed_addr constant { void (%"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeDebugContinue>, char::EscapeDebug>"*) addrspace(1)*, i16, i16, i1 (%"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeDebugContinue>, char::EscapeDebug>"*, %"fmt::Formatter"*) addrspace(1)* } { void (%"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeDebugContinue>, char::EscapeDebug>"*) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeDebugContinue>, char::EscapeDebug>"*) addrspace(1)*), i16 20, i16 1, i1 (%"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeDebugContinue>, char::EscapeDebug>"*, %"fmt::Formatter"*) addrspace(1)* @"_ZN94_$LT$core..iter..adapters..flatten..FlattenCompat$LT$I$C$U$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17he1cb98388fb0b894E" }, align 1
@vtable.4 = private unnamed_addr constant { void (%"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeDefault>, char::EscapeDefault>"*) addrspace(1)*, i16, i16, i1 (%"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeDefault>, char::EscapeDefault>"*, %"fmt::Formatter"*) addrspace(1)* } { void (%"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeDefault>, char::EscapeDefault>"*) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeDefault>, char::EscapeDefault>"*) addrspace(1)*), i16 20, i16 1, i1 (%"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeDefault>, char::EscapeDefault>"*, %"fmt::Formatter"*) addrspace(1)* @"_ZN94_$LT$core..iter..adapters..flatten..FlattenCompat$LT$I$C$U$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hdedd5cb503bae417E" }, align 1
@vtable.5 = private unnamed_addr constant { void (%"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeUnicode>, char::EscapeUnicode>"*) addrspace(1)*, i16, i16, i1 (%"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeUnicode>, char::EscapeUnicode>"*, %"fmt::Formatter"*) addrspace(1)* } { void (%"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeUnicode>, char::EscapeUnicode>"*) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeUnicode>, char::EscapeUnicode>"*) addrspace(1)*), i16 18, i16 1, i1 (%"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeUnicode>, char::EscapeUnicode>"*, %"fmt::Formatter"*) addrspace(1)* @"_ZN94_$LT$core..iter..adapters..flatten..FlattenCompat$LT$I$C$U$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h51fd445a2c0b5fecE" }, align 1
@alloc18590 = private unnamed_addr constant <{ [7 x i8] }> <{ [7 x i8] c"Flatten" }>, align 1
@vtable.6 = private unnamed_addr constant { void (%"iter::adapters::flatten::FlattenCompat<option::IntoIter<char::EscapeDebug>, char::EscapeDebug>"*) addrspace(1)*, i16, i16, i1 (%"iter::adapters::flatten::FlattenCompat<option::IntoIter<char::EscapeDebug>, char::EscapeDebug>"*, %"fmt::Formatter"*) addrspace(1)* } { void (%"iter::adapters::flatten::FlattenCompat<option::IntoIter<char::EscapeDebug>, char::EscapeDebug>"*) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"iter::adapters::flatten::FlattenCompat<option::IntoIter<char::EscapeDebug>, char::EscapeDebug>"*) addrspace(1)*), i16 24, i16 1, i1 (%"iter::adapters::flatten::FlattenCompat<option::IntoIter<char::EscapeDebug>, char::EscapeDebug>"*, %"fmt::Formatter"*) addrspace(1)* @"_ZN94_$LT$core..iter..adapters..flatten..FlattenCompat$LT$I$C$U$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h36785ce11e5865c9E" }, align 1
@alloc18600 = private unnamed_addr constant <{ [3 x i8] }> <{ [3 x i8] c"Map" }>, align 1
@alloc19203 = private unnamed_addr constant <{ [4 x i8] }> <{ [4 x i8] c"iter" }>, align 1
@vtable.7 = private unnamed_addr constant { void ({ i8*, i8* }*) addrspace(1)*, i16, i16, i1 ({ i8*, i8* }*, %"fmt::Formatter"*) addrspace(1)* } { void ({ i8*, i8* }*) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void ({ i8*, i8* }*) addrspace(1)*), i16 4, i16 1, i1 ({ i8*, i8* }*, %"fmt::Formatter"*) addrspace(1)* @"_ZN53_$LT$core..str..Chars$u20$as$u20$core..fmt..Debug$GT$3fmt17h7a177a57fd49dd77E" }, align 1
@vtable.8 = private unnamed_addr constant { void (%"iter::adapters::Filter<slice::Split<u8, str::IsAsciiWhitespace>, str::BytesIsNotEmpty>"*) addrspace(1)*, i16, i16, i1 (%"iter::adapters::Filter<slice::Split<u8, str::IsAsciiWhitespace>, str::BytesIsNotEmpty>"*, %"fmt::Formatter"*) addrspace(1)* } { void (%"iter::adapters::Filter<slice::Split<u8, str::IsAsciiWhitespace>, str::BytesIsNotEmpty>"*) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"iter::adapters::Filter<slice::Split<u8, str::IsAsciiWhitespace>, str::BytesIsNotEmpty>"*) addrspace(1)*), i16 5, i16 1, i1 (%"iter::adapters::Filter<slice::Split<u8, str::IsAsciiWhitespace>, str::BytesIsNotEmpty>"*, %"fmt::Formatter"*) addrspace(1)* @"_ZN78_$LT$core..iter..adapters..Filter$LT$I$C$P$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h794a1574668cd3caE" }, align 1
@vtable.9 = private unnamed_addr constant { void (%"str::SplitTerminator<char>"*) addrspace(1)*, i16, i16, i1 (%"str::SplitTerminator<char>"*, %"fmt::Formatter"*) addrspace(1)* } { void (%"str::SplitTerminator<char>"*) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"str::SplitTerminator<char>"*) addrspace(1)*), i16 24, i16 1, i1 (%"str::SplitTerminator<char>"*, %"fmt::Formatter"*) addrspace(1)* @"_ZN72_$LT$core..str..SplitTerminator$LT$P$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17he4b1f96ce98ac636E" }, align 1
@alloc18604 = private unnamed_addr constant <{ [6 x i8] }> <{ [6 x i8] c"Filter" }>, align 1
@vtable.a = private unnamed_addr constant { void (%"slice::Split<u8, str::IsAsciiWhitespace>"*) addrspace(1)*, i16, i16, i1 (%"slice::Split<u8, str::IsAsciiWhitespace>"*, %"fmt::Formatter"*) addrspace(1)* } { void (%"slice::Split<u8, str::IsAsciiWhitespace>"*) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"slice::Split<u8, str::IsAsciiWhitespace>"*) addrspace(1)*), i16 5, i16 1, i1 (%"slice::Split<u8, str::IsAsciiWhitespace>"*, %"fmt::Formatter"*) addrspace(1)* @"_ZN68_$LT$core..slice..Split$LT$T$C$P$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17he272ca154075f437E" }, align 1
@vtable.b = private unnamed_addr constant { void (%"str::Split<str::IsWhitespace>"*) addrspace(1)*, i16, i16, i1 (%"str::Split<str::IsWhitespace>"*, %"fmt::Formatter"*) addrspace(1)* } { void (%"str::Split<str::IsWhitespace>"*) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"str::Split<str::IsWhitespace>"*) addrspace(1)*), i16 16, i16 1, i1 (%"str::Split<str::IsWhitespace>"*, %"fmt::Formatter"*) addrspace(1)* @"_ZN62_$LT$core..str..Split$LT$P$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h5dfd6981488d067bE" }, align 1
@alloc18613 = private unnamed_addr constant <{ [43 x i8] }> <{ [43 x i8] c"called `Option::unwrap()` on a `None` value" }>, align 1
@alloc17054 = private unnamed_addr constant <{ i8*, [2 x i8] }> <{ i8* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0, i32 0), [2 x i8] zeroinitializer }>, align 1
@alloc15924 = private unnamed_addr constant <{ [2 x i8] }> <{ [2 x i8] c": " }>, align 1
@alloc15745 = private unnamed_addr constant <{ i8*, [2 x i8], i8*, [2 x i8] }> <{ i8* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0, i32 0), [2 x i8] zeroinitializer, i8* getelementptr inbounds (<{ [2 x i8] }>, <{ [2 x i8] }>* @alloc15924, i32 0, i32 0, i32 0), [2 x i8] c"\02\00" }>, align 1
@vtable.c = private unnamed_addr constant { void (%"panic::{{impl}}::internal_constructor::NoPayload"*) addrspace(1)*, i16, i16, i64 (%"panic::{{impl}}::internal_constructor::NoPayload"*) addrspace(1)* } { void (%"panic::{{impl}}::internal_constructor::NoPayload"*) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"panic::{{impl}}::internal_constructor::NoPayload"*) addrspace(1)*), i16 0, i16 1, i64 (%"panic::{{impl}}::internal_constructor::NoPayload"*) addrspace(1)* @"_ZN36_$LT$T$u20$as$u20$core..any..Any$GT$7type_id17hb11c42a2f8f7f8beE" }, align 1
@alloc18614 = private unnamed_addr constant <{ [12 x i8] }> <{ [12 x i8] c"panicked at " }>, align 1
@alloc16553 = private unnamed_addr constant <{ [1 x i8] }> <{ [1 x i8] c"'" }>, align 1
@alloc16554 = private unnamed_addr constant <{ [3 x i8] }> <{ [3 x i8] c"', " }>, align 1
@alloc16555 = private unnamed_addr constant <{ i8*, [2 x i8], i8*, [2 x i8] }> <{ i8* getelementptr inbounds (<{ [1 x i8] }>, <{ [1 x i8] }>* @alloc16553, i32 0, i32 0, i32 0), [2 x i8] c"\01\00", i8* getelementptr inbounds (<{ [3 x i8] }>, <{ [3 x i8] }>* @alloc16554, i32 0, i32 0, i32 0), [2 x i8] c"\03\00" }>, align 1
@alloc16570 = private unnamed_addr constant <{ [1 x i8] }> <{ [1 x i8] c":" }>, align 1
@alloc16571 = private unnamed_addr constant <{ i8*, [2 x i8], i8*, [2 x i8], i8*, [2 x i8] }> <{ i8* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0, i32 0), [2 x i8] zeroinitializer, i8* getelementptr inbounds (<{ [1 x i8] }>, <{ [1 x i8] }>* @alloc16570, i32 0, i32 0, i32 0), [2 x i8] c"\01\00", i8* getelementptr inbounds (<{ [1 x i8] }>, <{ [1 x i8] }>* @alloc16570, i32 0, i32 0, i32 0), [2 x i8] c"\01\00" }>, align 1
@alloc16272 = private unnamed_addr constant <{ [32 x i8] }> <{ [32 x i8] c"index out of bounds: the len is " }>, align 1
@alloc16273 = private unnamed_addr constant <{ [18 x i8] }> <{ [18 x i8] c" but the index is " }>, align 1
@alloc16274 = private unnamed_addr constant <{ i8*, [2 x i8], i8*, [2 x i8] }> <{ i8* getelementptr inbounds (<{ [32 x i8] }>, <{ [32 x i8] }>* @alloc16272, i32 0, i32 0, i32 0), [2 x i8] c" \00", i8* getelementptr inbounds (<{ [18 x i8] }>, <{ [18 x i8] }>* @alloc16273, i32 0, i32 0, i32 0), [2 x i8] c"\12\00" }>, align 1
@alloc18679 = private unnamed_addr constant <{ [83 x i8] }> <{ [83 x i8] c"/home/dylan/projects/avr-rust/rust/avr-support-upstream/src/libcore/fmt/builders.rs" }>, align 1
@vtable.e = private unnamed_addr constant { void (%"fmt::builders::PadAdapter"*) addrspace(1)*, i16, i16, i1 (%"fmt::builders::PadAdapter"*, [0 x i8]*, i16) addrspace(1)*, i1 (%"fmt::builders::PadAdapter"*, i32) addrspace(1)*, i1 (%"fmt::builders::PadAdapter"*, %"fmt::Arguments"*) addrspace(1)* } { void (%"fmt::builders::PadAdapter"*) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"fmt::builders::PadAdapter"*) addrspace(1)*), i16 6, i16 1, i1 (%"fmt::builders::PadAdapter"*, [0 x i8]*, i16) addrspace(1)* @"_ZN68_$LT$core..fmt..builders..PadAdapter$u20$as$u20$core..fmt..Write$GT$9write_str17he9c5f1e2d628a56cE", i1 (%"fmt::builders::PadAdapter"*, i32) addrspace(1)* @_ZN4core3fmt5Write10write_char17h875919391bb168dcE, i1 (%"fmt::builders::PadAdapter"*, %"fmt::Arguments"*) addrspace(1)* @_ZN4core3fmt5Write9write_fmt17h0e0ce554ea355ac9E }, align 1
@alloc18634 = private unnamed_addr constant <{ [4 x i8] }> <{ [4 x i8] c"    " }>, align 1
@alloc18645 = private unnamed_addr constant <{ [3 x i8] }> <{ [3 x i8] c" {\0A" }>, align 1
@alloc18677 = private unnamed_addr constant <{ [2 x i8] }> <{ [2 x i8] c",\0A" }>, align 1
@alloc18672 = private unnamed_addr constant <{ [2 x i8] }> <{ [2 x i8] c", " }>, align 1
@alloc18643 = private unnamed_addr constant <{ [3 x i8] }> <{ [3 x i8] c" { " }>, align 1
@alloc18646 = private unnamed_addr constant <{ [3 x i8] }> <{ [3 x i8] c"..\0A" }>, align 1
@alloc18647 = private unnamed_addr constant <{ [4 x i8] }> <{ [4 x i8] c", .." }>, align 1
@alloc18648 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c" { .." }>, align 1
@alloc18681 = private unnamed_addr constant <{ [1 x i8] }> <{ [1 x i8] c"}" }>, align 1
@alloc18652 = private unnamed_addr constant <{ [2 x i8] }> <{ [2 x i8] c" }" }>, align 1
@alloc18653 = private unnamed_addr constant <{ [2 x i8] }> <{ [2 x i8] c"(\0A" }>, align 1
@alloc18655 = private unnamed_addr constant <{ [1 x i8] }> <{ [1 x i8] c"(" }>, align 1
@alloc18657 = private unnamed_addr constant <{ [1 x i8] }> <{ [1 x i8] c"," }>, align 1
@alloc16754 = private unnamed_addr constant <{ [1 x i8] }> <{ [1 x i8] c")" }>, align 1
@alloc18670 = private unnamed_addr constant <{ [1 x i8] }> <{ [1 x i8] c"\0A" }>, align 1
@alloc18666 = private unnamed_addr constant <{ [1 x i8] }> <{ [1 x i8] c"{" }>, align 1
@alloc18664 = private unnamed_addr constant <{ [1 x i8] }> <{ [1 x i8] c"[" }>, align 1
@vtable.f = private unnamed_addr constant { void (i32*) addrspace(1)*, i16, i16, i1 (i32*, %"fmt::Formatter"*) addrspace(1)* } { void (i32*) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (i32*) addrspace(1)*), i16 4, i16 1, i1 (i32*, %"fmt::Formatter"*) addrspace(1)* @"_ZN41_$LT$char$u20$as$u20$core..fmt..Debug$GT$3fmt17h03e3d18dd45a0945E" }, align 1
@vtable.g = private unnamed_addr constant { void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* } { void (i32**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (i32**) addrspace(1)*), i16 2, i16 1, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h442298b01a4bd039E" }, align 1
@vtable.h = private unnamed_addr constant { void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* } { void (i8**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (i8**) addrspace(1)*), i16 2, i16 1, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h9903c2e3d91f0488E" }, align 1
@alloc18665 = private unnamed_addr constant <{ [1 x i8] }> <{ [1 x i8] c"]" }>, align 1
@alloc18667 = private unnamed_addr constant <{ [70 x i8] }> <{ [70 x i8] c"attempted to begin a new map entry without completing the previous one" }>, align 1
@alloc18669 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [83 x i8] }>, <{ [83 x i8] }>* @alloc18679, i32 0, i32 0, i32 0), [10 x i8] c"S\00!\03\00\00\0D\00\00\00" }>, align 1
@alloc18674 = private unnamed_addr constant <{ [46 x i8] }> <{ [46 x i8] c"attempted to format a map value before its key" }>, align 1
@alloc18676 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [83 x i8] }>, <{ [83 x i8] }>* @alloc18679, i32 0, i32 0, i32 0), [10 x i8] c"S\00a\03\00\00\0D\00\00\00" }>, align 1
@alloc18678 = private unnamed_addr constant <{ [46 x i8] }> <{ [46 x i8] c"attempted to finish a map with a partial entry" }>, align 1
@alloc18680 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [83 x i8] }>, <{ [83 x i8] }>* @alloc18679, i32 0, i32 0, i32 0), [10 x i8] c"S\00\B7\03\00\00\0D\00\00\00" }>, align 1
@alloc19121 = private unnamed_addr constant <{ [78 x i8] }> <{ [78 x i8] c"/home/dylan/projects/avr-rust/rust/avr-support-upstream/src/libcore/fmt/num.rs" }>, align 1
@alloc18683 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [78 x i8] }>, <{ [78 x i8] }>* @alloc19121, i32 0, i32 0, i32 0), [10 x i8] c"N\00T\00\00\00\14\00\00\00" }>, align 1
@alloc18697 = private unnamed_addr constant <{ [2 x i8] }> <{ [2 x i8] c"0b" }>, align 1
@alloc18707 = private unnamed_addr constant <{ [2 x i8] }> <{ [2 x i8] c"0x" }>, align 1
@alloc18699 = private unnamed_addr constant <{ [2 x i8] }> <{ [2 x i8] c"0o" }>, align 1
@alloc261 = private unnamed_addr constant <{ [200 x i8] }> <{ [200 x i8] c"00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899" }>, align 1
@vtable.i = private unnamed_addr constant { void (%"fmt::builders::PadAdapter"**) addrspace(1)*, i16, i16, i1 (%"fmt::builders::PadAdapter"**, [0 x i8]*, i16) addrspace(1)*, i1 (%"fmt::builders::PadAdapter"**, i32) addrspace(1)*, i1 (%"fmt::builders::PadAdapter"**, %"fmt::Arguments"*) addrspace(1)* } { void (%"fmt::builders::PadAdapter"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"fmt::builders::PadAdapter"**) addrspace(1)*), i16 2, i16 1, i1 (%"fmt::builders::PadAdapter"**, [0 x i8]*, i16) addrspace(1)* @"_ZN50_$LT$$RF$mut$u20$W$u20$as$u20$core..fmt..Write$GT$9write_str17h0e5d1557647da5d2E", i1 (%"fmt::builders::PadAdapter"**, i32) addrspace(1)* @"_ZN50_$LT$$RF$mut$u20$W$u20$as$u20$core..fmt..Write$GT$10write_char17h7f001aeaacf91762E", i1 (%"fmt::builders::PadAdapter"**, %"fmt::Arguments"*) addrspace(1)* @"_ZN50_$LT$$RF$mut$u20$W$u20$as$u20$core..fmt..Write$GT$9write_fmt17hce3f29727e6570abE" }, align 1
@_ZN4core3fmt12USIZE_MARKER17h745ea7440253d6e3E = local_unnamed_addr constant <{ i8 addrspace(1)*, [0 x i8] }> <{ i8 addrspace(1)* bitcast (i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @_ZN4core3ops8function6FnOnce9call_once17h35286f7b5a1cec98E to i8 addrspace(1)*), [0 x i8] zeroinitializer }>, align 1
@alloc18728 = private unnamed_addr constant <{ [78 x i8] }> <{ [78 x i8] c"/home/dylan/projects/avr-rust/rust/avr-support-upstream/src/libcore/fmt/mod.rs" }>, align 1
@alloc18709 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [78 x i8] }>, <{ [78 x i8] }>* @alloc18728, i32 0, i32 0, i32 0), [10 x i8] c"N\00S\04\00\00\11\00\00\00" }>, align 1
@alloc18711 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [78 x i8] }>, <{ [78 x i8] }>* @alloc18728, i32 0, i32 0, i32 0), [10 x i8] c"N\00]\04\00\00$\00\00\00" }>, align 1
@alloc18714 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [78 x i8] }>, <{ [78 x i8] }>* @alloc18728, i32 0, i32 0, i32 0), [10 x i8] c"N\00\A5\05\00\00\1E\00\00\00" }>, align 1
@alloc18720 = private unnamed_addr constant <{ [64 x i8] }> <{ [64 x i8] c"0000000000000000000000000000000000000000000000000000000000000000" }>, align 1
@alloc18723 = private unnamed_addr constant <{ [45 x i8] }> <{ [45 x i8] c"an error occurred when formatting an argument" }>, align 1
@alloc18724 = private unnamed_addr constant <{ [4 x i8] }> <{ [4 x i8] c"true" }>, align 1
@alloc18725 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"false" }>, align 1
@alloc18730 = private unnamed_addr constant <{ [2 x i8] }> <{ [2 x i8] c"()" }>, align 1
@alloc18733 = private unnamed_addr constant <{ [11 x i8] }> <{ [11 x i8] c"PhantomData" }>, align 1
@alloc18734 = private unnamed_addr constant <{ [10 x i8] }> <{ [10 x i8] c"<borrowed>" }>, align 1
@alloc18741 = private unnamed_addr constant <{ [83 x i8] }> <{ [83 x i8] c"/home/dylan/projects/avr-rust/rust/avr-support-upstream/src/libcore/slice/memchr.rs" }>, align 1
@alloc18738 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [83 x i8] }>, <{ [83 x i8] }>* @alloc18741, i32 0, i32 0, i32 0), [10 x i8] c"S\00R\00\00\00\05\00\00\00" }>, align 1
@alloc18742 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [83 x i8] }>, <{ [83 x i8] }>* @alloc18741, i32 0, i32 0, i32 0), [10 x i8] c"S\00\83\00\00\00\05\00\00\00" }>, align 1
@alloc15710 = private unnamed_addr constant <{ [6 x i8] }> <{ [6 x i8] c"index " }>, align 1
@alloc15711 = private unnamed_addr constant <{ [34 x i8] }> <{ [34 x i8] c" out of range for slice of length " }>, align 1
@alloc15712 = private unnamed_addr constant <{ i8*, [2 x i8], i8*, [2 x i8] }> <{ i8* getelementptr inbounds (<{ [6 x i8] }>, <{ [6 x i8] }>* @alloc15710, i32 0, i32 0, i32 0), [2 x i8] c"\06\00", i8* getelementptr inbounds (<{ [34 x i8] }>, <{ [34 x i8] }>* @alloc15711, i32 0, i32 0, i32 0), [2 x i8] c"\22\00" }>, align 1
@alloc15676 = private unnamed_addr constant <{ [22 x i8] }> <{ [22 x i8] c"slice index starts at " }>, align 1
@alloc15677 = private unnamed_addr constant <{ [13 x i8] }> <{ [13 x i8] c" but ends at " }>, align 1
@alloc15678 = private unnamed_addr constant <{ i8*, [2 x i8], i8*, [2 x i8] }> <{ i8* getelementptr inbounds (<{ [22 x i8] }>, <{ [22 x i8] }>* @alloc15676, i32 0, i32 0, i32 0), [2 x i8] c"\16\00", i8* getelementptr inbounds (<{ [13 x i8] }>, <{ [13 x i8] }>* @alloc15677, i32 0, i32 0, i32 0), [2 x i8] c"\0D\00" }>, align 1
@alloc18757 = private unnamed_addr constant <{ [44 x i8] }> <{ [44 x i8] c"attempted to index slice up to maximum usize" }>, align 1
@alloc18758 = private unnamed_addr constant <{ [4 x i8] }> <{ [4 x i8] c"Iter" }>, align 1
@vtable.j = private unnamed_addr constant { void ({ [0 x i8]*, i16 }*) addrspace(1)*, i16, i16, i1 ({ [0 x i8]*, i16 }*, %"fmt::Formatter"*) addrspace(1)* } { void ({ [0 x i8]*, i16 }*) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void ({ [0 x i8]*, i16 }*) addrspace(1)*), i16 4, i16 1, i1 ({ [0 x i8]*, i16 }*, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h49144c1eebc06d07E" }, align 1
@alloc19205 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"Split" }>, align 1
@alloc18760 = private unnamed_addr constant <{ [1 x i8] }> <{ [1 x i8] c"v" }>, align 1
@alloc18813 = private unnamed_addr constant <{ [8 x i8] }> <{ [8 x i8] c"finished" }>, align 1
@vtable.k = private unnamed_addr constant { void (i8*) addrspace(1)*, i16, i16, i1 (i8*, %"fmt::Formatter"*) addrspace(1)* } { void (i8*) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (i8*) addrspace(1)*), i16 1, i16 1, i1 (i8*, %"fmt::Formatter"*) addrspace(1)* @"_ZN41_$LT$bool$u20$as$u20$core..fmt..Debug$GT$3fmt17hac99d466b6ddfefdE" }, align 1
@alloc18777 = private unnamed_addr constant <{ [82 x i8] }> <{ [82 x i8] c"/home/dylan/projects/avr-rust/rust/avr-support-upstream/src/libcore/str/pattern.rs" }>, align 1
@alloc18763 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [82 x i8] }>, <{ [82 x i8] }>* @alloc18777, i32 0, i32 0, i32 0), [10 x i8] c"R\00\8B\01\00\00&\00\00\00" }>, align 1
@alloc18764 = private unnamed_addr constant <{ [21 x i8] }> <{ [21 x i8] c"CharPredicateSearcher" }>, align 1
@alloc19174 = private unnamed_addr constant <{ [8 x i8] }> <{ [8 x i8] c"haystack" }>, align 1
@vtable.l = private unnamed_addr constant { void ({ [0 x i8]*, i16 }*) addrspace(1)*, i16, i16, i1 ({ [0 x i8]*, i16 }*, %"fmt::Formatter"*) addrspace(1)* } { void ({ [0 x i8]*, i16 }*) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void ({ [0 x i8]*, i16 }*) addrspace(1)*), i16 4, i16 1, i1 ({ [0 x i8]*, i16 }*, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h93a3617dbe1edcb4E" }, align 1
@alloc19171 = private unnamed_addr constant <{ [12 x i8] }> <{ [12 x i8] c"char_indices" }>, align 1
@vtable.m = private unnamed_addr constant { void (%"str::CharIndices"*) addrspace(1)*, i16, i16, i1 (%"str::CharIndices"*, %"fmt::Formatter"*) addrspace(1)* } { void (%"str::CharIndices"*) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"str::CharIndices"*) addrspace(1)*), i16 6, i16 1, i1 (%"str::CharIndices"*, %"fmt::Formatter"*) addrspace(1)* @"_ZN59_$LT$core..str..CharIndices$u20$as$u20$core..fmt..Debug$GT$3fmt17h16bb1cbf4154bae5E" }, align 1
@alloc18768 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [82 x i8] }>, <{ [82 x i8] }>* @alloc18777, i32 0, i32 0, i32 0), [10 x i8] c"R\00\AA\04\00\00\0C\00\00\00" }>, align 1
@alloc18770 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [82 x i8] }>, <{ [82 x i8] }>* @alloc18777, i32 0, i32 0, i32 0), [10 x i8] c"R\00\AA\04\00\00\22\00\00\00" }>, align 1
@alloc18772 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [82 x i8] }>, <{ [82 x i8] }>* @alloc18777, i32 0, i32 0, i32 0), [10 x i8] c"R\00\BE\04\00\000\00\00\00" }>, align 1
@alloc18774 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [82 x i8] }>, <{ [82 x i8] }>* @alloc18777, i32 0, i32 0, i32 0), [10 x i8] c"R\00\9D\05\00\00\15\00\00\00" }>, align 1
@alloc18776 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [82 x i8] }>, <{ [82 x i8] }>* @alloc18777, i32 0, i32 0, i32 0), [10 x i8] c"R\00\CB\05\00\00\15\00\00\00" }>, align 1
@alloc18778 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [82 x i8] }>, <{ [82 x i8] }>* @alloc18777, i32 0, i32 0, i32 0), [10 x i8] c"R\00\CC\05\00\00\15\00\00\00" }>, align 1
@alloc18799 = private unnamed_addr constant <{ [80 x i8] }> <{ [80 x i8] c"/home/dylan/projects/avr-rust/rust/avr-support-upstream/src/libcore/str/lossy.rs" }>, align 1
@alloc18780 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [80 x i8] }>, <{ [80 x i8] }>* @alloc18799, i32 0, i32 0, i32 0), [10 x i8] c"P\00\80\00\00\00\19\00\00\00" }>, align 1
@alloc18782 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [80 x i8] }>, <{ [80 x i8] }>* @alloc18799, i32 0, i32 0, i32 0), [10 x i8] c"P\00w\00\00\00\1D\00\00\00" }>, align 1
@alloc18784 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [80 x i8] }>, <{ [80 x i8] }>* @alloc18799, i32 0, i32 0, i32 0), [10 x i8] c"P\00{\00\00\00\1D\00\00\00" }>, align 1
@alloc18786 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [80 x i8] }>, <{ [80 x i8] }>* @alloc18799, i32 0, i32 0, i32 0), [10 x i8] c"P\00r\00\00\00!\00\00\00" }>, align 1
@alloc18788 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [80 x i8] }>, <{ [80 x i8] }>* @alloc18799, i32 0, i32 0, i32 0), [10 x i8] c"P\00h\00\00\00\1D\00\00\00" }>, align 1
@alloc18790 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [80 x i8] }>, <{ [80 x i8] }>* @alloc18799, i32 0, i32 0, i32 0), [10 x i8] c"P\00c\00\00\00!\00\00\00" }>, align 1
@alloc18792 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [80 x i8] }>, <{ [80 x i8] }>* @alloc18799, i32 0, i32 0, i32 0), [10 x i8] c"P\00X\00\00\00\1D\00\00\00" }>, align 1
@alloc18794 = private unnamed_addr constant <{ [35 x i8] }> <{ [35 x i8] c"assertion failed: broken.is_empty()" }>, align 1
@alloc18796 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [80 x i8] }>, <{ [80 x i8] }>* @alloc18799, i32 0, i32 0, i32 0), [10 x i8] c"P\00\9D\00\00\00\11\00\00\00" }>, align 1
@alloc16704 = private unnamed_addr constant <{ [2 x i8] }> <{ [2 x i8] c"\\x" }>, align 1
@alloc16705 = private unnamed_addr constant <{ i8*, [2 x i8] }> <{ i8* getelementptr inbounds (<{ [2 x i8] }>, <{ [2 x i8] }>* @alloc16704, i32 0, i32 0, i32 0), [2 x i8] c"\02\00" }>, align 1
@alloc16715 = private unnamed_addr constant <{ [17 x i8] }> <{ [17 x i8] c"\00\00 \00\00\00\03\08\00\00\00\02\00\00\00\02\00" }>, align 1
@alloc18801 = private unnamed_addr constant <{ [41 x i8] }> <{ [41 x i8] c"provided string was not `true` or `false`" }>, align 1
@alloc16733 = private unnamed_addr constant <{ [42 x i8] }> <{ [42 x i8] c"incomplete utf-8 byte sequence from index " }>, align 1
@alloc16734 = private unnamed_addr constant <{ i8*, [2 x i8] }> <{ i8* getelementptr inbounds (<{ [42 x i8] }>, <{ [42 x i8] }>* @alloc16733, i32 0, i32 0, i32 0), [2 x i8] c"*\00" }>, align 1
@alloc16738 = private unnamed_addr constant <{ [26 x i8] }> <{ [26 x i8] c"invalid utf-8 sequence of " }>, align 1
@alloc16739 = private unnamed_addr constant <{ [18 x i8] }> <{ [18 x i8] c" bytes from index " }>, align 1
@alloc16740 = private unnamed_addr constant <{ i8*, [2 x i8], i8*, [2 x i8] }> <{ i8* getelementptr inbounds (<{ [26 x i8] }>, <{ [26 x i8] }>* @alloc16738, i32 0, i32 0, i32 0), [2 x i8] c"\1A\00", i8* getelementptr inbounds (<{ [18 x i8] }>, <{ [18 x i8] }>* @alloc16739, i32 0, i32 0, i32 0), [2 x i8] c"\12\00" }>, align 1
@alloc16745 = private unnamed_addr constant <{ [6 x i8] }> <{ [6 x i8] c"Chars(" }>, align 1
@alloc16746 = private unnamed_addr constant <{ i8*, [2 x i8] }> <{ i8* getelementptr inbounds (<{ [6 x i8] }>, <{ [6 x i8] }>* @alloc16745, i32 0, i32 0, i32 0), [2 x i8] c"\06\00" }>, align 1
@alloc16755 = private unnamed_addr constant <{ i8*, [2 x i8] }> <{ i8* getelementptr inbounds (<{ [1 x i8] }>, <{ [1 x i8] }>* @alloc16754, i32 0, i32 0, i32 0), [2 x i8] c"\01\00" }>, align 1
@alloc18808 = private unnamed_addr constant <{ [13 x i8] }> <{ [13 x i8] c"SplitInternal" }>, align 1
@alloc18809 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"start" }>, align 1
@vtable.n = private unnamed_addr constant { void (i16*) addrspace(1)*, i16, i16, i1 (i16*, %"fmt::Formatter"*) addrspace(1)* } { void (i16*) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (i16*) addrspace(1)*), i16 2, i16 1, i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..Debug$u20$for$u20$usize$GT$3fmt17h5b03f6e1e4826f97E" }, align 1
@alloc19190 = private unnamed_addr constant <{ [3 x i8] }> <{ [3 x i8] c"end" }>, align 1
@alloc18811 = private unnamed_addr constant <{ [7 x i8] }> <{ [7 x i8] c"matcher" }>, align 1
@vtable.o = private unnamed_addr constant { void (%"str::pattern::CharSearcher"*) addrspace(1)*, i16, i16, i1 (%"str::pattern::CharSearcher"*, %"fmt::Formatter"*) addrspace(1)* } { void (%"str::pattern::CharSearcher"*) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"str::pattern::CharSearcher"*) addrspace(1)*), i16 18, i16 1, i1 (%"str::pattern::CharSearcher"*, %"fmt::Formatter"*) addrspace(1)* @"_ZN69_$LT$core..str..pattern..CharSearcher$u20$as$u20$core..fmt..Debug$GT$3fmt17h75d7eda8c1d49832E" }, align 1
@alloc18812 = private unnamed_addr constant <{ [20 x i8] }> <{ [20 x i8] c"allow_trailing_empty" }>, align 1
@vtable.p = private unnamed_addr constant { void (%"str::pattern::CharPredicateSearcher<str::IsWhitespace>"*) addrspace(1)*, i16, i16, i1 (%"str::pattern::CharPredicateSearcher<str::IsWhitespace>"*, %"fmt::Formatter"*) addrspace(1)* } { void (%"str::pattern::CharPredicateSearcher<str::IsWhitespace>"*) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"str::pattern::CharPredicateSearcher<str::IsWhitespace>"*) addrspace(1)*), i16 10, i16 1, i1 (%"str::pattern::CharPredicateSearcher<str::IsWhitespace>"*, %"fmt::Formatter"*) addrspace(1)* @"_ZN87_$LT$core..str..pattern..CharPredicateSearcher$LT$F$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17he8b27b6705a5c204E" }, align 1
@alloc18843 = private unnamed_addr constant <{ [78 x i8] }> <{ [78 x i8] c"/home/dylan/projects/avr-rust/rust/avr-support-upstream/src/libcore/str/mod.rs" }>, align 1
@_ZN4core3str15UTF8_CHAR_WIDTH17h3fdb01b2890429f3E = local_unnamed_addr constant <{ [256 x i8] }> <{ [256 x i8] c"\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\03\03\03\03\03\03\03\03\03\03\03\03\03\03\03\03\04\04\04\04\04\00\00\00\00\00\00\00\00\00\00\00" }>, align 1
@alloc18836 = private unnamed_addr constant <{ [42 x i8] }> <{ [42 x i8] c"attempted to index str up to maximum usize" }>, align 1
@alloc18838 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [78 x i8] }>, <{ [78 x i8] }>* @alloc18843, i32 0, i32 0, i32 0), [10 x i8] c"N\00\80\07\00\00/\00\00\00" }>, align 1
@alloc18840 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [78 x i8] }>, <{ [78 x i8] }>* @alloc18843, i32 0, i32 0, i32 0), [10 x i8] c"N\00\C3\07\00\00/\00\00\00" }>, align 1
@alloc18842 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [78 x i8] }>, <{ [78 x i8] }>* @alloc18843, i32 0, i32 0, i32 0), [10 x i8] c"N\00\04\08\00\00/\00\00\00" }>, align 1
@alloc18845 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"[...]" }>, align 1
@alloc15826 = private unnamed_addr constant <{ [11 x i8] }> <{ [11 x i8] c"byte index " }>, align 1
@alloc15808 = private unnamed_addr constant <{ [22 x i8] }> <{ [22 x i8] c" is out of bounds of `" }>, align 1
@alloc15810 = private unnamed_addr constant <{ i8*, [2 x i8], i8*, [2 x i8], i8*, [2 x i8] }> <{ i8* getelementptr inbounds (<{ [11 x i8] }>, <{ [11 x i8] }>* @alloc15826, i32 0, i32 0, i32 0), [2 x i8] c"\0B\00", i8* getelementptr inbounds (<{ [22 x i8] }>, <{ [22 x i8] }>* @alloc15808, i32 0, i32 0, i32 0), [2 x i8] c"\16\00", i8* getelementptr inbounds (<{ [1 x i8] }>, <{ [1 x i8] }>* @alloc15830, i32 0, i32 0, i32 0), [2 x i8] c"\01\00" }>, align 1
@alloc15816 = private unnamed_addr constant <{ [14 x i8] }> <{ [14 x i8] c"begin <= end (" }>, align 1
@alloc15817 = private unnamed_addr constant <{ [4 x i8] }> <{ [4 x i8] c" <= " }>, align 1
@alloc15818 = private unnamed_addr constant <{ [16 x i8] }> <{ [16 x i8] c") when slicing `" }>, align 1
@alloc15820 = private unnamed_addr constant <{ i8*, [2 x i8], i8*, [2 x i8], i8*, [2 x i8], i8*, [2 x i8] }> <{ i8* getelementptr inbounds (<{ [14 x i8] }>, <{ [14 x i8] }>* @alloc15816, i32 0, i32 0, i32 0), [2 x i8] c"\0E\00", i8* getelementptr inbounds (<{ [4 x i8] }>, <{ [4 x i8] }>* @alloc15817, i32 0, i32 0, i32 0), [2 x i8] c"\04\00", i8* getelementptr inbounds (<{ [16 x i8] }>, <{ [16 x i8] }>* @alloc15818, i32 0, i32 0, i32 0), [2 x i8] c"\10\00", i8* getelementptr inbounds (<{ [1 x i8] }>, <{ [1 x i8] }>* @alloc15830, i32 0, i32 0, i32 0), [2 x i8] c"\01\00" }>, align 1
@alloc15827 = private unnamed_addr constant <{ [38 x i8] }> <{ [38 x i8] c" is not a char boundary; it is inside " }>, align 1
@alloc15828 = private unnamed_addr constant <{ [8 x i8] }> <{ [8 x i8] c" (bytes " }>, align 1
@alloc15829 = private unnamed_addr constant <{ [6 x i8] }> <{ [6 x i8] c") of `" }>, align 1
@alloc15831 = private unnamed_addr constant <{ i8*, [2 x i8], i8*, [2 x i8], i8*, [2 x i8], i8*, [2 x i8], i8*, [2 x i8] }> <{ i8* getelementptr inbounds (<{ [11 x i8] }>, <{ [11 x i8] }>* @alloc15826, i32 0, i32 0, i32 0), [2 x i8] c"\0B\00", i8* getelementptr inbounds (<{ [38 x i8] }>, <{ [38 x i8] }>* @alloc15827, i32 0, i32 0, i32 0), [2 x i8] c"&\00", i8* getelementptr inbounds (<{ [8 x i8] }>, <{ [8 x i8] }>* @alloc15828, i32 0, i32 0, i32 0), [2 x i8] c"\08\00", i8* getelementptr inbounds (<{ [6 x i8] }>, <{ [6 x i8] }>* @alloc15829, i32 0, i32 0, i32 0), [2 x i8] c"\06\00", i8* getelementptr inbounds (<{ [1 x i8] }>, <{ [1 x i8] }>* @alloc15830, i32 0, i32 0, i32 0), [2 x i8] c"\01\00" }>, align 1
@alloc18848 = private unnamed_addr constant <{ [18 x i8] }> <{ [18 x i8] c"EncodeUtf16 { .. }" }>, align 1
@alloc18883 = private unnamed_addr constant <{ [75 x i8] }> <{ [75 x i8] c"/home/dylan/projects/avr-rust/rust/avr-support-upstream/src/libcore/time.rs" }>, align 1
@alloc18855 = private unnamed_addr constant <{ [30 x i8] }> <{ [30 x i8] c"overflow when adding durations" }>, align 1
@alloc18857 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [75 x i8] }>, <{ [75 x i8] }>* @alloc18883, i32 0, i32 0, i32 0), [10 x i8] c"K\00\E0\02\00\00\1F\00\00\00" }>, align 1
@alloc18858 = private unnamed_addr constant <{ [35 x i8] }> <{ [35 x i8] c"overflow when subtracting durations" }>, align 1
@alloc18860 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [75 x i8] }>, <{ [75 x i8] }>* @alloc18883, i32 0, i32 0, i32 0), [10 x i8] c"K\00\F0\02\00\00\1F\00\00\00" }>, align 1
@alloc18861 = private unnamed_addr constant <{ [44 x i8] }> <{ [44 x i8] c"overflow when multiplying duration by scalar" }>, align 1
@alloc18863 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [75 x i8] }>, <{ [75 x i8] }>* @alloc18883, i32 0, i32 0, i32 0), [10 x i8] c"K\00\00\03\00\00\1F\00\00\00" }>, align 1
@alloc18864 = private unnamed_addr constant <{ [53 x i8] }> <{ [53 x i8] c"divide by zero error when dividing duration by scalar" }>, align 1
@alloc18866 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [75 x i8] }>, <{ [75 x i8] }>* @alloc18883, i32 0, i32 0, i32 0), [10 x i8] c"K\00\19\03\00\00\1F\00\00\00" }>, align 1
@alloc16801 = private unnamed_addr constant <{ i8*, [2 x i8] }> <{ i8* getelementptr inbounds (<{ [1 x i8] }>, <{ [1 x i8] }>* @alloc19124, i32 0, i32 0, i32 0), [2 x i8] c"\01\00" }>, align 1
@alloc18867 = private unnamed_addr constant <{ [1 x i8] }> <{ [1 x i8] c"s" }>, align 1
@alloc18868 = private unnamed_addr constant <{ [2 x i8] }> <{ [2 x i8] c"ms" }>, align 1
@alloc18869 = private unnamed_addr constant <{ [3 x i8] }> <{ [3 x i8] c"\C2\B5s" }>, align 1
@alloc18870 = private unnamed_addr constant <{ [2 x i8] }> <{ [2 x i8] c"ns" }>, align 1
@alloc18872 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [75 x i8] }>, <{ [75 x i8] }>* @alloc18883, i32 0, i32 0, i32 0), [10 x i8] c"K\00l\03\00\00#\00\00\00" }>, align 1
@alloc18874 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [75 x i8] }>, <{ [75 x i8] }>* @alloc18883, i32 0, i32 0, i32 0), [10 x i8] c"K\00l\03\00\00\11\00\00\00" }>, align 1
@alloc18884 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [75 x i8] }>, <{ [75 x i8] }>* @alloc18883, i32 0, i32 0, i32 0), [10 x i8] c"K\00\A1\03\00\00C\00\00\00" }>, align 1
@alloc16828 = private unnamed_addr constant <{ i8*, [2 x i8], i8*, [2 x i8] }> <{ i8* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0, i32 0), [2 x i8] zeroinitializer, i8* getelementptr inbounds (<{ [1 x i8] }>, <{ [1 x i8] }>* @alloc16827, i32 0, i32 0, i32 0), [2 x i8] c"\01\00" }>, align 1
@alloc16843 = private unnamed_addr constant <{ [34 x i8] }> <{ [34 x i8] c"\00\00 \00\00\00\03\00\00\00\00\02\00\00\02\00\00\01\000\00\00\00\00\00\00\00\00\02\00\00\01\02\00" }>, align 1
@alloc18887 = private unnamed_addr constant <{ [88 x i8] }> <{ [88 x i8] c"/home/dylan/projects/avr-rust/rust/avr-support-upstream/src/libcore/unicode/printable.rs" }>, align 1
@alloc18886 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [88 x i8] }>, <{ [88 x i8] }>* @alloc18887, i32 0, i32 0, i32 0), [10 x i8] c"X\00\0A\00\00\00\1C\00\00\00" }>, align 1
@alloc18888 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [88 x i8] }>, <{ [88 x i8] }>* @alloc18887, i32 0, i32 0, i32 0), [10 x i8] c"X\00\1A\00\00\006\00\00\00" }>, align 1
@alloc748 = private unnamed_addr constant <{ [82 x i8] }> <{ [82 x i8] c"\00\01\03\05\05\06\06\03\07\06\08\08\09\11\0A\1C\0B\19\0C\14\0D\10\0E\0D\0F\04\10\03\12\12\13\09\16\01\17\05\18\02\19\03\1A\07\1C\02\1D\01\1F\16 \03+\03,\02-\0B.\010\031\022\01\A7\02\A9\02\AA\04\AB\08\FA\02\FB\05\FD\04\FE\03\FF\09" }>, align 1
@alloc18889 = private unnamed_addr constant <{ [290 x i8] }> <{ [290 x i8] c"\ADxy\8B\8D\A20WX\8B\8C\90\1C\1D\DD\0E\0FKL\FB\FC./?\\]_\B5\E2\84\8D\8E\91\92\A9\B1\BA\BB\C5\C6\C9\CA\DE\E4\E5\FF\00\04\11\12)147:;=IJ]\84\8E\92\A9\B1\B4\BA\BB\C6\CA\CE\CF\E4\E5\00\04\0D\0E\11\12)14:;EFIJ^de\84\91\9B\9D\C9\CE\CF\0D\11)EIWde\8D\91\A9\B4\BA\BB\C5\C9\DF\E4\E5\F0\0D\11EIde\80\84\B2\BC\BE\BF\D5\D7\F0\F1\83\85\8B\A4\A6\BE\BF\C5\C7\CE\CF\DA\DBH\98\BD\CD\C6\CE\CFINOWY^_\89\8E\8F\B1\B6\B7\BF\C1\C6\C7\D7\11\16\17[\\\F6\F7\FE\FF\80\0Dmq\DE\DF\0E\0F\1Fno\1C\1D_}~\AE\AF\BB\BC\FA\16\17\1E\1FFGNOXZ\\^~\7F\B5\C5\D4\D5\DC\F0\F1\F5rs\8Ftu\96/_&./\A7\AF\B7\BF\C7\CF\D7\DF\9A@\97\980\8F\1F\C0\C1\CE\FFNOZ[\07\08\0F\10'/\EE\EFno7=?BE\90\91\FE\FFSgu\C8\C9\D0\D1\D8\D9\E7\FE\FF" }>, align 1
@alloc18890 = private unnamed_addr constant <{ [309 x i8] }> <{ [309 x i8] c"\00 _\22\82\DF\04\82D\08\1B\04\06\11\81\AC\0E\80\AB5(\0B\80\E0\03\19\08\01\04/\044\04\07\03\01\07\06\07\11\0AP\0F\12\07U\07\03\04\1C\0A\09\03\08\03\07\03\02\03\03\03\0C\04\05\03\0B\06\01\0E\15\05:\03\11\07\06\05\10\07W\07\02\07\15\0DP\04C\03-\03\01\04\11\06\0F\0C:\04\1D%_ m\04j%\80\C8\05\82\B0\03\1A\06\82\FD\03Y\07\15\0B\17\09\14\0C\14\0Cj\06\0A\06\1A\06Y\07+\05F\0A,\04\0C\04\01\031\0B,\04\1A\06\0B\03\80\AC\06\0A\06!?L\04-\03t\08<\03\0F\03<\078\08+\05\82\FF\11\18\08/\11-\03 \10!\0F\80\8C\04\82\97\19\0B\15\88\94\05/\05;\07\02\0E\18\09\80\B3-t\0C\80\D6\1A\0C\05\80\FF\05\80\DF\0C\EE\0D\03\84\8D\037\09\81\\\14\80\B8\08\80\CB*8\03\0A\068\08F\08\0C\06t\0B\1E\03Z\04Y\09\80\83\18\1C\0A\16\09L\04\80\8A\06\AB\A4\0C\17\041\A1\04\81\DA&\07\0C\05\05\80\A5\11\81m\10x(*\06L\04\80\8D\04\80\BE\03\1B\03\0F\0D" }>, align 1
@alloc794 = private unnamed_addr constant <{ [76 x i8] }> <{ [76 x i8] c"\00\06\01\01\03\01\04\02\08\08\09\02\0A\05\0B\02\0E\04\10\01\11\02\12\05\13\11\14\01\15\02\17\02\19\0D\1C\05\1D\08$\01j\03k\02\BC\02\D1\02\D4\0C\D5\09\D6\02\D7\02\DA\01\E0\05\E1\02\E8\02\EE \F0\04\F8\02\F9\02\FA\02\FB\01" }>, align 1
@alloc18891 = private unnamed_addr constant <{ [175 x i8] }> <{ [175 x i8] c"\0C';>NO\8F\9E\9E\9F\06\07\096=>V\F3\D0\D1\04\14\1867VW\7F\AA\AE\AF\BD5\E0\12\87\89\8E\9E\04\0D\0E\11\12)14:EFIJNOde\\\B6\B7\1B\1C\07\08\0A\0B\14\1769:\A8\A9\D8\D9\097\90\91\A8\07\0A;>fi\8F\92o_\EE\EFZb\9A\9B'(U\9D\A0\A1\A3\A4\A7\A8\AD\BA\BC\C4\06\0B\0C\15\1D:?EQ\A6\A7\CC\CD\A0\07\19\1A\22%>?\C5\C6\04 #%&(38:HJLPSUVXZ\\^`cefksx}\7F\8A\A4\AA\AF\B0\C0\D0\AE\AFy\CCno\93" }>, align 1
@alloc18892 = private unnamed_addr constant <{ [419 x i8] }> <{ [419 x i8] c"^\22{\05\03\04-\03f\03\01/.\80\82\1D\031\0F\1C\04$\09\1E\05+\05D\04\0E*\80\AA\06$\04$\04(\084\0B\01\80\90\817\09\16\0A\08\80\989\03c\08\090\16\05!\03\1B\05\01@8\04K\05/\04\0A\07\09\07@ '\04\0C\096\03:\05\1A\07\04\0C\07PI73\0D3\07.\08\0A\81&RN(\08*V\1C\14\17\09N\04\1E\0FC\0E\19\07\0A\06H\08'\09u\0B?A*\06;\05\0A\06Q\06\01\05\10\03\05\80\8Bb\1EH\08\0A\80\A6^\22E\0B\0A\06\0D\139\07\0A6,\04\10\80\C0<dS\0CH\09\0AFE\1BH\08S\1D9\81\07F\0A\1D\03GI7\03\0E\08\0A\069\07\0A\816\19\80\B7\01\0F2\0D\83\9Bfu\0B\80\C4\8A\BC\84/\8F\D1\82G\A1\B9\829\07*\04\02`&\0AF\0A(\05\13\82\B0[eK\049\07\11@\05\0B\02\0E\97\F8\08\84\D6*\09\A2\F7\81\1F1\03\11\04\08\81\8C\89\04k\05\0D\03\09\07\10\93`\80\F6\0As\08n\17F\80\9A\14\0CW\09\19\80\87\81G\03\85B\0F\15\85P+\80\D5-\03\1A\04\02\81p:\05\01\85\00\80\D7)L\04\0A\04\02\83\11DL=\80\C2<\06\01\04U\05\1B4\02\81\0E,\04d\0CV\0A\80\AE8\1D\0D,\04\09\07\02\0E\06\80\9A\83\D8\08\0D\03\0D\03t\0CY\07\0C\14\0C\048\08\0A\06(\08\22N\81T\0C\15\03\03\05\07\09\19\07\07\09\03\0D\07)\80\CB%\0A\84\06" }>, align 1
@alloc19221 = private unnamed_addr constant <{ [91 x i8] }> <{ [91 x i8] c"/home/dylan/projects/avr-rust/rust/avr-support-upstream/src/libcore/unicode/unicode_data.rs" }>, align 1
@alloc18894 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [91 x i8] }>, <{ [91 x i8] }>* @alloc19221, i32 0, i32 0, i32 0), [10 x i8] c"[\00\19\00\00\00\0F\00\00\00" }>, align 1
@alloc18896 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [91 x i8] }>, <{ [91 x i8] }>* @alloc19221, i32 0, i32 0, i32 0), [10 x i8] c"[\00\1D\00\00\00#\00\00\00" }>, align 1
@alloc18898 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [91 x i8] }>, <{ [91 x i8] }>* @alloc19221, i32 0, i32 0, i32 0), [10 x i8] c"[\00\1E\00\00\00\18\00\00\00" }>, align 1
@alloc18900 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [91 x i8] }>, <{ [91 x i8] }>* @alloc19221, i32 0, i32 0, i32 0), [10 x i8] c"[\00K\00\00\00(\00\00\00" }>, align 1
@alloc18902 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [91 x i8] }>, <{ [91 x i8] }>* @alloc19221, i32 0, i32 0, i32 0), [10 x i8] c"[\00W\00\00\00\16\00\00\00" }>, align 1
@alloc18904 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [91 x i8] }>, <{ [91 x i8] }>* @alloc19221, i32 0, i32 0, i32 0), [10 x i8] c"[\00R\00\00\00>\00\00\00" }>, align 1
@alloc18905 = private unnamed_addr constant <{ [7 x i8] }> <{ [7 x i8] c"Context" }>, align 1
@alloc18906 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"waker" }>, align 1
@vtable.q = private unnamed_addr constant { void ({ i8*, i8* }**) addrspace(1)*, i16, i16, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* } { void ({ i8*, i8* }**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void ({ i8*, i8* }**) addrspace(1)*), i16 2, i16 1, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hbaad52c6373c9820E" }, align 1
@alloc18907 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"Waker" }>, align 1
@alloc19225 = private unnamed_addr constant <{ [4 x i8] }> <{ [4 x i8] c"data" }>, align 1
@vtable.r = private unnamed_addr constant { void ({}**) addrspace(1)*, i16, i16, i1 ({}**, %"fmt::Formatter"*) addrspace(1)* } { void ({}**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void ({}**) addrspace(1)*), i16 2, i16 1, i1 ({}**, %"fmt::Formatter"*) addrspace(1)* bitcast (i1 (%"task::wake::RawWakerVTable"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN52_$LT$$BP$const$u20$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h8432cd9af3f12b55E" to i1 ({}**, %"fmt::Formatter"*) addrspace(1)*) }, align 1
@alloc19226 = private unnamed_addr constant <{ [6 x i8] }> <{ [6 x i8] c"vtable" }>, align 1
@vtable.s = private unnamed_addr constant { void (%"task::wake::RawWakerVTable"**) addrspace(1)*, i16, i16, i1 (%"task::wake::RawWakerVTable"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"task::wake::RawWakerVTable"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"task::wake::RawWakerVTable"**) addrspace(1)*), i16 2, i16 1, i1 (%"task::wake::RawWakerVTable"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN52_$LT$$BP$const$u20$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h8432cd9af3f12b55E" }, align 1
@alloc18910 = private unnamed_addr constant <{ [45 x i8] }> <{ [45 x i8] c"invalid parameters to Layout::from_size_align" }>, align 1
@alloc18911 = private unnamed_addr constant <{ [24 x i8] }> <{ [24 x i8] c"memory allocation failed" }>, align 1
@alloc18920 = private unnamed_addr constant <{ [81 x i8] }> <{ [81 x i8] c"/home/dylan/projects/avr-rust/rust/avr-support-upstream/src/libcore/num/bignum.rs" }>, align 1
@alloc18913 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [81 x i8] }>, <{ [81 x i8] }>* @alloc18920, i32 0, i32 0, i32 0), [10 x i8] c"Q\00X\00\00\00\01\00\00\00" }>, align 1
@alloc18915 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [81 x i8] }>, <{ [81 x i8] }>* @alloc18920, i32 0, i32 0, i32 0), [10 x i8] c"Q\00\E3\01\00\00\01\00\00\00" }>, align 1
@alloc18922 = private unnamed_addr constant <{ [26 x i8] }> <{ [26 x i8] c"assertion failed: noborrow" }>, align 1
@alloc18917 = private unnamed_addr constant <{ [29 x i8] }> <{ [29 x i8] c"assertion failed: digits < 40" }>, align 1
@alloc18924 = private unnamed_addr constant <{ [27 x i8] }> <{ [27 x i8] c"assertion failed: other > 0" }>, align 1
@alloc18925 = private unnamed_addr constant <{ [30 x i8] }> <{ [30 x i8] c"assertion failed: !d.is_zero()" }>, align 1
@alloc17063 = private unnamed_addr constant <{ [17 x i8] }> <{ [17 x i8] c"\00\00 \00\00\00\03\04\00\00\00\02\00\00\02\00\00" }>, align 1
@alloc17068 = private unnamed_addr constant <{ [1 x i8] }> <{ [1 x i8] c"_" }>, align 1
@alloc17069 = private unnamed_addr constant <{ i8*, [2 x i8] }> <{ i8* getelementptr inbounds (<{ [1 x i8] }>, <{ [1 x i8] }>* @alloc17068, i32 0, i32 0, i32 0), [2 x i8] c"\01\00" }>, align 1
@alloc17078 = private unnamed_addr constant <{ [17 x i8] }> <{ [17 x i8] c"\00\00 \00\00\00\03\08\00\00\00\02\00\00\01\01\00" }>, align 1
@alloc18921 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [81 x i8] }>, <{ [81 x i8] }>* @alloc18920, i32 0, i32 0, i32 0), [10 x i8] c"Q\00\E8\01\00\00\05\00\00\00" }>, align 1
@alloc18923 = private unnamed_addr constant <{ [28 x i8] }> <{ [28 x i8] c"assertion failed: digits < 3" }>, align 1
@alloc18926 = private unnamed_addr constant <{ [8 x i8] }> <{ [8 x i8] c"Negative" }>, align 1
@alloc18927 = private unnamed_addr constant <{ [8 x i8] }> <{ [8 x i8] c"Positive" }>, align 1
@alloc18928 = private unnamed_addr constant <{ [7 x i8] }> <{ [7 x i8] c"Decimal" }>, align 1
@alloc18929 = private unnamed_addr constant <{ [8 x i8] }> <{ [8 x i8] c"integral" }>, align 1
@vtable.t = private unnamed_addr constant { void ({ [0 x i8]*, i16 }**) addrspace(1)*, i16, i16, i1 ({ [0 x i8]*, i16 }**, %"fmt::Formatter"*) addrspace(1)* } { void ({ [0 x i8]*, i16 }**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void ({ [0 x i8]*, i16 }**) addrspace(1)*), i16 2, i16 1, i1 ({ [0 x i8]*, i16 }**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h9065caa0e6bfa575E" }, align 1
@alloc18930 = private unnamed_addr constant <{ [10 x i8] }> <{ [10 x i8] c"fractional" }>, align 1
@alloc18950 = private unnamed_addr constant <{ [3 x i8] }> <{ [3 x i8] c"exp" }>, align 1
@vtable.u = private unnamed_addr constant { void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* } { void (i64**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (i64**) addrspace(1)*), i16 2, i16 1, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h05a188b30092c262E" }, align 1
@alloc18941 = private unnamed_addr constant <{ [7 x i8] }> <{ [7 x i8] c"Invalid" }>, align 1
@alloc18933 = private unnamed_addr constant <{ [14 x i8] }> <{ [14 x i8] c"ShortcutToZero" }>, align 1
@alloc18934 = private unnamed_addr constant <{ [13 x i8] }> <{ [13 x i8] c"ShortcutToInf" }>, align 1
@alloc18935 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"Valid" }>, align 1
@vtable.v = private unnamed_addr constant { void (%"num::dec2flt::parse::Decimal"**) addrspace(1)*, i16, i16, i1 (%"num::dec2flt::parse::Decimal"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"num::dec2flt::parse::Decimal"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"num::dec2flt::parse::Decimal"**) addrspace(1)*), i16 2, i16 1, i1 (%"num::dec2flt::parse::Decimal"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17he22cfd3a15b3bf1dE" }, align 1
@alloc18936 = private unnamed_addr constant <{ [8 x i8] }> <{ [8 x i8] c"Unpacked" }>, align 1
@alloc18937 = private unnamed_addr constant <{ [3 x i8] }> <{ [3 x i8] c"sig" }>, align 1
@vtable.w = private unnamed_addr constant { void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* } { void (i64**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (i64**) addrspace(1)*), i16 2, i16 1, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17ha55c377638c0fa88E" }, align 1
@alloc18938 = private unnamed_addr constant <{ [1 x i8] }> <{ [1 x i8] c"k" }>, align 1
@vtable.x = private unnamed_addr constant { void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* } { void (i16**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (i16**) addrspace(1)*), i16 2, i16 1, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hef160baddfa4f8bfE" }, align 1
@alloc18939 = private unnamed_addr constant <{ [15 x i8] }> <{ [15 x i8] c"ParseFloatError" }>, align 1
@alloc18988 = private unnamed_addr constant <{ [4 x i8] }> <{ [4 x i8] c"kind" }>, align 1
@vtable.y = private unnamed_addr constant { void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* } { void (i8**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (i8**) addrspace(1)*), i16 2, i16 1, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h0c82b523e8a69ae6E" }, align 1
@alloc19178 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"Empty" }>, align 1
@alloc18943 = private unnamed_addr constant <{ [2 x i8] }> <{ [2 x i8] c"Fp" }>, align 1
@alloc18944 = private unnamed_addr constant <{ [1 x i8] }> <{ [1 x i8] c"f" }>, align 1
@alloc18946 = private unnamed_addr constant <{ [7 x i8] }> <{ [7 x i8] c"Decoded" }>, align 1
@alloc18947 = private unnamed_addr constant <{ [4 x i8] }> <{ [4 x i8] c"mant" }>, align 1
@alloc18948 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"minus" }>, align 1
@alloc18949 = private unnamed_addr constant <{ [4 x i8] }> <{ [4 x i8] c"plus" }>, align 1
@alloc18951 = private unnamed_addr constant <{ [9 x i8] }> <{ [9 x i8] c"inclusive" }>, align 1
@vtable.z = private unnamed_addr constant { void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* } { void (i8**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (i8**) addrspace(1)*), i16 2, i16 1, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h39e3ec3ca298ecfaE" }, align 1
@alloc18952 = private unnamed_addr constant <{ [6 x i8] }> <{ [6 x i8] c"Finite" }>, align 1
@vtable.A = private unnamed_addr constant { void (%"num::flt2dec::decoder::Decoded"**) addrspace(1)*, i16, i16, i1 (%"num::flt2dec::decoder::Decoded"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"num::flt2dec::decoder::Decoded"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"num::flt2dec::decoder::Decoded"**) addrspace(1)*), i16 2, i16 1, i1 (%"num::flt2dec::decoder::Decoded"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hfd2d75c912151f23E" }, align 1
@alloc19013 = private unnamed_addr constant <{ [4 x i8] }> <{ [4 x i8] c"Zero" }>, align 1
@alloc18966 = private unnamed_addr constant <{ [8 x i8] }> <{ [8 x i8] c"Infinite" }>, align 1
@alloc18967 = private unnamed_addr constant <{ [3 x i8] }> <{ [3 x i8] c"Nan" }>, align 1
@alloc18956 = private unnamed_addr constant <{ [4 x i8] }> <{ [4 x i8] c"Copy" }>, align 1
@alloc18957 = private unnamed_addr constant <{ [3 x i8] }> <{ [3 x i8] c"Num" }>, align 1
@vtable.B = private unnamed_addr constant { void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* } { void (i16**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (i16**) addrspace(1)*), i16 2, i16 1, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hc1f049c94e389dcfE" }, align 1
@vtable.C = private unnamed_addr constant { void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* } { void (i16**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (i16**) addrspace(1)*), i16 2, i16 1, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h6a4b4f8d9fdb6b87E" }, align 1
@alloc18959 = private unnamed_addr constant <{ [12 x i8] }> <{ [12 x i8] c"MinusPlusRaw" }>, align 1
@alloc18960 = private unnamed_addr constant <{ [9 x i8] }> <{ [9 x i8] c"MinusPlus" }>, align 1
@alloc18961 = private unnamed_addr constant <{ [8 x i8] }> <{ [8 x i8] c"MinusRaw" }>, align 1
@alloc18962 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"Minus" }>, align 1
@alloc18963 = private unnamed_addr constant <{ [6 x i8] }> <{ [6 x i8] c"Normal" }>, align 1
@alloc18964 = private unnamed_addr constant <{ [9 x i8] }> <{ [9 x i8] c"Subnormal" }>, align 1
@alloc18968 = private unnamed_addr constant <{ [15 x i8] }> <{ [15 x i8] c"TryFromIntError" }>, align 1
@vtable.D = private unnamed_addr constant { void ({}**) addrspace(1)*, i16, i16, i1 ({}**, %"fmt::Formatter"*) addrspace(1)* } { void ({}**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void ({}**) addrspace(1)*), i16 2, i16 1, i1 ({}**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hd480a7b2ae9bad3cE" }, align 1
@alloc18969 = private unnamed_addr constant <{ [13 x i8] }> <{ [13 x i8] c"ParseIntError" }>, align 1
@vtable.E = private unnamed_addr constant { void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* } { void (i8**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (i8**) addrspace(1)*), i16 2, i16 1, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17he2cdb443778dc920E" }, align 1
@alloc18972 = private unnamed_addr constant <{ [9 x i8] }> <{ [9 x i8] c"Underflow" }>, align 1
@alloc18973 = private unnamed_addr constant <{ [8 x i8] }> <{ [8 x i8] c"Overflow" }>, align 1
@alloc18974 = private unnamed_addr constant <{ [12 x i8] }> <{ [12 x i8] c"InvalidDigit" }>, align 1
@alloc18976 = private unnamed_addr constant <{ [7 x i8] }> <{ [7 x i8] c"Greater" }>, align 1
@alloc18977 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"Equal" }>, align 1
@alloc18978 = private unnamed_addr constant <{ [4 x i8] }> <{ [4 x i8] c"Less" }>, align 1
@alloc18979 = private unnamed_addr constant <{ [13 x i8] }> <{ [13 x i8] c"PhantomPinned" }>, align 1
@alloc18984 = private unnamed_addr constant <{ [6 x i8] }> <{ [6 x i8] c"TypeId" }>, align 1
@alloc18985 = private unnamed_addr constant <{ [1 x i8] }> <{ [1 x i8] c"t" }>, align 1
@alloc18986 = private unnamed_addr constant <{ [17 x i8] }> <{ [17 x i8] c"TryFromSliceError" }>, align 1
@alloc18987 = private unnamed_addr constant <{ [14 x i8] }> <{ [14 x i8] c"ParseCharError" }>, align 1
@vtable.F = private unnamed_addr constant { void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* } { void (i8**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (i8**) addrspace(1)*), i16 2, i16 1, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h20ef4209d2049bbcE" }, align 1
@alloc18989 = private unnamed_addr constant <{ [12 x i8] }> <{ [12 x i8] c"TooManyChars" }>, align 1
@alloc18990 = private unnamed_addr constant <{ [11 x i8] }> <{ [11 x i8] c"EmptyString" }>, align 1
@alloc18991 = private unnamed_addr constant <{ [16 x i8] }> <{ [16 x i8] c"CharTryFromError" }>, align 1
@alloc18992 = private unnamed_addr constant <{ [16 x i8] }> <{ [16 x i8] c"DecodeUtf16Error" }>, align 1
@alloc18993 = private unnamed_addr constant <{ [4 x i8] }> <{ [4 x i8] c"code" }>, align 1
@alloc19217 = private unnamed_addr constant <{ [13 x i8] }> <{ [13 x i8] c"EscapeUnicode" }>, align 1
@alloc18995 = private unnamed_addr constant <{ [1 x i8] }> <{ [1 x i8] c"c" }>, align 1
@alloc19147 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"state" }>, align 1
@vtable.G = private unnamed_addr constant { void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* } { void (i8**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (i8**) addrspace(1)*), i16 2, i16 1, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hfe834ac3d76d7fa1E" }, align 1
@alloc18997 = private unnamed_addr constant <{ [13 x i8] }> <{ [13 x i8] c"hex_digit_idx" }>, align 1
@alloc19007 = private unnamed_addr constant <{ [9 x i8] }> <{ [9 x i8] c"Backslash" }>, align 1
@alloc18999 = private unnamed_addr constant <{ [4 x i8] }> <{ [4 x i8] c"Type" }>, align 1
@alloc19000 = private unnamed_addr constant <{ [9 x i8] }> <{ [9 x i8] c"LeftBrace" }>, align 1
@alloc19001 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"Value" }>, align 1
@alloc19002 = private unnamed_addr constant <{ [10 x i8] }> <{ [10 x i8] c"RightBrace" }>, align 1
@alloc19158 = private unnamed_addr constant <{ [4 x i8] }> <{ [4 x i8] c"Done" }>, align 1
@alloc19215 = private unnamed_addr constant <{ [13 x i8] }> <{ [13 x i8] c"EscapeDefault" }>, align 1
@vtable.H = private unnamed_addr constant { void (%"char::EscapeDefaultState"**) addrspace(1)*, i16, i16, i1 (%"char::EscapeDefaultState"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"char::EscapeDefaultState"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"char::EscapeDefaultState"**) addrspace(1)*), i16 2, i16 1, i1 (%"char::EscapeDefaultState"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hfb83a7235f413c73E" }, align 1
@alloc19006 = private unnamed_addr constant <{ [7 x i8] }> <{ [7 x i8] c"Unicode" }>, align 1
@vtable.I = private unnamed_addr constant { void (%"char::EscapeUnicode"**) addrspace(1)*, i16, i16, i1 (%"char::EscapeUnicode"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"char::EscapeUnicode"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"char::EscapeUnicode"**) addrspace(1)*), i16 2, i16 1, i1 (%"char::EscapeUnicode"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h5a78e8a9e6a82fe5E" }, align 1
@alloc19008 = private unnamed_addr constant <{ [4 x i8] }> <{ [4 x i8] c"Char" }>, align 1
@alloc19213 = private unnamed_addr constant <{ [11 x i8] }> <{ [11 x i8] c"EscapeDebug" }>, align 1
@vtable.J = private unnamed_addr constant { void (%"char::EscapeDefault"**) addrspace(1)*, i16, i16, i1 (%"char::EscapeDefault"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"char::EscapeDefault"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"char::EscapeDefault"**) addrspace(1)*), i16 2, i16 1, i1 (%"char::EscapeDefault"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h2a19fa79c5660501E" }, align 1
@alloc19011 = private unnamed_addr constant <{ [11 x i8] }> <{ [11 x i8] c"ToLowercase" }>, align 1
@vtable.K = private unnamed_addr constant { void (%"char::CaseMappingIter"**) addrspace(1)*, i16, i16, i1 (%"char::CaseMappingIter"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"char::CaseMappingIter"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"char::CaseMappingIter"**) addrspace(1)*), i16 2, i16 1, i1 (%"char::CaseMappingIter"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h5e03d16e8533a1f2E" }, align 1
@alloc19012 = private unnamed_addr constant <{ [11 x i8] }> <{ [11 x i8] c"ToUppercase" }>, align 1
@alloc19014 = private unnamed_addr constant <{ [3 x i8] }> <{ [3 x i8] c"One" }>, align 1
@alloc19015 = private unnamed_addr constant <{ [3 x i8] }> <{ [3 x i8] c"Two" }>, align 1
@alloc19016 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"Three" }>, align 1
@alloc19017 = private unnamed_addr constant <{ [6 x i8] }> <{ [6 x i8] c"VaList" }>, align 1
@vtable.L = private unnamed_addr constant { void (i8***) addrspace(1)*, i16, i16, i1 (i8***, %"fmt::Formatter"*) addrspace(1)* } { void (i8***) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (i8***) addrspace(1)*), i16 2, i16 1, i1 (i8***, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h2206fedbeb894c1cE" }, align 1
@alloc19150 = private unnamed_addr constant <{ [7 x i8] }> <{ [7 x i8] c"_marker" }>, align 1
@vtable.M = private unnamed_addr constant { void (%"marker::PhantomData<&mut ffi::VaListImpl>"**) addrspace(1)*, i16, i16, i1 (%"marker::PhantomData<&mut ffi::VaListImpl>"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"marker::PhantomData<&mut ffi::VaListImpl>"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"marker::PhantomData<&mut ffi::VaListImpl>"**) addrspace(1)*), i16 2, i16 1, i1 (%"marker::PhantomData<&mut ffi::VaListImpl>"**, %"fmt::Formatter"*) addrspace(1)* bitcast (i1 (%"marker::PhantomData<hash::sip::Sip13Rounds>"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h6193a0c742a2c159E" to i1 (%"marker::PhantomData<&mut ffi::VaListImpl>"**, %"fmt::Formatter"*) addrspace(1)*) }, align 1
@alloc19020 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"Chain" }>, align 1
@alloc19021 = private unnamed_addr constant <{ [1 x i8] }> <{ [1 x i8] c"a" }>, align 1
@vtable.N = private unnamed_addr constant { void (%"option::Option<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>>"**) addrspace(1)*, i16, i16, i1 (%"option::Option<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>>"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"option::Option<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>>"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"option::Option<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>>"**) addrspace(1)*), i16 2, i16 1, i1 (%"option::Option<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>>"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h2cdbbe20c9071db5E" }, align 1
@alloc19022 = private unnamed_addr constant <{ [1 x i8] }> <{ [1 x i8] c"b" }>, align 1
@vtable.O = private unnamed_addr constant { void (%"option::Option<iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"**) addrspace(1)*, i16, i16, i1 (%"option::Option<iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"option::Option<iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"option::Option<iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"**) addrspace(1)*), i16 2, i16 1, i1 (%"option::Option<iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h2a22e96f65471a62E" }, align 1
@alloc19035 = private unnamed_addr constant <{ [13 x i8] }> <{ [13 x i8] c"FlattenCompat" }>, align 1
@vtable.P = private unnamed_addr constant { void (%"iter::adapters::fuse::Fuse<option::IntoIter<char::EscapeDebug>>"**) addrspace(1)*, i16, i16, i1 (%"iter::adapters::fuse::Fuse<option::IntoIter<char::EscapeDebug>>"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"iter::adapters::fuse::Fuse<option::IntoIter<char::EscapeDebug>>"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"iter::adapters::fuse::Fuse<option::IntoIter<char::EscapeDebug>>"**) addrspace(1)*), i16 2, i16 1, i1 (%"iter::adapters::fuse::Fuse<option::IntoIter<char::EscapeDebug>>"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h474306c80d8f5097E" }, align 1
@alloc19037 = private unnamed_addr constant <{ [9 x i8] }> <{ [9 x i8] c"frontiter" }>, align 1
@vtable.Q = private unnamed_addr constant { void (%"option::Option<char::EscapeDebug>"**) addrspace(1)*, i16, i16, i1 (%"option::Option<char::EscapeDebug>"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"option::Option<char::EscapeDebug>"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"option::Option<char::EscapeDebug>"**) addrspace(1)*), i16 2, i16 1, i1 (%"option::Option<char::EscapeDebug>"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h3b0dbc4ce1ceefa8E" }, align 1
@alloc19038 = private unnamed_addr constant <{ [8 x i8] }> <{ [8 x i8] c"backiter" }>, align 1
@vtable.R = private unnamed_addr constant { void ({ i8*, i8* }**) addrspace(1)*, i16, i16, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* } { void ({ i8*, i8* }**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void ({ i8*, i8* }**) addrspace(1)*), i16 2, i16 1, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h46d91eb020b1c821E" }, align 1
@vtable.S = private unnamed_addr constant { void (%"option::Option<char::EscapeUnicode>"**) addrspace(1)*, i16, i16, i1 (%"option::Option<char::EscapeUnicode>"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"option::Option<char::EscapeUnicode>"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"option::Option<char::EscapeUnicode>"**) addrspace(1)*), i16 2, i16 1, i1 (%"option::Option<char::EscapeUnicode>"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h7ec51cc19a0e3de7E" }, align 1
@vtable.T = private unnamed_addr constant { void ({ i8*, i8* }**) addrspace(1)*, i16, i16, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* } { void ({ i8*, i8* }**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void ({ i8*, i8* }**) addrspace(1)*), i16 2, i16 1, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h417d25861390c6c8E" }, align 1
@vtable.U = private unnamed_addr constant { void (%"option::Option<char::EscapeDefault>"**) addrspace(1)*, i16, i16, i1 (%"option::Option<char::EscapeDefault>"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"option::Option<char::EscapeDefault>"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"option::Option<char::EscapeDefault>"**) addrspace(1)*), i16 2, i16 1, i1 (%"option::Option<char::EscapeDefault>"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h050a83c689ffae1bE" }, align 1
@vtable.V = private unnamed_addr constant { void ({ i8*, i8* }**) addrspace(1)*, i16, i16, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* } { void ({ i8*, i8* }**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void ({ i8*, i8* }**) addrspace(1)*), i16 2, i16 1, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hae4ef63fdbe4a8c6E" }, align 1
@alloc19045 = private unnamed_addr constant <{ [4 x i8] }> <{ [4 x i8] c"Fuse" }>, align 1
@vtable.W = private unnamed_addr constant { void (%"option::Option<option::IntoIter<char::EscapeDebug>>"**) addrspace(1)*, i16, i16, i1 (%"option::Option<option::IntoIter<char::EscapeDebug>>"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"option::Option<option::IntoIter<char::EscapeDebug>>"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"option::Option<option::IntoIter<char::EscapeDebug>>"**) addrspace(1)*), i16 2, i16 1, i1 (%"option::Option<option::IntoIter<char::EscapeDebug>>"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h595ed638e5f36999E" }, align 1
@vtable.X = private unnamed_addr constant { void ({ i8*, i8* }**) addrspace(1)*, i16, i16, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* } { void ({ i8*, i8* }**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void ({ i8*, i8* }**) addrspace(1)*), i16 2, i16 1, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h5a5b823814e019c8E" }, align 1
@vtable.Y = private unnamed_addr constant { void ({ i8*, i8* }**) addrspace(1)*, i16, i16, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* } { void ({ i8*, i8* }**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void ({ i8*, i8* }**) addrspace(1)*), i16 2, i16 1, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h73353b32fd015885E" }, align 1
@vtable.Z = private unnamed_addr constant { void ({ i8*, i8* }**) addrspace(1)*, i16, i16, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* } { void ({ i8*, i8* }**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void ({ i8*, i8* }**) addrspace(1)*), i16 2, i16 1, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h560767b56b1398f0E" }, align 1
@alloc19047 = private unnamed_addr constant <{ [6 x i8] }> <{ [6 x i8] c"Copied" }>, align 1
@alloc19048 = private unnamed_addr constant <{ [2 x i8] }> <{ [2 x i8] c"it" }>, align 1
@vtable.10 = private unnamed_addr constant { void ({ i8*, i8* }**) addrspace(1)*, i16, i16, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* } { void ({ i8*, i8* }**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void ({ i8*, i8* }**) addrspace(1)*), i16 2, i16 1, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17he4d9045635ceda93E" }, align 1
@alloc19071 = private unnamed_addr constant <{ [4 x i8] }> <{ [4 x i8] c"Some" }>, align 1
@alloc19072 = private unnamed_addr constant <{ [4 x i8] }> <{ [4 x i8] c"None" }>, align 1
@vtable.11 = private unnamed_addr constant { void (%"fmt::Arguments"***) addrspace(1)*, i16, i16, i1 (%"fmt::Arguments"***, %"fmt::Formatter"*) addrspace(1)* } { void (%"fmt::Arguments"***) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"fmt::Arguments"***) addrspace(1)*), i16 2, i16 1, i1 (%"fmt::Arguments"***, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hf164226bb1e54e10E" }, align 1
@vtable.12 = private unnamed_addr constant { void (%"char::EscapeDebug"**) addrspace(1)*, i16, i16, i1 (%"char::EscapeDebug"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"char::EscapeDebug"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"char::EscapeDebug"**) addrspace(1)*), i16 2, i16 1, i1 (%"char::EscapeDebug"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17he9ad917816789fc9E" }, align 1
@vtable.13 = private unnamed_addr constant { void (%"iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>"**) addrspace(1)*, i16, i16, i1 (%"iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>"**) addrspace(1)*), i16 2, i16 1, i1 (%"iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hd73078e04c14a2b3E" }, align 1
@vtable.14 = private unnamed_addr constant { void (%"option::IntoIter<char::EscapeDebug>"**) addrspace(1)*, i16, i16, i1 (%"option::IntoIter<char::EscapeDebug>"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"option::IntoIter<char::EscapeDebug>"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"option::IntoIter<char::EscapeDebug>"**) addrspace(1)*), i16 2, i16 1, i1 (%"option::IntoIter<char::EscapeDebug>"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h5de8cdf0567aa522E" }, align 1
@vtable.15 = private unnamed_addr constant { void (%"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>"**) addrspace(1)*, i16, i16, i1 (%"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>"**) addrspace(1)*), i16 2, i16 1, i1 (%"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h5d11d86792b314b8E" }, align 1
@vtable.16 = private unnamed_addr constant { void ({ i8*, i8* }**) addrspace(1)*, i16, i16, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* } { void ({ i8*, i8* }**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void ({ i8*, i8* }**) addrspace(1)*), i16 2, i16 1, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h2bfbd9733f088f10E" }, align 1
@vtable.17 = private unnamed_addr constant { void ({ i8*, i8* }**) addrspace(1)*, i16, i16, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* } { void ({ i8*, i8* }**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void ({ i8*, i8* }**) addrspace(1)*), i16 2, i16 1, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h2bfbd9733f088f10E" }, align 1
@vtable.18 = private unnamed_addr constant { void ({ i8*, i8* }**) addrspace(1)*, i16, i16, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* } { void ({ i8*, i8* }**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void ({ i8*, i8* }**) addrspace(1)*), i16 2, i16 1, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h2bfbd9733f088f10E" }, align 1
@alloc19073 = private unnamed_addr constant <{ [4 x i8] }> <{ [4 x i8] c"Item" }>, align 1
@alloc19074 = private unnamed_addr constant <{ [3 x i8] }> <{ [3 x i8] c"opt" }>, align 1
@alloc19075 = private unnamed_addr constant <{ [8 x i8] }> <{ [8 x i8] c"IntoIter" }>, align 1
@vtable.19 = private unnamed_addr constant { void (%"option::Item<char::EscapeDebug>"**) addrspace(1)*, i16, i16, i1 (%"option::Item<char::EscapeDebug>"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"option::Item<char::EscapeDebug>"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"option::Item<char::EscapeDebug>"**) addrspace(1)*), i16 2, i16 1, i1 (%"option::Item<char::EscapeDebug>"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h8a721444988fd973E" }, align 1
@alloc19077 = private unnamed_addr constant <{ [9 x i8] }> <{ [9 x i8] c"NoneError" }>, align 1
@alloc19078 = private unnamed_addr constant <{ [9 x i8] }> <{ [9 x i8] c"PanicInfo" }>, align 1
@alloc19079 = private unnamed_addr constant <{ [7 x i8] }> <{ [7 x i8] c"payload" }>, align 1
@vtable.1a = private unnamed_addr constant { void ({ {}*, [3 x i16]* }**) addrspace(1)*, i16, i16, i1 ({ {}*, [3 x i16]* }**, %"fmt::Formatter"*) addrspace(1)* } { void ({ {}*, [3 x i16]* }**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void ({ {}*, [3 x i16]* }**) addrspace(1)*), i16 2, i16 1, i1 ({ {}*, [3 x i16]* }**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hf8b3de76d6b2b350E" }, align 1
@alloc19080 = private unnamed_addr constant <{ [7 x i8] }> <{ [7 x i8] c"message" }>, align 1
@vtable.1b = private unnamed_addr constant { void (i8***) addrspace(1)*, i16, i16, i1 (i8***, %"fmt::Formatter"*) addrspace(1)* } { void (i8***) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (i8***) addrspace(1)*), i16 2, i16 1, i1 (i8***, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h04e6f2a75d864e2aE" }, align 1
@alloc19081 = private unnamed_addr constant <{ [8 x i8] }> <{ [8 x i8] c"location" }>, align 1
@vtable.1c = private unnamed_addr constant { void (%"panic::Location"***) addrspace(1)*, i16, i16, i1 (%"panic::Location"***, %"fmt::Formatter"*) addrspace(1)* } { void (%"panic::Location"***) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"panic::Location"***) addrspace(1)*), i16 2, i16 1, i1 (%"panic::Location"***, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h75013bf39c165a49E" }, align 1
@alloc19082 = private unnamed_addr constant <{ [8 x i8] }> <{ [8 x i8] c"Location" }>, align 1
@alloc19083 = private unnamed_addr constant <{ [4 x i8] }> <{ [4 x i8] c"file" }>, align 1
@vtable.1d = private unnamed_addr constant { void ({ [0 x i8]*, i16 }**) addrspace(1)*, i16, i16, i1 ({ [0 x i8]*, i16 }**, %"fmt::Formatter"*) addrspace(1)* } { void ({ [0 x i8]*, i16 }**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void ({ [0 x i8]*, i16 }**) addrspace(1)*), i16 2, i16 1, i1 ({ [0 x i8]*, i16 }**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h42c7c3979db67d78E" }, align 1
@alloc19084 = private unnamed_addr constant <{ [4 x i8] }> <{ [4 x i8] c"line" }>, align 1
@vtable.1e = private unnamed_addr constant { void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* } { void (i32**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (i32**) addrspace(1)*), i16 2, i16 1, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h99ec5e2482d1373aE" }, align 1
@alloc19085 = private unnamed_addr constant <{ [3 x i8] }> <{ [3 x i8] c"col" }>, align 1
@alloc19086 = private unnamed_addr constant <{ [6 x i8] }> <{ [6 x i8] c"SeqCst" }>, align 1
@alloc19087 = private unnamed_addr constant <{ [6 x i8] }> <{ [6 x i8] c"AcqRel" }>, align 1
@alloc19088 = private unnamed_addr constant <{ [7 x i8] }> <{ [7 x i8] c"Acquire" }>, align 1
@alloc19089 = private unnamed_addr constant <{ [7 x i8] }> <{ [7 x i8] c"Release" }>, align 1
@alloc19090 = private unnamed_addr constant <{ [7 x i8] }> <{ [7 x i8] c"Relaxed" }>, align 1
@alloc15923 = private unnamed_addr constant <{ [28 x i8] }> <{ [28 x i8] c"number not in the range 0..=" }>, align 1
@alloc15925 = private unnamed_addr constant <{ i8*, [2 x i8], i8*, [2 x i8] }> <{ i8* getelementptr inbounds (<{ [28 x i8] }>, <{ [28 x i8] }>* @alloc15923, i32 0, i32 0, i32 0), [2 x i8] c"\1C\00", i8* getelementptr inbounds (<{ [2 x i8] }>, <{ [2 x i8] }>* @alloc15924, i32 0, i32 0, i32 0), [2 x i8] c"\02\00" }>, align 1
@alloc19092 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [78 x i8] }>, <{ [78 x i8] }>* @alloc19121, i32 0, i32 0, i32 0), [10 x i8] c"N\00}\00\00\00\01\00\00\00" }>, align 1
@alloc17539 = private unnamed_addr constant <{ [1 x i8] }> <{ [1 x i8] c"\07" }>, align 1
@alloc19094 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [78 x i8] }>, <{ [78 x i8] }>* @alloc19121, i32 0, i32 0, i32 0), [10 x i8] c"N\00~\00\00\00\01\00\00\00" }>, align 1
@alloc15929 = private unnamed_addr constant <{ [1 x i8] }> <{ [1 x i8] c"\0F" }>, align 1
@alloc19096 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [78 x i8] }>, <{ [78 x i8] }>* @alloc19121, i32 0, i32 0, i32 0), [10 x i8] c"N\00\7F\00\00\00\01\00\00\00" }>, align 1
@alloc19098 = private unnamed_addr constant <{ i8*, [10 x i8] }> <{ i8* getelementptr inbounds (<{ [78 x i8] }>, <{ [78 x i8] }>* @alloc19121, i32 0, i32 0, i32 0), [10 x i8] c"N\00\81\00\00\00\01\00\00\00" }>, align 1
@alloc19126 = private unnamed_addr constant <{ [6 x i8] }> <{ [6 x i8] c"Center" }>, align 1
@alloc19127 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"Right" }>, align 1
@alloc19128 = private unnamed_addr constant <{ [4 x i8] }> <{ [4 x i8] c"Left" }>, align 1
@alloc19129 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"Error" }>, align 1
@alloc19130 = private unnamed_addr constant <{ [11 x i8] }> <{ [11 x i8] c"SipHasher13" }>, align 1
@alloc19133 = private unnamed_addr constant <{ [6 x i8] }> <{ [6 x i8] c"hasher" }>, align 1
@vtable.1g = private unnamed_addr constant { void (%"hash::sip::Hasher<hash::sip::Sip13Rounds>"**) addrspace(1)*, i16, i16, i1 (%"hash::sip::Hasher<hash::sip::Sip13Rounds>"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"hash::sip::Hasher<hash::sip::Sip13Rounds>"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"hash::sip::Hasher<hash::sip::Sip13Rounds>"**) addrspace(1)*), i16 2, i16 1, i1 (%"hash::sip::Hasher<hash::sip::Sip13Rounds>"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hec0aed04fe88165bE" }, align 1
@alloc19132 = private unnamed_addr constant <{ [11 x i8] }> <{ [11 x i8] c"SipHasher24" }>, align 1
@vtable.1h = private unnamed_addr constant { void (%"hash::sip::Hasher<hash::sip::Sip24Rounds>"**) addrspace(1)*, i16, i16, i1 (%"hash::sip::Hasher<hash::sip::Sip24Rounds>"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"hash::sip::Hasher<hash::sip::Sip24Rounds>"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"hash::sip::Hasher<hash::sip::Sip24Rounds>"**) addrspace(1)*), i16 2, i16 1, i1 (%"hash::sip::Hasher<hash::sip::Sip24Rounds>"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hc80d369e720370b2E" }, align 1
@alloc19134 = private unnamed_addr constant <{ [9 x i8] }> <{ [9 x i8] c"SipHasher" }>, align 1
@vtable.1i = private unnamed_addr constant { void (%"hash::sip::SipHasher24"**) addrspace(1)*, i16, i16, i1 (%"hash::sip::SipHasher24"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"hash::sip::SipHasher24"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"hash::sip::SipHasher24"**) addrspace(1)*), i16 2, i16 1, i1 (%"hash::sip::SipHasher24"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17ha1381df521884401E" }, align 1
@alloc19143 = private unnamed_addr constant <{ [6 x i8] }> <{ [6 x i8] c"Hasher" }>, align 1
@alloc19144 = private unnamed_addr constant <{ [2 x i8] }> <{ [2 x i8] c"k0" }>, align 1
@alloc19145 = private unnamed_addr constant <{ [2 x i8] }> <{ [2 x i8] c"k1" }>, align 1
@alloc19146 = private unnamed_addr constant <{ [6 x i8] }> <{ [6 x i8] c"length" }>, align 1
@vtable.1j = private unnamed_addr constant { void (%"hash::sip::State"**) addrspace(1)*, i16, i16, i1 (%"hash::sip::State"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"hash::sip::State"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"hash::sip::State"**) addrspace(1)*), i16 2, i16 1, i1 (%"hash::sip::State"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hdd039b56bb6f8341E" }, align 1
@alloc19148 = private unnamed_addr constant <{ [4 x i8] }> <{ [4 x i8] c"tail" }>, align 1
@alloc19149 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"ntail" }>, align 1
@vtable.1k = private unnamed_addr constant { void (%"marker::PhantomData<hash::sip::Sip13Rounds>"**) addrspace(1)*, i16, i16, i1 (%"marker::PhantomData<hash::sip::Sip13Rounds>"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"marker::PhantomData<hash::sip::Sip13Rounds>"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"marker::PhantomData<hash::sip::Sip13Rounds>"**) addrspace(1)*), i16 2, i16 1, i1 (%"marker::PhantomData<hash::sip::Sip13Rounds>"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h6193a0c742a2c159E" }, align 1
@vtable.1l = private unnamed_addr constant { void (%"marker::PhantomData<hash::sip::Sip24Rounds>"**) addrspace(1)*, i16, i16, i1 (%"marker::PhantomData<hash::sip::Sip24Rounds>"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"marker::PhantomData<hash::sip::Sip24Rounds>"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"marker::PhantomData<hash::sip::Sip24Rounds>"**) addrspace(1)*), i16 2, i16 1, i1 (%"marker::PhantomData<hash::sip::Sip24Rounds>"**, %"fmt::Formatter"*) addrspace(1)* bitcast (i1 (%"marker::PhantomData<hash::sip::Sip13Rounds>"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h6193a0c742a2c159E" to i1 (%"marker::PhantomData<hash::sip::Sip24Rounds>"**, %"fmt::Formatter"*) addrspace(1)*) }, align 1
@alloc19151 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"State" }>, align 1
@alloc19152 = private unnamed_addr constant <{ [2 x i8] }> <{ [2 x i8] c"v0" }>, align 1
@alloc19153 = private unnamed_addr constant <{ [2 x i8] }> <{ [2 x i8] c"v2" }>, align 1
@alloc19154 = private unnamed_addr constant <{ [2 x i8] }> <{ [2 x i8] c"v1" }>, align 1
@alloc19155 = private unnamed_addr constant <{ [2 x i8] }> <{ [2 x i8] c"v3" }>, align 1
@alloc19156 = private unnamed_addr constant <{ [11 x i8] }> <{ [11 x i8] c"Sip13Rounds" }>, align 1
@alloc19157 = private unnamed_addr constant <{ [11 x i8] }> <{ [11 x i8] c"Sip24Rounds" }>, align 1
@alloc19159 = private unnamed_addr constant <{ [6 x i8] }> <{ [6 x i8] c"Reject" }>, align 1
@alloc19160 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"Match" }>, align 1
@alloc19161 = private unnamed_addr constant <{ [12 x i8] }> <{ [12 x i8] c"CharSearcher" }>, align 1
@alloc19163 = private unnamed_addr constant <{ [6 x i8] }> <{ [6 x i8] c"finger" }>, align 1
@alloc19164 = private unnamed_addr constant <{ [11 x i8] }> <{ [11 x i8] c"finger_back" }>, align 1
@alloc19175 = private unnamed_addr constant <{ [6 x i8] }> <{ [6 x i8] c"needle" }>, align 1
@alloc19166 = private unnamed_addr constant <{ [9 x i8] }> <{ [9 x i8] c"utf8_size" }>, align 1
@alloc19167 = private unnamed_addr constant <{ [12 x i8] }> <{ [12 x i8] c"utf8_encoded" }>, align 1
@vtable.1m = private unnamed_addr constant { void ([4 x i8]**) addrspace(1)*, i16, i16, i1 ([4 x i8]**, %"fmt::Formatter"*) addrspace(1)* } { void ([4 x i8]**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void ([4 x i8]**) addrspace(1)*), i16 2, i16 1, i1 ([4 x i8]**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h19007f371b6db07cE" }, align 1
@alloc19168 = private unnamed_addr constant <{ [19 x i8] }> <{ [19 x i8] c"MultiCharEqSearcher" }>, align 1
@alloc19169 = private unnamed_addr constant <{ [7 x i8] }> <{ [7 x i8] c"char_eq" }>, align 1
@vtable.1n = private unnamed_addr constant { void ({ [0 x i32]*, i16 }**) addrspace(1)*, i16, i16, i1 ({ [0 x i32]*, i16 }**, %"fmt::Formatter"*) addrspace(1)* } { void ({ [0 x i32]*, i16 }**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void ({ [0 x i32]*, i16 }**) addrspace(1)*), i16 2, i16 1, i1 ({ [0 x i32]*, i16 }**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hcd17d9f88b4bdb09E" }, align 1
@vtable.1o = private unnamed_addr constant { void (%"str::CharIndices"**) addrspace(1)*, i16, i16, i1 (%"str::CharIndices"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"str::CharIndices"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"str::CharIndices"**) addrspace(1)*), i16 2, i16 1, i1 (%"str::CharIndices"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h69059f55176c630dE" }, align 1
@alloc19172 = private unnamed_addr constant <{ [17 x i8] }> <{ [17 x i8] c"CharSliceSearcher" }>, align 1
@vtable.1p = private unnamed_addr constant { void (%"str::pattern::MultiCharEqSearcher<&[char]>"**) addrspace(1)*, i16, i16, i1 (%"str::pattern::MultiCharEqSearcher<&[char]>"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"str::pattern::MultiCharEqSearcher<&[char]>"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"str::pattern::MultiCharEqSearcher<&[char]>"**) addrspace(1)*), i16 2, i16 1, i1 (%"str::pattern::MultiCharEqSearcher<&[char]>"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h368dd2a1a9d960beE" }, align 1
@alloc19173 = private unnamed_addr constant <{ [11 x i8] }> <{ [11 x i8] c"StrSearcher" }>, align 1
@alloc19176 = private unnamed_addr constant <{ [8 x i8] }> <{ [8 x i8] c"searcher" }>, align 1
@vtable.1q = private unnamed_addr constant { void (%"str::pattern::StrSearcherImpl"**) addrspace(1)*, i16, i16, i1 (%"str::pattern::StrSearcherImpl"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"str::pattern::StrSearcherImpl"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"str::pattern::StrSearcherImpl"**) addrspace(1)*), i16 2, i16 1, i1 (%"str::pattern::StrSearcherImpl"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hefd8fbf4fec50c7bE" }, align 1
@alloc19177 = private unnamed_addr constant <{ [6 x i8] }> <{ [6 x i8] c"TwoWay" }>, align 1
@vtable.1r = private unnamed_addr constant { void (%"str::pattern::TwoWaySearcher"**) addrspace(1)*, i16, i16, i1 (%"str::pattern::TwoWaySearcher"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"str::pattern::TwoWaySearcher"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"str::pattern::TwoWaySearcher"**) addrspace(1)*), i16 2, i16 1, i1 (%"str::pattern::TwoWaySearcher"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hc50ec5822fa4557eE" }, align 1
@vtable.1s = private unnamed_addr constant { void (%"str::pattern::EmptyNeedle"**) addrspace(1)*, i16, i16, i1 (%"str::pattern::EmptyNeedle"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"str::pattern::EmptyNeedle"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"str::pattern::EmptyNeedle"**) addrspace(1)*), i16 2, i16 1, i1 (%"str::pattern::EmptyNeedle"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hd218ee7bd6d70803E" }, align 1
@alloc19179 = private unnamed_addr constant <{ [11 x i8] }> <{ [11 x i8] c"EmptyNeedle" }>, align 1
@alloc19189 = private unnamed_addr constant <{ [8 x i8] }> <{ [8 x i8] c"position" }>, align 1
@alloc19182 = private unnamed_addr constant <{ [11 x i8] }> <{ [11 x i8] c"is_match_fw" }>, align 1
@alloc19183 = private unnamed_addr constant <{ [11 x i8] }> <{ [11 x i8] c"is_match_bw" }>, align 1
@alloc19184 = private unnamed_addr constant <{ [14 x i8] }> <{ [14 x i8] c"TwoWaySearcher" }>, align 1
@alloc19185 = private unnamed_addr constant <{ [8 x i8] }> <{ [8 x i8] c"crit_pos" }>, align 1
@alloc19186 = private unnamed_addr constant <{ [13 x i8] }> <{ [13 x i8] c"crit_pos_back" }>, align 1
@alloc19187 = private unnamed_addr constant <{ [6 x i8] }> <{ [6 x i8] c"period" }>, align 1
@alloc19188 = private unnamed_addr constant <{ [7 x i8] }> <{ [7 x i8] c"byteset" }>, align 1
@alloc19191 = private unnamed_addr constant <{ [6 x i8] }> <{ [6 x i8] c"memory" }>, align 1
@alloc19192 = private unnamed_addr constant <{ [11 x i8] }> <{ [11 x i8] c"memory_back" }>, align 1
@alloc19193 = private unnamed_addr constant <{ [14 x i8] }> <{ [14 x i8] c"Utf8LossyChunk" }>, align 1
@alloc19194 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"valid" }>, align 1
@alloc19195 = private unnamed_addr constant <{ [6 x i8] }> <{ [6 x i8] c"broken" }>, align 1
@alloc19196 = private unnamed_addr constant <{ [14 x i8] }> <{ [14 x i8] c"ParseBoolError" }>, align 1
@alloc19197 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"_priv" }>, align 1
@alloc19198 = private unnamed_addr constant <{ [9 x i8] }> <{ [9 x i8] c"Utf8Error" }>, align 1
@alloc19199 = private unnamed_addr constant <{ [11 x i8] }> <{ [11 x i8] c"valid_up_to" }>, align 1
@alloc19200 = private unnamed_addr constant <{ [9 x i8] }> <{ [9 x i8] c"error_len" }>, align 1
@vtable.1t = private unnamed_addr constant { void ({ i8, i8 }**) addrspace(1)*, i16, i16, i1 ({ i8, i8 }**, %"fmt::Formatter"*) addrspace(1)* } { void ({ i8, i8 }**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void ({ i8, i8 }**) addrspace(1)*), i16 2, i16 1, i1 ({ i8, i8 }**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hdede4e9da9d7b39fE" }, align 1
@alloc19201 = private unnamed_addr constant <{ [11 x i8] }> <{ [11 x i8] c"CharIndices" }>, align 1
@alloc19202 = private unnamed_addr constant <{ [12 x i8] }> <{ [12 x i8] c"front_offset" }>, align 1
@vtable.1u = private unnamed_addr constant { void ({ i8*, i8* }**) addrspace(1)*, i16, i16, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* } { void ({ i8*, i8* }**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void ({ i8*, i8* }**) addrspace(1)*), i16 2, i16 1, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hfaeb44fb9dbb86fbE" }, align 1
@alloc19204 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"Bytes" }>, align 1
@vtable.1v = private unnamed_addr constant { void ({ i8*, i8* }**) addrspace(1)*, i16, i16, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* } { void ({ i8*, i8* }**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void ({ i8*, i8* }**) addrspace(1)*), i16 2, i16 1, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hebdb901b0808a290E" }, align 1
@vtable.1w = private unnamed_addr constant { void (%"str::SplitInternal<str::IsWhitespace>"*) addrspace(1)*, i16, i16, i1 (%"str::SplitInternal<str::IsWhitespace>"*, %"fmt::Formatter"*) addrspace(1)* } { void (%"str::SplitInternal<str::IsWhitespace>"*) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"str::SplitInternal<str::IsWhitespace>"*) addrspace(1)*), i16 16, i16 1, i1 (%"str::SplitInternal<str::IsWhitespace>"*, %"fmt::Formatter"*) addrspace(1)* @"_ZN70_$LT$core..str..SplitInternal$LT$P$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h4e2c8103f248fbfeE" }, align 1
@alloc19206 = private unnamed_addr constant <{ [15 x i8] }> <{ [15 x i8] c"SplitTerminator" }>, align 1
@vtable.1x = private unnamed_addr constant { void (%"str::SplitInternal<char>"*) addrspace(1)*, i16, i16, i1 (%"str::SplitInternal<char>"*, %"fmt::Formatter"*) addrspace(1)* } { void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E, i16 24, i16 1, i1 (%"str::SplitInternal<char>"*, %"fmt::Formatter"*) addrspace(1)* @"_ZN70_$LT$core..str..SplitInternal$LT$P$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h3b4efde1f6117057E" }, align 1
@alloc19207 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"Lines" }>, align 1
@vtable.1y = private unnamed_addr constant { void (%"iter::adapters::Map<str::SplitTerminator<char>, str::LinesAnyMap>"**) addrspace(1)*, i16, i16, i1 (%"iter::adapters::Map<str::SplitTerminator<char>, str::LinesAnyMap>"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"iter::adapters::Map<str::SplitTerminator<char>, str::LinesAnyMap>"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"iter::adapters::Map<str::SplitTerminator<char>, str::LinesAnyMap>"**) addrspace(1)*), i16 2, i16 1, i1 (%"iter::adapters::Map<str::SplitTerminator<char>, str::LinesAnyMap>"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h1371892eb709759bE" }, align 1
@alloc19208 = private unnamed_addr constant <{ [8 x i8] }> <{ [8 x i8] c"LinesAny" }>, align 1
@vtable.1z = private unnamed_addr constant { void (%"str::Lines"**) addrspace(1)*, i16, i16, i1 (%"str::Lines"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"str::Lines"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"str::Lines"**) addrspace(1)*), i16 2, i16 1, i1 (%"str::Lines"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hc011b2e005c86798E" }, align 1
@alloc19209 = private unnamed_addr constant <{ [15 x i8] }> <{ [15 x i8] c"SplitWhitespace" }>, align 1
@vtable.1A = private unnamed_addr constant { void (%"iter::adapters::Filter<str::Split<str::IsWhitespace>, str::IsNotEmpty>"**) addrspace(1)*, i16, i16, i1 (%"iter::adapters::Filter<str::Split<str::IsWhitespace>, str::IsNotEmpty>"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"iter::adapters::Filter<str::Split<str::IsWhitespace>, str::IsNotEmpty>"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"iter::adapters::Filter<str::Split<str::IsWhitespace>, str::IsNotEmpty>"**) addrspace(1)*), i16 2, i16 1, i1 (%"iter::adapters::Filter<str::Split<str::IsWhitespace>, str::IsNotEmpty>"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h9b2878079b07a7edE" }, align 1
@alloc19211 = private unnamed_addr constant <{ [20 x i8] }> <{ [20 x i8] c"SplitAsciiWhitespace" }>, align 1
@vtable.1B = private unnamed_addr constant { void (%"iter::adapters::Map<iter::adapters::Filter<slice::Split<u8, str::IsAsciiWhitespace>, str::BytesIsNotEmpty>, str::UnsafeBytesToStr>"**) addrspace(1)*, i16, i16, i1 (%"iter::adapters::Map<iter::adapters::Filter<slice::Split<u8, str::IsAsciiWhitespace>, str::BytesIsNotEmpty>, str::UnsafeBytesToStr>"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"iter::adapters::Map<iter::adapters::Filter<slice::Split<u8, str::IsAsciiWhitespace>, str::BytesIsNotEmpty>, str::UnsafeBytesToStr>"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"iter::adapters::Map<iter::adapters::Filter<slice::Split<u8, str::IsAsciiWhitespace>, str::BytesIsNotEmpty>, str::UnsafeBytesToStr>"**) addrspace(1)*), i16 2, i16 1, i1 (%"iter::adapters::Map<iter::adapters::Filter<slice::Split<u8, str::IsAsciiWhitespace>, str::BytesIsNotEmpty>, str::UnsafeBytesToStr>"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h9fa85b6d3a6d0384E" }, align 1
@vtable.1C = private unnamed_addr constant { void (%"iter::adapters::chain::Chain<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>, iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"**) addrspace(1)*, i16, i16, i1 (%"iter::adapters::chain::Chain<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>, iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"iter::adapters::chain::Chain<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>, iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"iter::adapters::chain::Chain<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>, iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"**) addrspace(1)*), i16 2, i16 1, i1 (%"iter::adapters::chain::Chain<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>, iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17haebff00effe788f0E" }, align 1
@vtable.1D = private unnamed_addr constant { void (%"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDefault, str::CharEscapeDefault>"**) addrspace(1)*, i16, i16, i1 (%"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDefault, str::CharEscapeDefault>"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDefault, str::CharEscapeDefault>"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDefault, str::CharEscapeDefault>"**) addrspace(1)*), i16 2, i16 1, i1 (%"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDefault, str::CharEscapeDefault>"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17he12e83ec0663888bE" }, align 1
@vtable.1E = private unnamed_addr constant { void (%"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeUnicode, str::CharEscapeUnicode>"**) addrspace(1)*, i16, i16, i1 (%"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeUnicode, str::CharEscapeUnicode>"**, %"fmt::Formatter"*) addrspace(1)* } { void (%"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeUnicode, str::CharEscapeUnicode>"**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeUnicode, str::CharEscapeUnicode>"**) addrspace(1)*), i16 2, i16 1, i1 (%"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeUnicode, str::CharEscapeUnicode>"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h18be12700c6d2634E" }, align 1
@_ZN4core7unicode12unicode_data10alphabetic17SHORT_OFFSET_RUNS17h81c96da457d55823E = internal unnamed_addr constant <{ [208 x i8] }> <{ [208 x i8] c"\C2\02\00\00I\12\00\02m\16\C03\16\1F\808\B6$\00E\00,\E0M\050 N\004`S\C0M`V\FD\9F\80V\8D\A4\C0V\0D\A6\00W\A4\D7\80W\00\F9@bn\FA\E0b>\FD\00c\80\02\C1e7\07\E1j\80\0E\81n\00\1C\E1v\E0\1E\E1\8A\9A#!\90\000\C1\90/4a\91\00D\81\91GF\A1\91\00h\C1\919j\E1\91@n\01\92\F8\87\A1\93\D6\8C\81\95\00\B0\C1\95\1F\B1!\96\FC\B2A\96\00\BC\01\97\00\D4!\97\A6\D6a\98\00\E0\01\9D\C0\E2\E1\9F\00\E8\E1\A1\00\EE!\A20\F1!\A3\00\00b\AB\DE\A6\22\AC5\B7B\AC\A2\CE\82\AC\E1\EB\02\AD\00\F8B\AD\1E\FAb\AD\00\00\83\ADK\13\A3\ADK\13\D4\AD" }>, align 1
@_ZN4core7unicode12unicode_data10alphabetic7OFFSETS17h0ebec3fc8d5de111E = internal unnamed_addr constant <{ [1391 x i8] }> <{ [1391 x i8] c"A\1A\06\1A/\01\0A\01\04\01\05\17\01\1F\01\00\04\0C\0E\05\07\01\01\01V\01*\05\01\02\02\04\01\01\06\01\01\03\01\01\01\14\01S\01\8B\08\A6\01&\02\01\06)'\0E\01\01\01\02\01\02\01\01\08\1B\04\04\1D\0B\058\01\07\0Ef\01\08\04\08\04\03\0A\03\02\01\100\0De\18!\09\02\04\01\05\18\02\13\13\19\07\0B5\15\01\12\0C\0C\03\07\06L\01\10\01\03\04\0F\0D\13\01\08\02\02\02\16\01\07\01\01\03\04\03\08\02\02\02\02\01\01\08\01\04\02\01\05\0C\02\0A\01\04\03\01\06\04\02\02\16\01\07\01\02\01\02\01\02\04\05\04\02\02\02\04\01\07\04\01\01\11\06\0B\03\01\09\01\03\01\16\01\07\01\02\01\05\03\09\01\03\01\02\03\01\0F\04\15\04\04\03\01\08\02\02\02\16\01\07\01\02\01\05\03\08\02\02\02\02\09\02\04\02\01\05\0D\01\10\02\01\06\03\03\01\04\03\02\01\01\01\02\03\02\03\03\03\0C\04\05\03\03\01\03\03\01\06\01(\04\01\08\01\03\01\17\01\10\03\08\01\03\01\03\08\02\01\03\05\04\1C\04\01\08\01\03\01\17\01\0A\01\05\03\08\01\03\01\03\08\02\07\01\01\04\0D\02\0D\0D\01\03\01)\02\08\01\03\01\03\01\01\05\04\07\05\16\06\01\03\01\12\03\18\01\09\01\01\02\07\08\06\01\01\01\08\12\02\0D:\05\07\06\013\02\01\01\01\05\01\18\01\01\01\13\01\03\02\05\01\01\06\01\0E\04 \01?\08\01$\04\11\06\10\01$C7\01\01\02\05\10@\0A\04\02&\01\01\05\01\02+\01\00\01\04\02\07\01\01\01\04\02)\01\04\02!\01\04\02\07\01\01\01\04\02\0F\019\01\04\02C%\10\10V\02\06\03\00\02\11\01\1A\05K\03\0B\07\0D\01\06\0C\14\0C\14\0C\0D\01\03\01\02\0C4\02\13\0E\01\04\01CY\07+\05F\0A\1F\01\0C\04\09\17\1E\02\05\0B,\04\1A6\1C\04?\02\142\01\17\02?4\01\0F\01\074*\02\04\0A,\01\0B\0E7\16\03\0A$\02\09\07+\02\03)\04\01\06\01\02\03\01\05\C0'\0E\0B\00\02\06\02&\02\06\02\08\01\01\01\01\01\01\01\1F\025\01\07\01\01\03\03\01\07\03\04\02\06\04\0D\05\03\01\07t\01\0D\01\10\0De\01\04\01\02\0A\01\01\03\05\06\01\01\01\01\01\01\04\01\0B\02\04\05\05\04\01\11)\004\00/\01/\01\85\06\04\03\02\0C&\01\01\05\01\028\07\01\10\17\09\07\01\07\01\07\01\07\01\07\01\07\01\07\01\07\01 /\01\00\03\19\09\07\05\02\05\04V\06\03\01Z\01\04\05+\01^\11 0\10\00\00@\00\03\00C.\02\00\03\10\0A\02\14/\05\08\03q'\09\02g\025\02\09*\11\01!\184\0CD\01\01,\06\03\01\01\03\0A!\05#\0D\1D\033\01\0C\0F\01\10\10\0A\05\017\09\0E\12\17\03E\01\01\01\01\18\03\02\10\02\04\0B\06\02\06\02\06\09\07\01\07\01+\01\0E\06{\15\00\0C\17\041\00\00\02j&\07\0C\05\05\0C\01\0D\01\05\01\01\01\02\01\02\01l!\00\12@\026(\0Ct\05\01\87$\1A\06\1A\0BY\03\06\02\06\02\06\02\03#\0C\01\1A\01\13\01\02\01\0F\02\0E\22{E5\00\1D\031/ \0D\1E\05+\05\1E\02$\04\08\01\05*\9E\12$\04$\04(\084\9C\00\09\16\0A\08\98\06\02\01\01,\01\02\03\01\02\17\0A\17\09\1FA\13\01\02\0A\16\0A\1AF8\06\02@\04\01\02\05\08\01\03\01\1D*\1D\03\1D#\08\01\1C\1B6\0A\16\0A\13\0D\12nI73\0D3\0D(\00*\01\02\03\02N\1D\0A\01\08\16j\15\1B\17\09F<7\17\19\173\11\04\08#\03\01\09@\01\04\09\02\0A\01\01\01#\12\01\22\02\01\06\01A\07\01\01\01\04\01\0F\01\0A\079\17\04\01\08\02\02\02\16\01\07\01\02\01\05\03\08\02\02\02\02\03\01\06\01\05\07\9CB\01\03\01\04\14\03\1EB\02\02\01\01\B86\02\07\19\06\22?\01\01\03\01;6\02\01G\1B\02\0E\D59g@\1F\08\02\01\02\08\01\02\01\1E\01\02\02\02\02\04]\08\02.\02\06\01\01\01\02\1B3\02\0A\11H\05\01\229\00\09\01-\01\07\01\011\1E\02\16\01\0EI\07\01\02\01,\03\01\01\02\01\03\01\01\02\02\18\06\01\02\01%\01\02\01\04\01\01\00\17\B9\01O\00fo\11\C4\00\00\00\00\00\00\07\1Fq\1E\120\10\04\1F\15\05\13\00@\80K\049\07\11@\02\01\01\0C\02\0E\00\08\00*\09\00\001\03\11\04\08\00\00k\05\0D\03\09\07\0A\04\01\00U\01G\01\02\02\01\02\02\02\04\01\0C\01\01\01\07\01A\01\04\02\08\01\07\01\1C\01\04\01\05\01\01\03\07\01\00\02\19\01\19\01\1F\01\19\01\1F\01\19\01\1F\01\19\01\1F\01\19\01\08\00\07\01\11\02\07\01\02\01\05\D5-\0A\07\10\01\00,\00\C5;D\03\01\03\01\00\04\01\1B\01\02\01\01\02\01\01\0A\01\04\01\01\01\01\06\01\04\01\01\01\01\01\01\03\01\02\01\01\02\01\01\01\01\01\01\01\01\01\01\02\01\01\02\04\01\07\01\04\01\04\01\01\01\0A\01\11\05\03\01\05\01\11\00\1A\06\1A\06\1A\00\00\22\00\0B\DE\02\00\0E\00\00\00\00\00\00" }>, align 1
@_ZN4core7unicode12unicode_data14case_ignorable17SHORT_OFFSET_RUNS17h67eb676df4ab4136E = internal unnamed_addr constant <{ [128 x i8] }> <{ [128 x i8] c"\B0\02\00\00]\13\A0\02\12\17 !\BD\1F`!|,`/\050\A03\15\A0 5\F8\A4\A06\0C\A6\E06\1E\FB 7\00\FE\E0B\FD\01aC\01\0A!G$\0D\E1G\AB\0EaI/\18\A1I;\19!V0\1C\A1V\F3\1E!Z04\E1]\F0j!^Ooa^\9D\BC!_g\D1!`\00\DA\A1`\00\E0\E1a0\E1ac\EC\E2\A1d\D0\E8\E1d\FB\F3!e\01\00\AEe\F0\01\FFe" }>, align 1
@_ZN4core7unicode12unicode_data14case_ignorable7OFFSETS17h41f65c926c17407bE = internal unnamed_addr constant <{ [821 x i8] }> <{ [821 x i8] c"'\01\06\01\0B\01#\01\01\01G\01\04\01\01\01\04\01\02\02\00\C0\04\02\04\01\09\02\01\01\FB\07\CF\01\05\011-\01\01\01\02\01\02\01\01,\01\0B\06\0A\0B\01\01#\01\0A\15\10\01e\08\01\0A\01\04!\01\01\01\1E\1B[\0B:\0B\04\01\02\01\18\18+\03w07\01\01\01\04\08\04\01\03\07\0A\02\0D\01\0F\01:\01\04\04\08\01\14\02\1A\01\02\029\01\04\02\04\02\02\03\03\01\1E\02\03\01\0B\029\01\04\05\01\02\04\01\14\02\16\06\01\01:\01\02\01\01\04\08\01\07\02\0B\02\1E\01=\01\0C\012\01\03\019\03\05\03\01\04\07\02\0B\02\1D\01:\01\02\01\06\01\05\02\14\02\1C\029\02\04\04\08\01\14\02\1D\01H\01\07\03\01\01Z\01\02\07\0B\09b\01\02\09\09\01\01\06J\02\1B\01\01\01\01\017\0E\01\05\01\02\05\0B\01$\09\01f\04\01\06\01\02\02\02\19\02\04\03\10\04\0D\01\02\02\06\01\0F\01^\01\00\03\00\03\1D\03\1D\02\1E\02@\02\01\07\08\01\02\0B\03\01\05\01-\044\01A\02\22\01v\03\04\02\09\01\06\03\DB\02\02\01:\01\01\07\01\01\01\01\02\08\06\0A\02\01'\01\08\11?\040\01\01\05\01\01\05\01(\09\0C\02 \04\02\02\01\038\01\01\02\03\01\01\03:\08\02\02@\06R\03\01\0D\01\07\04\01\06\01\03\022?\0D\01\22_\01\05\00\01\01\03\0B\03\0D\03\0D\03\0D\02\0C\05\08\02\0A\01\02\01\02\051\05\01\0A\01\01\0D\01\10\0D3!\00\02q\03}\01\0F\01` /\01\00\01$\04\03\05\05\01]\06]\03\00\01\00\06\00\01b\04\01\0A\01\01\1C\04P\02\0E\22N\01\17\03m\02\08\01\03\01\04\01\19\02\05\01\97\02\1A\12\0D\01&\08\19\0B.\030\01\02\04\02\02\11\01\15\02B\06\02\02\02\02\0C\01\08\01#\01\0B\013\01\01\03\02\02\05\02\01\01\1B\01\0E\02\05\02\01\01d\05\09\03y\01\02\01\04\01\00\01\93\10\00\10\03\01\0C\10\22\01\02\01\A9\01\07\01\06\01\0B\01#\01\01\01/\01-\02C\01\15\03\00\01\E2\01\95\05\00\03\01\02\05\04(\03\04\01\A5\02\00\04\00\02\99\0B\B0\016\0F8\031\04\02\02\02\01\0F\012\03$\05\01\08>\01\0C\024\09\0A\04\02\01_\03\02\01\01\02\06\01\A0\01\03\08\15\029\02\03\01%\07\03\05\C3\08\02\03\01\01\17\01T\06\01\01\04\02\01\02\EE\04\06\02\01\02\1B\02U\08\02\01\01\02j\01\01\01\02\06\01\01e\03\02\04\01\05\00\09\01\02\00\02\01\01\04\01\90\04\02\02\04\01 \0A(\06\02\04\08\01\09\06\02\03.\0D\01\02\00\07\01\06\01\01R\16\02\07\01\02\01\02z\06\03\01\01\02\01\07\01\01H\02\03\01\01\01\00\02\00\09\00\05;\07\09\04\00\01?\11@\02\01\02\00\02\01\04\00\03\09\10\02\07\1E\04\94\03\007\042\08\01\0E\01\16\05\01\0F\00\07\01\11\02\07\01\02\01\05\00\0E\00\04\00\07m\08\00\05\00\01\1E`\80\F0\00" }>, align 1
@_ZN4core7unicode12unicode_data5cased17SHORT_OFFSET_RUNS17h23c20f8fd890a467E = internal unnamed_addr constant <{ [76 x i8] }> <{ [76 x i8] c"\A0\10\00\00\A0\13\E0\06\80\1C \08\16\1F\A0\08\B6$\C0\09\00, \13@\A6`\130\AB`\15\00\FB`\17!\FF \18\00\04\A1\18\80\0C!\19\A0\18\E1\19@na\1A\00\D4\A1\1A\A6\D6\E1\1A\00\E9\81\1F0\F1a\22\8A\F1\B2\22" }>, align 1
@_ZN4core7unicode12unicode_data5cased7OFFSETS17h764dfe9a9b68797eE = internal unnamed_addr constant <{ [283 x i8] }> <{ [283 x i8] c"A\1A\06\1A/\01\0A\01\04\01\05\17\01\1F\01\C3\01\04\04\D0\01$\07\02\1E\05`\01*\04\02\02\02\04\01\01\06\01\01\03\01\01\01\14\01S\01\8B\08\A6\01&\09)\00&\01\01\05\01\02+\02\03\00V\02\06\00\09\07+\02\03@\C0@\00\02\06\02&\02\06\02\08\01\01\01\01\01\01\01\1F\025\01\07\01\01\03\03\01\07\03\04\02\06\04\0D\05\03\01\07t\01\0D\01\10\0De\01\04\01\02\0A\01\01\03\05\06\01\01\01\01\01\01\04\01\06\04\01\02\04\05\05\04\01\11 \03\02\004\00/\01/\01\85\06\04\03\02\0C&\01\01\05\01\00.\12\1E\84f\03\04\010\02\09*\02\01\03\00+\01\0D\07P\00\07\0C\05\00\1A\06\1A\00P`$\04$\003\0D3\00@\00@\00U\01G\01\02\02\01\02\02\02\04\01\0C\01\01\01\07\01A\01\04\02\08\01\07\01\1C\01\04\01\05\01\01\03\07\01\00\02\19\01\19\01\1F\01\19\01\1F\01\19\01\1F\01\19\01\1F\01\19\01\08\00D\00\1A\06\1A\06\1A\00" }>, align 1
@_ZN4core7unicode12unicode_data15grapheme_extend17SHORT_OFFSET_RUNS17h1498aad6dc246e9dE = internal unnamed_addr constant <{ [124 x i8] }> <{ [124 x i8] c"\00\03\00\00\83\04 \00\91\05`\00]\13\A0\00\12\17\A0\1E\0C \E0\1E\EF, +*0\A0+o\A6`,\02\A8\E0,\1E\FB\E0-\00\FE\A05\9E\FF\E05\FD\01a6\01\0A\A16$\0Da7\AB\0E\E18/\18!90\1CaF\F3\1E\A1J\F0jaNOo\A1N\9D\BC!Oe\D1\E1O\00\DA!P\00\E0\E1Q0\E1aS\EC\E2\A1T\D0\E8\E1T \00.U\F0\01\BFU" }>, align 1
@_ZN4core7unicode12unicode_data15grapheme_extend7OFFSETS17hc96003212ac666a2E = internal unnamed_addr constant <{ [689 x i8] }> <{ [689 x i8] c"\00p\00\07\00-\01\01\01\02\01\02\01\01H\0B0\15\10\01e\07\02\06\02\02\01\04#\01\1E\1B[\0B:\09\09\01\18\04\01\09\01\03\01\05+\03w\0F\01 7\01\01\01\04\08\04\01\03\07\0A\02\1D\01:\01\01\01\02\04\08\01\09\01\0A\02\1A\01\02\029\01\04\02\04\02\02\03\03\01\1E\02\03\01\0B\029\01\04\05\01\02\04\01\14\02\16\06\01\01:\01\01\02\01\04\08\01\07\03\0A\02\1E\01;\01\01\01\0C\01\09\01(\01\03\019\03\05\03\01\04\07\02\0B\02\1D\01:\01\02\01\02\01\03\01\05\02\07\02\0B\02\1C\029\02\01\01\02\04\08\01\09\01\0A\02\1D\01H\01\04\01\02\03\01\01\08\01Q\01\02\07\0C\08b\01\02\09\0B\06J\02\1B\01\01\01\01\017\0E\01\05\01\02\05\0B\01$\09\01f\04\01\06\01\02\02\02\19\02\04\03\10\04\0D\01\02\02\06\01\0F\01\00\03\00\03\1D\03\1D\02\1E\02@\02\01\07\08\01\02\0B\09\01-\03w\02\22\01v\03\04\02\09\01\06\03\DB\02\02\01:\01\01\07\01\01\01\01\02\08\06\0A\02\010\11?\040\07\01\01\05\01(\09\0C\02 \04\02\02\01\038\01\01\02\03\01\01\03:\08\02\02\98\03\01\0D\01\07\04\01\06\01\03\02\C6:\01\05\00\01\C3!\00\03\8D\01` \00\06i\02\00\04\01\0A \02P\02\00\01\03\01\04\01\19\02\05\01\97\02\1A\12\0D\01&\08\19\0B.\030\01\02\04\02\02'\01C\06\02\02\02\02\0C\01\08\01/\013\01\01\03\02\02\05\02\01\01*\02\08\01\EE\01\02\01\04\01\00\01\00\10\10\10\00\02\00\01\E2\01\95\05\00\03\01\02\05\04(\03\04\01\A5\02\00\04\00\02\99\0B\B0\016\0F8\031\04\02\02E\03$\05\01\08>\01\0C\024\09\0A\04\02\01_\03\02\01\01\02\06\01\A0\01\03\08\15\029\02\01\01\01\01\16\01\0E\07\03\05\C3\08\02\03\01\01\17\01Q\01\02\06\01\01\02\01\01\02\01\02\EB\01\02\04\06\02\01\02\1B\02U\08\02\01\01\02j\01\01\01\02\06\01\01e\03\02\04\01\05\00\09\01\02\F5\01\0A\02\01\01\04\01\90\04\02\02\04\01 \0A(\06\02\04\08\01\09\06\02\03.\0D\01\02\00\07\01\06\01\01R\16\02\07\01\02\01\02z\06\03\01\01\02\01\07\01\01H\02\03\01\01\01\00\02\00\05;\07\00\01?\04Q\01\00\02\00\01\01\03\04\05\08\08\02\07\1E\04\94\03\007\042\08\01\0E\01\16\05\01\0F\00\07\01\11\02\07\01\02\01\05\00\07\00\04\00\07m\07\00`\80\F0\00" }>, align 1
@_ZN4core7unicode12unicode_data9lowercase17BITSET_CHUNKS_MAP17hfcb2765f428e33b7E = internal unnamed_addr constant <{ [123 x i8] }> <{ [123 x i8] c"\0D\10\00\00\08\00\00\0B\0C\09\00\0F\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\05\02\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\03\01\00\0E\00\07\00\00\0A\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\04\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\11\00\00\00\00\06" }>, align 1
@_ZN4core7unicode12unicode_data9lowercase19BITSET_INDEX_CHUNKS17h66c7fd5bd25b6c3dE = internal unnamed_addr constant <{ [288 x i8] }> <{ [288 x i8] c"\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\008\00\00\00\00\00\00\00\00\00\00\00\00\00\00\10\0E4\00\00\00\00\00\00\00\00\00\00\00\00\00(\00\00\00\00\00\00\00\00\00\00\00\00\09\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00>'\00/+-\1E\00\00\00\00\0A5\00\00\00\00\00\00\00\00\00\00\00\00\00\07\00\00\00\00\00\00\00\00\00\00\00\00\00\00\002\00\00\00\00\00\00\00\00\00\00\00\1A\00\00\009\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00C\00\00\00\00\00\00\00\00\00\00\00\00\00\006\00444\00\15\15@\15!\18\17\22\00\05G\00\1C\0FE\00\00\00\00\00\00\00\00\00\00=\1F\11\1601,*\08 &\00\1B\0D\1D\0B7\00\04\00\00\00\00\00\00\00\00\00\00\00\00\10\19\15#$\00\00\00\00\00\00\00\00\00\00\00\10.\02\14?\096\00\00\00\00\00\00\00\00\00<%3\0CF:\12\01\06;D\13AB\03)" }>, align 1
@_ZN4core7unicode12unicode_data9lowercase16BITSET_CANONICAL17h1fd297ac86ab402bE = internal unnamed_addr constant <{ [416 x i8] }> <{ [416 x i8] c"\00\00\00\00\00\00\00\00\FF\FF\0F\00\00\C0\FF\FF\02\A8\AA\AA\AA\AA\AA\AA\FF\FD\00\00\00\FC\FF\FF\00\00\00\FF\FF\FF\FF\0F\00\00\00\00\00\00\02\80\FF\00\00\00\FC\FF\FF\0F\FF\FF\FF\FF\FF\FF\07\00\85\AA\FF\FF\FF\FF\FF\FF\00\00\00\00\FF\FF\FF\FF\00\00\00\00\FC\FF\FF\FF\00\00\00\00\00\FF\FF\FF\EF\FF\00\00\00\FC\FF\FF\00\00\01\00\00\F0\FF\FF\FF\FF\FF\F7\FF\01\FF\FF\C0C\00\00\00\00\FF\FF\00\00\00\00\00\00\FF\FF\00\00\00\80\FF\FF\7F\FF\C0\FF\FF\FF\00\00\00\FC\FC\FF\FF\F7\03\00\00\F0T\D5\AA\AA\AA\AA\AA\AA\AA\AA\AA\AA\AA\AA\AA\AA\AA\AA\AA\AA\AA\AA\AAU\FF\00\FF\00\FF\00\DF@?\00\FF\00\FF\00\FF?\FF\FF\FF\7Fb\15\DA?\00\00\00\00\00\00\00? \00\00\00\00\00\8A<\00\C4\08\00\00\80\102\FF\7F\E3\AA\AA\AA/\19\08\05\00\00\00\00@\07\00\00\00\00\00\04 \04\FF\FF\EF\FF\FF\FF\FF\01\FF\00?\00\FF\00\FF\00\DC\00\CF\00\FF\00\DC\00\AA\AA\AA\AA\1AP\08\00\FF\FF\FF\FF\BF \00\00\00\C0\DF\FF\FF\00\00\00\03\00\00\00\1F\00\00\00\AA\AA\AA:\00\00\00\00\7F\00\F8\00\00\00\00\00\F7\0B\00\00\00\00\00\00\AA\AA\AA\AA\AA\AA\FA\93\AA\AA\AA\AA\AA\AA\FF\95@RU\B5\AA\AA)\AA\AAP\BA\AA\AA\82\A0\AA\FF\FF\FF\FF\AA\AA\AA\AA\00\00\00\00\A8\AA\AB\AAU\AB\AA\AA\AA\AA\AA\D4)1$N*-Q\E6\00\00\FF\FF\FF\FF\FF\E7\FC\FF\FF\0F\00\00\C0\EB" }>, align 1
@_ZN4core7unicode12unicode_data9lowercase14BITSET_MAPPING17hb8457edf18ac5486E = internal unnamed_addr constant <{ [40 x i8] }> <{ [40 x i8] c"\00@\01\BC\01\B7\01\B0\01m\01|\01~\01B\01F\01M\02\92\02\90\02S\03\0C\03\06\04\9C\04N\05\BB\06\84\07]" }>, align 1
@_ZN4core7unicode12unicode_data1n17SHORT_OFFSET_RUNS17hd940b4c0e277952dE = internal unnamed_addr constant <{ [152 x i8] }> <{ [152 x i8] c"`\06\00\00f\09 \01@\10\E0\01i\13 \06\EE\16\A0\06F\19\E0\06p \E0\07`$\E0\09v' \0B\FD,\A0\0B\070\E0\0B\921 \0C \A6\E0\0C0\A8`\0E\F0\AB\E0\0E\10\FF`\10\07\01\A1\10\E1\02\E1\10X\08\A1\11\FA\0C!\13`\0E\E1\16P\14a\17P\16\E1\19\E0\18a\1AP\1C!\1B\C0\1F\A1\1B\00$a\1C`j\A1\1C\80n\E1\1C\E0\D2\A1\1D\CE\D7\E1\1D@\E1a\1E\F0\E2\A1\1E\C7\E8\E1\1Eq\EC!\1F\00\F1\A1\1F\F0\FB\E1 \FA\FB2!" }>, align 1
@_ZN4core7unicode12unicode_data1n7OFFSETS17h7afb275d30f16843E = internal unnamed_addr constant <{ [267 x i8] }> <{ [267 x i8] c"0\0Ax\02\05\01\02\03\00\0A\86\0A\C6\0A\00\0Av\0A\04\06l\0Av\0Av\0A\02\06n\0Ds\0A\08\07g\0Ah\07\07\13m\0A`\0Av\0AF\14\00\0AF\0A\00\14\00\03\EF\0A\06\0A\16\0A\00\0A\80\0B\A5\0A\06\0A\B6\0AV\0A\86\0A\06\0A\00\01\03\06\06\0A\C63\02\05\00<N\16\00\1E\00\01\00\01\19\09\0E\03\00\04\8A\0A\1E\08\01\0F \0A'\0F\00\0A\BC\0A\00\06\9A\0A&\0A\C6\0A\16\0AV\0A\00\0A\00\0A\00-\0C9\11\02\00\1B$\04\1D\01\08\01\86\05\CA\0A\00\08\19\07'\09K\05\16\06\A0\02\02\10\02.@\094\02\1E\03K\05h\08\18\08)\07\00\060\0A\00\1F\9E\0A*\04p\07\86\1E\80\0A<\0A\90\0A\07\14\FB\0A\00\0Av\0A\00\0Af\0Af\0C\00\13]\0A\00\1D\E3\0AF\0A\00\15\00o\00\0A\E6\0A\01\07\00\17\00\14l\19\002\00\0A\00\0A\00\09\80\0A\00;\01\03\01\04L-\01\0F\00\0D\00\0A\00" }>, align 1
@_ZN4core7unicode12unicode_data9uppercase17BITSET_CHUNKS_MAP17he5d28641f662d290E = internal unnamed_addr constant <{ [125 x i8] }> <{ [125 x i8] c"\0C\0F\05\05\00\05\05\02\04\0B\05\0E\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\08\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\06\05\0D\05\0A\05\05\01\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\07\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\10\05\05\05\05\09\05\03" }>, align 1
@_ZN4core7unicode12unicode_data9uppercase19BITSET_INDEX_CHUNKS17he35af3e5298d99f7E = internal unnamed_addr constant <{ [272 x i8] }> <{ [272 x i8] c"))\05!))))))))))\05\00))\05)))))))))))))))&)))))\11\11=\11(\1D\18\17))))\09\08*)))))))))))))#\1CA)))))))))))))))))))))))))))))))))))))8)))))))))))).)))))))))))))))<;)\14\0E\10\04))))/)))))))))))))3)))))))))))))))4+)))))))))))))5)\1F\22\15\16\0F\0D )))\0B\1E%0)\09,))))))))))))1$\11\1B))))))))))))2\13\02\12\0A-))))))))))9\01\1A6\0C\07\197':\06\03@?>B" }>, align 1
@_ZN4core7unicode12unicode_data9uppercase16BITSET_CANONICAL17hb337f069e0fc600fE = internal unnamed_addr constant <{ [328 x i8] }> <{ [328 x i8] c"\FF\FF\FF\FF\FF\FF?\00\FF?\00\00\00\FF\FF\FF\01TUUUUUU\01\00\00\00\FC\FF\FF\07\F4\02\00\00\00\00 \00\00\00\00\00\FF\FF\FF\FF\FF\03\00\00\00\FF\FF\FF_\FC\01\00\00\F0\FF\FF\FF\03\FF\FF\FF\03\FF\FF\00\00\00\00\00\00\FF\FFUUUUUU\FE\FF\00\00\00\00\00\00E\80\B0\E7\DF\1F\00\00\00{UUUUUU\05lUUUUUU\00j\90\A4\AAJUU\D2UU(EUU}_UUUUUUUUU\AB*UUUUUU\00\00\00\00UUUU\00\00\00\00TUTU\AATUUUUU+\D6\CE\DB\B1\D5\D2\AE\11\00\0F\00\0F\00\1F\00\0F\00\00\00\00\00\00\00\0F?\00\00\00\FF\FF\FF\03\03\00\00\D0d\DE?\00UUUU\05(\04\00 \00\00\00\FF\FF\00\00\00?\00\AA\00\FF\00\00@\D7\FE\FF\FB\0F\00\00\FF\FF\7F\7F\00\00\00\00zU\00\00\00\00\00\00\BF \00\00\00\00\00\00UUUUUUU\AA\848'>P=\0F\C0\00\00\00\00\9D\EA%\C0\00\80\1CUUU\90\E6\00\00\FF\FF\FF\FF\FF\E7\00\FF\FF\FF\03\00\00\F0\00\FF\00?\00\FF\00\FF" }>, align 1
@_ZN4core7unicode12unicode_data9uppercase14BITSET_MAPPING17h5d7043d016f9effeE = internal unnamed_addr constant <{ [52 x i8] }> <{ [52 x i8] c"\00\B6\00J\00\A6\00\A2\00\9F\00\96\00\94\00\8E\00\87\00\86\00\83\00@\01s\01B\01F\01S\01\0C\01\08\02\A4\02\92\02\14\03\92\03\8C\03\86\04\B2\04\AB" }>, align 1
@_ZN4core7unicode12unicode_data11white_space17SHORT_OFFSET_RUNS17h39a3d768926d83a8E = internal unnamed_addr constant <{ [16 x i8] }> <{ [16 x i8] c"\80\16\00\00\00  \01\000`\01\010q\02" }>, align 1
@_ZN4core7unicode12unicode_data11white_space7OFFSETS17h6313147bad63dd3cE = internal unnamed_addr constant <{ [21 x i8] }> <{ [21 x i8] c"\09\05\12\01d\01\1A\01\00\01\00\0B\1D\02\05\01/\01\00\01\00" }>, align 1
@alloc3723 = private unnamed_addr constant <{ [22288 x i8] }> <{ [22288 x i8] c"A\00\00\00a\00\00\00\00\00\00\00\00\00\00\00B\00\00\00b\00\00\00\00\00\00\00\00\00\00\00C\00\00\00c\00\00\00\00\00\00\00\00\00\00\00D\00\00\00d\00\00\00\00\00\00\00\00\00\00\00E\00\00\00e\00\00\00\00\00\00\00\00\00\00\00F\00\00\00f\00\00\00\00\00\00\00\00\00\00\00G\00\00\00g\00\00\00\00\00\00\00\00\00\00\00H\00\00\00h\00\00\00\00\00\00\00\00\00\00\00I\00\00\00i\00\00\00\00\00\00\00\00\00\00\00J\00\00\00j\00\00\00\00\00\00\00\00\00\00\00K\00\00\00k\00\00\00\00\00\00\00\00\00\00\00L\00\00\00l\00\00\00\00\00\00\00\00\00\00\00M\00\00\00m\00\00\00\00\00\00\00\00\00\00\00N\00\00\00n\00\00\00\00\00\00\00\00\00\00\00O\00\00\00o\00\00\00\00\00\00\00\00\00\00\00P\00\00\00p\00\00\00\00\00\00\00\00\00\00\00Q\00\00\00q\00\00\00\00\00\00\00\00\00\00\00R\00\00\00r\00\00\00\00\00\00\00\00\00\00\00S\00\00\00s\00\00\00\00\00\00\00\00\00\00\00T\00\00\00t\00\00\00\00\00\00\00\00\00\00\00U\00\00\00u\00\00\00\00\00\00\00\00\00\00\00V\00\00\00v\00\00\00\00\00\00\00\00\00\00\00W\00\00\00w\00\00\00\00\00\00\00\00\00\00\00X\00\00\00x\00\00\00\00\00\00\00\00\00\00\00Y\00\00\00y\00\00\00\00\00\00\00\00\00\00\00Z\00\00\00z\00\00\00\00\00\00\00\00\00\00\00\C0\00\00\00\E0\00\00\00\00\00\00\00\00\00\00\00\C1\00\00\00\E1\00\00\00\00\00\00\00\00\00\00\00\C2\00\00\00\E2\00\00\00\00\00\00\00\00\00\00\00\C3\00\00\00\E3\00\00\00\00\00\00\00\00\00\00\00\C4\00\00\00\E4\00\00\00\00\00\00\00\00\00\00\00\C5\00\00\00\E5\00\00\00\00\00\00\00\00\00\00\00\C6\00\00\00\E6\00\00\00\00\00\00\00\00\00\00\00\C7\00\00\00\E7\00\00\00\00\00\00\00\00\00\00\00\C8\00\00\00\E8\00\00\00\00\00\00\00\00\00\00\00\C9\00\00\00\E9\00\00\00\00\00\00\00\00\00\00\00\CA\00\00\00\EA\00\00\00\00\00\00\00\00\00\00\00\CB\00\00\00\EB\00\00\00\00\00\00\00\00\00\00\00\CC\00\00\00\EC\00\00\00\00\00\00\00\00\00\00\00\CD\00\00\00\ED\00\00\00\00\00\00\00\00\00\00\00\CE\00\00\00\EE\00\00\00\00\00\00\00\00\00\00\00\CF\00\00\00\EF\00\00\00\00\00\00\00\00\00\00\00\D0\00\00\00\F0\00\00\00\00\00\00\00\00\00\00\00\D1\00\00\00\F1\00\00\00\00\00\00\00\00\00\00\00\D2\00\00\00\F2\00\00\00\00\00\00\00\00\00\00\00\D3\00\00\00\F3\00\00\00\00\00\00\00\00\00\00\00\D4\00\00\00\F4\00\00\00\00\00\00\00\00\00\00\00\D5\00\00\00\F5\00\00\00\00\00\00\00\00\00\00\00\D6\00\00\00\F6\00\00\00\00\00\00\00\00\00\00\00\D8\00\00\00\F8\00\00\00\00\00\00\00\00\00\00\00\D9\00\00\00\F9\00\00\00\00\00\00\00\00\00\00\00\DA\00\00\00\FA\00\00\00\00\00\00\00\00\00\00\00\DB\00\00\00\FB\00\00\00\00\00\00\00\00\00\00\00\DC\00\00\00\FC\00\00\00\00\00\00\00\00\00\00\00\DD\00\00\00\FD\00\00\00\00\00\00\00\00\00\00\00\DE\00\00\00\FE\00\00\00\00\00\00\00\00\00\00\00\00\01\00\00\01\01\00\00\00\00\00\00\00\00\00\00\02\01\00\00\03\01\00\00\00\00\00\00\00\00\00\00\04\01\00\00\05\01\00\00\00\00\00\00\00\00\00\00\06\01\00\00\07\01\00\00\00\00\00\00\00\00\00\00\08\01\00\00\09\01\00\00\00\00\00\00\00\00\00\00\0A\01\00\00\0B\01\00\00\00\00\00\00\00\00\00\00\0C\01\00\00\0D\01\00\00\00\00\00\00\00\00\00\00\0E\01\00\00\0F\01\00\00\00\00\00\00\00\00\00\00\10\01\00\00\11\01\00\00\00\00\00\00\00\00\00\00\12\01\00\00\13\01\00\00\00\00\00\00\00\00\00\00\14\01\00\00\15\01\00\00\00\00\00\00\00\00\00\00\16\01\00\00\17\01\00\00\00\00\00\00\00\00\00\00\18\01\00\00\19\01\00\00\00\00\00\00\00\00\00\00\1A\01\00\00\1B\01\00\00\00\00\00\00\00\00\00\00\1C\01\00\00\1D\01\00\00\00\00\00\00\00\00\00\00\1E\01\00\00\1F\01\00\00\00\00\00\00\00\00\00\00 \01\00\00!\01\00\00\00\00\00\00\00\00\00\00\22\01\00\00#\01\00\00\00\00\00\00\00\00\00\00$\01\00\00%\01\00\00\00\00\00\00\00\00\00\00&\01\00\00'\01\00\00\00\00\00\00\00\00\00\00(\01\00\00)\01\00\00\00\00\00\00\00\00\00\00*\01\00\00+\01\00\00\00\00\00\00\00\00\00\00,\01\00\00-\01\00\00\00\00\00\00\00\00\00\00.\01\00\00/\01\00\00\00\00\00\00\00\00\00\000\01\00\00i\00\00\00\07\03\00\00\00\00\00\002\01\00\003\01\00\00\00\00\00\00\00\00\00\004\01\00\005\01\00\00\00\00\00\00\00\00\00\006\01\00\007\01\00\00\00\00\00\00\00\00\00\009\01\00\00:\01\00\00\00\00\00\00\00\00\00\00;\01\00\00<\01\00\00\00\00\00\00\00\00\00\00=\01\00\00>\01\00\00\00\00\00\00\00\00\00\00?\01\00\00@\01\00\00\00\00\00\00\00\00\00\00A\01\00\00B\01\00\00\00\00\00\00\00\00\00\00C\01\00\00D\01\00\00\00\00\00\00\00\00\00\00E\01\00\00F\01\00\00\00\00\00\00\00\00\00\00G\01\00\00H\01\00\00\00\00\00\00\00\00\00\00J\01\00\00K\01\00\00\00\00\00\00\00\00\00\00L\01\00\00M\01\00\00\00\00\00\00\00\00\00\00N\01\00\00O\01\00\00\00\00\00\00\00\00\00\00P\01\00\00Q\01\00\00\00\00\00\00\00\00\00\00R\01\00\00S\01\00\00\00\00\00\00\00\00\00\00T\01\00\00U\01\00\00\00\00\00\00\00\00\00\00V\01\00\00W\01\00\00\00\00\00\00\00\00\00\00X\01\00\00Y\01\00\00\00\00\00\00\00\00\00\00Z\01\00\00[\01\00\00\00\00\00\00\00\00\00\00\\\01\00\00]\01\00\00\00\00\00\00\00\00\00\00^\01\00\00_\01\00\00\00\00\00\00\00\00\00\00`\01\00\00a\01\00\00\00\00\00\00\00\00\00\00b\01\00\00c\01\00\00\00\00\00\00\00\00\00\00d\01\00\00e\01\00\00\00\00\00\00\00\00\00\00f\01\00\00g\01\00\00\00\00\00\00\00\00\00\00h\01\00\00i\01\00\00\00\00\00\00\00\00\00\00j\01\00\00k\01\00\00\00\00\00\00\00\00\00\00l\01\00\00m\01\00\00\00\00\00\00\00\00\00\00n\01\00\00o\01\00\00\00\00\00\00\00\00\00\00p\01\00\00q\01\00\00\00\00\00\00\00\00\00\00r\01\00\00s\01\00\00\00\00\00\00\00\00\00\00t\01\00\00u\01\00\00\00\00\00\00\00\00\00\00v\01\00\00w\01\00\00\00\00\00\00\00\00\00\00x\01\00\00\FF\00\00\00\00\00\00\00\00\00\00\00y\01\00\00z\01\00\00\00\00\00\00\00\00\00\00{\01\00\00|\01\00\00\00\00\00\00\00\00\00\00}\01\00\00~\01\00\00\00\00\00\00\00\00\00\00\81\01\00\00S\02\00\00\00\00\00\00\00\00\00\00\82\01\00\00\83\01\00\00\00\00\00\00\00\00\00\00\84\01\00\00\85\01\00\00\00\00\00\00\00\00\00\00\86\01\00\00T\02\00\00\00\00\00\00\00\00\00\00\87\01\00\00\88\01\00\00\00\00\00\00\00\00\00\00\89\01\00\00V\02\00\00\00\00\00\00\00\00\00\00\8A\01\00\00W\02\00\00\00\00\00\00\00\00\00\00\8B\01\00\00\8C\01\00\00\00\00\00\00\00\00\00\00\8E\01\00\00\DD\01\00\00\00\00\00\00\00\00\00\00\8F\01\00\00Y\02\00\00\00\00\00\00\00\00\00\00\90\01\00\00[\02\00\00\00\00\00\00\00\00\00\00\91\01\00\00\92\01\00\00\00\00\00\00\00\00\00\00\93\01\00\00`\02\00\00\00\00\00\00\00\00\00\00\94\01\00\00c\02\00\00\00\00\00\00\00\00\00\00\96\01\00\00i\02\00\00\00\00\00\00\00\00\00\00\97\01\00\00h\02\00\00\00\00\00\00\00\00\00\00\98\01\00\00\99\01\00\00\00\00\00\00\00\00\00\00\9C\01\00\00o\02\00\00\00\00\00\00\00\00\00\00\9D\01\00\00r\02\00\00\00\00\00\00\00\00\00\00\9F\01\00\00u\02\00\00\00\00\00\00\00\00\00\00\A0\01\00\00\A1\01\00\00\00\00\00\00\00\00\00\00\A2\01\00\00\A3\01\00\00\00\00\00\00\00\00\00\00\A4\01\00\00\A5\01\00\00\00\00\00\00\00\00\00\00\A6\01\00\00\80\02\00\00\00\00\00\00\00\00\00\00\A7\01\00\00\A8\01\00\00\00\00\00\00\00\00\00\00\A9\01\00\00\83\02\00\00\00\00\00\00\00\00\00\00\AC\01\00\00\AD\01\00\00\00\00\00\00\00\00\00\00\AE\01\00\00\88\02\00\00\00\00\00\00\00\00\00\00\AF\01\00\00\B0\01\00\00\00\00\00\00\00\00\00\00\B1\01\00\00\8A\02\00\00\00\00\00\00\00\00\00\00\B2\01\00\00\8B\02\00\00\00\00\00\00\00\00\00\00\B3\01\00\00\B4\01\00\00\00\00\00\00\00\00\00\00\B5\01\00\00\B6\01\00\00\00\00\00\00\00\00\00\00\B7\01\00\00\92\02\00\00\00\00\00\00\00\00\00\00\B8\01\00\00\B9\01\00\00\00\00\00\00\00\00\00\00\BC\01\00\00\BD\01\00\00\00\00\00\00\00\00\00\00\C4\01\00\00\C6\01\00\00\00\00\00\00\00\00\00\00\C5\01\00\00\C6\01\00\00\00\00\00\00\00\00\00\00\C7\01\00\00\C9\01\00\00\00\00\00\00\00\00\00\00\C8\01\00\00\C9\01\00\00\00\00\00\00\00\00\00\00\CA\01\00\00\CC\01\00\00\00\00\00\00\00\00\00\00\CB\01\00\00\CC\01\00\00\00\00\00\00\00\00\00\00\CD\01\00\00\CE\01\00\00\00\00\00\00\00\00\00\00\CF\01\00\00\D0\01\00\00\00\00\00\00\00\00\00\00\D1\01\00\00\D2\01\00\00\00\00\00\00\00\00\00\00\D3\01\00\00\D4\01\00\00\00\00\00\00\00\00\00\00\D5\01\00\00\D6\01\00\00\00\00\00\00\00\00\00\00\D7\01\00\00\D8\01\00\00\00\00\00\00\00\00\00\00\D9\01\00\00\DA\01\00\00\00\00\00\00\00\00\00\00\DB\01\00\00\DC\01\00\00\00\00\00\00\00\00\00\00\DE\01\00\00\DF\01\00\00\00\00\00\00\00\00\00\00\E0\01\00\00\E1\01\00\00\00\00\00\00\00\00\00\00\E2\01\00\00\E3\01\00\00\00\00\00\00\00\00\00\00\E4\01\00\00\E5\01\00\00\00\00\00\00\00\00\00\00\E6\01\00\00\E7\01\00\00\00\00\00\00\00\00\00\00\E8\01\00\00\E9\01\00\00\00\00\00\00\00\00\00\00\EA\01\00\00\EB\01\00\00\00\00\00\00\00\00\00\00\EC\01\00\00\ED\01\00\00\00\00\00\00\00\00\00\00\EE\01\00\00\EF\01\00\00\00\00\00\00\00\00\00\00\F1\01\00\00\F3\01\00\00\00\00\00\00\00\00\00\00\F2\01\00\00\F3\01\00\00\00\00\00\00\00\00\00\00\F4\01\00\00\F5\01\00\00\00\00\00\00\00\00\00\00\F6\01\00\00\95\01\00\00\00\00\00\00\00\00\00\00\F7\01\00\00\BF\01\00\00\00\00\00\00\00\00\00\00\F8\01\00\00\F9\01\00\00\00\00\00\00\00\00\00\00\FA\01\00\00\FB\01\00\00\00\00\00\00\00\00\00\00\FC\01\00\00\FD\01\00\00\00\00\00\00\00\00\00\00\FE\01\00\00\FF\01\00\00\00\00\00\00\00\00\00\00\00\02\00\00\01\02\00\00\00\00\00\00\00\00\00\00\02\02\00\00\03\02\00\00\00\00\00\00\00\00\00\00\04\02\00\00\05\02\00\00\00\00\00\00\00\00\00\00\06\02\00\00\07\02\00\00\00\00\00\00\00\00\00\00\08\02\00\00\09\02\00\00\00\00\00\00\00\00\00\00\0A\02\00\00\0B\02\00\00\00\00\00\00\00\00\00\00\0C\02\00\00\0D\02\00\00\00\00\00\00\00\00\00\00\0E\02\00\00\0F\02\00\00\00\00\00\00\00\00\00\00\10\02\00\00\11\02\00\00\00\00\00\00\00\00\00\00\12\02\00\00\13\02\00\00\00\00\00\00\00\00\00\00\14\02\00\00\15\02\00\00\00\00\00\00\00\00\00\00\16\02\00\00\17\02\00\00\00\00\00\00\00\00\00\00\18\02\00\00\19\02\00\00\00\00\00\00\00\00\00\00\1A\02\00\00\1B\02\00\00\00\00\00\00\00\00\00\00\1C\02\00\00\1D\02\00\00\00\00\00\00\00\00\00\00\1E\02\00\00\1F\02\00\00\00\00\00\00\00\00\00\00 \02\00\00\9E\01\00\00\00\00\00\00\00\00\00\00\22\02\00\00#\02\00\00\00\00\00\00\00\00\00\00$\02\00\00%\02\00\00\00\00\00\00\00\00\00\00&\02\00\00'\02\00\00\00\00\00\00\00\00\00\00(\02\00\00)\02\00\00\00\00\00\00\00\00\00\00*\02\00\00+\02\00\00\00\00\00\00\00\00\00\00,\02\00\00-\02\00\00\00\00\00\00\00\00\00\00.\02\00\00/\02\00\00\00\00\00\00\00\00\00\000\02\00\001\02\00\00\00\00\00\00\00\00\00\002\02\00\003\02\00\00\00\00\00\00\00\00\00\00:\02\00\00e,\00\00\00\00\00\00\00\00\00\00;\02\00\00<\02\00\00\00\00\00\00\00\00\00\00=\02\00\00\9A\01\00\00\00\00\00\00\00\00\00\00>\02\00\00f,\00\00\00\00\00\00\00\00\00\00A\02\00\00B\02\00\00\00\00\00\00\00\00\00\00C\02\00\00\80\01\00\00\00\00\00\00\00\00\00\00D\02\00\00\89\02\00\00\00\00\00\00\00\00\00\00E\02\00\00\8C\02\00\00\00\00\00\00\00\00\00\00F\02\00\00G\02\00\00\00\00\00\00\00\00\00\00H\02\00\00I\02\00\00\00\00\00\00\00\00\00\00J\02\00\00K\02\00\00\00\00\00\00\00\00\00\00L\02\00\00M\02\00\00\00\00\00\00\00\00\00\00N\02\00\00O\02\00\00\00\00\00\00\00\00\00\00p\03\00\00q\03\00\00\00\00\00\00\00\00\00\00r\03\00\00s\03\00\00\00\00\00\00\00\00\00\00v\03\00\00w\03\00\00\00\00\00\00\00\00\00\00\7F\03\00\00\F3\03\00\00\00\00\00\00\00\00\00\00\86\03\00\00\AC\03\00\00\00\00\00\00\00\00\00\00\88\03\00\00\AD\03\00\00\00\00\00\00\00\00\00\00\89\03\00\00\AE\03\00\00\00\00\00\00\00\00\00\00\8A\03\00\00\AF\03\00\00\00\00\00\00\00\00\00\00\8C\03\00\00\CC\03\00\00\00\00\00\00\00\00\00\00\8E\03\00\00\CD\03\00\00\00\00\00\00\00\00\00\00\8F\03\00\00\CE\03\00\00\00\00\00\00\00\00\00\00\91\03\00\00\B1\03\00\00\00\00\00\00\00\00\00\00\92\03\00\00\B2\03\00\00\00\00\00\00\00\00\00\00\93\03\00\00\B3\03\00\00\00\00\00\00\00\00\00\00\94\03\00\00\B4\03\00\00\00\00\00\00\00\00\00\00\95\03\00\00\B5\03\00\00\00\00\00\00\00\00\00\00\96\03\00\00\B6\03\00\00\00\00\00\00\00\00\00\00\97\03\00\00\B7\03\00\00\00\00\00\00\00\00\00\00\98\03\00\00\B8\03\00\00\00\00\00\00\00\00\00\00\99\03\00\00\B9\03\00\00\00\00\00\00\00\00\00\00\9A\03\00\00\BA\03\00\00\00\00\00\00\00\00\00\00\9B\03\00\00\BB\03\00\00\00\00\00\00\00\00\00\00\9C\03\00\00\BC\03\00\00\00\00\00\00\00\00\00\00\9D\03\00\00\BD\03\00\00\00\00\00\00\00\00\00\00\9E\03\00\00\BE\03\00\00\00\00\00\00\00\00\00\00\9F\03\00\00\BF\03\00\00\00\00\00\00\00\00\00\00\A0\03\00\00\C0\03\00\00\00\00\00\00\00\00\00\00\A1\03\00\00\C1\03\00\00\00\00\00\00\00\00\00\00\A3\03\00\00\C3\03\00\00\00\00\00\00\00\00\00\00\A4\03\00\00\C4\03\00\00\00\00\00\00\00\00\00\00\A5\03\00\00\C5\03\00\00\00\00\00\00\00\00\00\00\A6\03\00\00\C6\03\00\00\00\00\00\00\00\00\00\00\A7\03\00\00\C7\03\00\00\00\00\00\00\00\00\00\00\A8\03\00\00\C8\03\00\00\00\00\00\00\00\00\00\00\A9\03\00\00\C9\03\00\00\00\00\00\00\00\00\00\00\AA\03\00\00\CA\03\00\00\00\00\00\00\00\00\00\00\AB\03\00\00\CB\03\00\00\00\00\00\00\00\00\00\00\CF\03\00\00\D7\03\00\00\00\00\00\00\00\00\00\00\D8\03\00\00\D9\03\00\00\00\00\00\00\00\00\00\00\DA\03\00\00\DB\03\00\00\00\00\00\00\00\00\00\00\DC\03\00\00\DD\03\00\00\00\00\00\00\00\00\00\00\DE\03\00\00\DF\03\00\00\00\00\00\00\00\00\00\00\E0\03\00\00\E1\03\00\00\00\00\00\00\00\00\00\00\E2\03\00\00\E3\03\00\00\00\00\00\00\00\00\00\00\E4\03\00\00\E5\03\00\00\00\00\00\00\00\00\00\00\E6\03\00\00\E7\03\00\00\00\00\00\00\00\00\00\00\E8\03\00\00\E9\03\00\00\00\00\00\00\00\00\00\00\EA\03\00\00\EB\03\00\00\00\00\00\00\00\00\00\00\EC\03\00\00\ED\03\00\00\00\00\00\00\00\00\00\00\EE\03\00\00\EF\03\00\00\00\00\00\00\00\00\00\00\F4\03\00\00\B8\03\00\00\00\00\00\00\00\00\00\00\F7\03\00\00\F8\03\00\00\00\00\00\00\00\00\00\00\F9\03\00\00\F2\03\00\00\00\00\00\00\00\00\00\00\FA\03\00\00\FB\03\00\00\00\00\00\00\00\00\00\00\FD\03\00\00{\03\00\00\00\00\00\00\00\00\00\00\FE\03\00\00|\03\00\00\00\00\00\00\00\00\00\00\FF\03\00\00}\03\00\00\00\00\00\00\00\00\00\00\00\04\00\00P\04\00\00\00\00\00\00\00\00\00\00\01\04\00\00Q\04\00\00\00\00\00\00\00\00\00\00\02\04\00\00R\04\00\00\00\00\00\00\00\00\00\00\03\04\00\00S\04\00\00\00\00\00\00\00\00\00\00\04\04\00\00T\04\00\00\00\00\00\00\00\00\00\00\05\04\00\00U\04\00\00\00\00\00\00\00\00\00\00\06\04\00\00V\04\00\00\00\00\00\00\00\00\00\00\07\04\00\00W\04\00\00\00\00\00\00\00\00\00\00\08\04\00\00X\04\00\00\00\00\00\00\00\00\00\00\09\04\00\00Y\04\00\00\00\00\00\00\00\00\00\00\0A\04\00\00Z\04\00\00\00\00\00\00\00\00\00\00\0B\04\00\00[\04\00\00\00\00\00\00\00\00\00\00\0C\04\00\00\\\04\00\00\00\00\00\00\00\00\00\00\0D\04\00\00]\04\00\00\00\00\00\00\00\00\00\00\0E\04\00\00^\04\00\00\00\00\00\00\00\00\00\00\0F\04\00\00_\04\00\00\00\00\00\00\00\00\00\00\10\04\00\000\04\00\00\00\00\00\00\00\00\00\00\11\04\00\001\04\00\00\00\00\00\00\00\00\00\00\12\04\00\002\04\00\00\00\00\00\00\00\00\00\00\13\04\00\003\04\00\00\00\00\00\00\00\00\00\00\14\04\00\004\04\00\00\00\00\00\00\00\00\00\00\15\04\00\005\04\00\00\00\00\00\00\00\00\00\00\16\04\00\006\04\00\00\00\00\00\00\00\00\00\00\17\04\00\007\04\00\00\00\00\00\00\00\00\00\00\18\04\00\008\04\00\00\00\00\00\00\00\00\00\00\19\04\00\009\04\00\00\00\00\00\00\00\00\00\00\1A\04\00\00:\04\00\00\00\00\00\00\00\00\00\00\1B\04\00\00;\04\00\00\00\00\00\00\00\00\00\00\1C\04\00\00<\04\00\00\00\00\00\00\00\00\00\00\1D\04\00\00=\04\00\00\00\00\00\00\00\00\00\00\1E\04\00\00>\04\00\00\00\00\00\00\00\00\00\00\1F\04\00\00?\04\00\00\00\00\00\00\00\00\00\00 \04\00\00@\04\00\00\00\00\00\00\00\00\00\00!\04\00\00A\04\00\00\00\00\00\00\00\00\00\00\22\04\00\00B\04\00\00\00\00\00\00\00\00\00\00#\04\00\00C\04\00\00\00\00\00\00\00\00\00\00$\04\00\00D\04\00\00\00\00\00\00\00\00\00\00%\04\00\00E\04\00\00\00\00\00\00\00\00\00\00&\04\00\00F\04\00\00\00\00\00\00\00\00\00\00'\04\00\00G\04\00\00\00\00\00\00\00\00\00\00(\04\00\00H\04\00\00\00\00\00\00\00\00\00\00)\04\00\00I\04\00\00\00\00\00\00\00\00\00\00*\04\00\00J\04\00\00\00\00\00\00\00\00\00\00+\04\00\00K\04\00\00\00\00\00\00\00\00\00\00,\04\00\00L\04\00\00\00\00\00\00\00\00\00\00-\04\00\00M\04\00\00\00\00\00\00\00\00\00\00.\04\00\00N\04\00\00\00\00\00\00\00\00\00\00/\04\00\00O\04\00\00\00\00\00\00\00\00\00\00`\04\00\00a\04\00\00\00\00\00\00\00\00\00\00b\04\00\00c\04\00\00\00\00\00\00\00\00\00\00d\04\00\00e\04\00\00\00\00\00\00\00\00\00\00f\04\00\00g\04\00\00\00\00\00\00\00\00\00\00h\04\00\00i\04\00\00\00\00\00\00\00\00\00\00j\04\00\00k\04\00\00\00\00\00\00\00\00\00\00l\04\00\00m\04\00\00\00\00\00\00\00\00\00\00n\04\00\00o\04\00\00\00\00\00\00\00\00\00\00p\04\00\00q\04\00\00\00\00\00\00\00\00\00\00r\04\00\00s\04\00\00\00\00\00\00\00\00\00\00t\04\00\00u\04\00\00\00\00\00\00\00\00\00\00v\04\00\00w\04\00\00\00\00\00\00\00\00\00\00x\04\00\00y\04\00\00\00\00\00\00\00\00\00\00z\04\00\00{\04\00\00\00\00\00\00\00\00\00\00|\04\00\00}\04\00\00\00\00\00\00\00\00\00\00~\04\00\00\7F\04\00\00\00\00\00\00\00\00\00\00\80\04\00\00\81\04\00\00\00\00\00\00\00\00\00\00\8A\04\00\00\8B\04\00\00\00\00\00\00\00\00\00\00\8C\04\00\00\8D\04\00\00\00\00\00\00\00\00\00\00\8E\04\00\00\8F\04\00\00\00\00\00\00\00\00\00\00\90\04\00\00\91\04\00\00\00\00\00\00\00\00\00\00\92\04\00\00\93\04\00\00\00\00\00\00\00\00\00\00\94\04\00\00\95\04\00\00\00\00\00\00\00\00\00\00\96\04\00\00\97\04\00\00\00\00\00\00\00\00\00\00\98\04\00\00\99\04\00\00\00\00\00\00\00\00\00\00\9A\04\00\00\9B\04\00\00\00\00\00\00\00\00\00\00\9C\04\00\00\9D\04\00\00\00\00\00\00\00\00\00\00\9E\04\00\00\9F\04\00\00\00\00\00\00\00\00\00\00\A0\04\00\00\A1\04\00\00\00\00\00\00\00\00\00\00\A2\04\00\00\A3\04\00\00\00\00\00\00\00\00\00\00\A4\04\00\00\A5\04\00\00\00\00\00\00\00\00\00\00\A6\04\00\00\A7\04\00\00\00\00\00\00\00\00\00\00\A8\04\00\00\A9\04\00\00\00\00\00\00\00\00\00\00\AA\04\00\00\AB\04\00\00\00\00\00\00\00\00\00\00\AC\04\00\00\AD\04\00\00\00\00\00\00\00\00\00\00\AE\04\00\00\AF\04\00\00\00\00\00\00\00\00\00\00\B0\04\00\00\B1\04\00\00\00\00\00\00\00\00\00\00\B2\04\00\00\B3\04\00\00\00\00\00\00\00\00\00\00\B4\04\00\00\B5\04\00\00\00\00\00\00\00\00\00\00\B6\04\00\00\B7\04\00\00\00\00\00\00\00\00\00\00\B8\04\00\00\B9\04\00\00\00\00\00\00\00\00\00\00\BA\04\00\00\BB\04\00\00\00\00\00\00\00\00\00\00\BC\04\00\00\BD\04\00\00\00\00\00\00\00\00\00\00\BE\04\00\00\BF\04\00\00\00\00\00\00\00\00\00\00\C0\04\00\00\CF\04\00\00\00\00\00\00\00\00\00\00\C1\04\00\00\C2\04\00\00\00\00\00\00\00\00\00\00\C3\04\00\00\C4\04\00\00\00\00\00\00\00\00\00\00\C5\04\00\00\C6\04\00\00\00\00\00\00\00\00\00\00\C7\04\00\00\C8\04\00\00\00\00\00\00\00\00\00\00\C9\04\00\00\CA\04\00\00\00\00\00\00\00\00\00\00\CB\04\00\00\CC\04\00\00\00\00\00\00\00\00\00\00\CD\04\00\00\CE\04\00\00\00\00\00\00\00\00\00\00\D0\04\00\00\D1\04\00\00\00\00\00\00\00\00\00\00\D2\04\00\00\D3\04\00\00\00\00\00\00\00\00\00\00\D4\04\00\00\D5\04\00\00\00\00\00\00\00\00\00\00\D6\04\00\00\D7\04\00\00\00\00\00\00\00\00\00\00\D8\04\00\00\D9\04\00\00\00\00\00\00\00\00\00\00\DA\04\00\00\DB\04\00\00\00\00\00\00\00\00\00\00\DC\04\00\00\DD\04\00\00\00\00\00\00\00\00\00\00\DE\04\00\00\DF\04\00\00\00\00\00\00\00\00\00\00\E0\04\00\00\E1\04\00\00\00\00\00\00\00\00\00\00\E2\04\00\00\E3\04\00\00\00\00\00\00\00\00\00\00\E4\04\00\00\E5\04\00\00\00\00\00\00\00\00\00\00\E6\04\00\00\E7\04\00\00\00\00\00\00\00\00\00\00\E8\04\00\00\E9\04\00\00\00\00\00\00\00\00\00\00\EA\04\00\00\EB\04\00\00\00\00\00\00\00\00\00\00\EC\04\00\00\ED\04\00\00\00\00\00\00\00\00\00\00\EE\04\00\00\EF\04\00\00\00\00\00\00\00\00\00\00\F0\04\00\00\F1\04\00\00\00\00\00\00\00\00\00\00\F2\04\00\00\F3\04\00\00\00\00\00\00\00\00\00\00\F4\04\00\00\F5\04\00\00\00\00\00\00\00\00\00\00\F6\04\00\00\F7\04\00\00\00\00\00\00\00\00\00\00\F8\04\00\00\F9\04\00\00\00\00\00\00\00\00\00\00\FA\04\00\00\FB\04\00\00\00\00\00\00\00\00\00\00\FC\04\00\00\FD\04\00\00\00\00\00\00\00\00\00\00\FE\04\00\00\FF\04\00\00\00\00\00\00\00\00\00\00\00\05\00\00\01\05\00\00\00\00\00\00\00\00\00\00\02\05\00\00\03\05\00\00\00\00\00\00\00\00\00\00\04\05\00\00\05\05\00\00\00\00\00\00\00\00\00\00\06\05\00\00\07\05\00\00\00\00\00\00\00\00\00\00\08\05\00\00\09\05\00\00\00\00\00\00\00\00\00\00\0A\05\00\00\0B\05\00\00\00\00\00\00\00\00\00\00\0C\05\00\00\0D\05\00\00\00\00\00\00\00\00\00\00\0E\05\00\00\0F\05\00\00\00\00\00\00\00\00\00\00\10\05\00\00\11\05\00\00\00\00\00\00\00\00\00\00\12\05\00\00\13\05\00\00\00\00\00\00\00\00\00\00\14\05\00\00\15\05\00\00\00\00\00\00\00\00\00\00\16\05\00\00\17\05\00\00\00\00\00\00\00\00\00\00\18\05\00\00\19\05\00\00\00\00\00\00\00\00\00\00\1A\05\00\00\1B\05\00\00\00\00\00\00\00\00\00\00\1C\05\00\00\1D\05\00\00\00\00\00\00\00\00\00\00\1E\05\00\00\1F\05\00\00\00\00\00\00\00\00\00\00 \05\00\00!\05\00\00\00\00\00\00\00\00\00\00\22\05\00\00#\05\00\00\00\00\00\00\00\00\00\00$\05\00\00%\05\00\00\00\00\00\00\00\00\00\00&\05\00\00'\05\00\00\00\00\00\00\00\00\00\00(\05\00\00)\05\00\00\00\00\00\00\00\00\00\00*\05\00\00+\05\00\00\00\00\00\00\00\00\00\00,\05\00\00-\05\00\00\00\00\00\00\00\00\00\00.\05\00\00/\05\00\00\00\00\00\00\00\00\00\001\05\00\00a\05\00\00\00\00\00\00\00\00\00\002\05\00\00b\05\00\00\00\00\00\00\00\00\00\003\05\00\00c\05\00\00\00\00\00\00\00\00\00\004\05\00\00d\05\00\00\00\00\00\00\00\00\00\005\05\00\00e\05\00\00\00\00\00\00\00\00\00\006\05\00\00f\05\00\00\00\00\00\00\00\00\00\007\05\00\00g\05\00\00\00\00\00\00\00\00\00\008\05\00\00h\05\00\00\00\00\00\00\00\00\00\009\05\00\00i\05\00\00\00\00\00\00\00\00\00\00:\05\00\00j\05\00\00\00\00\00\00\00\00\00\00;\05\00\00k\05\00\00\00\00\00\00\00\00\00\00<\05\00\00l\05\00\00\00\00\00\00\00\00\00\00=\05\00\00m\05\00\00\00\00\00\00\00\00\00\00>\05\00\00n\05\00\00\00\00\00\00\00\00\00\00?\05\00\00o\05\00\00\00\00\00\00\00\00\00\00@\05\00\00p\05\00\00\00\00\00\00\00\00\00\00A\05\00\00q\05\00\00\00\00\00\00\00\00\00\00B\05\00\00r\05\00\00\00\00\00\00\00\00\00\00C\05\00\00s\05\00\00\00\00\00\00\00\00\00\00D\05\00\00t\05\00\00\00\00\00\00\00\00\00\00E\05\00\00u\05\00\00\00\00\00\00\00\00\00\00F\05\00\00v\05\00\00\00\00\00\00\00\00\00\00G\05\00\00w\05\00\00\00\00\00\00\00\00\00\00H\05\00\00x\05\00\00\00\00\00\00\00\00\00\00I\05\00\00y\05\00\00\00\00\00\00\00\00\00\00J\05\00\00z\05\00\00\00\00\00\00\00\00\00\00K\05\00\00{\05\00\00\00\00\00\00\00\00\00\00L\05\00\00|\05\00\00\00\00\00\00\00\00\00\00M\05\00\00}\05\00\00\00\00\00\00\00\00\00\00N\05\00\00~\05\00\00\00\00\00\00\00\00\00\00O\05\00\00\7F\05\00\00\00\00\00\00\00\00\00\00P\05\00\00\80\05\00\00\00\00\00\00\00\00\00\00Q\05\00\00\81\05\00\00\00\00\00\00\00\00\00\00R\05\00\00\82\05\00\00\00\00\00\00\00\00\00\00S\05\00\00\83\05\00\00\00\00\00\00\00\00\00\00T\05\00\00\84\05\00\00\00\00\00\00\00\00\00\00U\05\00\00\85\05\00\00\00\00\00\00\00\00\00\00V\05\00\00\86\05\00\00\00\00\00\00\00\00\00\00\A0\10\00\00\00-\00\00\00\00\00\00\00\00\00\00\A1\10\00\00\01-\00\00\00\00\00\00\00\00\00\00\A2\10\00\00\02-\00\00\00\00\00\00\00\00\00\00\A3\10\00\00\03-\00\00\00\00\00\00\00\00\00\00\A4\10\00\00\04-\00\00\00\00\00\00\00\00\00\00\A5\10\00\00\05-\00\00\00\00\00\00\00\00\00\00\A6\10\00\00\06-\00\00\00\00\00\00\00\00\00\00\A7\10\00\00\07-\00\00\00\00\00\00\00\00\00\00\A8\10\00\00\08-\00\00\00\00\00\00\00\00\00\00\A9\10\00\00\09-\00\00\00\00\00\00\00\00\00\00\AA\10\00\00\0A-\00\00\00\00\00\00\00\00\00\00\AB\10\00\00\0B-\00\00\00\00\00\00\00\00\00\00\AC\10\00\00\0C-\00\00\00\00\00\00\00\00\00\00\AD\10\00\00\0D-\00\00\00\00\00\00\00\00\00\00\AE\10\00\00\0E-\00\00\00\00\00\00\00\00\00\00\AF\10\00\00\0F-\00\00\00\00\00\00\00\00\00\00\B0\10\00\00\10-\00\00\00\00\00\00\00\00\00\00\B1\10\00\00\11-\00\00\00\00\00\00\00\00\00\00\B2\10\00\00\12-\00\00\00\00\00\00\00\00\00\00\B3\10\00\00\13-\00\00\00\00\00\00\00\00\00\00\B4\10\00\00\14-\00\00\00\00\00\00\00\00\00\00\B5\10\00\00\15-\00\00\00\00\00\00\00\00\00\00\B6\10\00\00\16-\00\00\00\00\00\00\00\00\00\00\B7\10\00\00\17-\00\00\00\00\00\00\00\00\00\00\B8\10\00\00\18-\00\00\00\00\00\00\00\00\00\00\B9\10\00\00\19-\00\00\00\00\00\00\00\00\00\00\BA\10\00\00\1A-\00\00\00\00\00\00\00\00\00\00\BB\10\00\00\1B-\00\00\00\00\00\00\00\00\00\00\BC\10\00\00\1C-\00\00\00\00\00\00\00\00\00\00\BD\10\00\00\1D-\00\00\00\00\00\00\00\00\00\00\BE\10\00\00\1E-\00\00\00\00\00\00\00\00\00\00\BF\10\00\00\1F-\00\00\00\00\00\00\00\00\00\00\C0\10\00\00 -\00\00\00\00\00\00\00\00\00\00\C1\10\00\00!-\00\00\00\00\00\00\00\00\00\00\C2\10\00\00\22-\00\00\00\00\00\00\00\00\00\00\C3\10\00\00#-\00\00\00\00\00\00\00\00\00\00\C4\10\00\00$-\00\00\00\00\00\00\00\00\00\00\C5\10\00\00%-\00\00\00\00\00\00\00\00\00\00\C7\10\00\00'-\00\00\00\00\00\00\00\00\00\00\CD\10\00\00--\00\00\00\00\00\00\00\00\00\00\A0\13\00\00p\AB\00\00\00\00\00\00\00\00\00\00\A1\13\00\00q\AB\00\00\00\00\00\00\00\00\00\00\A2\13\00\00r\AB\00\00\00\00\00\00\00\00\00\00\A3\13\00\00s\AB\00\00\00\00\00\00\00\00\00\00\A4\13\00\00t\AB\00\00\00\00\00\00\00\00\00\00\A5\13\00\00u\AB\00\00\00\00\00\00\00\00\00\00\A6\13\00\00v\AB\00\00\00\00\00\00\00\00\00\00\A7\13\00\00w\AB\00\00\00\00\00\00\00\00\00\00\A8\13\00\00x\AB\00\00\00\00\00\00\00\00\00\00\A9\13\00\00y\AB\00\00\00\00\00\00\00\00\00\00\AA\13\00\00z\AB\00\00\00\00\00\00\00\00\00\00\AB\13\00\00{\AB\00\00\00\00\00\00\00\00\00\00\AC\13\00\00|\AB\00\00\00\00\00\00\00\00\00\00\AD\13\00\00}\AB\00\00\00\00\00\00\00\00\00\00\AE\13\00\00~\AB\00\00\00\00\00\00\00\00\00\00\AF\13\00\00\7F\AB\00\00\00\00\00\00\00\00\00\00\B0\13\00\00\80\AB\00\00\00\00\00\00\00\00\00\00\B1\13\00\00\81\AB\00\00\00\00\00\00\00\00\00\00\B2\13\00\00\82\AB\00\00\00\00\00\00\00\00\00\00\B3\13\00\00\83\AB\00\00\00\00\00\00\00\00\00\00\B4\13\00\00\84\AB\00\00\00\00\00\00\00\00\00\00\B5\13\00\00\85\AB\00\00\00\00\00\00\00\00\00\00\B6\13\00\00\86\AB\00\00\00\00\00\00\00\00\00\00\B7\13\00\00\87\AB\00\00\00\00\00\00\00\00\00\00\B8\13\00\00\88\AB\00\00\00\00\00\00\00\00\00\00\B9\13\00\00\89\AB\00\00\00\00\00\00\00\00\00\00\BA\13\00\00\8A\AB\00\00\00\00\00\00\00\00\00\00\BB\13\00\00\8B\AB\00\00\00\00\00\00\00\00\00\00\BC\13\00\00\8C\AB\00\00\00\00\00\00\00\00\00\00\BD\13\00\00\8D\AB\00\00\00\00\00\00\00\00\00\00\BE\13\00\00\8E\AB\00\00\00\00\00\00\00\00\00\00\BF\13\00\00\8F\AB\00\00\00\00\00\00\00\00\00\00\C0\13\00\00\90\AB\00\00\00\00\00\00\00\00\00\00\C1\13\00\00\91\AB\00\00\00\00\00\00\00\00\00\00\C2\13\00\00\92\AB\00\00\00\00\00\00\00\00\00\00\C3\13\00\00\93\AB\00\00\00\00\00\00\00\00\00\00\C4\13\00\00\94\AB\00\00\00\00\00\00\00\00\00\00\C5\13\00\00\95\AB\00\00\00\00\00\00\00\00\00\00\C6\13\00\00\96\AB\00\00\00\00\00\00\00\00\00\00\C7\13\00\00\97\AB\00\00\00\00\00\00\00\00\00\00\C8\13\00\00\98\AB\00\00\00\00\00\00\00\00\00\00\C9\13\00\00\99\AB\00\00\00\00\00\00\00\00\00\00\CA\13\00\00\9A\AB\00\00\00\00\00\00\00\00\00\00\CB\13\00\00\9B\AB\00\00\00\00\00\00\00\00\00\00\CC\13\00\00\9C\AB\00\00\00\00\00\00\00\00\00\00\CD\13\00\00\9D\AB\00\00\00\00\00\00\00\00\00\00\CE\13\00\00\9E\AB\00\00\00\00\00\00\00\00\00\00\CF\13\00\00\9F\AB\00\00\00\00\00\00\00\00\00\00\D0\13\00\00\A0\AB\00\00\00\00\00\00\00\00\00\00\D1\13\00\00\A1\AB\00\00\00\00\00\00\00\00\00\00\D2\13\00\00\A2\AB\00\00\00\00\00\00\00\00\00\00\D3\13\00\00\A3\AB\00\00\00\00\00\00\00\00\00\00\D4\13\00\00\A4\AB\00\00\00\00\00\00\00\00\00\00\D5\13\00\00\A5\AB\00\00\00\00\00\00\00\00\00\00\D6\13\00\00\A6\AB\00\00\00\00\00\00\00\00\00\00\D7\13\00\00\A7\AB\00\00\00\00\00\00\00\00\00\00\D8\13\00\00\A8\AB\00\00\00\00\00\00\00\00\00\00\D9\13\00\00\A9\AB\00\00\00\00\00\00\00\00\00\00\DA\13\00\00\AA\AB\00\00\00\00\00\00\00\00\00\00\DB\13\00\00\AB\AB\00\00\00\00\00\00\00\00\00\00\DC\13\00\00\AC\AB\00\00\00\00\00\00\00\00\00\00\DD\13\00\00\AD\AB\00\00\00\00\00\00\00\00\00\00\DE\13\00\00\AE\AB\00\00\00\00\00\00\00\00\00\00\DF\13\00\00\AF\AB\00\00\00\00\00\00\00\00\00\00\E0\13\00\00\B0\AB\00\00\00\00\00\00\00\00\00\00\E1\13\00\00\B1\AB\00\00\00\00\00\00\00\00\00\00\E2\13\00\00\B2\AB\00\00\00\00\00\00\00\00\00\00\E3\13\00\00\B3\AB\00\00\00\00\00\00\00\00\00\00\E4\13\00\00\B4\AB\00\00\00\00\00\00\00\00\00\00\E5\13\00\00\B5\AB\00\00\00\00\00\00\00\00\00\00\E6\13\00\00\B6\AB\00\00\00\00\00\00\00\00\00\00\E7\13\00\00\B7\AB\00\00\00\00\00\00\00\00\00\00\E8\13\00\00\B8\AB\00\00\00\00\00\00\00\00\00\00\E9\13\00\00\B9\AB\00\00\00\00\00\00\00\00\00\00\EA\13\00\00\BA\AB\00\00\00\00\00\00\00\00\00\00\EB\13\00\00\BB\AB\00\00\00\00\00\00\00\00\00\00\EC\13\00\00\BC\AB\00\00\00\00\00\00\00\00\00\00\ED\13\00\00\BD\AB\00\00\00\00\00\00\00\00\00\00\EE\13\00\00\BE\AB\00\00\00\00\00\00\00\00\00\00\EF\13\00\00\BF\AB\00\00\00\00\00\00\00\00\00\00\F0\13\00\00\F8\13\00\00\00\00\00\00\00\00\00\00\F1\13\00\00\F9\13\00\00\00\00\00\00\00\00\00\00\F2\13\00\00\FA\13\00\00\00\00\00\00\00\00\00\00\F3\13\00\00\FB\13\00\00\00\00\00\00\00\00\00\00\F4\13\00\00\FC\13\00\00\00\00\00\00\00\00\00\00\F5\13\00\00\FD\13\00\00\00\00\00\00\00\00\00\00\90\1C\00\00\D0\10\00\00\00\00\00\00\00\00\00\00\91\1C\00\00\D1\10\00\00\00\00\00\00\00\00\00\00\92\1C\00\00\D2\10\00\00\00\00\00\00\00\00\00\00\93\1C\00\00\D3\10\00\00\00\00\00\00\00\00\00\00\94\1C\00\00\D4\10\00\00\00\00\00\00\00\00\00\00\95\1C\00\00\D5\10\00\00\00\00\00\00\00\00\00\00\96\1C\00\00\D6\10\00\00\00\00\00\00\00\00\00\00\97\1C\00\00\D7\10\00\00\00\00\00\00\00\00\00\00\98\1C\00\00\D8\10\00\00\00\00\00\00\00\00\00\00\99\1C\00\00\D9\10\00\00\00\00\00\00\00\00\00\00\9A\1C\00\00\DA\10\00\00\00\00\00\00\00\00\00\00\9B\1C\00\00\DB\10\00\00\00\00\00\00\00\00\00\00\9C\1C\00\00\DC\10\00\00\00\00\00\00\00\00\00\00\9D\1C\00\00\DD\10\00\00\00\00\00\00\00\00\00\00\9E\1C\00\00\DE\10\00\00\00\00\00\00\00\00\00\00\9F\1C\00\00\DF\10\00\00\00\00\00\00\00\00\00\00\A0\1C\00\00\E0\10\00\00\00\00\00\00\00\00\00\00\A1\1C\00\00\E1\10\00\00\00\00\00\00\00\00\00\00\A2\1C\00\00\E2\10\00\00\00\00\00\00\00\00\00\00\A3\1C\00\00\E3\10\00\00\00\00\00\00\00\00\00\00\A4\1C\00\00\E4\10\00\00\00\00\00\00\00\00\00\00\A5\1C\00\00\E5\10\00\00\00\00\00\00\00\00\00\00\A6\1C\00\00\E6\10\00\00\00\00\00\00\00\00\00\00\A7\1C\00\00\E7\10\00\00\00\00\00\00\00\00\00\00\A8\1C\00\00\E8\10\00\00\00\00\00\00\00\00\00\00\A9\1C\00\00\E9\10\00\00\00\00\00\00\00\00\00\00\AA\1C\00\00\EA\10\00\00\00\00\00\00\00\00\00\00\AB\1C\00\00\EB\10\00\00\00\00\00\00\00\00\00\00\AC\1C\00\00\EC\10\00\00\00\00\00\00\00\00\00\00\AD\1C\00\00\ED\10\00\00\00\00\00\00\00\00\00\00\AE\1C\00\00\EE\10\00\00\00\00\00\00\00\00\00\00\AF\1C\00\00\EF\10\00\00\00\00\00\00\00\00\00\00\B0\1C\00\00\F0\10\00\00\00\00\00\00\00\00\00\00\B1\1C\00\00\F1\10\00\00\00\00\00\00\00\00\00\00\B2\1C\00\00\F2\10\00\00\00\00\00\00\00\00\00\00\B3\1C\00\00\F3\10\00\00\00\00\00\00\00\00\00\00\B4\1C\00\00\F4\10\00\00\00\00\00\00\00\00\00\00\B5\1C\00\00\F5\10\00\00\00\00\00\00\00\00\00\00\B6\1C\00\00\F6\10\00\00\00\00\00\00\00\00\00\00\B7\1C\00\00\F7\10\00\00\00\00\00\00\00\00\00\00\B8\1C\00\00\F8\10\00\00\00\00\00\00\00\00\00\00\B9\1C\00\00\F9\10\00\00\00\00\00\00\00\00\00\00\BA\1C\00\00\FA\10\00\00\00\00\00\00\00\00\00\00\BD\1C\00\00\FD\10\00\00\00\00\00\00\00\00\00\00\BE\1C\00\00\FE\10\00\00\00\00\00\00\00\00\00\00\BF\1C\00\00\FF\10\00\00\00\00\00\00\00\00\00\00\00\1E\00\00\01\1E\00\00\00\00\00\00\00\00\00\00\02\1E\00\00\03\1E\00\00\00\00\00\00\00\00\00\00\04\1E\00\00\05\1E\00\00\00\00\00\00\00\00\00\00\06\1E\00\00\07\1E\00\00\00\00\00\00\00\00\00\00\08\1E\00\00\09\1E\00\00\00\00\00\00\00\00\00\00\0A\1E\00\00\0B\1E\00\00\00\00\00\00\00\00\00\00\0C\1E\00\00\0D\1E\00\00\00\00\00\00\00\00\00\00\0E\1E\00\00\0F\1E\00\00\00\00\00\00\00\00\00\00\10\1E\00\00\11\1E\00\00\00\00\00\00\00\00\00\00\12\1E\00\00\13\1E\00\00\00\00\00\00\00\00\00\00\14\1E\00\00\15\1E\00\00\00\00\00\00\00\00\00\00\16\1E\00\00\17\1E\00\00\00\00\00\00\00\00\00\00\18\1E\00\00\19\1E\00\00\00\00\00\00\00\00\00\00\1A\1E\00\00\1B\1E\00\00\00\00\00\00\00\00\00\00\1C\1E\00\00\1D\1E\00\00\00\00\00\00\00\00\00\00\1E\1E\00\00\1F\1E\00\00\00\00\00\00\00\00\00\00 \1E\00\00!\1E\00\00\00\00\00\00\00\00\00\00\22\1E\00\00#\1E\00\00\00\00\00\00\00\00\00\00$\1E\00\00%\1E\00\00\00\00\00\00\00\00\00\00&\1E\00\00'\1E\00\00\00\00\00\00\00\00\00\00(\1E\00\00)\1E\00\00\00\00\00\00\00\00\00\00*\1E\00\00+\1E\00\00\00\00\00\00\00\00\00\00,\1E\00\00-\1E\00\00\00\00\00\00\00\00\00\00.\1E\00\00/\1E\00\00\00\00\00\00\00\00\00\000\1E\00\001\1E\00\00\00\00\00\00\00\00\00\002\1E\00\003\1E\00\00\00\00\00\00\00\00\00\004\1E\00\005\1E\00\00\00\00\00\00\00\00\00\006\1E\00\007\1E\00\00\00\00\00\00\00\00\00\008\1E\00\009\1E\00\00\00\00\00\00\00\00\00\00:\1E\00\00;\1E\00\00\00\00\00\00\00\00\00\00<\1E\00\00=\1E\00\00\00\00\00\00\00\00\00\00>\1E\00\00?\1E\00\00\00\00\00\00\00\00\00\00@\1E\00\00A\1E\00\00\00\00\00\00\00\00\00\00B\1E\00\00C\1E\00\00\00\00\00\00\00\00\00\00D\1E\00\00E\1E\00\00\00\00\00\00\00\00\00\00F\1E\00\00G\1E\00\00\00\00\00\00\00\00\00\00H\1E\00\00I\1E\00\00\00\00\00\00\00\00\00\00J\1E\00\00K\1E\00\00\00\00\00\00\00\00\00\00L\1E\00\00M\1E\00\00\00\00\00\00\00\00\00\00N\1E\00\00O\1E\00\00\00\00\00\00\00\00\00\00P\1E\00\00Q\1E\00\00\00\00\00\00\00\00\00\00R\1E\00\00S\1E\00\00\00\00\00\00\00\00\00\00T\1E\00\00U\1E\00\00\00\00\00\00\00\00\00\00V\1E\00\00W\1E\00\00\00\00\00\00\00\00\00\00X\1E\00\00Y\1E\00\00\00\00\00\00\00\00\00\00Z\1E\00\00[\1E\00\00\00\00\00\00\00\00\00\00\\\1E\00\00]\1E\00\00\00\00\00\00\00\00\00\00^\1E\00\00_\1E\00\00\00\00\00\00\00\00\00\00`\1E\00\00a\1E\00\00\00\00\00\00\00\00\00\00b\1E\00\00c\1E\00\00\00\00\00\00\00\00\00\00d\1E\00\00e\1E\00\00\00\00\00\00\00\00\00\00f\1E\00\00g\1E\00\00\00\00\00\00\00\00\00\00h\1E\00\00i\1E\00\00\00\00\00\00\00\00\00\00j\1E\00\00k\1E\00\00\00\00\00\00\00\00\00\00l\1E\00\00m\1E\00\00\00\00\00\00\00\00\00\00n\1E\00\00o\1E\00\00\00\00\00\00\00\00\00\00p\1E\00\00q\1E\00\00\00\00\00\00\00\00\00\00r\1E\00\00s\1E\00\00\00\00\00\00\00\00\00\00t\1E\00\00u\1E\00\00\00\00\00\00\00\00\00\00v\1E\00\00w\1E\00\00\00\00\00\00\00\00\00\00x\1E\00\00y\1E\00\00\00\00\00\00\00\00\00\00z\1E\00\00{\1E\00\00\00\00\00\00\00\00\00\00|\1E\00\00}\1E\00\00\00\00\00\00\00\00\00\00~\1E\00\00\7F\1E\00\00\00\00\00\00\00\00\00\00\80\1E\00\00\81\1E\00\00\00\00\00\00\00\00\00\00\82\1E\00\00\83\1E\00\00\00\00\00\00\00\00\00\00\84\1E\00\00\85\1E\00\00\00\00\00\00\00\00\00\00\86\1E\00\00\87\1E\00\00\00\00\00\00\00\00\00\00\88\1E\00\00\89\1E\00\00\00\00\00\00\00\00\00\00\8A\1E\00\00\8B\1E\00\00\00\00\00\00\00\00\00\00\8C\1E\00\00\8D\1E\00\00\00\00\00\00\00\00\00\00\8E\1E\00\00\8F\1E\00\00\00\00\00\00\00\00\00\00\90\1E\00\00\91\1E\00\00\00\00\00\00\00\00\00\00\92\1E\00\00\93\1E\00\00\00\00\00\00\00\00\00\00\94\1E\00\00\95\1E\00\00\00\00\00\00\00\00\00\00\9E\1E\00\00\DF\00\00\00\00\00\00\00\00\00\00\00\A0\1E\00\00\A1\1E\00\00\00\00\00\00\00\00\00\00\A2\1E\00\00\A3\1E\00\00\00\00\00\00\00\00\00\00\A4\1E\00\00\A5\1E\00\00\00\00\00\00\00\00\00\00\A6\1E\00\00\A7\1E\00\00\00\00\00\00\00\00\00\00\A8\1E\00\00\A9\1E\00\00\00\00\00\00\00\00\00\00\AA\1E\00\00\AB\1E\00\00\00\00\00\00\00\00\00\00\AC\1E\00\00\AD\1E\00\00\00\00\00\00\00\00\00\00\AE\1E\00\00\AF\1E\00\00\00\00\00\00\00\00\00\00\B0\1E\00\00\B1\1E\00\00\00\00\00\00\00\00\00\00\B2\1E\00\00\B3\1E\00\00\00\00\00\00\00\00\00\00\B4\1E\00\00\B5\1E\00\00\00\00\00\00\00\00\00\00\B6\1E\00\00\B7\1E\00\00\00\00\00\00\00\00\00\00\B8\1E\00\00\B9\1E\00\00\00\00\00\00\00\00\00\00\BA\1E\00\00\BB\1E\00\00\00\00\00\00\00\00\00\00\BC\1E\00\00\BD\1E\00\00\00\00\00\00\00\00\00\00\BE\1E\00\00\BF\1E\00\00\00\00\00\00\00\00\00\00\C0\1E\00\00\C1\1E\00\00\00\00\00\00\00\00\00\00\C2\1E\00\00\C3\1E\00\00\00\00\00\00\00\00\00\00\C4\1E\00\00\C5\1E\00\00\00\00\00\00\00\00\00\00\C6\1E\00\00\C7\1E\00\00\00\00\00\00\00\00\00\00\C8\1E\00\00\C9\1E\00\00\00\00\00\00\00\00\00\00\CA\1E\00\00\CB\1E\00\00\00\00\00\00\00\00\00\00\CC\1E\00\00\CD\1E\00\00\00\00\00\00\00\00\00\00\CE\1E\00\00\CF\1E\00\00\00\00\00\00\00\00\00\00\D0\1E\00\00\D1\1E\00\00\00\00\00\00\00\00\00\00\D2\1E\00\00\D3\1E\00\00\00\00\00\00\00\00\00\00\D4\1E\00\00\D5\1E\00\00\00\00\00\00\00\00\00\00\D6\1E\00\00\D7\1E\00\00\00\00\00\00\00\00\00\00\D8\1E\00\00\D9\1E\00\00\00\00\00\00\00\00\00\00\DA\1E\00\00\DB\1E\00\00\00\00\00\00\00\00\00\00\DC\1E\00\00\DD\1E\00\00\00\00\00\00\00\00\00\00\DE\1E\00\00\DF\1E\00\00\00\00\00\00\00\00\00\00\E0\1E\00\00\E1\1E\00\00\00\00\00\00\00\00\00\00\E2\1E\00\00\E3\1E\00\00\00\00\00\00\00\00\00\00\E4\1E\00\00\E5\1E\00\00\00\00\00\00\00\00\00\00\E6\1E\00\00\E7\1E\00\00\00\00\00\00\00\00\00\00\E8\1E\00\00\E9\1E\00\00\00\00\00\00\00\00\00\00\EA\1E\00\00\EB\1E\00\00\00\00\00\00\00\00\00\00\EC\1E\00\00\ED\1E\00\00\00\00\00\00\00\00\00\00\EE\1E\00\00\EF\1E\00\00\00\00\00\00\00\00\00\00\F0\1E\00\00\F1\1E\00\00\00\00\00\00\00\00\00\00\F2\1E\00\00\F3\1E\00\00\00\00\00\00\00\00\00\00\F4\1E\00\00\F5\1E\00\00\00\00\00\00\00\00\00\00\F6\1E\00\00\F7\1E\00\00\00\00\00\00\00\00\00\00\F8\1E\00\00\F9\1E\00\00\00\00\00\00\00\00\00\00\FA\1E\00\00\FB\1E\00\00\00\00\00\00\00\00\00\00\FC\1E\00\00\FD\1E\00\00\00\00\00\00\00\00\00\00\FE\1E\00\00\FF\1E\00\00\00\00\00\00\00\00\00\00\08\1F\00\00\00\1F\00\00\00\00\00\00\00\00\00\00\09\1F\00\00\01\1F\00\00\00\00\00\00\00\00\00\00\0A\1F\00\00\02\1F\00\00\00\00\00\00\00\00\00\00\0B\1F\00\00\03\1F\00\00\00\00\00\00\00\00\00\00\0C\1F\00\00\04\1F\00\00\00\00\00\00\00\00\00\00\0D\1F\00\00\05\1F\00\00\00\00\00\00\00\00\00\00\0E\1F\00\00\06\1F\00\00\00\00\00\00\00\00\00\00\0F\1F\00\00\07\1F\00\00\00\00\00\00\00\00\00\00\18\1F\00\00\10\1F\00\00\00\00\00\00\00\00\00\00\19\1F\00\00\11\1F\00\00\00\00\00\00\00\00\00\00\1A\1F\00\00\12\1F\00\00\00\00\00\00\00\00\00\00\1B\1F\00\00\13\1F\00\00\00\00\00\00\00\00\00\00\1C\1F\00\00\14\1F\00\00\00\00\00\00\00\00\00\00\1D\1F\00\00\15\1F\00\00\00\00\00\00\00\00\00\00(\1F\00\00 \1F\00\00\00\00\00\00\00\00\00\00)\1F\00\00!\1F\00\00\00\00\00\00\00\00\00\00*\1F\00\00\22\1F\00\00\00\00\00\00\00\00\00\00+\1F\00\00#\1F\00\00\00\00\00\00\00\00\00\00,\1F\00\00$\1F\00\00\00\00\00\00\00\00\00\00-\1F\00\00%\1F\00\00\00\00\00\00\00\00\00\00.\1F\00\00&\1F\00\00\00\00\00\00\00\00\00\00/\1F\00\00'\1F\00\00\00\00\00\00\00\00\00\008\1F\00\000\1F\00\00\00\00\00\00\00\00\00\009\1F\00\001\1F\00\00\00\00\00\00\00\00\00\00:\1F\00\002\1F\00\00\00\00\00\00\00\00\00\00;\1F\00\003\1F\00\00\00\00\00\00\00\00\00\00<\1F\00\004\1F\00\00\00\00\00\00\00\00\00\00=\1F\00\005\1F\00\00\00\00\00\00\00\00\00\00>\1F\00\006\1F\00\00\00\00\00\00\00\00\00\00?\1F\00\007\1F\00\00\00\00\00\00\00\00\00\00H\1F\00\00@\1F\00\00\00\00\00\00\00\00\00\00I\1F\00\00A\1F\00\00\00\00\00\00\00\00\00\00J\1F\00\00B\1F\00\00\00\00\00\00\00\00\00\00K\1F\00\00C\1F\00\00\00\00\00\00\00\00\00\00L\1F\00\00D\1F\00\00\00\00\00\00\00\00\00\00M\1F\00\00E\1F\00\00\00\00\00\00\00\00\00\00Y\1F\00\00Q\1F\00\00\00\00\00\00\00\00\00\00[\1F\00\00S\1F\00\00\00\00\00\00\00\00\00\00]\1F\00\00U\1F\00\00\00\00\00\00\00\00\00\00_\1F\00\00W\1F\00\00\00\00\00\00\00\00\00\00h\1F\00\00`\1F\00\00\00\00\00\00\00\00\00\00i\1F\00\00a\1F\00\00\00\00\00\00\00\00\00\00j\1F\00\00b\1F\00\00\00\00\00\00\00\00\00\00k\1F\00\00c\1F\00\00\00\00\00\00\00\00\00\00l\1F\00\00d\1F\00\00\00\00\00\00\00\00\00\00m\1F\00\00e\1F\00\00\00\00\00\00\00\00\00\00n\1F\00\00f\1F\00\00\00\00\00\00\00\00\00\00o\1F\00\00g\1F\00\00\00\00\00\00\00\00\00\00\88\1F\00\00\80\1F\00\00\00\00\00\00\00\00\00\00\89\1F\00\00\81\1F\00\00\00\00\00\00\00\00\00\00\8A\1F\00\00\82\1F\00\00\00\00\00\00\00\00\00\00\8B\1F\00\00\83\1F\00\00\00\00\00\00\00\00\00\00\8C\1F\00\00\84\1F\00\00\00\00\00\00\00\00\00\00\8D\1F\00\00\85\1F\00\00\00\00\00\00\00\00\00\00\8E\1F\00\00\86\1F\00\00\00\00\00\00\00\00\00\00\8F\1F\00\00\87\1F\00\00\00\00\00\00\00\00\00\00\98\1F\00\00\90\1F\00\00\00\00\00\00\00\00\00\00\99\1F\00\00\91\1F\00\00\00\00\00\00\00\00\00\00\9A\1F\00\00\92\1F\00\00\00\00\00\00\00\00\00\00\9B\1F\00\00\93\1F\00\00\00\00\00\00\00\00\00\00\9C\1F\00\00\94\1F\00\00\00\00\00\00\00\00\00\00\9D\1F\00\00\95\1F\00\00\00\00\00\00\00\00\00\00\9E\1F\00\00\96\1F\00\00\00\00\00\00\00\00\00\00\9F\1F\00\00\97\1F\00\00\00\00\00\00\00\00\00\00\A8\1F\00\00\A0\1F\00\00\00\00\00\00\00\00\00\00\A9\1F\00\00\A1\1F\00\00\00\00\00\00\00\00\00\00\AA\1F\00\00\A2\1F\00\00\00\00\00\00\00\00\00\00\AB\1F\00\00\A3\1F\00\00\00\00\00\00\00\00\00\00\AC\1F\00\00\A4\1F\00\00\00\00\00\00\00\00\00\00\AD\1F\00\00\A5\1F\00\00\00\00\00\00\00\00\00\00\AE\1F\00\00\A6\1F\00\00\00\00\00\00\00\00\00\00\AF\1F\00\00\A7\1F\00\00\00\00\00\00\00\00\00\00\B8\1F\00\00\B0\1F\00\00\00\00\00\00\00\00\00\00\B9\1F\00\00\B1\1F\00\00\00\00\00\00\00\00\00\00\BA\1F\00\00p\1F\00\00\00\00\00\00\00\00\00\00\BB\1F\00\00q\1F\00\00\00\00\00\00\00\00\00\00\BC\1F\00\00\B3\1F\00\00\00\00\00\00\00\00\00\00\C8\1F\00\00r\1F\00\00\00\00\00\00\00\00\00\00\C9\1F\00\00s\1F\00\00\00\00\00\00\00\00\00\00\CA\1F\00\00t\1F\00\00\00\00\00\00\00\00\00\00\CB\1F\00\00u\1F\00\00\00\00\00\00\00\00\00\00\CC\1F\00\00\C3\1F\00\00\00\00\00\00\00\00\00\00\D8\1F\00\00\D0\1F\00\00\00\00\00\00\00\00\00\00\D9\1F\00\00\D1\1F\00\00\00\00\00\00\00\00\00\00\DA\1F\00\00v\1F\00\00\00\00\00\00\00\00\00\00\DB\1F\00\00w\1F\00\00\00\00\00\00\00\00\00\00\E8\1F\00\00\E0\1F\00\00\00\00\00\00\00\00\00\00\E9\1F\00\00\E1\1F\00\00\00\00\00\00\00\00\00\00\EA\1F\00\00z\1F\00\00\00\00\00\00\00\00\00\00\EB\1F\00\00{\1F\00\00\00\00\00\00\00\00\00\00\EC\1F\00\00\E5\1F\00\00\00\00\00\00\00\00\00\00\F8\1F\00\00x\1F\00\00\00\00\00\00\00\00\00\00\F9\1F\00\00y\1F\00\00\00\00\00\00\00\00\00\00\FA\1F\00\00|\1F\00\00\00\00\00\00\00\00\00\00\FB\1F\00\00}\1F\00\00\00\00\00\00\00\00\00\00\FC\1F\00\00\F3\1F\00\00\00\00\00\00\00\00\00\00&!\00\00\C9\03\00\00\00\00\00\00\00\00\00\00*!\00\00k\00\00\00\00\00\00\00\00\00\00\00+!\00\00\E5\00\00\00\00\00\00\00\00\00\00\002!\00\00N!\00\00\00\00\00\00\00\00\00\00`!\00\00p!\00\00\00\00\00\00\00\00\00\00a!\00\00q!\00\00\00\00\00\00\00\00\00\00b!\00\00r!\00\00\00\00\00\00\00\00\00\00c!\00\00s!\00\00\00\00\00\00\00\00\00\00d!\00\00t!\00\00\00\00\00\00\00\00\00\00e!\00\00u!\00\00\00\00\00\00\00\00\00\00f!\00\00v!\00\00\00\00\00\00\00\00\00\00g!\00\00w!\00\00\00\00\00\00\00\00\00\00h!\00\00x!\00\00\00\00\00\00\00\00\00\00i!\00\00y!\00\00\00\00\00\00\00\00\00\00j!\00\00z!\00\00\00\00\00\00\00\00\00\00k!\00\00{!\00\00\00\00\00\00\00\00\00\00l!\00\00|!\00\00\00\00\00\00\00\00\00\00m!\00\00}!\00\00\00\00\00\00\00\00\00\00n!\00\00~!\00\00\00\00\00\00\00\00\00\00o!\00\00\7F!\00\00\00\00\00\00\00\00\00\00\83!\00\00\84!\00\00\00\00\00\00\00\00\00\00\B6$\00\00\D0$\00\00\00\00\00\00\00\00\00\00\B7$\00\00\D1$\00\00\00\00\00\00\00\00\00\00\B8$\00\00\D2$\00\00\00\00\00\00\00\00\00\00\B9$\00\00\D3$\00\00\00\00\00\00\00\00\00\00\BA$\00\00\D4$\00\00\00\00\00\00\00\00\00\00\BB$\00\00\D5$\00\00\00\00\00\00\00\00\00\00\BC$\00\00\D6$\00\00\00\00\00\00\00\00\00\00\BD$\00\00\D7$\00\00\00\00\00\00\00\00\00\00\BE$\00\00\D8$\00\00\00\00\00\00\00\00\00\00\BF$\00\00\D9$\00\00\00\00\00\00\00\00\00\00\C0$\00\00\DA$\00\00\00\00\00\00\00\00\00\00\C1$\00\00\DB$\00\00\00\00\00\00\00\00\00\00\C2$\00\00\DC$\00\00\00\00\00\00\00\00\00\00\C3$\00\00\DD$\00\00\00\00\00\00\00\00\00\00\C4$\00\00\DE$\00\00\00\00\00\00\00\00\00\00\C5$\00\00\DF$\00\00\00\00\00\00\00\00\00\00\C6$\00\00\E0$\00\00\00\00\00\00\00\00\00\00\C7$\00\00\E1$\00\00\00\00\00\00\00\00\00\00\C8$\00\00\E2$\00\00\00\00\00\00\00\00\00\00\C9$\00\00\E3$\00\00\00\00\00\00\00\00\00\00\CA$\00\00\E4$\00\00\00\00\00\00\00\00\00\00\CB$\00\00\E5$\00\00\00\00\00\00\00\00\00\00\CC$\00\00\E6$\00\00\00\00\00\00\00\00\00\00\CD$\00\00\E7$\00\00\00\00\00\00\00\00\00\00\CE$\00\00\E8$\00\00\00\00\00\00\00\00\00\00\CF$\00\00\E9$\00\00\00\00\00\00\00\00\00\00\00,\00\000,\00\00\00\00\00\00\00\00\00\00\01,\00\001,\00\00\00\00\00\00\00\00\00\00\02,\00\002,\00\00\00\00\00\00\00\00\00\00\03,\00\003,\00\00\00\00\00\00\00\00\00\00\04,\00\004,\00\00\00\00\00\00\00\00\00\00\05,\00\005,\00\00\00\00\00\00\00\00\00\00\06,\00\006,\00\00\00\00\00\00\00\00\00\00\07,\00\007,\00\00\00\00\00\00\00\00\00\00\08,\00\008,\00\00\00\00\00\00\00\00\00\00\09,\00\009,\00\00\00\00\00\00\00\00\00\00\0A,\00\00:,\00\00\00\00\00\00\00\00\00\00\0B,\00\00;,\00\00\00\00\00\00\00\00\00\00\0C,\00\00<,\00\00\00\00\00\00\00\00\00\00\0D,\00\00=,\00\00\00\00\00\00\00\00\00\00\0E,\00\00>,\00\00\00\00\00\00\00\00\00\00\0F,\00\00?,\00\00\00\00\00\00\00\00\00\00\10,\00\00@,\00\00\00\00\00\00\00\00\00\00\11,\00\00A,\00\00\00\00\00\00\00\00\00\00\12,\00\00B,\00\00\00\00\00\00\00\00\00\00\13,\00\00C,\00\00\00\00\00\00\00\00\00\00\14,\00\00D,\00\00\00\00\00\00\00\00\00\00\15,\00\00E,\00\00\00\00\00\00\00\00\00\00\16,\00\00F,\00\00\00\00\00\00\00\00\00\00\17,\00\00G,\00\00\00\00\00\00\00\00\00\00\18,\00\00H,\00\00\00\00\00\00\00\00\00\00\19,\00\00I,\00\00\00\00\00\00\00\00\00\00\1A,\00\00J,\00\00\00\00\00\00\00\00\00\00\1B,\00\00K,\00\00\00\00\00\00\00\00\00\00\1C,\00\00L,\00\00\00\00\00\00\00\00\00\00\1D,\00\00M,\00\00\00\00\00\00\00\00\00\00\1E,\00\00N,\00\00\00\00\00\00\00\00\00\00\1F,\00\00O,\00\00\00\00\00\00\00\00\00\00 ,\00\00P,\00\00\00\00\00\00\00\00\00\00!,\00\00Q,\00\00\00\00\00\00\00\00\00\00\22,\00\00R,\00\00\00\00\00\00\00\00\00\00#,\00\00S,\00\00\00\00\00\00\00\00\00\00$,\00\00T,\00\00\00\00\00\00\00\00\00\00%,\00\00U,\00\00\00\00\00\00\00\00\00\00&,\00\00V,\00\00\00\00\00\00\00\00\00\00',\00\00W,\00\00\00\00\00\00\00\00\00\00(,\00\00X,\00\00\00\00\00\00\00\00\00\00),\00\00Y,\00\00\00\00\00\00\00\00\00\00*,\00\00Z,\00\00\00\00\00\00\00\00\00\00+,\00\00[,\00\00\00\00\00\00\00\00\00\00,,\00\00\\,\00\00\00\00\00\00\00\00\00\00-,\00\00],\00\00\00\00\00\00\00\00\00\00.,\00\00^,\00\00\00\00\00\00\00\00\00\00`,\00\00a,\00\00\00\00\00\00\00\00\00\00b,\00\00k\02\00\00\00\00\00\00\00\00\00\00c,\00\00}\1D\00\00\00\00\00\00\00\00\00\00d,\00\00}\02\00\00\00\00\00\00\00\00\00\00g,\00\00h,\00\00\00\00\00\00\00\00\00\00i,\00\00j,\00\00\00\00\00\00\00\00\00\00k,\00\00l,\00\00\00\00\00\00\00\00\00\00m,\00\00Q\02\00\00\00\00\00\00\00\00\00\00n,\00\00q\02\00\00\00\00\00\00\00\00\00\00o,\00\00P\02\00\00\00\00\00\00\00\00\00\00p,\00\00R\02\00\00\00\00\00\00\00\00\00\00r,\00\00s,\00\00\00\00\00\00\00\00\00\00u,\00\00v,\00\00\00\00\00\00\00\00\00\00~,\00\00?\02\00\00\00\00\00\00\00\00\00\00\7F,\00\00@\02\00\00\00\00\00\00\00\00\00\00\80,\00\00\81,\00\00\00\00\00\00\00\00\00\00\82,\00\00\83,\00\00\00\00\00\00\00\00\00\00\84,\00\00\85,\00\00\00\00\00\00\00\00\00\00\86,\00\00\87,\00\00\00\00\00\00\00\00\00\00\88,\00\00\89,\00\00\00\00\00\00\00\00\00\00\8A,\00\00\8B,\00\00\00\00\00\00\00\00\00\00\8C,\00\00\8D,\00\00\00\00\00\00\00\00\00\00\8E,\00\00\8F,\00\00\00\00\00\00\00\00\00\00\90,\00\00\91,\00\00\00\00\00\00\00\00\00\00\92,\00\00\93,\00\00\00\00\00\00\00\00\00\00\94,\00\00\95,\00\00\00\00\00\00\00\00\00\00\96,\00\00\97,\00\00\00\00\00\00\00\00\00\00\98,\00\00\99,\00\00\00\00\00\00\00\00\00\00\9A,\00\00\9B,\00\00\00\00\00\00\00\00\00\00\9C,\00\00\9D,\00\00\00\00\00\00\00\00\00\00\9E,\00\00\9F,\00\00\00\00\00\00\00\00\00\00\A0,\00\00\A1,\00\00\00\00\00\00\00\00\00\00\A2,\00\00\A3,\00\00\00\00\00\00\00\00\00\00\A4,\00\00\A5,\00\00\00\00\00\00\00\00\00\00\A6,\00\00\A7,\00\00\00\00\00\00\00\00\00\00\A8,\00\00\A9,\00\00\00\00\00\00\00\00\00\00\AA,\00\00\AB,\00\00\00\00\00\00\00\00\00\00\AC,\00\00\AD,\00\00\00\00\00\00\00\00\00\00\AE,\00\00\AF,\00\00\00\00\00\00\00\00\00\00\B0,\00\00\B1,\00\00\00\00\00\00\00\00\00\00\B2,\00\00\B3,\00\00\00\00\00\00\00\00\00\00\B4,\00\00\B5,\00\00\00\00\00\00\00\00\00\00\B6,\00\00\B7,\00\00\00\00\00\00\00\00\00\00\B8,\00\00\B9,\00\00\00\00\00\00\00\00\00\00\BA,\00\00\BB,\00\00\00\00\00\00\00\00\00\00\BC,\00\00\BD,\00\00\00\00\00\00\00\00\00\00\BE,\00\00\BF,\00\00\00\00\00\00\00\00\00\00\C0,\00\00\C1,\00\00\00\00\00\00\00\00\00\00\C2,\00\00\C3,\00\00\00\00\00\00\00\00\00\00\C4,\00\00\C5,\00\00\00\00\00\00\00\00\00\00\C6,\00\00\C7,\00\00\00\00\00\00\00\00\00\00\C8,\00\00\C9,\00\00\00\00\00\00\00\00\00\00\CA,\00\00\CB,\00\00\00\00\00\00\00\00\00\00\CC,\00\00\CD,\00\00\00\00\00\00\00\00\00\00\CE,\00\00\CF,\00\00\00\00\00\00\00\00\00\00\D0,\00\00\D1,\00\00\00\00\00\00\00\00\00\00\D2,\00\00\D3,\00\00\00\00\00\00\00\00\00\00\D4,\00\00\D5,\00\00\00\00\00\00\00\00\00\00\D6,\00\00\D7,\00\00\00\00\00\00\00\00\00\00\D8,\00\00\D9,\00\00\00\00\00\00\00\00\00\00\DA,\00\00\DB,\00\00\00\00\00\00\00\00\00\00\DC,\00\00\DD,\00\00\00\00\00\00\00\00\00\00\DE,\00\00\DF,\00\00\00\00\00\00\00\00\00\00\E0,\00\00\E1,\00\00\00\00\00\00\00\00\00\00\E2,\00\00\E3,\00\00\00\00\00\00\00\00\00\00\EB,\00\00\EC,\00\00\00\00\00\00\00\00\00\00\ED,\00\00\EE,\00\00\00\00\00\00\00\00\00\00\F2,\00\00\F3,\00\00\00\00\00\00\00\00\00\00@\A6\00\00A\A6\00\00\00\00\00\00\00\00\00\00B\A6\00\00C\A6\00\00\00\00\00\00\00\00\00\00D\A6\00\00E\A6\00\00\00\00\00\00\00\00\00\00F\A6\00\00G\A6\00\00\00\00\00\00\00\00\00\00H\A6\00\00I\A6\00\00\00\00\00\00\00\00\00\00J\A6\00\00K\A6\00\00\00\00\00\00\00\00\00\00L\A6\00\00M\A6\00\00\00\00\00\00\00\00\00\00N\A6\00\00O\A6\00\00\00\00\00\00\00\00\00\00P\A6\00\00Q\A6\00\00\00\00\00\00\00\00\00\00R\A6\00\00S\A6\00\00\00\00\00\00\00\00\00\00T\A6\00\00U\A6\00\00\00\00\00\00\00\00\00\00V\A6\00\00W\A6\00\00\00\00\00\00\00\00\00\00X\A6\00\00Y\A6\00\00\00\00\00\00\00\00\00\00Z\A6\00\00[\A6\00\00\00\00\00\00\00\00\00\00\\\A6\00\00]\A6\00\00\00\00\00\00\00\00\00\00^\A6\00\00_\A6\00\00\00\00\00\00\00\00\00\00`\A6\00\00a\A6\00\00\00\00\00\00\00\00\00\00b\A6\00\00c\A6\00\00\00\00\00\00\00\00\00\00d\A6\00\00e\A6\00\00\00\00\00\00\00\00\00\00f\A6\00\00g\A6\00\00\00\00\00\00\00\00\00\00h\A6\00\00i\A6\00\00\00\00\00\00\00\00\00\00j\A6\00\00k\A6\00\00\00\00\00\00\00\00\00\00l\A6\00\00m\A6\00\00\00\00\00\00\00\00\00\00\80\A6\00\00\81\A6\00\00\00\00\00\00\00\00\00\00\82\A6\00\00\83\A6\00\00\00\00\00\00\00\00\00\00\84\A6\00\00\85\A6\00\00\00\00\00\00\00\00\00\00\86\A6\00\00\87\A6\00\00\00\00\00\00\00\00\00\00\88\A6\00\00\89\A6\00\00\00\00\00\00\00\00\00\00\8A\A6\00\00\8B\A6\00\00\00\00\00\00\00\00\00\00\8C\A6\00\00\8D\A6\00\00\00\00\00\00\00\00\00\00\8E\A6\00\00\8F\A6\00\00\00\00\00\00\00\00\00\00\90\A6\00\00\91\A6\00\00\00\00\00\00\00\00\00\00\92\A6\00\00\93\A6\00\00\00\00\00\00\00\00\00\00\94\A6\00\00\95\A6\00\00\00\00\00\00\00\00\00\00\96\A6\00\00\97\A6\00\00\00\00\00\00\00\00\00\00\98\A6\00\00\99\A6\00\00\00\00\00\00\00\00\00\00\9A\A6\00\00\9B\A6\00\00\00\00\00\00\00\00\00\00\22\A7\00\00#\A7\00\00\00\00\00\00\00\00\00\00$\A7\00\00%\A7\00\00\00\00\00\00\00\00\00\00&\A7\00\00'\A7\00\00\00\00\00\00\00\00\00\00(\A7\00\00)\A7\00\00\00\00\00\00\00\00\00\00*\A7\00\00+\A7\00\00\00\00\00\00\00\00\00\00,\A7\00\00-\A7\00\00\00\00\00\00\00\00\00\00.\A7\00\00/\A7\00\00\00\00\00\00\00\00\00\002\A7\00\003\A7\00\00\00\00\00\00\00\00\00\004\A7\00\005\A7\00\00\00\00\00\00\00\00\00\006\A7\00\007\A7\00\00\00\00\00\00\00\00\00\008\A7\00\009\A7\00\00\00\00\00\00\00\00\00\00:\A7\00\00;\A7\00\00\00\00\00\00\00\00\00\00<\A7\00\00=\A7\00\00\00\00\00\00\00\00\00\00>\A7\00\00?\A7\00\00\00\00\00\00\00\00\00\00@\A7\00\00A\A7\00\00\00\00\00\00\00\00\00\00B\A7\00\00C\A7\00\00\00\00\00\00\00\00\00\00D\A7\00\00E\A7\00\00\00\00\00\00\00\00\00\00F\A7\00\00G\A7\00\00\00\00\00\00\00\00\00\00H\A7\00\00I\A7\00\00\00\00\00\00\00\00\00\00J\A7\00\00K\A7\00\00\00\00\00\00\00\00\00\00L\A7\00\00M\A7\00\00\00\00\00\00\00\00\00\00N\A7\00\00O\A7\00\00\00\00\00\00\00\00\00\00P\A7\00\00Q\A7\00\00\00\00\00\00\00\00\00\00R\A7\00\00S\A7\00\00\00\00\00\00\00\00\00\00T\A7\00\00U\A7\00\00\00\00\00\00\00\00\00\00V\A7\00\00W\A7\00\00\00\00\00\00\00\00\00\00X\A7\00\00Y\A7\00\00\00\00\00\00\00\00\00\00Z\A7\00\00[\A7\00\00\00\00\00\00\00\00\00\00\\\A7\00\00]\A7\00\00\00\00\00\00\00\00\00\00^\A7\00\00_\A7\00\00\00\00\00\00\00\00\00\00`\A7\00\00a\A7\00\00\00\00\00\00\00\00\00\00b\A7\00\00c\A7\00\00\00\00\00\00\00\00\00\00d\A7\00\00e\A7\00\00\00\00\00\00\00\00\00\00f\A7\00\00g\A7\00\00\00\00\00\00\00\00\00\00h\A7\00\00i\A7\00\00\00\00\00\00\00\00\00\00j\A7\00\00k\A7\00\00\00\00\00\00\00\00\00\00l\A7\00\00m\A7\00\00\00\00\00\00\00\00\00\00n\A7\00\00o\A7\00\00\00\00\00\00\00\00\00\00y\A7\00\00z\A7\00\00\00\00\00\00\00\00\00\00{\A7\00\00|\A7\00\00\00\00\00\00\00\00\00\00}\A7\00\00y\1D\00\00\00\00\00\00\00\00\00\00~\A7\00\00\7F\A7\00\00\00\00\00\00\00\00\00\00\80\A7\00\00\81\A7\00\00\00\00\00\00\00\00\00\00\82\A7\00\00\83\A7\00\00\00\00\00\00\00\00\00\00\84\A7\00\00\85\A7\00\00\00\00\00\00\00\00\00\00\86\A7\00\00\87\A7\00\00\00\00\00\00\00\00\00\00\8B\A7\00\00\8C\A7\00\00\00\00\00\00\00\00\00\00\8D\A7\00\00e\02\00\00\00\00\00\00\00\00\00\00\90\A7\00\00\91\A7\00\00\00\00\00\00\00\00\00\00\92\A7\00\00\93\A7\00\00\00\00\00\00\00\00\00\00\96\A7\00\00\97\A7\00\00\00\00\00\00\00\00\00\00\98\A7\00\00\99\A7\00\00\00\00\00\00\00\00\00\00\9A\A7\00\00\9B\A7\00\00\00\00\00\00\00\00\00\00\9C\A7\00\00\9D\A7\00\00\00\00\00\00\00\00\00\00\9E\A7\00\00\9F\A7\00\00\00\00\00\00\00\00\00\00\A0\A7\00\00\A1\A7\00\00\00\00\00\00\00\00\00\00\A2\A7\00\00\A3\A7\00\00\00\00\00\00\00\00\00\00\A4\A7\00\00\A5\A7\00\00\00\00\00\00\00\00\00\00\A6\A7\00\00\A7\A7\00\00\00\00\00\00\00\00\00\00\A8\A7\00\00\A9\A7\00\00\00\00\00\00\00\00\00\00\AA\A7\00\00f\02\00\00\00\00\00\00\00\00\00\00\AB\A7\00\00\\\02\00\00\00\00\00\00\00\00\00\00\AC\A7\00\00a\02\00\00\00\00\00\00\00\00\00\00\AD\A7\00\00l\02\00\00\00\00\00\00\00\00\00\00\AE\A7\00\00j\02\00\00\00\00\00\00\00\00\00\00\B0\A7\00\00\9E\02\00\00\00\00\00\00\00\00\00\00\B1\A7\00\00\87\02\00\00\00\00\00\00\00\00\00\00\B2\A7\00\00\9D\02\00\00\00\00\00\00\00\00\00\00\B3\A7\00\00S\AB\00\00\00\00\00\00\00\00\00\00\B4\A7\00\00\B5\A7\00\00\00\00\00\00\00\00\00\00\B6\A7\00\00\B7\A7\00\00\00\00\00\00\00\00\00\00\B8\A7\00\00\B9\A7\00\00\00\00\00\00\00\00\00\00\BA\A7\00\00\BB\A7\00\00\00\00\00\00\00\00\00\00\BC\A7\00\00\BD\A7\00\00\00\00\00\00\00\00\00\00\BE\A7\00\00\BF\A7\00\00\00\00\00\00\00\00\00\00\C2\A7\00\00\C3\A7\00\00\00\00\00\00\00\00\00\00\C4\A7\00\00\94\A7\00\00\00\00\00\00\00\00\00\00\C5\A7\00\00\82\02\00\00\00\00\00\00\00\00\00\00\C6\A7\00\00\8E\1D\00\00\00\00\00\00\00\00\00\00\C7\A7\00\00\C8\A7\00\00\00\00\00\00\00\00\00\00\C9\A7\00\00\CA\A7\00\00\00\00\00\00\00\00\00\00\F5\A7\00\00\F6\A7\00\00\00\00\00\00\00\00\00\00!\FF\00\00A\FF\00\00\00\00\00\00\00\00\00\00\22\FF\00\00B\FF\00\00\00\00\00\00\00\00\00\00#\FF\00\00C\FF\00\00\00\00\00\00\00\00\00\00$\FF\00\00D\FF\00\00\00\00\00\00\00\00\00\00%\FF\00\00E\FF\00\00\00\00\00\00\00\00\00\00&\FF\00\00F\FF\00\00\00\00\00\00\00\00\00\00'\FF\00\00G\FF\00\00\00\00\00\00\00\00\00\00(\FF\00\00H\FF\00\00\00\00\00\00\00\00\00\00)\FF\00\00I\FF\00\00\00\00\00\00\00\00\00\00*\FF\00\00J\FF\00\00\00\00\00\00\00\00\00\00+\FF\00\00K\FF\00\00\00\00\00\00\00\00\00\00,\FF\00\00L\FF\00\00\00\00\00\00\00\00\00\00-\FF\00\00M\FF\00\00\00\00\00\00\00\00\00\00.\FF\00\00N\FF\00\00\00\00\00\00\00\00\00\00/\FF\00\00O\FF\00\00\00\00\00\00\00\00\00\000\FF\00\00P\FF\00\00\00\00\00\00\00\00\00\001\FF\00\00Q\FF\00\00\00\00\00\00\00\00\00\002\FF\00\00R\FF\00\00\00\00\00\00\00\00\00\003\FF\00\00S\FF\00\00\00\00\00\00\00\00\00\004\FF\00\00T\FF\00\00\00\00\00\00\00\00\00\005\FF\00\00U\FF\00\00\00\00\00\00\00\00\00\006\FF\00\00V\FF\00\00\00\00\00\00\00\00\00\007\FF\00\00W\FF\00\00\00\00\00\00\00\00\00\008\FF\00\00X\FF\00\00\00\00\00\00\00\00\00\009\FF\00\00Y\FF\00\00\00\00\00\00\00\00\00\00:\FF\00\00Z\FF\00\00\00\00\00\00\00\00\00\00\00\04\01\00(\04\01\00\00\00\00\00\00\00\00\00\01\04\01\00)\04\01\00\00\00\00\00\00\00\00\00\02\04\01\00*\04\01\00\00\00\00\00\00\00\00\00\03\04\01\00+\04\01\00\00\00\00\00\00\00\00\00\04\04\01\00,\04\01\00\00\00\00\00\00\00\00\00\05\04\01\00-\04\01\00\00\00\00\00\00\00\00\00\06\04\01\00.\04\01\00\00\00\00\00\00\00\00\00\07\04\01\00/\04\01\00\00\00\00\00\00\00\00\00\08\04\01\000\04\01\00\00\00\00\00\00\00\00\00\09\04\01\001\04\01\00\00\00\00\00\00\00\00\00\0A\04\01\002\04\01\00\00\00\00\00\00\00\00\00\0B\04\01\003\04\01\00\00\00\00\00\00\00\00\00\0C\04\01\004\04\01\00\00\00\00\00\00\00\00\00\0D\04\01\005\04\01\00\00\00\00\00\00\00\00\00\0E\04\01\006\04\01\00\00\00\00\00\00\00\00\00\0F\04\01\007\04\01\00\00\00\00\00\00\00\00\00\10\04\01\008\04\01\00\00\00\00\00\00\00\00\00\11\04\01\009\04\01\00\00\00\00\00\00\00\00\00\12\04\01\00:\04\01\00\00\00\00\00\00\00\00\00\13\04\01\00;\04\01\00\00\00\00\00\00\00\00\00\14\04\01\00<\04\01\00\00\00\00\00\00\00\00\00\15\04\01\00=\04\01\00\00\00\00\00\00\00\00\00\16\04\01\00>\04\01\00\00\00\00\00\00\00\00\00\17\04\01\00?\04\01\00\00\00\00\00\00\00\00\00\18\04\01\00@\04\01\00\00\00\00\00\00\00\00\00\19\04\01\00A\04\01\00\00\00\00\00\00\00\00\00\1A\04\01\00B\04\01\00\00\00\00\00\00\00\00\00\1B\04\01\00C\04\01\00\00\00\00\00\00\00\00\00\1C\04\01\00D\04\01\00\00\00\00\00\00\00\00\00\1D\04\01\00E\04\01\00\00\00\00\00\00\00\00\00\1E\04\01\00F\04\01\00\00\00\00\00\00\00\00\00\1F\04\01\00G\04\01\00\00\00\00\00\00\00\00\00 \04\01\00H\04\01\00\00\00\00\00\00\00\00\00!\04\01\00I\04\01\00\00\00\00\00\00\00\00\00\22\04\01\00J\04\01\00\00\00\00\00\00\00\00\00#\04\01\00K\04\01\00\00\00\00\00\00\00\00\00$\04\01\00L\04\01\00\00\00\00\00\00\00\00\00%\04\01\00M\04\01\00\00\00\00\00\00\00\00\00&\04\01\00N\04\01\00\00\00\00\00\00\00\00\00'\04\01\00O\04\01\00\00\00\00\00\00\00\00\00\B0\04\01\00\D8\04\01\00\00\00\00\00\00\00\00\00\B1\04\01\00\D9\04\01\00\00\00\00\00\00\00\00\00\B2\04\01\00\DA\04\01\00\00\00\00\00\00\00\00\00\B3\04\01\00\DB\04\01\00\00\00\00\00\00\00\00\00\B4\04\01\00\DC\04\01\00\00\00\00\00\00\00\00\00\B5\04\01\00\DD\04\01\00\00\00\00\00\00\00\00\00\B6\04\01\00\DE\04\01\00\00\00\00\00\00\00\00\00\B7\04\01\00\DF\04\01\00\00\00\00\00\00\00\00\00\B8\04\01\00\E0\04\01\00\00\00\00\00\00\00\00\00\B9\04\01\00\E1\04\01\00\00\00\00\00\00\00\00\00\BA\04\01\00\E2\04\01\00\00\00\00\00\00\00\00\00\BB\04\01\00\E3\04\01\00\00\00\00\00\00\00\00\00\BC\04\01\00\E4\04\01\00\00\00\00\00\00\00\00\00\BD\04\01\00\E5\04\01\00\00\00\00\00\00\00\00\00\BE\04\01\00\E6\04\01\00\00\00\00\00\00\00\00\00\BF\04\01\00\E7\04\01\00\00\00\00\00\00\00\00\00\C0\04\01\00\E8\04\01\00\00\00\00\00\00\00\00\00\C1\04\01\00\E9\04\01\00\00\00\00\00\00\00\00\00\C2\04\01\00\EA\04\01\00\00\00\00\00\00\00\00\00\C3\04\01\00\EB\04\01\00\00\00\00\00\00\00\00\00\C4\04\01\00\EC\04\01\00\00\00\00\00\00\00\00\00\C5\04\01\00\ED\04\01\00\00\00\00\00\00\00\00\00\C6\04\01\00\EE\04\01\00\00\00\00\00\00\00\00\00\C7\04\01\00\EF\04\01\00\00\00\00\00\00\00\00\00\C8\04\01\00\F0\04\01\00\00\00\00\00\00\00\00\00\C9\04\01\00\F1\04\01\00\00\00\00\00\00\00\00\00\CA\04\01\00\F2\04\01\00\00\00\00\00\00\00\00\00\CB\04\01\00\F3\04\01\00\00\00\00\00\00\00\00\00\CC\04\01\00\F4\04\01\00\00\00\00\00\00\00\00\00\CD\04\01\00\F5\04\01\00\00\00\00\00\00\00\00\00\CE\04\01\00\F6\04\01\00\00\00\00\00\00\00\00\00\CF\04\01\00\F7\04\01\00\00\00\00\00\00\00\00\00\D0\04\01\00\F8\04\01\00\00\00\00\00\00\00\00\00\D1\04\01\00\F9\04\01\00\00\00\00\00\00\00\00\00\D2\04\01\00\FA\04\01\00\00\00\00\00\00\00\00\00\D3\04\01\00\FB\04\01\00\00\00\00\00\00\00\00\00\80\0C\01\00\C0\0C\01\00\00\00\00\00\00\00\00\00\81\0C\01\00\C1\0C\01\00\00\00\00\00\00\00\00\00\82\0C\01\00\C2\0C\01\00\00\00\00\00\00\00\00\00\83\0C\01\00\C3\0C\01\00\00\00\00\00\00\00\00\00\84\0C\01\00\C4\0C\01\00\00\00\00\00\00\00\00\00\85\0C\01\00\C5\0C\01\00\00\00\00\00\00\00\00\00\86\0C\01\00\C6\0C\01\00\00\00\00\00\00\00\00\00\87\0C\01\00\C7\0C\01\00\00\00\00\00\00\00\00\00\88\0C\01\00\C8\0C\01\00\00\00\00\00\00\00\00\00\89\0C\01\00\C9\0C\01\00\00\00\00\00\00\00\00\00\8A\0C\01\00\CA\0C\01\00\00\00\00\00\00\00\00\00\8B\0C\01\00\CB\0C\01\00\00\00\00\00\00\00\00\00\8C\0C\01\00\CC\0C\01\00\00\00\00\00\00\00\00\00\8D\0C\01\00\CD\0C\01\00\00\00\00\00\00\00\00\00\8E\0C\01\00\CE\0C\01\00\00\00\00\00\00\00\00\00\8F\0C\01\00\CF\0C\01\00\00\00\00\00\00\00\00\00\90\0C\01\00\D0\0C\01\00\00\00\00\00\00\00\00\00\91\0C\01\00\D1\0C\01\00\00\00\00\00\00\00\00\00\92\0C\01\00\D2\0C\01\00\00\00\00\00\00\00\00\00\93\0C\01\00\D3\0C\01\00\00\00\00\00\00\00\00\00\94\0C\01\00\D4\0C\01\00\00\00\00\00\00\00\00\00\95\0C\01\00\D5\0C\01\00\00\00\00\00\00\00\00\00\96\0C\01\00\D6\0C\01\00\00\00\00\00\00\00\00\00\97\0C\01\00\D7\0C\01\00\00\00\00\00\00\00\00\00\98\0C\01\00\D8\0C\01\00\00\00\00\00\00\00\00\00\99\0C\01\00\D9\0C\01\00\00\00\00\00\00\00\00\00\9A\0C\01\00\DA\0C\01\00\00\00\00\00\00\00\00\00\9B\0C\01\00\DB\0C\01\00\00\00\00\00\00\00\00\00\9C\0C\01\00\DC\0C\01\00\00\00\00\00\00\00\00\00\9D\0C\01\00\DD\0C\01\00\00\00\00\00\00\00\00\00\9E\0C\01\00\DE\0C\01\00\00\00\00\00\00\00\00\00\9F\0C\01\00\DF\0C\01\00\00\00\00\00\00\00\00\00\A0\0C\01\00\E0\0C\01\00\00\00\00\00\00\00\00\00\A1\0C\01\00\E1\0C\01\00\00\00\00\00\00\00\00\00\A2\0C\01\00\E2\0C\01\00\00\00\00\00\00\00\00\00\A3\0C\01\00\E3\0C\01\00\00\00\00\00\00\00\00\00\A4\0C\01\00\E4\0C\01\00\00\00\00\00\00\00\00\00\A5\0C\01\00\E5\0C\01\00\00\00\00\00\00\00\00\00\A6\0C\01\00\E6\0C\01\00\00\00\00\00\00\00\00\00\A7\0C\01\00\E7\0C\01\00\00\00\00\00\00\00\00\00\A8\0C\01\00\E8\0C\01\00\00\00\00\00\00\00\00\00\A9\0C\01\00\E9\0C\01\00\00\00\00\00\00\00\00\00\AA\0C\01\00\EA\0C\01\00\00\00\00\00\00\00\00\00\AB\0C\01\00\EB\0C\01\00\00\00\00\00\00\00\00\00\AC\0C\01\00\EC\0C\01\00\00\00\00\00\00\00\00\00\AD\0C\01\00\ED\0C\01\00\00\00\00\00\00\00\00\00\AE\0C\01\00\EE\0C\01\00\00\00\00\00\00\00\00\00\AF\0C\01\00\EF\0C\01\00\00\00\00\00\00\00\00\00\B0\0C\01\00\F0\0C\01\00\00\00\00\00\00\00\00\00\B1\0C\01\00\F1\0C\01\00\00\00\00\00\00\00\00\00\B2\0C\01\00\F2\0C\01\00\00\00\00\00\00\00\00\00\A0\18\01\00\C0\18\01\00\00\00\00\00\00\00\00\00\A1\18\01\00\C1\18\01\00\00\00\00\00\00\00\00\00\A2\18\01\00\C2\18\01\00\00\00\00\00\00\00\00\00\A3\18\01\00\C3\18\01\00\00\00\00\00\00\00\00\00\A4\18\01\00\C4\18\01\00\00\00\00\00\00\00\00\00\A5\18\01\00\C5\18\01\00\00\00\00\00\00\00\00\00\A6\18\01\00\C6\18\01\00\00\00\00\00\00\00\00\00\A7\18\01\00\C7\18\01\00\00\00\00\00\00\00\00\00\A8\18\01\00\C8\18\01\00\00\00\00\00\00\00\00\00\A9\18\01\00\C9\18\01\00\00\00\00\00\00\00\00\00\AA\18\01\00\CA\18\01\00\00\00\00\00\00\00\00\00\AB\18\01\00\CB\18\01\00\00\00\00\00\00\00\00\00\AC\18\01\00\CC\18\01\00\00\00\00\00\00\00\00\00\AD\18\01\00\CD\18\01\00\00\00\00\00\00\00\00\00\AE\18\01\00\CE\18\01\00\00\00\00\00\00\00\00\00\AF\18\01\00\CF\18\01\00\00\00\00\00\00\00\00\00\B0\18\01\00\D0\18\01\00\00\00\00\00\00\00\00\00\B1\18\01\00\D1\18\01\00\00\00\00\00\00\00\00\00\B2\18\01\00\D2\18\01\00\00\00\00\00\00\00\00\00\B3\18\01\00\D3\18\01\00\00\00\00\00\00\00\00\00\B4\18\01\00\D4\18\01\00\00\00\00\00\00\00\00\00\B5\18\01\00\D5\18\01\00\00\00\00\00\00\00\00\00\B6\18\01\00\D6\18\01\00\00\00\00\00\00\00\00\00\B7\18\01\00\D7\18\01\00\00\00\00\00\00\00\00\00\B8\18\01\00\D8\18\01\00\00\00\00\00\00\00\00\00\B9\18\01\00\D9\18\01\00\00\00\00\00\00\00\00\00\BA\18\01\00\DA\18\01\00\00\00\00\00\00\00\00\00\BB\18\01\00\DB\18\01\00\00\00\00\00\00\00\00\00\BC\18\01\00\DC\18\01\00\00\00\00\00\00\00\00\00\BD\18\01\00\DD\18\01\00\00\00\00\00\00\00\00\00\BE\18\01\00\DE\18\01\00\00\00\00\00\00\00\00\00\BF\18\01\00\DF\18\01\00\00\00\00\00\00\00\00\00@n\01\00`n\01\00\00\00\00\00\00\00\00\00An\01\00an\01\00\00\00\00\00\00\00\00\00Bn\01\00bn\01\00\00\00\00\00\00\00\00\00Cn\01\00cn\01\00\00\00\00\00\00\00\00\00Dn\01\00dn\01\00\00\00\00\00\00\00\00\00En\01\00en\01\00\00\00\00\00\00\00\00\00Fn\01\00fn\01\00\00\00\00\00\00\00\00\00Gn\01\00gn\01\00\00\00\00\00\00\00\00\00Hn\01\00hn\01\00\00\00\00\00\00\00\00\00In\01\00in\01\00\00\00\00\00\00\00\00\00Jn\01\00jn\01\00\00\00\00\00\00\00\00\00Kn\01\00kn\01\00\00\00\00\00\00\00\00\00Ln\01\00ln\01\00\00\00\00\00\00\00\00\00Mn\01\00mn\01\00\00\00\00\00\00\00\00\00Nn\01\00nn\01\00\00\00\00\00\00\00\00\00On\01\00on\01\00\00\00\00\00\00\00\00\00Pn\01\00pn\01\00\00\00\00\00\00\00\00\00Qn\01\00qn\01\00\00\00\00\00\00\00\00\00Rn\01\00rn\01\00\00\00\00\00\00\00\00\00Sn\01\00sn\01\00\00\00\00\00\00\00\00\00Tn\01\00tn\01\00\00\00\00\00\00\00\00\00Un\01\00un\01\00\00\00\00\00\00\00\00\00Vn\01\00vn\01\00\00\00\00\00\00\00\00\00Wn\01\00wn\01\00\00\00\00\00\00\00\00\00Xn\01\00xn\01\00\00\00\00\00\00\00\00\00Yn\01\00yn\01\00\00\00\00\00\00\00\00\00Zn\01\00zn\01\00\00\00\00\00\00\00\00\00[n\01\00{n\01\00\00\00\00\00\00\00\00\00\\n\01\00|n\01\00\00\00\00\00\00\00\00\00]n\01\00}n\01\00\00\00\00\00\00\00\00\00^n\01\00~n\01\00\00\00\00\00\00\00\00\00_n\01\00\7Fn\01\00\00\00\00\00\00\00\00\00\00\E9\01\00\22\E9\01\00\00\00\00\00\00\00\00\00\01\E9\01\00#\E9\01\00\00\00\00\00\00\00\00\00\02\E9\01\00$\E9\01\00\00\00\00\00\00\00\00\00\03\E9\01\00%\E9\01\00\00\00\00\00\00\00\00\00\04\E9\01\00&\E9\01\00\00\00\00\00\00\00\00\00\05\E9\01\00'\E9\01\00\00\00\00\00\00\00\00\00\06\E9\01\00(\E9\01\00\00\00\00\00\00\00\00\00\07\E9\01\00)\E9\01\00\00\00\00\00\00\00\00\00\08\E9\01\00*\E9\01\00\00\00\00\00\00\00\00\00\09\E9\01\00+\E9\01\00\00\00\00\00\00\00\00\00\0A\E9\01\00,\E9\01\00\00\00\00\00\00\00\00\00\0B\E9\01\00-\E9\01\00\00\00\00\00\00\00\00\00\0C\E9\01\00.\E9\01\00\00\00\00\00\00\00\00\00\0D\E9\01\00/\E9\01\00\00\00\00\00\00\00\00\00\0E\E9\01\000\E9\01\00\00\00\00\00\00\00\00\00\0F\E9\01\001\E9\01\00\00\00\00\00\00\00\00\00\10\E9\01\002\E9\01\00\00\00\00\00\00\00\00\00\11\E9\01\003\E9\01\00\00\00\00\00\00\00\00\00\12\E9\01\004\E9\01\00\00\00\00\00\00\00\00\00\13\E9\01\005\E9\01\00\00\00\00\00\00\00\00\00\14\E9\01\006\E9\01\00\00\00\00\00\00\00\00\00\15\E9\01\007\E9\01\00\00\00\00\00\00\00\00\00\16\E9\01\008\E9\01\00\00\00\00\00\00\00\00\00\17\E9\01\009\E9\01\00\00\00\00\00\00\00\00\00\18\E9\01\00:\E9\01\00\00\00\00\00\00\00\00\00\19\E9\01\00;\E9\01\00\00\00\00\00\00\00\00\00\1A\E9\01\00<\E9\01\00\00\00\00\00\00\00\00\00\1B\E9\01\00=\E9\01\00\00\00\00\00\00\00\00\00\1C\E9\01\00>\E9\01\00\00\00\00\00\00\00\00\00\1D\E9\01\00?\E9\01\00\00\00\00\00\00\00\00\00\1E\E9\01\00@\E9\01\00\00\00\00\00\00\00\00\00\1F\E9\01\00A\E9\01\00\00\00\00\00\00\00\00\00 \E9\01\00B\E9\01\00\00\00\00\00\00\00\00\00!\E9\01\00C\E9\01\00\00\00\00\00\00\00\00\00" }>, align 1
@alloc6697 = private unnamed_addr constant <{ [23760 x i8] }> <{ [23760 x i8] c"a\00\00\00A\00\00\00\00\00\00\00\00\00\00\00b\00\00\00B\00\00\00\00\00\00\00\00\00\00\00c\00\00\00C\00\00\00\00\00\00\00\00\00\00\00d\00\00\00D\00\00\00\00\00\00\00\00\00\00\00e\00\00\00E\00\00\00\00\00\00\00\00\00\00\00f\00\00\00F\00\00\00\00\00\00\00\00\00\00\00g\00\00\00G\00\00\00\00\00\00\00\00\00\00\00h\00\00\00H\00\00\00\00\00\00\00\00\00\00\00i\00\00\00I\00\00\00\00\00\00\00\00\00\00\00j\00\00\00J\00\00\00\00\00\00\00\00\00\00\00k\00\00\00K\00\00\00\00\00\00\00\00\00\00\00l\00\00\00L\00\00\00\00\00\00\00\00\00\00\00m\00\00\00M\00\00\00\00\00\00\00\00\00\00\00n\00\00\00N\00\00\00\00\00\00\00\00\00\00\00o\00\00\00O\00\00\00\00\00\00\00\00\00\00\00p\00\00\00P\00\00\00\00\00\00\00\00\00\00\00q\00\00\00Q\00\00\00\00\00\00\00\00\00\00\00r\00\00\00R\00\00\00\00\00\00\00\00\00\00\00s\00\00\00S\00\00\00\00\00\00\00\00\00\00\00t\00\00\00T\00\00\00\00\00\00\00\00\00\00\00u\00\00\00U\00\00\00\00\00\00\00\00\00\00\00v\00\00\00V\00\00\00\00\00\00\00\00\00\00\00w\00\00\00W\00\00\00\00\00\00\00\00\00\00\00x\00\00\00X\00\00\00\00\00\00\00\00\00\00\00y\00\00\00Y\00\00\00\00\00\00\00\00\00\00\00z\00\00\00Z\00\00\00\00\00\00\00\00\00\00\00\B5\00\00\00\9C\03\00\00\00\00\00\00\00\00\00\00\DF\00\00\00S\00\00\00S\00\00\00\00\00\00\00\E0\00\00\00\C0\00\00\00\00\00\00\00\00\00\00\00\E1\00\00\00\C1\00\00\00\00\00\00\00\00\00\00\00\E2\00\00\00\C2\00\00\00\00\00\00\00\00\00\00\00\E3\00\00\00\C3\00\00\00\00\00\00\00\00\00\00\00\E4\00\00\00\C4\00\00\00\00\00\00\00\00\00\00\00\E5\00\00\00\C5\00\00\00\00\00\00\00\00\00\00\00\E6\00\00\00\C6\00\00\00\00\00\00\00\00\00\00\00\E7\00\00\00\C7\00\00\00\00\00\00\00\00\00\00\00\E8\00\00\00\C8\00\00\00\00\00\00\00\00\00\00\00\E9\00\00\00\C9\00\00\00\00\00\00\00\00\00\00\00\EA\00\00\00\CA\00\00\00\00\00\00\00\00\00\00\00\EB\00\00\00\CB\00\00\00\00\00\00\00\00\00\00\00\EC\00\00\00\CC\00\00\00\00\00\00\00\00\00\00\00\ED\00\00\00\CD\00\00\00\00\00\00\00\00\00\00\00\EE\00\00\00\CE\00\00\00\00\00\00\00\00\00\00\00\EF\00\00\00\CF\00\00\00\00\00\00\00\00\00\00\00\F0\00\00\00\D0\00\00\00\00\00\00\00\00\00\00\00\F1\00\00\00\D1\00\00\00\00\00\00\00\00\00\00\00\F2\00\00\00\D2\00\00\00\00\00\00\00\00\00\00\00\F3\00\00\00\D3\00\00\00\00\00\00\00\00\00\00\00\F4\00\00\00\D4\00\00\00\00\00\00\00\00\00\00\00\F5\00\00\00\D5\00\00\00\00\00\00\00\00\00\00\00\F6\00\00\00\D6\00\00\00\00\00\00\00\00\00\00\00\F8\00\00\00\D8\00\00\00\00\00\00\00\00\00\00\00\F9\00\00\00\D9\00\00\00\00\00\00\00\00\00\00\00\FA\00\00\00\DA\00\00\00\00\00\00\00\00\00\00\00\FB\00\00\00\DB\00\00\00\00\00\00\00\00\00\00\00\FC\00\00\00\DC\00\00\00\00\00\00\00\00\00\00\00\FD\00\00\00\DD\00\00\00\00\00\00\00\00\00\00\00\FE\00\00\00\DE\00\00\00\00\00\00\00\00\00\00\00\FF\00\00\00x\01\00\00\00\00\00\00\00\00\00\00\01\01\00\00\00\01\00\00\00\00\00\00\00\00\00\00\03\01\00\00\02\01\00\00\00\00\00\00\00\00\00\00\05\01\00\00\04\01\00\00\00\00\00\00\00\00\00\00\07\01\00\00\06\01\00\00\00\00\00\00\00\00\00\00\09\01\00\00\08\01\00\00\00\00\00\00\00\00\00\00\0B\01\00\00\0A\01\00\00\00\00\00\00\00\00\00\00\0D\01\00\00\0C\01\00\00\00\00\00\00\00\00\00\00\0F\01\00\00\0E\01\00\00\00\00\00\00\00\00\00\00\11\01\00\00\10\01\00\00\00\00\00\00\00\00\00\00\13\01\00\00\12\01\00\00\00\00\00\00\00\00\00\00\15\01\00\00\14\01\00\00\00\00\00\00\00\00\00\00\17\01\00\00\16\01\00\00\00\00\00\00\00\00\00\00\19\01\00\00\18\01\00\00\00\00\00\00\00\00\00\00\1B\01\00\00\1A\01\00\00\00\00\00\00\00\00\00\00\1D\01\00\00\1C\01\00\00\00\00\00\00\00\00\00\00\1F\01\00\00\1E\01\00\00\00\00\00\00\00\00\00\00!\01\00\00 \01\00\00\00\00\00\00\00\00\00\00#\01\00\00\22\01\00\00\00\00\00\00\00\00\00\00%\01\00\00$\01\00\00\00\00\00\00\00\00\00\00'\01\00\00&\01\00\00\00\00\00\00\00\00\00\00)\01\00\00(\01\00\00\00\00\00\00\00\00\00\00+\01\00\00*\01\00\00\00\00\00\00\00\00\00\00-\01\00\00,\01\00\00\00\00\00\00\00\00\00\00/\01\00\00.\01\00\00\00\00\00\00\00\00\00\001\01\00\00I\00\00\00\00\00\00\00\00\00\00\003\01\00\002\01\00\00\00\00\00\00\00\00\00\005\01\00\004\01\00\00\00\00\00\00\00\00\00\007\01\00\006\01\00\00\00\00\00\00\00\00\00\00:\01\00\009\01\00\00\00\00\00\00\00\00\00\00<\01\00\00;\01\00\00\00\00\00\00\00\00\00\00>\01\00\00=\01\00\00\00\00\00\00\00\00\00\00@\01\00\00?\01\00\00\00\00\00\00\00\00\00\00B\01\00\00A\01\00\00\00\00\00\00\00\00\00\00D\01\00\00C\01\00\00\00\00\00\00\00\00\00\00F\01\00\00E\01\00\00\00\00\00\00\00\00\00\00H\01\00\00G\01\00\00\00\00\00\00\00\00\00\00I\01\00\00\BC\02\00\00N\00\00\00\00\00\00\00K\01\00\00J\01\00\00\00\00\00\00\00\00\00\00M\01\00\00L\01\00\00\00\00\00\00\00\00\00\00O\01\00\00N\01\00\00\00\00\00\00\00\00\00\00Q\01\00\00P\01\00\00\00\00\00\00\00\00\00\00S\01\00\00R\01\00\00\00\00\00\00\00\00\00\00U\01\00\00T\01\00\00\00\00\00\00\00\00\00\00W\01\00\00V\01\00\00\00\00\00\00\00\00\00\00Y\01\00\00X\01\00\00\00\00\00\00\00\00\00\00[\01\00\00Z\01\00\00\00\00\00\00\00\00\00\00]\01\00\00\\\01\00\00\00\00\00\00\00\00\00\00_\01\00\00^\01\00\00\00\00\00\00\00\00\00\00a\01\00\00`\01\00\00\00\00\00\00\00\00\00\00c\01\00\00b\01\00\00\00\00\00\00\00\00\00\00e\01\00\00d\01\00\00\00\00\00\00\00\00\00\00g\01\00\00f\01\00\00\00\00\00\00\00\00\00\00i\01\00\00h\01\00\00\00\00\00\00\00\00\00\00k\01\00\00j\01\00\00\00\00\00\00\00\00\00\00m\01\00\00l\01\00\00\00\00\00\00\00\00\00\00o\01\00\00n\01\00\00\00\00\00\00\00\00\00\00q\01\00\00p\01\00\00\00\00\00\00\00\00\00\00s\01\00\00r\01\00\00\00\00\00\00\00\00\00\00u\01\00\00t\01\00\00\00\00\00\00\00\00\00\00w\01\00\00v\01\00\00\00\00\00\00\00\00\00\00z\01\00\00y\01\00\00\00\00\00\00\00\00\00\00|\01\00\00{\01\00\00\00\00\00\00\00\00\00\00~\01\00\00}\01\00\00\00\00\00\00\00\00\00\00\7F\01\00\00S\00\00\00\00\00\00\00\00\00\00\00\80\01\00\00C\02\00\00\00\00\00\00\00\00\00\00\83\01\00\00\82\01\00\00\00\00\00\00\00\00\00\00\85\01\00\00\84\01\00\00\00\00\00\00\00\00\00\00\88\01\00\00\87\01\00\00\00\00\00\00\00\00\00\00\8C\01\00\00\8B\01\00\00\00\00\00\00\00\00\00\00\92\01\00\00\91\01\00\00\00\00\00\00\00\00\00\00\95\01\00\00\F6\01\00\00\00\00\00\00\00\00\00\00\99\01\00\00\98\01\00\00\00\00\00\00\00\00\00\00\9A\01\00\00=\02\00\00\00\00\00\00\00\00\00\00\9E\01\00\00 \02\00\00\00\00\00\00\00\00\00\00\A1\01\00\00\A0\01\00\00\00\00\00\00\00\00\00\00\A3\01\00\00\A2\01\00\00\00\00\00\00\00\00\00\00\A5\01\00\00\A4\01\00\00\00\00\00\00\00\00\00\00\A8\01\00\00\A7\01\00\00\00\00\00\00\00\00\00\00\AD\01\00\00\AC\01\00\00\00\00\00\00\00\00\00\00\B0\01\00\00\AF\01\00\00\00\00\00\00\00\00\00\00\B4\01\00\00\B3\01\00\00\00\00\00\00\00\00\00\00\B6\01\00\00\B5\01\00\00\00\00\00\00\00\00\00\00\B9\01\00\00\B8\01\00\00\00\00\00\00\00\00\00\00\BD\01\00\00\BC\01\00\00\00\00\00\00\00\00\00\00\BF\01\00\00\F7\01\00\00\00\00\00\00\00\00\00\00\C5\01\00\00\C4\01\00\00\00\00\00\00\00\00\00\00\C6\01\00\00\C4\01\00\00\00\00\00\00\00\00\00\00\C8\01\00\00\C7\01\00\00\00\00\00\00\00\00\00\00\C9\01\00\00\C7\01\00\00\00\00\00\00\00\00\00\00\CB\01\00\00\CA\01\00\00\00\00\00\00\00\00\00\00\CC\01\00\00\CA\01\00\00\00\00\00\00\00\00\00\00\CE\01\00\00\CD\01\00\00\00\00\00\00\00\00\00\00\D0\01\00\00\CF\01\00\00\00\00\00\00\00\00\00\00\D2\01\00\00\D1\01\00\00\00\00\00\00\00\00\00\00\D4\01\00\00\D3\01\00\00\00\00\00\00\00\00\00\00\D6\01\00\00\D5\01\00\00\00\00\00\00\00\00\00\00\D8\01\00\00\D7\01\00\00\00\00\00\00\00\00\00\00\DA\01\00\00\D9\01\00\00\00\00\00\00\00\00\00\00\DC\01\00\00\DB\01\00\00\00\00\00\00\00\00\00\00\DD\01\00\00\8E\01\00\00\00\00\00\00\00\00\00\00\DF\01\00\00\DE\01\00\00\00\00\00\00\00\00\00\00\E1\01\00\00\E0\01\00\00\00\00\00\00\00\00\00\00\E3\01\00\00\E2\01\00\00\00\00\00\00\00\00\00\00\E5\01\00\00\E4\01\00\00\00\00\00\00\00\00\00\00\E7\01\00\00\E6\01\00\00\00\00\00\00\00\00\00\00\E9\01\00\00\E8\01\00\00\00\00\00\00\00\00\00\00\EB\01\00\00\EA\01\00\00\00\00\00\00\00\00\00\00\ED\01\00\00\EC\01\00\00\00\00\00\00\00\00\00\00\EF\01\00\00\EE\01\00\00\00\00\00\00\00\00\00\00\F0\01\00\00J\00\00\00\0C\03\00\00\00\00\00\00\F2\01\00\00\F1\01\00\00\00\00\00\00\00\00\00\00\F3\01\00\00\F1\01\00\00\00\00\00\00\00\00\00\00\F5\01\00\00\F4\01\00\00\00\00\00\00\00\00\00\00\F9\01\00\00\F8\01\00\00\00\00\00\00\00\00\00\00\FB\01\00\00\FA\01\00\00\00\00\00\00\00\00\00\00\FD\01\00\00\FC\01\00\00\00\00\00\00\00\00\00\00\FF\01\00\00\FE\01\00\00\00\00\00\00\00\00\00\00\01\02\00\00\00\02\00\00\00\00\00\00\00\00\00\00\03\02\00\00\02\02\00\00\00\00\00\00\00\00\00\00\05\02\00\00\04\02\00\00\00\00\00\00\00\00\00\00\07\02\00\00\06\02\00\00\00\00\00\00\00\00\00\00\09\02\00\00\08\02\00\00\00\00\00\00\00\00\00\00\0B\02\00\00\0A\02\00\00\00\00\00\00\00\00\00\00\0D\02\00\00\0C\02\00\00\00\00\00\00\00\00\00\00\0F\02\00\00\0E\02\00\00\00\00\00\00\00\00\00\00\11\02\00\00\10\02\00\00\00\00\00\00\00\00\00\00\13\02\00\00\12\02\00\00\00\00\00\00\00\00\00\00\15\02\00\00\14\02\00\00\00\00\00\00\00\00\00\00\17\02\00\00\16\02\00\00\00\00\00\00\00\00\00\00\19\02\00\00\18\02\00\00\00\00\00\00\00\00\00\00\1B\02\00\00\1A\02\00\00\00\00\00\00\00\00\00\00\1D\02\00\00\1C\02\00\00\00\00\00\00\00\00\00\00\1F\02\00\00\1E\02\00\00\00\00\00\00\00\00\00\00#\02\00\00\22\02\00\00\00\00\00\00\00\00\00\00%\02\00\00$\02\00\00\00\00\00\00\00\00\00\00'\02\00\00&\02\00\00\00\00\00\00\00\00\00\00)\02\00\00(\02\00\00\00\00\00\00\00\00\00\00+\02\00\00*\02\00\00\00\00\00\00\00\00\00\00-\02\00\00,\02\00\00\00\00\00\00\00\00\00\00/\02\00\00.\02\00\00\00\00\00\00\00\00\00\001\02\00\000\02\00\00\00\00\00\00\00\00\00\003\02\00\002\02\00\00\00\00\00\00\00\00\00\00<\02\00\00;\02\00\00\00\00\00\00\00\00\00\00?\02\00\00~,\00\00\00\00\00\00\00\00\00\00@\02\00\00\7F,\00\00\00\00\00\00\00\00\00\00B\02\00\00A\02\00\00\00\00\00\00\00\00\00\00G\02\00\00F\02\00\00\00\00\00\00\00\00\00\00I\02\00\00H\02\00\00\00\00\00\00\00\00\00\00K\02\00\00J\02\00\00\00\00\00\00\00\00\00\00M\02\00\00L\02\00\00\00\00\00\00\00\00\00\00O\02\00\00N\02\00\00\00\00\00\00\00\00\00\00P\02\00\00o,\00\00\00\00\00\00\00\00\00\00Q\02\00\00m,\00\00\00\00\00\00\00\00\00\00R\02\00\00p,\00\00\00\00\00\00\00\00\00\00S\02\00\00\81\01\00\00\00\00\00\00\00\00\00\00T\02\00\00\86\01\00\00\00\00\00\00\00\00\00\00V\02\00\00\89\01\00\00\00\00\00\00\00\00\00\00W\02\00\00\8A\01\00\00\00\00\00\00\00\00\00\00Y\02\00\00\8F\01\00\00\00\00\00\00\00\00\00\00[\02\00\00\90\01\00\00\00\00\00\00\00\00\00\00\\\02\00\00\AB\A7\00\00\00\00\00\00\00\00\00\00`\02\00\00\93\01\00\00\00\00\00\00\00\00\00\00a\02\00\00\AC\A7\00\00\00\00\00\00\00\00\00\00c\02\00\00\94\01\00\00\00\00\00\00\00\00\00\00e\02\00\00\8D\A7\00\00\00\00\00\00\00\00\00\00f\02\00\00\AA\A7\00\00\00\00\00\00\00\00\00\00h\02\00\00\97\01\00\00\00\00\00\00\00\00\00\00i\02\00\00\96\01\00\00\00\00\00\00\00\00\00\00j\02\00\00\AE\A7\00\00\00\00\00\00\00\00\00\00k\02\00\00b,\00\00\00\00\00\00\00\00\00\00l\02\00\00\AD\A7\00\00\00\00\00\00\00\00\00\00o\02\00\00\9C\01\00\00\00\00\00\00\00\00\00\00q\02\00\00n,\00\00\00\00\00\00\00\00\00\00r\02\00\00\9D\01\00\00\00\00\00\00\00\00\00\00u\02\00\00\9F\01\00\00\00\00\00\00\00\00\00\00}\02\00\00d,\00\00\00\00\00\00\00\00\00\00\80\02\00\00\A6\01\00\00\00\00\00\00\00\00\00\00\82\02\00\00\C5\A7\00\00\00\00\00\00\00\00\00\00\83\02\00\00\A9\01\00\00\00\00\00\00\00\00\00\00\87\02\00\00\B1\A7\00\00\00\00\00\00\00\00\00\00\88\02\00\00\AE\01\00\00\00\00\00\00\00\00\00\00\89\02\00\00D\02\00\00\00\00\00\00\00\00\00\00\8A\02\00\00\B1\01\00\00\00\00\00\00\00\00\00\00\8B\02\00\00\B2\01\00\00\00\00\00\00\00\00\00\00\8C\02\00\00E\02\00\00\00\00\00\00\00\00\00\00\92\02\00\00\B7\01\00\00\00\00\00\00\00\00\00\00\9D\02\00\00\B2\A7\00\00\00\00\00\00\00\00\00\00\9E\02\00\00\B0\A7\00\00\00\00\00\00\00\00\00\00E\03\00\00\99\03\00\00\00\00\00\00\00\00\00\00q\03\00\00p\03\00\00\00\00\00\00\00\00\00\00s\03\00\00r\03\00\00\00\00\00\00\00\00\00\00w\03\00\00v\03\00\00\00\00\00\00\00\00\00\00{\03\00\00\FD\03\00\00\00\00\00\00\00\00\00\00|\03\00\00\FE\03\00\00\00\00\00\00\00\00\00\00}\03\00\00\FF\03\00\00\00\00\00\00\00\00\00\00\90\03\00\00\99\03\00\00\08\03\00\00\01\03\00\00\AC\03\00\00\86\03\00\00\00\00\00\00\00\00\00\00\AD\03\00\00\88\03\00\00\00\00\00\00\00\00\00\00\AE\03\00\00\89\03\00\00\00\00\00\00\00\00\00\00\AF\03\00\00\8A\03\00\00\00\00\00\00\00\00\00\00\B0\03\00\00\A5\03\00\00\08\03\00\00\01\03\00\00\B1\03\00\00\91\03\00\00\00\00\00\00\00\00\00\00\B2\03\00\00\92\03\00\00\00\00\00\00\00\00\00\00\B3\03\00\00\93\03\00\00\00\00\00\00\00\00\00\00\B4\03\00\00\94\03\00\00\00\00\00\00\00\00\00\00\B5\03\00\00\95\03\00\00\00\00\00\00\00\00\00\00\B6\03\00\00\96\03\00\00\00\00\00\00\00\00\00\00\B7\03\00\00\97\03\00\00\00\00\00\00\00\00\00\00\B8\03\00\00\98\03\00\00\00\00\00\00\00\00\00\00\B9\03\00\00\99\03\00\00\00\00\00\00\00\00\00\00\BA\03\00\00\9A\03\00\00\00\00\00\00\00\00\00\00\BB\03\00\00\9B\03\00\00\00\00\00\00\00\00\00\00\BC\03\00\00\9C\03\00\00\00\00\00\00\00\00\00\00\BD\03\00\00\9D\03\00\00\00\00\00\00\00\00\00\00\BE\03\00\00\9E\03\00\00\00\00\00\00\00\00\00\00\BF\03\00\00\9F\03\00\00\00\00\00\00\00\00\00\00\C0\03\00\00\A0\03\00\00\00\00\00\00\00\00\00\00\C1\03\00\00\A1\03\00\00\00\00\00\00\00\00\00\00\C2\03\00\00\A3\03\00\00\00\00\00\00\00\00\00\00\C3\03\00\00\A3\03\00\00\00\00\00\00\00\00\00\00\C4\03\00\00\A4\03\00\00\00\00\00\00\00\00\00\00\C5\03\00\00\A5\03\00\00\00\00\00\00\00\00\00\00\C6\03\00\00\A6\03\00\00\00\00\00\00\00\00\00\00\C7\03\00\00\A7\03\00\00\00\00\00\00\00\00\00\00\C8\03\00\00\A8\03\00\00\00\00\00\00\00\00\00\00\C9\03\00\00\A9\03\00\00\00\00\00\00\00\00\00\00\CA\03\00\00\AA\03\00\00\00\00\00\00\00\00\00\00\CB\03\00\00\AB\03\00\00\00\00\00\00\00\00\00\00\CC\03\00\00\8C\03\00\00\00\00\00\00\00\00\00\00\CD\03\00\00\8E\03\00\00\00\00\00\00\00\00\00\00\CE\03\00\00\8F\03\00\00\00\00\00\00\00\00\00\00\D0\03\00\00\92\03\00\00\00\00\00\00\00\00\00\00\D1\03\00\00\98\03\00\00\00\00\00\00\00\00\00\00\D5\03\00\00\A6\03\00\00\00\00\00\00\00\00\00\00\D6\03\00\00\A0\03\00\00\00\00\00\00\00\00\00\00\D7\03\00\00\CF\03\00\00\00\00\00\00\00\00\00\00\D9\03\00\00\D8\03\00\00\00\00\00\00\00\00\00\00\DB\03\00\00\DA\03\00\00\00\00\00\00\00\00\00\00\DD\03\00\00\DC\03\00\00\00\00\00\00\00\00\00\00\DF\03\00\00\DE\03\00\00\00\00\00\00\00\00\00\00\E1\03\00\00\E0\03\00\00\00\00\00\00\00\00\00\00\E3\03\00\00\E2\03\00\00\00\00\00\00\00\00\00\00\E5\03\00\00\E4\03\00\00\00\00\00\00\00\00\00\00\E7\03\00\00\E6\03\00\00\00\00\00\00\00\00\00\00\E9\03\00\00\E8\03\00\00\00\00\00\00\00\00\00\00\EB\03\00\00\EA\03\00\00\00\00\00\00\00\00\00\00\ED\03\00\00\EC\03\00\00\00\00\00\00\00\00\00\00\EF\03\00\00\EE\03\00\00\00\00\00\00\00\00\00\00\F0\03\00\00\9A\03\00\00\00\00\00\00\00\00\00\00\F1\03\00\00\A1\03\00\00\00\00\00\00\00\00\00\00\F2\03\00\00\F9\03\00\00\00\00\00\00\00\00\00\00\F3\03\00\00\7F\03\00\00\00\00\00\00\00\00\00\00\F5\03\00\00\95\03\00\00\00\00\00\00\00\00\00\00\F8\03\00\00\F7\03\00\00\00\00\00\00\00\00\00\00\FB\03\00\00\FA\03\00\00\00\00\00\00\00\00\00\000\04\00\00\10\04\00\00\00\00\00\00\00\00\00\001\04\00\00\11\04\00\00\00\00\00\00\00\00\00\002\04\00\00\12\04\00\00\00\00\00\00\00\00\00\003\04\00\00\13\04\00\00\00\00\00\00\00\00\00\004\04\00\00\14\04\00\00\00\00\00\00\00\00\00\005\04\00\00\15\04\00\00\00\00\00\00\00\00\00\006\04\00\00\16\04\00\00\00\00\00\00\00\00\00\007\04\00\00\17\04\00\00\00\00\00\00\00\00\00\008\04\00\00\18\04\00\00\00\00\00\00\00\00\00\009\04\00\00\19\04\00\00\00\00\00\00\00\00\00\00:\04\00\00\1A\04\00\00\00\00\00\00\00\00\00\00;\04\00\00\1B\04\00\00\00\00\00\00\00\00\00\00<\04\00\00\1C\04\00\00\00\00\00\00\00\00\00\00=\04\00\00\1D\04\00\00\00\00\00\00\00\00\00\00>\04\00\00\1E\04\00\00\00\00\00\00\00\00\00\00?\04\00\00\1F\04\00\00\00\00\00\00\00\00\00\00@\04\00\00 \04\00\00\00\00\00\00\00\00\00\00A\04\00\00!\04\00\00\00\00\00\00\00\00\00\00B\04\00\00\22\04\00\00\00\00\00\00\00\00\00\00C\04\00\00#\04\00\00\00\00\00\00\00\00\00\00D\04\00\00$\04\00\00\00\00\00\00\00\00\00\00E\04\00\00%\04\00\00\00\00\00\00\00\00\00\00F\04\00\00&\04\00\00\00\00\00\00\00\00\00\00G\04\00\00'\04\00\00\00\00\00\00\00\00\00\00H\04\00\00(\04\00\00\00\00\00\00\00\00\00\00I\04\00\00)\04\00\00\00\00\00\00\00\00\00\00J\04\00\00*\04\00\00\00\00\00\00\00\00\00\00K\04\00\00+\04\00\00\00\00\00\00\00\00\00\00L\04\00\00,\04\00\00\00\00\00\00\00\00\00\00M\04\00\00-\04\00\00\00\00\00\00\00\00\00\00N\04\00\00.\04\00\00\00\00\00\00\00\00\00\00O\04\00\00/\04\00\00\00\00\00\00\00\00\00\00P\04\00\00\00\04\00\00\00\00\00\00\00\00\00\00Q\04\00\00\01\04\00\00\00\00\00\00\00\00\00\00R\04\00\00\02\04\00\00\00\00\00\00\00\00\00\00S\04\00\00\03\04\00\00\00\00\00\00\00\00\00\00T\04\00\00\04\04\00\00\00\00\00\00\00\00\00\00U\04\00\00\05\04\00\00\00\00\00\00\00\00\00\00V\04\00\00\06\04\00\00\00\00\00\00\00\00\00\00W\04\00\00\07\04\00\00\00\00\00\00\00\00\00\00X\04\00\00\08\04\00\00\00\00\00\00\00\00\00\00Y\04\00\00\09\04\00\00\00\00\00\00\00\00\00\00Z\04\00\00\0A\04\00\00\00\00\00\00\00\00\00\00[\04\00\00\0B\04\00\00\00\00\00\00\00\00\00\00\\\04\00\00\0C\04\00\00\00\00\00\00\00\00\00\00]\04\00\00\0D\04\00\00\00\00\00\00\00\00\00\00^\04\00\00\0E\04\00\00\00\00\00\00\00\00\00\00_\04\00\00\0F\04\00\00\00\00\00\00\00\00\00\00a\04\00\00`\04\00\00\00\00\00\00\00\00\00\00c\04\00\00b\04\00\00\00\00\00\00\00\00\00\00e\04\00\00d\04\00\00\00\00\00\00\00\00\00\00g\04\00\00f\04\00\00\00\00\00\00\00\00\00\00i\04\00\00h\04\00\00\00\00\00\00\00\00\00\00k\04\00\00j\04\00\00\00\00\00\00\00\00\00\00m\04\00\00l\04\00\00\00\00\00\00\00\00\00\00o\04\00\00n\04\00\00\00\00\00\00\00\00\00\00q\04\00\00p\04\00\00\00\00\00\00\00\00\00\00s\04\00\00r\04\00\00\00\00\00\00\00\00\00\00u\04\00\00t\04\00\00\00\00\00\00\00\00\00\00w\04\00\00v\04\00\00\00\00\00\00\00\00\00\00y\04\00\00x\04\00\00\00\00\00\00\00\00\00\00{\04\00\00z\04\00\00\00\00\00\00\00\00\00\00}\04\00\00|\04\00\00\00\00\00\00\00\00\00\00\7F\04\00\00~\04\00\00\00\00\00\00\00\00\00\00\81\04\00\00\80\04\00\00\00\00\00\00\00\00\00\00\8B\04\00\00\8A\04\00\00\00\00\00\00\00\00\00\00\8D\04\00\00\8C\04\00\00\00\00\00\00\00\00\00\00\8F\04\00\00\8E\04\00\00\00\00\00\00\00\00\00\00\91\04\00\00\90\04\00\00\00\00\00\00\00\00\00\00\93\04\00\00\92\04\00\00\00\00\00\00\00\00\00\00\95\04\00\00\94\04\00\00\00\00\00\00\00\00\00\00\97\04\00\00\96\04\00\00\00\00\00\00\00\00\00\00\99\04\00\00\98\04\00\00\00\00\00\00\00\00\00\00\9B\04\00\00\9A\04\00\00\00\00\00\00\00\00\00\00\9D\04\00\00\9C\04\00\00\00\00\00\00\00\00\00\00\9F\04\00\00\9E\04\00\00\00\00\00\00\00\00\00\00\A1\04\00\00\A0\04\00\00\00\00\00\00\00\00\00\00\A3\04\00\00\A2\04\00\00\00\00\00\00\00\00\00\00\A5\04\00\00\A4\04\00\00\00\00\00\00\00\00\00\00\A7\04\00\00\A6\04\00\00\00\00\00\00\00\00\00\00\A9\04\00\00\A8\04\00\00\00\00\00\00\00\00\00\00\AB\04\00\00\AA\04\00\00\00\00\00\00\00\00\00\00\AD\04\00\00\AC\04\00\00\00\00\00\00\00\00\00\00\AF\04\00\00\AE\04\00\00\00\00\00\00\00\00\00\00\B1\04\00\00\B0\04\00\00\00\00\00\00\00\00\00\00\B3\04\00\00\B2\04\00\00\00\00\00\00\00\00\00\00\B5\04\00\00\B4\04\00\00\00\00\00\00\00\00\00\00\B7\04\00\00\B6\04\00\00\00\00\00\00\00\00\00\00\B9\04\00\00\B8\04\00\00\00\00\00\00\00\00\00\00\BB\04\00\00\BA\04\00\00\00\00\00\00\00\00\00\00\BD\04\00\00\BC\04\00\00\00\00\00\00\00\00\00\00\BF\04\00\00\BE\04\00\00\00\00\00\00\00\00\00\00\C2\04\00\00\C1\04\00\00\00\00\00\00\00\00\00\00\C4\04\00\00\C3\04\00\00\00\00\00\00\00\00\00\00\C6\04\00\00\C5\04\00\00\00\00\00\00\00\00\00\00\C8\04\00\00\C7\04\00\00\00\00\00\00\00\00\00\00\CA\04\00\00\C9\04\00\00\00\00\00\00\00\00\00\00\CC\04\00\00\CB\04\00\00\00\00\00\00\00\00\00\00\CE\04\00\00\CD\04\00\00\00\00\00\00\00\00\00\00\CF\04\00\00\C0\04\00\00\00\00\00\00\00\00\00\00\D1\04\00\00\D0\04\00\00\00\00\00\00\00\00\00\00\D3\04\00\00\D2\04\00\00\00\00\00\00\00\00\00\00\D5\04\00\00\D4\04\00\00\00\00\00\00\00\00\00\00\D7\04\00\00\D6\04\00\00\00\00\00\00\00\00\00\00\D9\04\00\00\D8\04\00\00\00\00\00\00\00\00\00\00\DB\04\00\00\DA\04\00\00\00\00\00\00\00\00\00\00\DD\04\00\00\DC\04\00\00\00\00\00\00\00\00\00\00\DF\04\00\00\DE\04\00\00\00\00\00\00\00\00\00\00\E1\04\00\00\E0\04\00\00\00\00\00\00\00\00\00\00\E3\04\00\00\E2\04\00\00\00\00\00\00\00\00\00\00\E5\04\00\00\E4\04\00\00\00\00\00\00\00\00\00\00\E7\04\00\00\E6\04\00\00\00\00\00\00\00\00\00\00\E9\04\00\00\E8\04\00\00\00\00\00\00\00\00\00\00\EB\04\00\00\EA\04\00\00\00\00\00\00\00\00\00\00\ED\04\00\00\EC\04\00\00\00\00\00\00\00\00\00\00\EF\04\00\00\EE\04\00\00\00\00\00\00\00\00\00\00\F1\04\00\00\F0\04\00\00\00\00\00\00\00\00\00\00\F3\04\00\00\F2\04\00\00\00\00\00\00\00\00\00\00\F5\04\00\00\F4\04\00\00\00\00\00\00\00\00\00\00\F7\04\00\00\F6\04\00\00\00\00\00\00\00\00\00\00\F9\04\00\00\F8\04\00\00\00\00\00\00\00\00\00\00\FB\04\00\00\FA\04\00\00\00\00\00\00\00\00\00\00\FD\04\00\00\FC\04\00\00\00\00\00\00\00\00\00\00\FF\04\00\00\FE\04\00\00\00\00\00\00\00\00\00\00\01\05\00\00\00\05\00\00\00\00\00\00\00\00\00\00\03\05\00\00\02\05\00\00\00\00\00\00\00\00\00\00\05\05\00\00\04\05\00\00\00\00\00\00\00\00\00\00\07\05\00\00\06\05\00\00\00\00\00\00\00\00\00\00\09\05\00\00\08\05\00\00\00\00\00\00\00\00\00\00\0B\05\00\00\0A\05\00\00\00\00\00\00\00\00\00\00\0D\05\00\00\0C\05\00\00\00\00\00\00\00\00\00\00\0F\05\00\00\0E\05\00\00\00\00\00\00\00\00\00\00\11\05\00\00\10\05\00\00\00\00\00\00\00\00\00\00\13\05\00\00\12\05\00\00\00\00\00\00\00\00\00\00\15\05\00\00\14\05\00\00\00\00\00\00\00\00\00\00\17\05\00\00\16\05\00\00\00\00\00\00\00\00\00\00\19\05\00\00\18\05\00\00\00\00\00\00\00\00\00\00\1B\05\00\00\1A\05\00\00\00\00\00\00\00\00\00\00\1D\05\00\00\1C\05\00\00\00\00\00\00\00\00\00\00\1F\05\00\00\1E\05\00\00\00\00\00\00\00\00\00\00!\05\00\00 \05\00\00\00\00\00\00\00\00\00\00#\05\00\00\22\05\00\00\00\00\00\00\00\00\00\00%\05\00\00$\05\00\00\00\00\00\00\00\00\00\00'\05\00\00&\05\00\00\00\00\00\00\00\00\00\00)\05\00\00(\05\00\00\00\00\00\00\00\00\00\00+\05\00\00*\05\00\00\00\00\00\00\00\00\00\00-\05\00\00,\05\00\00\00\00\00\00\00\00\00\00/\05\00\00.\05\00\00\00\00\00\00\00\00\00\00a\05\00\001\05\00\00\00\00\00\00\00\00\00\00b\05\00\002\05\00\00\00\00\00\00\00\00\00\00c\05\00\003\05\00\00\00\00\00\00\00\00\00\00d\05\00\004\05\00\00\00\00\00\00\00\00\00\00e\05\00\005\05\00\00\00\00\00\00\00\00\00\00f\05\00\006\05\00\00\00\00\00\00\00\00\00\00g\05\00\007\05\00\00\00\00\00\00\00\00\00\00h\05\00\008\05\00\00\00\00\00\00\00\00\00\00i\05\00\009\05\00\00\00\00\00\00\00\00\00\00j\05\00\00:\05\00\00\00\00\00\00\00\00\00\00k\05\00\00;\05\00\00\00\00\00\00\00\00\00\00l\05\00\00<\05\00\00\00\00\00\00\00\00\00\00m\05\00\00=\05\00\00\00\00\00\00\00\00\00\00n\05\00\00>\05\00\00\00\00\00\00\00\00\00\00o\05\00\00?\05\00\00\00\00\00\00\00\00\00\00p\05\00\00@\05\00\00\00\00\00\00\00\00\00\00q\05\00\00A\05\00\00\00\00\00\00\00\00\00\00r\05\00\00B\05\00\00\00\00\00\00\00\00\00\00s\05\00\00C\05\00\00\00\00\00\00\00\00\00\00t\05\00\00D\05\00\00\00\00\00\00\00\00\00\00u\05\00\00E\05\00\00\00\00\00\00\00\00\00\00v\05\00\00F\05\00\00\00\00\00\00\00\00\00\00w\05\00\00G\05\00\00\00\00\00\00\00\00\00\00x\05\00\00H\05\00\00\00\00\00\00\00\00\00\00y\05\00\00I\05\00\00\00\00\00\00\00\00\00\00z\05\00\00J\05\00\00\00\00\00\00\00\00\00\00{\05\00\00K\05\00\00\00\00\00\00\00\00\00\00|\05\00\00L\05\00\00\00\00\00\00\00\00\00\00}\05\00\00M\05\00\00\00\00\00\00\00\00\00\00~\05\00\00N\05\00\00\00\00\00\00\00\00\00\00\7F\05\00\00O\05\00\00\00\00\00\00\00\00\00\00\80\05\00\00P\05\00\00\00\00\00\00\00\00\00\00\81\05\00\00Q\05\00\00\00\00\00\00\00\00\00\00\82\05\00\00R\05\00\00\00\00\00\00\00\00\00\00\83\05\00\00S\05\00\00\00\00\00\00\00\00\00\00\84\05\00\00T\05\00\00\00\00\00\00\00\00\00\00\85\05\00\00U\05\00\00\00\00\00\00\00\00\00\00\86\05\00\00V\05\00\00\00\00\00\00\00\00\00\00\87\05\00\005\05\00\00R\05\00\00\00\00\00\00\D0\10\00\00\90\1C\00\00\00\00\00\00\00\00\00\00\D1\10\00\00\91\1C\00\00\00\00\00\00\00\00\00\00\D2\10\00\00\92\1C\00\00\00\00\00\00\00\00\00\00\D3\10\00\00\93\1C\00\00\00\00\00\00\00\00\00\00\D4\10\00\00\94\1C\00\00\00\00\00\00\00\00\00\00\D5\10\00\00\95\1C\00\00\00\00\00\00\00\00\00\00\D6\10\00\00\96\1C\00\00\00\00\00\00\00\00\00\00\D7\10\00\00\97\1C\00\00\00\00\00\00\00\00\00\00\D8\10\00\00\98\1C\00\00\00\00\00\00\00\00\00\00\D9\10\00\00\99\1C\00\00\00\00\00\00\00\00\00\00\DA\10\00\00\9A\1C\00\00\00\00\00\00\00\00\00\00\DB\10\00\00\9B\1C\00\00\00\00\00\00\00\00\00\00\DC\10\00\00\9C\1C\00\00\00\00\00\00\00\00\00\00\DD\10\00\00\9D\1C\00\00\00\00\00\00\00\00\00\00\DE\10\00\00\9E\1C\00\00\00\00\00\00\00\00\00\00\DF\10\00\00\9F\1C\00\00\00\00\00\00\00\00\00\00\E0\10\00\00\A0\1C\00\00\00\00\00\00\00\00\00\00\E1\10\00\00\A1\1C\00\00\00\00\00\00\00\00\00\00\E2\10\00\00\A2\1C\00\00\00\00\00\00\00\00\00\00\E3\10\00\00\A3\1C\00\00\00\00\00\00\00\00\00\00\E4\10\00\00\A4\1C\00\00\00\00\00\00\00\00\00\00\E5\10\00\00\A5\1C\00\00\00\00\00\00\00\00\00\00\E6\10\00\00\A6\1C\00\00\00\00\00\00\00\00\00\00\E7\10\00\00\A7\1C\00\00\00\00\00\00\00\00\00\00\E8\10\00\00\A8\1C\00\00\00\00\00\00\00\00\00\00\E9\10\00\00\A9\1C\00\00\00\00\00\00\00\00\00\00\EA\10\00\00\AA\1C\00\00\00\00\00\00\00\00\00\00\EB\10\00\00\AB\1C\00\00\00\00\00\00\00\00\00\00\EC\10\00\00\AC\1C\00\00\00\00\00\00\00\00\00\00\ED\10\00\00\AD\1C\00\00\00\00\00\00\00\00\00\00\EE\10\00\00\AE\1C\00\00\00\00\00\00\00\00\00\00\EF\10\00\00\AF\1C\00\00\00\00\00\00\00\00\00\00\F0\10\00\00\B0\1C\00\00\00\00\00\00\00\00\00\00\F1\10\00\00\B1\1C\00\00\00\00\00\00\00\00\00\00\F2\10\00\00\B2\1C\00\00\00\00\00\00\00\00\00\00\F3\10\00\00\B3\1C\00\00\00\00\00\00\00\00\00\00\F4\10\00\00\B4\1C\00\00\00\00\00\00\00\00\00\00\F5\10\00\00\B5\1C\00\00\00\00\00\00\00\00\00\00\F6\10\00\00\B6\1C\00\00\00\00\00\00\00\00\00\00\F7\10\00\00\B7\1C\00\00\00\00\00\00\00\00\00\00\F8\10\00\00\B8\1C\00\00\00\00\00\00\00\00\00\00\F9\10\00\00\B9\1C\00\00\00\00\00\00\00\00\00\00\FA\10\00\00\BA\1C\00\00\00\00\00\00\00\00\00\00\FD\10\00\00\BD\1C\00\00\00\00\00\00\00\00\00\00\FE\10\00\00\BE\1C\00\00\00\00\00\00\00\00\00\00\FF\10\00\00\BF\1C\00\00\00\00\00\00\00\00\00\00\F8\13\00\00\F0\13\00\00\00\00\00\00\00\00\00\00\F9\13\00\00\F1\13\00\00\00\00\00\00\00\00\00\00\FA\13\00\00\F2\13\00\00\00\00\00\00\00\00\00\00\FB\13\00\00\F3\13\00\00\00\00\00\00\00\00\00\00\FC\13\00\00\F4\13\00\00\00\00\00\00\00\00\00\00\FD\13\00\00\F5\13\00\00\00\00\00\00\00\00\00\00\80\1C\00\00\12\04\00\00\00\00\00\00\00\00\00\00\81\1C\00\00\14\04\00\00\00\00\00\00\00\00\00\00\82\1C\00\00\1E\04\00\00\00\00\00\00\00\00\00\00\83\1C\00\00!\04\00\00\00\00\00\00\00\00\00\00\84\1C\00\00\22\04\00\00\00\00\00\00\00\00\00\00\85\1C\00\00\22\04\00\00\00\00\00\00\00\00\00\00\86\1C\00\00*\04\00\00\00\00\00\00\00\00\00\00\87\1C\00\00b\04\00\00\00\00\00\00\00\00\00\00\88\1C\00\00J\A6\00\00\00\00\00\00\00\00\00\00y\1D\00\00}\A7\00\00\00\00\00\00\00\00\00\00}\1D\00\00c,\00\00\00\00\00\00\00\00\00\00\8E\1D\00\00\C6\A7\00\00\00\00\00\00\00\00\00\00\01\1E\00\00\00\1E\00\00\00\00\00\00\00\00\00\00\03\1E\00\00\02\1E\00\00\00\00\00\00\00\00\00\00\05\1E\00\00\04\1E\00\00\00\00\00\00\00\00\00\00\07\1E\00\00\06\1E\00\00\00\00\00\00\00\00\00\00\09\1E\00\00\08\1E\00\00\00\00\00\00\00\00\00\00\0B\1E\00\00\0A\1E\00\00\00\00\00\00\00\00\00\00\0D\1E\00\00\0C\1E\00\00\00\00\00\00\00\00\00\00\0F\1E\00\00\0E\1E\00\00\00\00\00\00\00\00\00\00\11\1E\00\00\10\1E\00\00\00\00\00\00\00\00\00\00\13\1E\00\00\12\1E\00\00\00\00\00\00\00\00\00\00\15\1E\00\00\14\1E\00\00\00\00\00\00\00\00\00\00\17\1E\00\00\16\1E\00\00\00\00\00\00\00\00\00\00\19\1E\00\00\18\1E\00\00\00\00\00\00\00\00\00\00\1B\1E\00\00\1A\1E\00\00\00\00\00\00\00\00\00\00\1D\1E\00\00\1C\1E\00\00\00\00\00\00\00\00\00\00\1F\1E\00\00\1E\1E\00\00\00\00\00\00\00\00\00\00!\1E\00\00 \1E\00\00\00\00\00\00\00\00\00\00#\1E\00\00\22\1E\00\00\00\00\00\00\00\00\00\00%\1E\00\00$\1E\00\00\00\00\00\00\00\00\00\00'\1E\00\00&\1E\00\00\00\00\00\00\00\00\00\00)\1E\00\00(\1E\00\00\00\00\00\00\00\00\00\00+\1E\00\00*\1E\00\00\00\00\00\00\00\00\00\00-\1E\00\00,\1E\00\00\00\00\00\00\00\00\00\00/\1E\00\00.\1E\00\00\00\00\00\00\00\00\00\001\1E\00\000\1E\00\00\00\00\00\00\00\00\00\003\1E\00\002\1E\00\00\00\00\00\00\00\00\00\005\1E\00\004\1E\00\00\00\00\00\00\00\00\00\007\1E\00\006\1E\00\00\00\00\00\00\00\00\00\009\1E\00\008\1E\00\00\00\00\00\00\00\00\00\00;\1E\00\00:\1E\00\00\00\00\00\00\00\00\00\00=\1E\00\00<\1E\00\00\00\00\00\00\00\00\00\00?\1E\00\00>\1E\00\00\00\00\00\00\00\00\00\00A\1E\00\00@\1E\00\00\00\00\00\00\00\00\00\00C\1E\00\00B\1E\00\00\00\00\00\00\00\00\00\00E\1E\00\00D\1E\00\00\00\00\00\00\00\00\00\00G\1E\00\00F\1E\00\00\00\00\00\00\00\00\00\00I\1E\00\00H\1E\00\00\00\00\00\00\00\00\00\00K\1E\00\00J\1E\00\00\00\00\00\00\00\00\00\00M\1E\00\00L\1E\00\00\00\00\00\00\00\00\00\00O\1E\00\00N\1E\00\00\00\00\00\00\00\00\00\00Q\1E\00\00P\1E\00\00\00\00\00\00\00\00\00\00S\1E\00\00R\1E\00\00\00\00\00\00\00\00\00\00U\1E\00\00T\1E\00\00\00\00\00\00\00\00\00\00W\1E\00\00V\1E\00\00\00\00\00\00\00\00\00\00Y\1E\00\00X\1E\00\00\00\00\00\00\00\00\00\00[\1E\00\00Z\1E\00\00\00\00\00\00\00\00\00\00]\1E\00\00\\\1E\00\00\00\00\00\00\00\00\00\00_\1E\00\00^\1E\00\00\00\00\00\00\00\00\00\00a\1E\00\00`\1E\00\00\00\00\00\00\00\00\00\00c\1E\00\00b\1E\00\00\00\00\00\00\00\00\00\00e\1E\00\00d\1E\00\00\00\00\00\00\00\00\00\00g\1E\00\00f\1E\00\00\00\00\00\00\00\00\00\00i\1E\00\00h\1E\00\00\00\00\00\00\00\00\00\00k\1E\00\00j\1E\00\00\00\00\00\00\00\00\00\00m\1E\00\00l\1E\00\00\00\00\00\00\00\00\00\00o\1E\00\00n\1E\00\00\00\00\00\00\00\00\00\00q\1E\00\00p\1E\00\00\00\00\00\00\00\00\00\00s\1E\00\00r\1E\00\00\00\00\00\00\00\00\00\00u\1E\00\00t\1E\00\00\00\00\00\00\00\00\00\00w\1E\00\00v\1E\00\00\00\00\00\00\00\00\00\00y\1E\00\00x\1E\00\00\00\00\00\00\00\00\00\00{\1E\00\00z\1E\00\00\00\00\00\00\00\00\00\00}\1E\00\00|\1E\00\00\00\00\00\00\00\00\00\00\7F\1E\00\00~\1E\00\00\00\00\00\00\00\00\00\00\81\1E\00\00\80\1E\00\00\00\00\00\00\00\00\00\00\83\1E\00\00\82\1E\00\00\00\00\00\00\00\00\00\00\85\1E\00\00\84\1E\00\00\00\00\00\00\00\00\00\00\87\1E\00\00\86\1E\00\00\00\00\00\00\00\00\00\00\89\1E\00\00\88\1E\00\00\00\00\00\00\00\00\00\00\8B\1E\00\00\8A\1E\00\00\00\00\00\00\00\00\00\00\8D\1E\00\00\8C\1E\00\00\00\00\00\00\00\00\00\00\8F\1E\00\00\8E\1E\00\00\00\00\00\00\00\00\00\00\91\1E\00\00\90\1E\00\00\00\00\00\00\00\00\00\00\93\1E\00\00\92\1E\00\00\00\00\00\00\00\00\00\00\95\1E\00\00\94\1E\00\00\00\00\00\00\00\00\00\00\96\1E\00\00H\00\00\001\03\00\00\00\00\00\00\97\1E\00\00T\00\00\00\08\03\00\00\00\00\00\00\98\1E\00\00W\00\00\00\0A\03\00\00\00\00\00\00\99\1E\00\00Y\00\00\00\0A\03\00\00\00\00\00\00\9A\1E\00\00A\00\00\00\BE\02\00\00\00\00\00\00\9B\1E\00\00`\1E\00\00\00\00\00\00\00\00\00\00\A1\1E\00\00\A0\1E\00\00\00\00\00\00\00\00\00\00\A3\1E\00\00\A2\1E\00\00\00\00\00\00\00\00\00\00\A5\1E\00\00\A4\1E\00\00\00\00\00\00\00\00\00\00\A7\1E\00\00\A6\1E\00\00\00\00\00\00\00\00\00\00\A9\1E\00\00\A8\1E\00\00\00\00\00\00\00\00\00\00\AB\1E\00\00\AA\1E\00\00\00\00\00\00\00\00\00\00\AD\1E\00\00\AC\1E\00\00\00\00\00\00\00\00\00\00\AF\1E\00\00\AE\1E\00\00\00\00\00\00\00\00\00\00\B1\1E\00\00\B0\1E\00\00\00\00\00\00\00\00\00\00\B3\1E\00\00\B2\1E\00\00\00\00\00\00\00\00\00\00\B5\1E\00\00\B4\1E\00\00\00\00\00\00\00\00\00\00\B7\1E\00\00\B6\1E\00\00\00\00\00\00\00\00\00\00\B9\1E\00\00\B8\1E\00\00\00\00\00\00\00\00\00\00\BB\1E\00\00\BA\1E\00\00\00\00\00\00\00\00\00\00\BD\1E\00\00\BC\1E\00\00\00\00\00\00\00\00\00\00\BF\1E\00\00\BE\1E\00\00\00\00\00\00\00\00\00\00\C1\1E\00\00\C0\1E\00\00\00\00\00\00\00\00\00\00\C3\1E\00\00\C2\1E\00\00\00\00\00\00\00\00\00\00\C5\1E\00\00\C4\1E\00\00\00\00\00\00\00\00\00\00\C7\1E\00\00\C6\1E\00\00\00\00\00\00\00\00\00\00\C9\1E\00\00\C8\1E\00\00\00\00\00\00\00\00\00\00\CB\1E\00\00\CA\1E\00\00\00\00\00\00\00\00\00\00\CD\1E\00\00\CC\1E\00\00\00\00\00\00\00\00\00\00\CF\1E\00\00\CE\1E\00\00\00\00\00\00\00\00\00\00\D1\1E\00\00\D0\1E\00\00\00\00\00\00\00\00\00\00\D3\1E\00\00\D2\1E\00\00\00\00\00\00\00\00\00\00\D5\1E\00\00\D4\1E\00\00\00\00\00\00\00\00\00\00\D7\1E\00\00\D6\1E\00\00\00\00\00\00\00\00\00\00\D9\1E\00\00\D8\1E\00\00\00\00\00\00\00\00\00\00\DB\1E\00\00\DA\1E\00\00\00\00\00\00\00\00\00\00\DD\1E\00\00\DC\1E\00\00\00\00\00\00\00\00\00\00\DF\1E\00\00\DE\1E\00\00\00\00\00\00\00\00\00\00\E1\1E\00\00\E0\1E\00\00\00\00\00\00\00\00\00\00\E3\1E\00\00\E2\1E\00\00\00\00\00\00\00\00\00\00\E5\1E\00\00\E4\1E\00\00\00\00\00\00\00\00\00\00\E7\1E\00\00\E6\1E\00\00\00\00\00\00\00\00\00\00\E9\1E\00\00\E8\1E\00\00\00\00\00\00\00\00\00\00\EB\1E\00\00\EA\1E\00\00\00\00\00\00\00\00\00\00\ED\1E\00\00\EC\1E\00\00\00\00\00\00\00\00\00\00\EF\1E\00\00\EE\1E\00\00\00\00\00\00\00\00\00\00\F1\1E\00\00\F0\1E\00\00\00\00\00\00\00\00\00\00\F3\1E\00\00\F2\1E\00\00\00\00\00\00\00\00\00\00\F5\1E\00\00\F4\1E\00\00\00\00\00\00\00\00\00\00\F7\1E\00\00\F6\1E\00\00\00\00\00\00\00\00\00\00\F9\1E\00\00\F8\1E\00\00\00\00\00\00\00\00\00\00\FB\1E\00\00\FA\1E\00\00\00\00\00\00\00\00\00\00\FD\1E\00\00\FC\1E\00\00\00\00\00\00\00\00\00\00\FF\1E\00\00\FE\1E\00\00\00\00\00\00\00\00\00\00\00\1F\00\00\08\1F\00\00\00\00\00\00\00\00\00\00\01\1F\00\00\09\1F\00\00\00\00\00\00\00\00\00\00\02\1F\00\00\0A\1F\00\00\00\00\00\00\00\00\00\00\03\1F\00\00\0B\1F\00\00\00\00\00\00\00\00\00\00\04\1F\00\00\0C\1F\00\00\00\00\00\00\00\00\00\00\05\1F\00\00\0D\1F\00\00\00\00\00\00\00\00\00\00\06\1F\00\00\0E\1F\00\00\00\00\00\00\00\00\00\00\07\1F\00\00\0F\1F\00\00\00\00\00\00\00\00\00\00\10\1F\00\00\18\1F\00\00\00\00\00\00\00\00\00\00\11\1F\00\00\19\1F\00\00\00\00\00\00\00\00\00\00\12\1F\00\00\1A\1F\00\00\00\00\00\00\00\00\00\00\13\1F\00\00\1B\1F\00\00\00\00\00\00\00\00\00\00\14\1F\00\00\1C\1F\00\00\00\00\00\00\00\00\00\00\15\1F\00\00\1D\1F\00\00\00\00\00\00\00\00\00\00 \1F\00\00(\1F\00\00\00\00\00\00\00\00\00\00!\1F\00\00)\1F\00\00\00\00\00\00\00\00\00\00\22\1F\00\00*\1F\00\00\00\00\00\00\00\00\00\00#\1F\00\00+\1F\00\00\00\00\00\00\00\00\00\00$\1F\00\00,\1F\00\00\00\00\00\00\00\00\00\00%\1F\00\00-\1F\00\00\00\00\00\00\00\00\00\00&\1F\00\00.\1F\00\00\00\00\00\00\00\00\00\00'\1F\00\00/\1F\00\00\00\00\00\00\00\00\00\000\1F\00\008\1F\00\00\00\00\00\00\00\00\00\001\1F\00\009\1F\00\00\00\00\00\00\00\00\00\002\1F\00\00:\1F\00\00\00\00\00\00\00\00\00\003\1F\00\00;\1F\00\00\00\00\00\00\00\00\00\004\1F\00\00<\1F\00\00\00\00\00\00\00\00\00\005\1F\00\00=\1F\00\00\00\00\00\00\00\00\00\006\1F\00\00>\1F\00\00\00\00\00\00\00\00\00\007\1F\00\00?\1F\00\00\00\00\00\00\00\00\00\00@\1F\00\00H\1F\00\00\00\00\00\00\00\00\00\00A\1F\00\00I\1F\00\00\00\00\00\00\00\00\00\00B\1F\00\00J\1F\00\00\00\00\00\00\00\00\00\00C\1F\00\00K\1F\00\00\00\00\00\00\00\00\00\00D\1F\00\00L\1F\00\00\00\00\00\00\00\00\00\00E\1F\00\00M\1F\00\00\00\00\00\00\00\00\00\00P\1F\00\00\A5\03\00\00\13\03\00\00\00\00\00\00Q\1F\00\00Y\1F\00\00\00\00\00\00\00\00\00\00R\1F\00\00\A5\03\00\00\13\03\00\00\00\03\00\00S\1F\00\00[\1F\00\00\00\00\00\00\00\00\00\00T\1F\00\00\A5\03\00\00\13\03\00\00\01\03\00\00U\1F\00\00]\1F\00\00\00\00\00\00\00\00\00\00V\1F\00\00\A5\03\00\00\13\03\00\00B\03\00\00W\1F\00\00_\1F\00\00\00\00\00\00\00\00\00\00`\1F\00\00h\1F\00\00\00\00\00\00\00\00\00\00a\1F\00\00i\1F\00\00\00\00\00\00\00\00\00\00b\1F\00\00j\1F\00\00\00\00\00\00\00\00\00\00c\1F\00\00k\1F\00\00\00\00\00\00\00\00\00\00d\1F\00\00l\1F\00\00\00\00\00\00\00\00\00\00e\1F\00\00m\1F\00\00\00\00\00\00\00\00\00\00f\1F\00\00n\1F\00\00\00\00\00\00\00\00\00\00g\1F\00\00o\1F\00\00\00\00\00\00\00\00\00\00p\1F\00\00\BA\1F\00\00\00\00\00\00\00\00\00\00q\1F\00\00\BB\1F\00\00\00\00\00\00\00\00\00\00r\1F\00\00\C8\1F\00\00\00\00\00\00\00\00\00\00s\1F\00\00\C9\1F\00\00\00\00\00\00\00\00\00\00t\1F\00\00\CA\1F\00\00\00\00\00\00\00\00\00\00u\1F\00\00\CB\1F\00\00\00\00\00\00\00\00\00\00v\1F\00\00\DA\1F\00\00\00\00\00\00\00\00\00\00w\1F\00\00\DB\1F\00\00\00\00\00\00\00\00\00\00x\1F\00\00\F8\1F\00\00\00\00\00\00\00\00\00\00y\1F\00\00\F9\1F\00\00\00\00\00\00\00\00\00\00z\1F\00\00\EA\1F\00\00\00\00\00\00\00\00\00\00{\1F\00\00\EB\1F\00\00\00\00\00\00\00\00\00\00|\1F\00\00\FA\1F\00\00\00\00\00\00\00\00\00\00}\1F\00\00\FB\1F\00\00\00\00\00\00\00\00\00\00\80\1F\00\00\08\1F\00\00\99\03\00\00\00\00\00\00\81\1F\00\00\09\1F\00\00\99\03\00\00\00\00\00\00\82\1F\00\00\0A\1F\00\00\99\03\00\00\00\00\00\00\83\1F\00\00\0B\1F\00\00\99\03\00\00\00\00\00\00\84\1F\00\00\0C\1F\00\00\99\03\00\00\00\00\00\00\85\1F\00\00\0D\1F\00\00\99\03\00\00\00\00\00\00\86\1F\00\00\0E\1F\00\00\99\03\00\00\00\00\00\00\87\1F\00\00\0F\1F\00\00\99\03\00\00\00\00\00\00\88\1F\00\00\08\1F\00\00\99\03\00\00\00\00\00\00\89\1F\00\00\09\1F\00\00\99\03\00\00\00\00\00\00\8A\1F\00\00\0A\1F\00\00\99\03\00\00\00\00\00\00\8B\1F\00\00\0B\1F\00\00\99\03\00\00\00\00\00\00\8C\1F\00\00\0C\1F\00\00\99\03\00\00\00\00\00\00\8D\1F\00\00\0D\1F\00\00\99\03\00\00\00\00\00\00\8E\1F\00\00\0E\1F\00\00\99\03\00\00\00\00\00\00\8F\1F\00\00\0F\1F\00\00\99\03\00\00\00\00\00\00\90\1F\00\00(\1F\00\00\99\03\00\00\00\00\00\00\91\1F\00\00)\1F\00\00\99\03\00\00\00\00\00\00\92\1F\00\00*\1F\00\00\99\03\00\00\00\00\00\00\93\1F\00\00+\1F\00\00\99\03\00\00\00\00\00\00\94\1F\00\00,\1F\00\00\99\03\00\00\00\00\00\00\95\1F\00\00-\1F\00\00\99\03\00\00\00\00\00\00\96\1F\00\00.\1F\00\00\99\03\00\00\00\00\00\00\97\1F\00\00/\1F\00\00\99\03\00\00\00\00\00\00\98\1F\00\00(\1F\00\00\99\03\00\00\00\00\00\00\99\1F\00\00)\1F\00\00\99\03\00\00\00\00\00\00\9A\1F\00\00*\1F\00\00\99\03\00\00\00\00\00\00\9B\1F\00\00+\1F\00\00\99\03\00\00\00\00\00\00\9C\1F\00\00,\1F\00\00\99\03\00\00\00\00\00\00\9D\1F\00\00-\1F\00\00\99\03\00\00\00\00\00\00\9E\1F\00\00.\1F\00\00\99\03\00\00\00\00\00\00\9F\1F\00\00/\1F\00\00\99\03\00\00\00\00\00\00\A0\1F\00\00h\1F\00\00\99\03\00\00\00\00\00\00\A1\1F\00\00i\1F\00\00\99\03\00\00\00\00\00\00\A2\1F\00\00j\1F\00\00\99\03\00\00\00\00\00\00\A3\1F\00\00k\1F\00\00\99\03\00\00\00\00\00\00\A4\1F\00\00l\1F\00\00\99\03\00\00\00\00\00\00\A5\1F\00\00m\1F\00\00\99\03\00\00\00\00\00\00\A6\1F\00\00n\1F\00\00\99\03\00\00\00\00\00\00\A7\1F\00\00o\1F\00\00\99\03\00\00\00\00\00\00\A8\1F\00\00h\1F\00\00\99\03\00\00\00\00\00\00\A9\1F\00\00i\1F\00\00\99\03\00\00\00\00\00\00\AA\1F\00\00j\1F\00\00\99\03\00\00\00\00\00\00\AB\1F\00\00k\1F\00\00\99\03\00\00\00\00\00\00\AC\1F\00\00l\1F\00\00\99\03\00\00\00\00\00\00\AD\1F\00\00m\1F\00\00\99\03\00\00\00\00\00\00\AE\1F\00\00n\1F\00\00\99\03\00\00\00\00\00\00\AF\1F\00\00o\1F\00\00\99\03\00\00\00\00\00\00\B0\1F\00\00\B8\1F\00\00\00\00\00\00\00\00\00\00\B1\1F\00\00\B9\1F\00\00\00\00\00\00\00\00\00\00\B2\1F\00\00\BA\1F\00\00\99\03\00\00\00\00\00\00\B3\1F\00\00\91\03\00\00\99\03\00\00\00\00\00\00\B4\1F\00\00\86\03\00\00\99\03\00\00\00\00\00\00\B6\1F\00\00\91\03\00\00B\03\00\00\00\00\00\00\B7\1F\00\00\91\03\00\00B\03\00\00\99\03\00\00\BC\1F\00\00\91\03\00\00\99\03\00\00\00\00\00\00\BE\1F\00\00\99\03\00\00\00\00\00\00\00\00\00\00\C2\1F\00\00\CA\1F\00\00\99\03\00\00\00\00\00\00\C3\1F\00\00\97\03\00\00\99\03\00\00\00\00\00\00\C4\1F\00\00\89\03\00\00\99\03\00\00\00\00\00\00\C6\1F\00\00\97\03\00\00B\03\00\00\00\00\00\00\C7\1F\00\00\97\03\00\00B\03\00\00\99\03\00\00\CC\1F\00\00\97\03\00\00\99\03\00\00\00\00\00\00\D0\1F\00\00\D8\1F\00\00\00\00\00\00\00\00\00\00\D1\1F\00\00\D9\1F\00\00\00\00\00\00\00\00\00\00\D2\1F\00\00\99\03\00\00\08\03\00\00\00\03\00\00\D3\1F\00\00\99\03\00\00\08\03\00\00\01\03\00\00\D6\1F\00\00\99\03\00\00B\03\00\00\00\00\00\00\D7\1F\00\00\99\03\00\00\08\03\00\00B\03\00\00\E0\1F\00\00\E8\1F\00\00\00\00\00\00\00\00\00\00\E1\1F\00\00\E9\1F\00\00\00\00\00\00\00\00\00\00\E2\1F\00\00\A5\03\00\00\08\03\00\00\00\03\00\00\E3\1F\00\00\A5\03\00\00\08\03\00\00\01\03\00\00\E4\1F\00\00\A1\03\00\00\13\03\00\00\00\00\00\00\E5\1F\00\00\EC\1F\00\00\00\00\00\00\00\00\00\00\E6\1F\00\00\A5\03\00\00B\03\00\00\00\00\00\00\E7\1F\00\00\A5\03\00\00\08\03\00\00B\03\00\00\F2\1F\00\00\FA\1F\00\00\99\03\00\00\00\00\00\00\F3\1F\00\00\A9\03\00\00\99\03\00\00\00\00\00\00\F4\1F\00\00\8F\03\00\00\99\03\00\00\00\00\00\00\F6\1F\00\00\A9\03\00\00B\03\00\00\00\00\00\00\F7\1F\00\00\A9\03\00\00B\03\00\00\99\03\00\00\FC\1F\00\00\A9\03\00\00\99\03\00\00\00\00\00\00N!\00\002!\00\00\00\00\00\00\00\00\00\00p!\00\00`!\00\00\00\00\00\00\00\00\00\00q!\00\00a!\00\00\00\00\00\00\00\00\00\00r!\00\00b!\00\00\00\00\00\00\00\00\00\00s!\00\00c!\00\00\00\00\00\00\00\00\00\00t!\00\00d!\00\00\00\00\00\00\00\00\00\00u!\00\00e!\00\00\00\00\00\00\00\00\00\00v!\00\00f!\00\00\00\00\00\00\00\00\00\00w!\00\00g!\00\00\00\00\00\00\00\00\00\00x!\00\00h!\00\00\00\00\00\00\00\00\00\00y!\00\00i!\00\00\00\00\00\00\00\00\00\00z!\00\00j!\00\00\00\00\00\00\00\00\00\00{!\00\00k!\00\00\00\00\00\00\00\00\00\00|!\00\00l!\00\00\00\00\00\00\00\00\00\00}!\00\00m!\00\00\00\00\00\00\00\00\00\00~!\00\00n!\00\00\00\00\00\00\00\00\00\00\7F!\00\00o!\00\00\00\00\00\00\00\00\00\00\84!\00\00\83!\00\00\00\00\00\00\00\00\00\00\D0$\00\00\B6$\00\00\00\00\00\00\00\00\00\00\D1$\00\00\B7$\00\00\00\00\00\00\00\00\00\00\D2$\00\00\B8$\00\00\00\00\00\00\00\00\00\00\D3$\00\00\B9$\00\00\00\00\00\00\00\00\00\00\D4$\00\00\BA$\00\00\00\00\00\00\00\00\00\00\D5$\00\00\BB$\00\00\00\00\00\00\00\00\00\00\D6$\00\00\BC$\00\00\00\00\00\00\00\00\00\00\D7$\00\00\BD$\00\00\00\00\00\00\00\00\00\00\D8$\00\00\BE$\00\00\00\00\00\00\00\00\00\00\D9$\00\00\BF$\00\00\00\00\00\00\00\00\00\00\DA$\00\00\C0$\00\00\00\00\00\00\00\00\00\00\DB$\00\00\C1$\00\00\00\00\00\00\00\00\00\00\DC$\00\00\C2$\00\00\00\00\00\00\00\00\00\00\DD$\00\00\C3$\00\00\00\00\00\00\00\00\00\00\DE$\00\00\C4$\00\00\00\00\00\00\00\00\00\00\DF$\00\00\C5$\00\00\00\00\00\00\00\00\00\00\E0$\00\00\C6$\00\00\00\00\00\00\00\00\00\00\E1$\00\00\C7$\00\00\00\00\00\00\00\00\00\00\E2$\00\00\C8$\00\00\00\00\00\00\00\00\00\00\E3$\00\00\C9$\00\00\00\00\00\00\00\00\00\00\E4$\00\00\CA$\00\00\00\00\00\00\00\00\00\00\E5$\00\00\CB$\00\00\00\00\00\00\00\00\00\00\E6$\00\00\CC$\00\00\00\00\00\00\00\00\00\00\E7$\00\00\CD$\00\00\00\00\00\00\00\00\00\00\E8$\00\00\CE$\00\00\00\00\00\00\00\00\00\00\E9$\00\00\CF$\00\00\00\00\00\00\00\00\00\000,\00\00\00,\00\00\00\00\00\00\00\00\00\001,\00\00\01,\00\00\00\00\00\00\00\00\00\002,\00\00\02,\00\00\00\00\00\00\00\00\00\003,\00\00\03,\00\00\00\00\00\00\00\00\00\004,\00\00\04,\00\00\00\00\00\00\00\00\00\005,\00\00\05,\00\00\00\00\00\00\00\00\00\006,\00\00\06,\00\00\00\00\00\00\00\00\00\007,\00\00\07,\00\00\00\00\00\00\00\00\00\008,\00\00\08,\00\00\00\00\00\00\00\00\00\009,\00\00\09,\00\00\00\00\00\00\00\00\00\00:,\00\00\0A,\00\00\00\00\00\00\00\00\00\00;,\00\00\0B,\00\00\00\00\00\00\00\00\00\00<,\00\00\0C,\00\00\00\00\00\00\00\00\00\00=,\00\00\0D,\00\00\00\00\00\00\00\00\00\00>,\00\00\0E,\00\00\00\00\00\00\00\00\00\00?,\00\00\0F,\00\00\00\00\00\00\00\00\00\00@,\00\00\10,\00\00\00\00\00\00\00\00\00\00A,\00\00\11,\00\00\00\00\00\00\00\00\00\00B,\00\00\12,\00\00\00\00\00\00\00\00\00\00C,\00\00\13,\00\00\00\00\00\00\00\00\00\00D,\00\00\14,\00\00\00\00\00\00\00\00\00\00E,\00\00\15,\00\00\00\00\00\00\00\00\00\00F,\00\00\16,\00\00\00\00\00\00\00\00\00\00G,\00\00\17,\00\00\00\00\00\00\00\00\00\00H,\00\00\18,\00\00\00\00\00\00\00\00\00\00I,\00\00\19,\00\00\00\00\00\00\00\00\00\00J,\00\00\1A,\00\00\00\00\00\00\00\00\00\00K,\00\00\1B,\00\00\00\00\00\00\00\00\00\00L,\00\00\1C,\00\00\00\00\00\00\00\00\00\00M,\00\00\1D,\00\00\00\00\00\00\00\00\00\00N,\00\00\1E,\00\00\00\00\00\00\00\00\00\00O,\00\00\1F,\00\00\00\00\00\00\00\00\00\00P,\00\00 ,\00\00\00\00\00\00\00\00\00\00Q,\00\00!,\00\00\00\00\00\00\00\00\00\00R,\00\00\22,\00\00\00\00\00\00\00\00\00\00S,\00\00#,\00\00\00\00\00\00\00\00\00\00T,\00\00$,\00\00\00\00\00\00\00\00\00\00U,\00\00%,\00\00\00\00\00\00\00\00\00\00V,\00\00&,\00\00\00\00\00\00\00\00\00\00W,\00\00',\00\00\00\00\00\00\00\00\00\00X,\00\00(,\00\00\00\00\00\00\00\00\00\00Y,\00\00),\00\00\00\00\00\00\00\00\00\00Z,\00\00*,\00\00\00\00\00\00\00\00\00\00[,\00\00+,\00\00\00\00\00\00\00\00\00\00\\,\00\00,,\00\00\00\00\00\00\00\00\00\00],\00\00-,\00\00\00\00\00\00\00\00\00\00^,\00\00.,\00\00\00\00\00\00\00\00\00\00a,\00\00`,\00\00\00\00\00\00\00\00\00\00e,\00\00:\02\00\00\00\00\00\00\00\00\00\00f,\00\00>\02\00\00\00\00\00\00\00\00\00\00h,\00\00g,\00\00\00\00\00\00\00\00\00\00j,\00\00i,\00\00\00\00\00\00\00\00\00\00l,\00\00k,\00\00\00\00\00\00\00\00\00\00s,\00\00r,\00\00\00\00\00\00\00\00\00\00v,\00\00u,\00\00\00\00\00\00\00\00\00\00\81,\00\00\80,\00\00\00\00\00\00\00\00\00\00\83,\00\00\82,\00\00\00\00\00\00\00\00\00\00\85,\00\00\84,\00\00\00\00\00\00\00\00\00\00\87,\00\00\86,\00\00\00\00\00\00\00\00\00\00\89,\00\00\88,\00\00\00\00\00\00\00\00\00\00\8B,\00\00\8A,\00\00\00\00\00\00\00\00\00\00\8D,\00\00\8C,\00\00\00\00\00\00\00\00\00\00\8F,\00\00\8E,\00\00\00\00\00\00\00\00\00\00\91,\00\00\90,\00\00\00\00\00\00\00\00\00\00\93,\00\00\92,\00\00\00\00\00\00\00\00\00\00\95,\00\00\94,\00\00\00\00\00\00\00\00\00\00\97,\00\00\96,\00\00\00\00\00\00\00\00\00\00\99,\00\00\98,\00\00\00\00\00\00\00\00\00\00\9B,\00\00\9A,\00\00\00\00\00\00\00\00\00\00\9D,\00\00\9C,\00\00\00\00\00\00\00\00\00\00\9F,\00\00\9E,\00\00\00\00\00\00\00\00\00\00\A1,\00\00\A0,\00\00\00\00\00\00\00\00\00\00\A3,\00\00\A2,\00\00\00\00\00\00\00\00\00\00\A5,\00\00\A4,\00\00\00\00\00\00\00\00\00\00\A7,\00\00\A6,\00\00\00\00\00\00\00\00\00\00\A9,\00\00\A8,\00\00\00\00\00\00\00\00\00\00\AB,\00\00\AA,\00\00\00\00\00\00\00\00\00\00\AD,\00\00\AC,\00\00\00\00\00\00\00\00\00\00\AF,\00\00\AE,\00\00\00\00\00\00\00\00\00\00\B1,\00\00\B0,\00\00\00\00\00\00\00\00\00\00\B3,\00\00\B2,\00\00\00\00\00\00\00\00\00\00\B5,\00\00\B4,\00\00\00\00\00\00\00\00\00\00\B7,\00\00\B6,\00\00\00\00\00\00\00\00\00\00\B9,\00\00\B8,\00\00\00\00\00\00\00\00\00\00\BB,\00\00\BA,\00\00\00\00\00\00\00\00\00\00\BD,\00\00\BC,\00\00\00\00\00\00\00\00\00\00\BF,\00\00\BE,\00\00\00\00\00\00\00\00\00\00\C1,\00\00\C0,\00\00\00\00\00\00\00\00\00\00\C3,\00\00\C2,\00\00\00\00\00\00\00\00\00\00\C5,\00\00\C4,\00\00\00\00\00\00\00\00\00\00\C7,\00\00\C6,\00\00\00\00\00\00\00\00\00\00\C9,\00\00\C8,\00\00\00\00\00\00\00\00\00\00\CB,\00\00\CA,\00\00\00\00\00\00\00\00\00\00\CD,\00\00\CC,\00\00\00\00\00\00\00\00\00\00\CF,\00\00\CE,\00\00\00\00\00\00\00\00\00\00\D1,\00\00\D0,\00\00\00\00\00\00\00\00\00\00\D3,\00\00\D2,\00\00\00\00\00\00\00\00\00\00\D5,\00\00\D4,\00\00\00\00\00\00\00\00\00\00\D7,\00\00\D6,\00\00\00\00\00\00\00\00\00\00\D9,\00\00\D8,\00\00\00\00\00\00\00\00\00\00\DB,\00\00\DA,\00\00\00\00\00\00\00\00\00\00\DD,\00\00\DC,\00\00\00\00\00\00\00\00\00\00\DF,\00\00\DE,\00\00\00\00\00\00\00\00\00\00\E1,\00\00\E0,\00\00\00\00\00\00\00\00\00\00\E3,\00\00\E2,\00\00\00\00\00\00\00\00\00\00\EC,\00\00\EB,\00\00\00\00\00\00\00\00\00\00\EE,\00\00\ED,\00\00\00\00\00\00\00\00\00\00\F3,\00\00\F2,\00\00\00\00\00\00\00\00\00\00\00-\00\00\A0\10\00\00\00\00\00\00\00\00\00\00\01-\00\00\A1\10\00\00\00\00\00\00\00\00\00\00\02-\00\00\A2\10\00\00\00\00\00\00\00\00\00\00\03-\00\00\A3\10\00\00\00\00\00\00\00\00\00\00\04-\00\00\A4\10\00\00\00\00\00\00\00\00\00\00\05-\00\00\A5\10\00\00\00\00\00\00\00\00\00\00\06-\00\00\A6\10\00\00\00\00\00\00\00\00\00\00\07-\00\00\A7\10\00\00\00\00\00\00\00\00\00\00\08-\00\00\A8\10\00\00\00\00\00\00\00\00\00\00\09-\00\00\A9\10\00\00\00\00\00\00\00\00\00\00\0A-\00\00\AA\10\00\00\00\00\00\00\00\00\00\00\0B-\00\00\AB\10\00\00\00\00\00\00\00\00\00\00\0C-\00\00\AC\10\00\00\00\00\00\00\00\00\00\00\0D-\00\00\AD\10\00\00\00\00\00\00\00\00\00\00\0E-\00\00\AE\10\00\00\00\00\00\00\00\00\00\00\0F-\00\00\AF\10\00\00\00\00\00\00\00\00\00\00\10-\00\00\B0\10\00\00\00\00\00\00\00\00\00\00\11-\00\00\B1\10\00\00\00\00\00\00\00\00\00\00\12-\00\00\B2\10\00\00\00\00\00\00\00\00\00\00\13-\00\00\B3\10\00\00\00\00\00\00\00\00\00\00\14-\00\00\B4\10\00\00\00\00\00\00\00\00\00\00\15-\00\00\B5\10\00\00\00\00\00\00\00\00\00\00\16-\00\00\B6\10\00\00\00\00\00\00\00\00\00\00\17-\00\00\B7\10\00\00\00\00\00\00\00\00\00\00\18-\00\00\B8\10\00\00\00\00\00\00\00\00\00\00\19-\00\00\B9\10\00\00\00\00\00\00\00\00\00\00\1A-\00\00\BA\10\00\00\00\00\00\00\00\00\00\00\1B-\00\00\BB\10\00\00\00\00\00\00\00\00\00\00\1C-\00\00\BC\10\00\00\00\00\00\00\00\00\00\00\1D-\00\00\BD\10\00\00\00\00\00\00\00\00\00\00\1E-\00\00\BE\10\00\00\00\00\00\00\00\00\00\00\1F-\00\00\BF\10\00\00\00\00\00\00\00\00\00\00 -\00\00\C0\10\00\00\00\00\00\00\00\00\00\00!-\00\00\C1\10\00\00\00\00\00\00\00\00\00\00\22-\00\00\C2\10\00\00\00\00\00\00\00\00\00\00#-\00\00\C3\10\00\00\00\00\00\00\00\00\00\00$-\00\00\C4\10\00\00\00\00\00\00\00\00\00\00%-\00\00\C5\10\00\00\00\00\00\00\00\00\00\00'-\00\00\C7\10\00\00\00\00\00\00\00\00\00\00--\00\00\CD\10\00\00\00\00\00\00\00\00\00\00A\A6\00\00@\A6\00\00\00\00\00\00\00\00\00\00C\A6\00\00B\A6\00\00\00\00\00\00\00\00\00\00E\A6\00\00D\A6\00\00\00\00\00\00\00\00\00\00G\A6\00\00F\A6\00\00\00\00\00\00\00\00\00\00I\A6\00\00H\A6\00\00\00\00\00\00\00\00\00\00K\A6\00\00J\A6\00\00\00\00\00\00\00\00\00\00M\A6\00\00L\A6\00\00\00\00\00\00\00\00\00\00O\A6\00\00N\A6\00\00\00\00\00\00\00\00\00\00Q\A6\00\00P\A6\00\00\00\00\00\00\00\00\00\00S\A6\00\00R\A6\00\00\00\00\00\00\00\00\00\00U\A6\00\00T\A6\00\00\00\00\00\00\00\00\00\00W\A6\00\00V\A6\00\00\00\00\00\00\00\00\00\00Y\A6\00\00X\A6\00\00\00\00\00\00\00\00\00\00[\A6\00\00Z\A6\00\00\00\00\00\00\00\00\00\00]\A6\00\00\\\A6\00\00\00\00\00\00\00\00\00\00_\A6\00\00^\A6\00\00\00\00\00\00\00\00\00\00a\A6\00\00`\A6\00\00\00\00\00\00\00\00\00\00c\A6\00\00b\A6\00\00\00\00\00\00\00\00\00\00e\A6\00\00d\A6\00\00\00\00\00\00\00\00\00\00g\A6\00\00f\A6\00\00\00\00\00\00\00\00\00\00i\A6\00\00h\A6\00\00\00\00\00\00\00\00\00\00k\A6\00\00j\A6\00\00\00\00\00\00\00\00\00\00m\A6\00\00l\A6\00\00\00\00\00\00\00\00\00\00\81\A6\00\00\80\A6\00\00\00\00\00\00\00\00\00\00\83\A6\00\00\82\A6\00\00\00\00\00\00\00\00\00\00\85\A6\00\00\84\A6\00\00\00\00\00\00\00\00\00\00\87\A6\00\00\86\A6\00\00\00\00\00\00\00\00\00\00\89\A6\00\00\88\A6\00\00\00\00\00\00\00\00\00\00\8B\A6\00\00\8A\A6\00\00\00\00\00\00\00\00\00\00\8D\A6\00\00\8C\A6\00\00\00\00\00\00\00\00\00\00\8F\A6\00\00\8E\A6\00\00\00\00\00\00\00\00\00\00\91\A6\00\00\90\A6\00\00\00\00\00\00\00\00\00\00\93\A6\00\00\92\A6\00\00\00\00\00\00\00\00\00\00\95\A6\00\00\94\A6\00\00\00\00\00\00\00\00\00\00\97\A6\00\00\96\A6\00\00\00\00\00\00\00\00\00\00\99\A6\00\00\98\A6\00\00\00\00\00\00\00\00\00\00\9B\A6\00\00\9A\A6\00\00\00\00\00\00\00\00\00\00#\A7\00\00\22\A7\00\00\00\00\00\00\00\00\00\00%\A7\00\00$\A7\00\00\00\00\00\00\00\00\00\00'\A7\00\00&\A7\00\00\00\00\00\00\00\00\00\00)\A7\00\00(\A7\00\00\00\00\00\00\00\00\00\00+\A7\00\00*\A7\00\00\00\00\00\00\00\00\00\00-\A7\00\00,\A7\00\00\00\00\00\00\00\00\00\00/\A7\00\00.\A7\00\00\00\00\00\00\00\00\00\003\A7\00\002\A7\00\00\00\00\00\00\00\00\00\005\A7\00\004\A7\00\00\00\00\00\00\00\00\00\007\A7\00\006\A7\00\00\00\00\00\00\00\00\00\009\A7\00\008\A7\00\00\00\00\00\00\00\00\00\00;\A7\00\00:\A7\00\00\00\00\00\00\00\00\00\00=\A7\00\00<\A7\00\00\00\00\00\00\00\00\00\00?\A7\00\00>\A7\00\00\00\00\00\00\00\00\00\00A\A7\00\00@\A7\00\00\00\00\00\00\00\00\00\00C\A7\00\00B\A7\00\00\00\00\00\00\00\00\00\00E\A7\00\00D\A7\00\00\00\00\00\00\00\00\00\00G\A7\00\00F\A7\00\00\00\00\00\00\00\00\00\00I\A7\00\00H\A7\00\00\00\00\00\00\00\00\00\00K\A7\00\00J\A7\00\00\00\00\00\00\00\00\00\00M\A7\00\00L\A7\00\00\00\00\00\00\00\00\00\00O\A7\00\00N\A7\00\00\00\00\00\00\00\00\00\00Q\A7\00\00P\A7\00\00\00\00\00\00\00\00\00\00S\A7\00\00R\A7\00\00\00\00\00\00\00\00\00\00U\A7\00\00T\A7\00\00\00\00\00\00\00\00\00\00W\A7\00\00V\A7\00\00\00\00\00\00\00\00\00\00Y\A7\00\00X\A7\00\00\00\00\00\00\00\00\00\00[\A7\00\00Z\A7\00\00\00\00\00\00\00\00\00\00]\A7\00\00\\\A7\00\00\00\00\00\00\00\00\00\00_\A7\00\00^\A7\00\00\00\00\00\00\00\00\00\00a\A7\00\00`\A7\00\00\00\00\00\00\00\00\00\00c\A7\00\00b\A7\00\00\00\00\00\00\00\00\00\00e\A7\00\00d\A7\00\00\00\00\00\00\00\00\00\00g\A7\00\00f\A7\00\00\00\00\00\00\00\00\00\00i\A7\00\00h\A7\00\00\00\00\00\00\00\00\00\00k\A7\00\00j\A7\00\00\00\00\00\00\00\00\00\00m\A7\00\00l\A7\00\00\00\00\00\00\00\00\00\00o\A7\00\00n\A7\00\00\00\00\00\00\00\00\00\00z\A7\00\00y\A7\00\00\00\00\00\00\00\00\00\00|\A7\00\00{\A7\00\00\00\00\00\00\00\00\00\00\7F\A7\00\00~\A7\00\00\00\00\00\00\00\00\00\00\81\A7\00\00\80\A7\00\00\00\00\00\00\00\00\00\00\83\A7\00\00\82\A7\00\00\00\00\00\00\00\00\00\00\85\A7\00\00\84\A7\00\00\00\00\00\00\00\00\00\00\87\A7\00\00\86\A7\00\00\00\00\00\00\00\00\00\00\8C\A7\00\00\8B\A7\00\00\00\00\00\00\00\00\00\00\91\A7\00\00\90\A7\00\00\00\00\00\00\00\00\00\00\93\A7\00\00\92\A7\00\00\00\00\00\00\00\00\00\00\94\A7\00\00\C4\A7\00\00\00\00\00\00\00\00\00\00\97\A7\00\00\96\A7\00\00\00\00\00\00\00\00\00\00\99\A7\00\00\98\A7\00\00\00\00\00\00\00\00\00\00\9B\A7\00\00\9A\A7\00\00\00\00\00\00\00\00\00\00\9D\A7\00\00\9C\A7\00\00\00\00\00\00\00\00\00\00\9F\A7\00\00\9E\A7\00\00\00\00\00\00\00\00\00\00\A1\A7\00\00\A0\A7\00\00\00\00\00\00\00\00\00\00\A3\A7\00\00\A2\A7\00\00\00\00\00\00\00\00\00\00\A5\A7\00\00\A4\A7\00\00\00\00\00\00\00\00\00\00\A7\A7\00\00\A6\A7\00\00\00\00\00\00\00\00\00\00\A9\A7\00\00\A8\A7\00\00\00\00\00\00\00\00\00\00\B5\A7\00\00\B4\A7\00\00\00\00\00\00\00\00\00\00\B7\A7\00\00\B6\A7\00\00\00\00\00\00\00\00\00\00\B9\A7\00\00\B8\A7\00\00\00\00\00\00\00\00\00\00\BB\A7\00\00\BA\A7\00\00\00\00\00\00\00\00\00\00\BD\A7\00\00\BC\A7\00\00\00\00\00\00\00\00\00\00\BF\A7\00\00\BE\A7\00\00\00\00\00\00\00\00\00\00\C3\A7\00\00\C2\A7\00\00\00\00\00\00\00\00\00\00\C8\A7\00\00\C7\A7\00\00\00\00\00\00\00\00\00\00\CA\A7\00\00\C9\A7\00\00\00\00\00\00\00\00\00\00\F6\A7\00\00\F5\A7\00\00\00\00\00\00\00\00\00\00S\AB\00\00\B3\A7\00\00\00\00\00\00\00\00\00\00p\AB\00\00\A0\13\00\00\00\00\00\00\00\00\00\00q\AB\00\00\A1\13\00\00\00\00\00\00\00\00\00\00r\AB\00\00\A2\13\00\00\00\00\00\00\00\00\00\00s\AB\00\00\A3\13\00\00\00\00\00\00\00\00\00\00t\AB\00\00\A4\13\00\00\00\00\00\00\00\00\00\00u\AB\00\00\A5\13\00\00\00\00\00\00\00\00\00\00v\AB\00\00\A6\13\00\00\00\00\00\00\00\00\00\00w\AB\00\00\A7\13\00\00\00\00\00\00\00\00\00\00x\AB\00\00\A8\13\00\00\00\00\00\00\00\00\00\00y\AB\00\00\A9\13\00\00\00\00\00\00\00\00\00\00z\AB\00\00\AA\13\00\00\00\00\00\00\00\00\00\00{\AB\00\00\AB\13\00\00\00\00\00\00\00\00\00\00|\AB\00\00\AC\13\00\00\00\00\00\00\00\00\00\00}\AB\00\00\AD\13\00\00\00\00\00\00\00\00\00\00~\AB\00\00\AE\13\00\00\00\00\00\00\00\00\00\00\7F\AB\00\00\AF\13\00\00\00\00\00\00\00\00\00\00\80\AB\00\00\B0\13\00\00\00\00\00\00\00\00\00\00\81\AB\00\00\B1\13\00\00\00\00\00\00\00\00\00\00\82\AB\00\00\B2\13\00\00\00\00\00\00\00\00\00\00\83\AB\00\00\B3\13\00\00\00\00\00\00\00\00\00\00\84\AB\00\00\B4\13\00\00\00\00\00\00\00\00\00\00\85\AB\00\00\B5\13\00\00\00\00\00\00\00\00\00\00\86\AB\00\00\B6\13\00\00\00\00\00\00\00\00\00\00\87\AB\00\00\B7\13\00\00\00\00\00\00\00\00\00\00\88\AB\00\00\B8\13\00\00\00\00\00\00\00\00\00\00\89\AB\00\00\B9\13\00\00\00\00\00\00\00\00\00\00\8A\AB\00\00\BA\13\00\00\00\00\00\00\00\00\00\00\8B\AB\00\00\BB\13\00\00\00\00\00\00\00\00\00\00\8C\AB\00\00\BC\13\00\00\00\00\00\00\00\00\00\00\8D\AB\00\00\BD\13\00\00\00\00\00\00\00\00\00\00\8E\AB\00\00\BE\13\00\00\00\00\00\00\00\00\00\00\8F\AB\00\00\BF\13\00\00\00\00\00\00\00\00\00\00\90\AB\00\00\C0\13\00\00\00\00\00\00\00\00\00\00\91\AB\00\00\C1\13\00\00\00\00\00\00\00\00\00\00\92\AB\00\00\C2\13\00\00\00\00\00\00\00\00\00\00\93\AB\00\00\C3\13\00\00\00\00\00\00\00\00\00\00\94\AB\00\00\C4\13\00\00\00\00\00\00\00\00\00\00\95\AB\00\00\C5\13\00\00\00\00\00\00\00\00\00\00\96\AB\00\00\C6\13\00\00\00\00\00\00\00\00\00\00\97\AB\00\00\C7\13\00\00\00\00\00\00\00\00\00\00\98\AB\00\00\C8\13\00\00\00\00\00\00\00\00\00\00\99\AB\00\00\C9\13\00\00\00\00\00\00\00\00\00\00\9A\AB\00\00\CA\13\00\00\00\00\00\00\00\00\00\00\9B\AB\00\00\CB\13\00\00\00\00\00\00\00\00\00\00\9C\AB\00\00\CC\13\00\00\00\00\00\00\00\00\00\00\9D\AB\00\00\CD\13\00\00\00\00\00\00\00\00\00\00\9E\AB\00\00\CE\13\00\00\00\00\00\00\00\00\00\00\9F\AB\00\00\CF\13\00\00\00\00\00\00\00\00\00\00\A0\AB\00\00\D0\13\00\00\00\00\00\00\00\00\00\00\A1\AB\00\00\D1\13\00\00\00\00\00\00\00\00\00\00\A2\AB\00\00\D2\13\00\00\00\00\00\00\00\00\00\00\A3\AB\00\00\D3\13\00\00\00\00\00\00\00\00\00\00\A4\AB\00\00\D4\13\00\00\00\00\00\00\00\00\00\00\A5\AB\00\00\D5\13\00\00\00\00\00\00\00\00\00\00\A6\AB\00\00\D6\13\00\00\00\00\00\00\00\00\00\00\A7\AB\00\00\D7\13\00\00\00\00\00\00\00\00\00\00\A8\AB\00\00\D8\13\00\00\00\00\00\00\00\00\00\00\A9\AB\00\00\D9\13\00\00\00\00\00\00\00\00\00\00\AA\AB\00\00\DA\13\00\00\00\00\00\00\00\00\00\00\AB\AB\00\00\DB\13\00\00\00\00\00\00\00\00\00\00\AC\AB\00\00\DC\13\00\00\00\00\00\00\00\00\00\00\AD\AB\00\00\DD\13\00\00\00\00\00\00\00\00\00\00\AE\AB\00\00\DE\13\00\00\00\00\00\00\00\00\00\00\AF\AB\00\00\DF\13\00\00\00\00\00\00\00\00\00\00\B0\AB\00\00\E0\13\00\00\00\00\00\00\00\00\00\00\B1\AB\00\00\E1\13\00\00\00\00\00\00\00\00\00\00\B2\AB\00\00\E2\13\00\00\00\00\00\00\00\00\00\00\B3\AB\00\00\E3\13\00\00\00\00\00\00\00\00\00\00\B4\AB\00\00\E4\13\00\00\00\00\00\00\00\00\00\00\B5\AB\00\00\E5\13\00\00\00\00\00\00\00\00\00\00\B6\AB\00\00\E6\13\00\00\00\00\00\00\00\00\00\00\B7\AB\00\00\E7\13\00\00\00\00\00\00\00\00\00\00\B8\AB\00\00\E8\13\00\00\00\00\00\00\00\00\00\00\B9\AB\00\00\E9\13\00\00\00\00\00\00\00\00\00\00\BA\AB\00\00\EA\13\00\00\00\00\00\00\00\00\00\00\BB\AB\00\00\EB\13\00\00\00\00\00\00\00\00\00\00\BC\AB\00\00\EC\13\00\00\00\00\00\00\00\00\00\00\BD\AB\00\00\ED\13\00\00\00\00\00\00\00\00\00\00\BE\AB\00\00\EE\13\00\00\00\00\00\00\00\00\00\00\BF\AB\00\00\EF\13\00\00\00\00\00\00\00\00\00\00\00\FB\00\00F\00\00\00F\00\00\00\00\00\00\00\01\FB\00\00F\00\00\00I\00\00\00\00\00\00\00\02\FB\00\00F\00\00\00L\00\00\00\00\00\00\00\03\FB\00\00F\00\00\00F\00\00\00I\00\00\00\04\FB\00\00F\00\00\00F\00\00\00L\00\00\00\05\FB\00\00S\00\00\00T\00\00\00\00\00\00\00\06\FB\00\00S\00\00\00T\00\00\00\00\00\00\00\13\FB\00\00D\05\00\00F\05\00\00\00\00\00\00\14\FB\00\00D\05\00\005\05\00\00\00\00\00\00\15\FB\00\00D\05\00\00;\05\00\00\00\00\00\00\16\FB\00\00N\05\00\00F\05\00\00\00\00\00\00\17\FB\00\00D\05\00\00=\05\00\00\00\00\00\00A\FF\00\00!\FF\00\00\00\00\00\00\00\00\00\00B\FF\00\00\22\FF\00\00\00\00\00\00\00\00\00\00C\FF\00\00#\FF\00\00\00\00\00\00\00\00\00\00D\FF\00\00$\FF\00\00\00\00\00\00\00\00\00\00E\FF\00\00%\FF\00\00\00\00\00\00\00\00\00\00F\FF\00\00&\FF\00\00\00\00\00\00\00\00\00\00G\FF\00\00'\FF\00\00\00\00\00\00\00\00\00\00H\FF\00\00(\FF\00\00\00\00\00\00\00\00\00\00I\FF\00\00)\FF\00\00\00\00\00\00\00\00\00\00J\FF\00\00*\FF\00\00\00\00\00\00\00\00\00\00K\FF\00\00+\FF\00\00\00\00\00\00\00\00\00\00L\FF\00\00,\FF\00\00\00\00\00\00\00\00\00\00M\FF\00\00-\FF\00\00\00\00\00\00\00\00\00\00N\FF\00\00.\FF\00\00\00\00\00\00\00\00\00\00O\FF\00\00/\FF\00\00\00\00\00\00\00\00\00\00P\FF\00\000\FF\00\00\00\00\00\00\00\00\00\00Q\FF\00\001\FF\00\00\00\00\00\00\00\00\00\00R\FF\00\002\FF\00\00\00\00\00\00\00\00\00\00S\FF\00\003\FF\00\00\00\00\00\00\00\00\00\00T\FF\00\004\FF\00\00\00\00\00\00\00\00\00\00U\FF\00\005\FF\00\00\00\00\00\00\00\00\00\00V\FF\00\006\FF\00\00\00\00\00\00\00\00\00\00W\FF\00\007\FF\00\00\00\00\00\00\00\00\00\00X\FF\00\008\FF\00\00\00\00\00\00\00\00\00\00Y\FF\00\009\FF\00\00\00\00\00\00\00\00\00\00Z\FF\00\00:\FF\00\00\00\00\00\00\00\00\00\00(\04\01\00\00\04\01\00\00\00\00\00\00\00\00\00)\04\01\00\01\04\01\00\00\00\00\00\00\00\00\00*\04\01\00\02\04\01\00\00\00\00\00\00\00\00\00+\04\01\00\03\04\01\00\00\00\00\00\00\00\00\00,\04\01\00\04\04\01\00\00\00\00\00\00\00\00\00-\04\01\00\05\04\01\00\00\00\00\00\00\00\00\00.\04\01\00\06\04\01\00\00\00\00\00\00\00\00\00/\04\01\00\07\04\01\00\00\00\00\00\00\00\00\000\04\01\00\08\04\01\00\00\00\00\00\00\00\00\001\04\01\00\09\04\01\00\00\00\00\00\00\00\00\002\04\01\00\0A\04\01\00\00\00\00\00\00\00\00\003\04\01\00\0B\04\01\00\00\00\00\00\00\00\00\004\04\01\00\0C\04\01\00\00\00\00\00\00\00\00\005\04\01\00\0D\04\01\00\00\00\00\00\00\00\00\006\04\01\00\0E\04\01\00\00\00\00\00\00\00\00\007\04\01\00\0F\04\01\00\00\00\00\00\00\00\00\008\04\01\00\10\04\01\00\00\00\00\00\00\00\00\009\04\01\00\11\04\01\00\00\00\00\00\00\00\00\00:\04\01\00\12\04\01\00\00\00\00\00\00\00\00\00;\04\01\00\13\04\01\00\00\00\00\00\00\00\00\00<\04\01\00\14\04\01\00\00\00\00\00\00\00\00\00=\04\01\00\15\04\01\00\00\00\00\00\00\00\00\00>\04\01\00\16\04\01\00\00\00\00\00\00\00\00\00?\04\01\00\17\04\01\00\00\00\00\00\00\00\00\00@\04\01\00\18\04\01\00\00\00\00\00\00\00\00\00A\04\01\00\19\04\01\00\00\00\00\00\00\00\00\00B\04\01\00\1A\04\01\00\00\00\00\00\00\00\00\00C\04\01\00\1B\04\01\00\00\00\00\00\00\00\00\00D\04\01\00\1C\04\01\00\00\00\00\00\00\00\00\00E\04\01\00\1D\04\01\00\00\00\00\00\00\00\00\00F\04\01\00\1E\04\01\00\00\00\00\00\00\00\00\00G\04\01\00\1F\04\01\00\00\00\00\00\00\00\00\00H\04\01\00 \04\01\00\00\00\00\00\00\00\00\00I\04\01\00!\04\01\00\00\00\00\00\00\00\00\00J\04\01\00\22\04\01\00\00\00\00\00\00\00\00\00K\04\01\00#\04\01\00\00\00\00\00\00\00\00\00L\04\01\00$\04\01\00\00\00\00\00\00\00\00\00M\04\01\00%\04\01\00\00\00\00\00\00\00\00\00N\04\01\00&\04\01\00\00\00\00\00\00\00\00\00O\04\01\00'\04\01\00\00\00\00\00\00\00\00\00\D8\04\01\00\B0\04\01\00\00\00\00\00\00\00\00\00\D9\04\01\00\B1\04\01\00\00\00\00\00\00\00\00\00\DA\04\01\00\B2\04\01\00\00\00\00\00\00\00\00\00\DB\04\01\00\B3\04\01\00\00\00\00\00\00\00\00\00\DC\04\01\00\B4\04\01\00\00\00\00\00\00\00\00\00\DD\04\01\00\B5\04\01\00\00\00\00\00\00\00\00\00\DE\04\01\00\B6\04\01\00\00\00\00\00\00\00\00\00\DF\04\01\00\B7\04\01\00\00\00\00\00\00\00\00\00\E0\04\01\00\B8\04\01\00\00\00\00\00\00\00\00\00\E1\04\01\00\B9\04\01\00\00\00\00\00\00\00\00\00\E2\04\01\00\BA\04\01\00\00\00\00\00\00\00\00\00\E3\04\01\00\BB\04\01\00\00\00\00\00\00\00\00\00\E4\04\01\00\BC\04\01\00\00\00\00\00\00\00\00\00\E5\04\01\00\BD\04\01\00\00\00\00\00\00\00\00\00\E6\04\01\00\BE\04\01\00\00\00\00\00\00\00\00\00\E7\04\01\00\BF\04\01\00\00\00\00\00\00\00\00\00\E8\04\01\00\C0\04\01\00\00\00\00\00\00\00\00\00\E9\04\01\00\C1\04\01\00\00\00\00\00\00\00\00\00\EA\04\01\00\C2\04\01\00\00\00\00\00\00\00\00\00\EB\04\01\00\C3\04\01\00\00\00\00\00\00\00\00\00\EC\04\01\00\C4\04\01\00\00\00\00\00\00\00\00\00\ED\04\01\00\C5\04\01\00\00\00\00\00\00\00\00\00\EE\04\01\00\C6\04\01\00\00\00\00\00\00\00\00\00\EF\04\01\00\C7\04\01\00\00\00\00\00\00\00\00\00\F0\04\01\00\C8\04\01\00\00\00\00\00\00\00\00\00\F1\04\01\00\C9\04\01\00\00\00\00\00\00\00\00\00\F2\04\01\00\CA\04\01\00\00\00\00\00\00\00\00\00\F3\04\01\00\CB\04\01\00\00\00\00\00\00\00\00\00\F4\04\01\00\CC\04\01\00\00\00\00\00\00\00\00\00\F5\04\01\00\CD\04\01\00\00\00\00\00\00\00\00\00\F6\04\01\00\CE\04\01\00\00\00\00\00\00\00\00\00\F7\04\01\00\CF\04\01\00\00\00\00\00\00\00\00\00\F8\04\01\00\D0\04\01\00\00\00\00\00\00\00\00\00\F9\04\01\00\D1\04\01\00\00\00\00\00\00\00\00\00\FA\04\01\00\D2\04\01\00\00\00\00\00\00\00\00\00\FB\04\01\00\D3\04\01\00\00\00\00\00\00\00\00\00\C0\0C\01\00\80\0C\01\00\00\00\00\00\00\00\00\00\C1\0C\01\00\81\0C\01\00\00\00\00\00\00\00\00\00\C2\0C\01\00\82\0C\01\00\00\00\00\00\00\00\00\00\C3\0C\01\00\83\0C\01\00\00\00\00\00\00\00\00\00\C4\0C\01\00\84\0C\01\00\00\00\00\00\00\00\00\00\C5\0C\01\00\85\0C\01\00\00\00\00\00\00\00\00\00\C6\0C\01\00\86\0C\01\00\00\00\00\00\00\00\00\00\C7\0C\01\00\87\0C\01\00\00\00\00\00\00\00\00\00\C8\0C\01\00\88\0C\01\00\00\00\00\00\00\00\00\00\C9\0C\01\00\89\0C\01\00\00\00\00\00\00\00\00\00\CA\0C\01\00\8A\0C\01\00\00\00\00\00\00\00\00\00\CB\0C\01\00\8B\0C\01\00\00\00\00\00\00\00\00\00\CC\0C\01\00\8C\0C\01\00\00\00\00\00\00\00\00\00\CD\0C\01\00\8D\0C\01\00\00\00\00\00\00\00\00\00\CE\0C\01\00\8E\0C\01\00\00\00\00\00\00\00\00\00\CF\0C\01\00\8F\0C\01\00\00\00\00\00\00\00\00\00\D0\0C\01\00\90\0C\01\00\00\00\00\00\00\00\00\00\D1\0C\01\00\91\0C\01\00\00\00\00\00\00\00\00\00\D2\0C\01\00\92\0C\01\00\00\00\00\00\00\00\00\00\D3\0C\01\00\93\0C\01\00\00\00\00\00\00\00\00\00\D4\0C\01\00\94\0C\01\00\00\00\00\00\00\00\00\00\D5\0C\01\00\95\0C\01\00\00\00\00\00\00\00\00\00\D6\0C\01\00\96\0C\01\00\00\00\00\00\00\00\00\00\D7\0C\01\00\97\0C\01\00\00\00\00\00\00\00\00\00\D8\0C\01\00\98\0C\01\00\00\00\00\00\00\00\00\00\D9\0C\01\00\99\0C\01\00\00\00\00\00\00\00\00\00\DA\0C\01\00\9A\0C\01\00\00\00\00\00\00\00\00\00\DB\0C\01\00\9B\0C\01\00\00\00\00\00\00\00\00\00\DC\0C\01\00\9C\0C\01\00\00\00\00\00\00\00\00\00\DD\0C\01\00\9D\0C\01\00\00\00\00\00\00\00\00\00\DE\0C\01\00\9E\0C\01\00\00\00\00\00\00\00\00\00\DF\0C\01\00\9F\0C\01\00\00\00\00\00\00\00\00\00\E0\0C\01\00\A0\0C\01\00\00\00\00\00\00\00\00\00\E1\0C\01\00\A1\0C\01\00\00\00\00\00\00\00\00\00\E2\0C\01\00\A2\0C\01\00\00\00\00\00\00\00\00\00\E3\0C\01\00\A3\0C\01\00\00\00\00\00\00\00\00\00\E4\0C\01\00\A4\0C\01\00\00\00\00\00\00\00\00\00\E5\0C\01\00\A5\0C\01\00\00\00\00\00\00\00\00\00\E6\0C\01\00\A6\0C\01\00\00\00\00\00\00\00\00\00\E7\0C\01\00\A7\0C\01\00\00\00\00\00\00\00\00\00\E8\0C\01\00\A8\0C\01\00\00\00\00\00\00\00\00\00\E9\0C\01\00\A9\0C\01\00\00\00\00\00\00\00\00\00\EA\0C\01\00\AA\0C\01\00\00\00\00\00\00\00\00\00\EB\0C\01\00\AB\0C\01\00\00\00\00\00\00\00\00\00\EC\0C\01\00\AC\0C\01\00\00\00\00\00\00\00\00\00\ED\0C\01\00\AD\0C\01\00\00\00\00\00\00\00\00\00\EE\0C\01\00\AE\0C\01\00\00\00\00\00\00\00\00\00\EF\0C\01\00\AF\0C\01\00\00\00\00\00\00\00\00\00\F0\0C\01\00\B0\0C\01\00\00\00\00\00\00\00\00\00\F1\0C\01\00\B1\0C\01\00\00\00\00\00\00\00\00\00\F2\0C\01\00\B2\0C\01\00\00\00\00\00\00\00\00\00\C0\18\01\00\A0\18\01\00\00\00\00\00\00\00\00\00\C1\18\01\00\A1\18\01\00\00\00\00\00\00\00\00\00\C2\18\01\00\A2\18\01\00\00\00\00\00\00\00\00\00\C3\18\01\00\A3\18\01\00\00\00\00\00\00\00\00\00\C4\18\01\00\A4\18\01\00\00\00\00\00\00\00\00\00\C5\18\01\00\A5\18\01\00\00\00\00\00\00\00\00\00\C6\18\01\00\A6\18\01\00\00\00\00\00\00\00\00\00\C7\18\01\00\A7\18\01\00\00\00\00\00\00\00\00\00\C8\18\01\00\A8\18\01\00\00\00\00\00\00\00\00\00\C9\18\01\00\A9\18\01\00\00\00\00\00\00\00\00\00\CA\18\01\00\AA\18\01\00\00\00\00\00\00\00\00\00\CB\18\01\00\AB\18\01\00\00\00\00\00\00\00\00\00\CC\18\01\00\AC\18\01\00\00\00\00\00\00\00\00\00\CD\18\01\00\AD\18\01\00\00\00\00\00\00\00\00\00\CE\18\01\00\AE\18\01\00\00\00\00\00\00\00\00\00\CF\18\01\00\AF\18\01\00\00\00\00\00\00\00\00\00\D0\18\01\00\B0\18\01\00\00\00\00\00\00\00\00\00\D1\18\01\00\B1\18\01\00\00\00\00\00\00\00\00\00\D2\18\01\00\B2\18\01\00\00\00\00\00\00\00\00\00\D3\18\01\00\B3\18\01\00\00\00\00\00\00\00\00\00\D4\18\01\00\B4\18\01\00\00\00\00\00\00\00\00\00\D5\18\01\00\B5\18\01\00\00\00\00\00\00\00\00\00\D6\18\01\00\B6\18\01\00\00\00\00\00\00\00\00\00\D7\18\01\00\B7\18\01\00\00\00\00\00\00\00\00\00\D8\18\01\00\B8\18\01\00\00\00\00\00\00\00\00\00\D9\18\01\00\B9\18\01\00\00\00\00\00\00\00\00\00\DA\18\01\00\BA\18\01\00\00\00\00\00\00\00\00\00\DB\18\01\00\BB\18\01\00\00\00\00\00\00\00\00\00\DC\18\01\00\BC\18\01\00\00\00\00\00\00\00\00\00\DD\18\01\00\BD\18\01\00\00\00\00\00\00\00\00\00\DE\18\01\00\BE\18\01\00\00\00\00\00\00\00\00\00\DF\18\01\00\BF\18\01\00\00\00\00\00\00\00\00\00`n\01\00@n\01\00\00\00\00\00\00\00\00\00an\01\00An\01\00\00\00\00\00\00\00\00\00bn\01\00Bn\01\00\00\00\00\00\00\00\00\00cn\01\00Cn\01\00\00\00\00\00\00\00\00\00dn\01\00Dn\01\00\00\00\00\00\00\00\00\00en\01\00En\01\00\00\00\00\00\00\00\00\00fn\01\00Fn\01\00\00\00\00\00\00\00\00\00gn\01\00Gn\01\00\00\00\00\00\00\00\00\00hn\01\00Hn\01\00\00\00\00\00\00\00\00\00in\01\00In\01\00\00\00\00\00\00\00\00\00jn\01\00Jn\01\00\00\00\00\00\00\00\00\00kn\01\00Kn\01\00\00\00\00\00\00\00\00\00ln\01\00Ln\01\00\00\00\00\00\00\00\00\00mn\01\00Mn\01\00\00\00\00\00\00\00\00\00nn\01\00Nn\01\00\00\00\00\00\00\00\00\00on\01\00On\01\00\00\00\00\00\00\00\00\00pn\01\00Pn\01\00\00\00\00\00\00\00\00\00qn\01\00Qn\01\00\00\00\00\00\00\00\00\00rn\01\00Rn\01\00\00\00\00\00\00\00\00\00sn\01\00Sn\01\00\00\00\00\00\00\00\00\00tn\01\00Tn\01\00\00\00\00\00\00\00\00\00un\01\00Un\01\00\00\00\00\00\00\00\00\00vn\01\00Vn\01\00\00\00\00\00\00\00\00\00wn\01\00Wn\01\00\00\00\00\00\00\00\00\00xn\01\00Xn\01\00\00\00\00\00\00\00\00\00yn\01\00Yn\01\00\00\00\00\00\00\00\00\00zn\01\00Zn\01\00\00\00\00\00\00\00\00\00{n\01\00[n\01\00\00\00\00\00\00\00\00\00|n\01\00\\n\01\00\00\00\00\00\00\00\00\00}n\01\00]n\01\00\00\00\00\00\00\00\00\00~n\01\00^n\01\00\00\00\00\00\00\00\00\00\7Fn\01\00_n\01\00\00\00\00\00\00\00\00\00\22\E9\01\00\00\E9\01\00\00\00\00\00\00\00\00\00#\E9\01\00\01\E9\01\00\00\00\00\00\00\00\00\00$\E9\01\00\02\E9\01\00\00\00\00\00\00\00\00\00%\E9\01\00\03\E9\01\00\00\00\00\00\00\00\00\00&\E9\01\00\04\E9\01\00\00\00\00\00\00\00\00\00'\E9\01\00\05\E9\01\00\00\00\00\00\00\00\00\00(\E9\01\00\06\E9\01\00\00\00\00\00\00\00\00\00)\E9\01\00\07\E9\01\00\00\00\00\00\00\00\00\00*\E9\01\00\08\E9\01\00\00\00\00\00\00\00\00\00+\E9\01\00\09\E9\01\00\00\00\00\00\00\00\00\00,\E9\01\00\0A\E9\01\00\00\00\00\00\00\00\00\00-\E9\01\00\0B\E9\01\00\00\00\00\00\00\00\00\00.\E9\01\00\0C\E9\01\00\00\00\00\00\00\00\00\00/\E9\01\00\0D\E9\01\00\00\00\00\00\00\00\00\000\E9\01\00\0E\E9\01\00\00\00\00\00\00\00\00\001\E9\01\00\0F\E9\01\00\00\00\00\00\00\00\00\002\E9\01\00\10\E9\01\00\00\00\00\00\00\00\00\003\E9\01\00\11\E9\01\00\00\00\00\00\00\00\00\004\E9\01\00\12\E9\01\00\00\00\00\00\00\00\00\005\E9\01\00\13\E9\01\00\00\00\00\00\00\00\00\006\E9\01\00\14\E9\01\00\00\00\00\00\00\00\00\007\E9\01\00\15\E9\01\00\00\00\00\00\00\00\00\008\E9\01\00\16\E9\01\00\00\00\00\00\00\00\00\009\E9\01\00\17\E9\01\00\00\00\00\00\00\00\00\00:\E9\01\00\18\E9\01\00\00\00\00\00\00\00\00\00;\E9\01\00\19\E9\01\00\00\00\00\00\00\00\00\00<\E9\01\00\1A\E9\01\00\00\00\00\00\00\00\00\00=\E9\01\00\1B\E9\01\00\00\00\00\00\00\00\00\00>\E9\01\00\1C\E9\01\00\00\00\00\00\00\00\00\00?\E9\01\00\1D\E9\01\00\00\00\00\00\00\00\00\00@\E9\01\00\1E\E9\01\00\00\00\00\00\00\00\00\00A\E9\01\00\1F\E9\01\00\00\00\00\00\00\00\00\00B\E9\01\00 \E9\01\00\00\00\00\00\00\00\00\00C\E9\01\00!\E9\01\00\00\00\00\00\00\00\00\00" }>, align 1
@alloc19223 = private unnamed_addr constant <{ [8 x i8] }> <{ [8 x i8] c"ResumeTy" }>, align 1
@vtable.1F = private unnamed_addr constant { void (i8***) addrspace(1)*, i16, i16, i1 (i8***, %"fmt::Formatter"*) addrspace(1)* } { void (i8***) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (i8***) addrspace(1)*), i16 2, i16 1, i1 (i8***, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h61efb25cb6bd03a2E" }, align 1
@alloc19224 = private unnamed_addr constant <{ [8 x i8] }> <{ [8 x i8] c"RawWaker" }>, align 1
@vtable.1G = private unnamed_addr constant { void ({}***) addrspace(1)*, i16, i16, i1 ({}***, %"fmt::Formatter"*) addrspace(1)* } { void ({}***) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void ({}***) addrspace(1)*), i16 2, i16 1, i1 ({}***, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17had8aba604c270c78E" }, align 1
@vtable.1H = private unnamed_addr constant { void (%"task::wake::RawWakerVTable"***) addrspace(1)*, i16, i16, i1 (%"task::wake::RawWakerVTable"***, %"fmt::Formatter"*) addrspace(1)* } { void (%"task::wake::RawWakerVTable"***) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (%"task::wake::RawWakerVTable"***) addrspace(1)*), i16 2, i16 1, i1 (%"task::wake::RawWakerVTable"***, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hfbbd8c150ba6a3dcE" }, align 1
@alloc19227 = private unnamed_addr constant <{ [14 x i8] }> <{ [14 x i8] c"RawWakerVTable" }>, align 1
@alloc19228 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"clone" }>, align 1
@vtable.1I = private unnamed_addr constant { void ({ i8*, i8* } ({}*) addrspace(1)***) addrspace(1)*, i16, i16, i1 ({ i8*, i8* } ({}*) addrspace(1)***, %"fmt::Formatter"*) addrspace(1)* } { void ({ i8*, i8* } ({}*) addrspace(1)***) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void ({ i8*, i8* } ({}*) addrspace(1)***) addrspace(1)*), i16 2, i16 1, i1 ({ i8*, i8* } ({}*) addrspace(1)***, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h2dc31f322889dd28E" }, align 1
@alloc19229 = private unnamed_addr constant <{ [4 x i8] }> <{ [4 x i8] c"wake" }>, align 1
@vtable.1J = private unnamed_addr constant { void (void ({}*) addrspace(1)***) addrspace(1)*, i16, i16, i1 (void ({}*) addrspace(1)***, %"fmt::Formatter"*) addrspace(1)* } { void (void ({}*) addrspace(1)***) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (void ({}*) addrspace(1)***) addrspace(1)*), i16 2, i16 1, i1 (void ({}*) addrspace(1)***, %"fmt::Formatter"*) addrspace(1)* bitcast (i1 ({ i8*, i8* } ({}*) addrspace(1)***, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h2dc31f322889dd28E" to i1 (void ({}*) addrspace(1)***, %"fmt::Formatter"*) addrspace(1)*) }, align 1
@alloc19230 = private unnamed_addr constant <{ [11 x i8] }> <{ [11 x i8] c"wake_by_ref" }>, align 1
@alloc19231 = private unnamed_addr constant <{ [4 x i8] }> <{ [4 x i8] c"drop" }>, align 1
@alloc19232 = private unnamed_addr constant <{ [6 x i8] }> <{ [6 x i8] c"Layout" }>, align 1
@alloc19233 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"size_" }>, align 1
@alloc19234 = private unnamed_addr constant <{ [6 x i8] }> <{ [6 x i8] c"align_" }>, align 1
@vtable.1K = private unnamed_addr constant { void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* } { void (i16**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (i16**) addrspace(1)*), i16 2, i16 1, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h00488a9b328e83d3E" }, align 1
@alloc19235 = private unnamed_addr constant <{ [9 x i8] }> <{ [9 x i8] c"LayoutErr" }>, align 1
@alloc19236 = private unnamed_addr constant <{ [7 x i8] }> <{ [7 x i8] c"private" }>, align 1
@alloc19237 = private unnamed_addr constant <{ [8 x i8] }> <{ [8 x i8] c"AllocErr" }>, align 1
@alloc19238 = private unnamed_addr constant <{ [6 x i8] }> <{ [6 x i8] c"Zeroed" }>, align 1
@alloc19239 = private unnamed_addr constant <{ [13 x i8] }> <{ [13 x i8] c"Uninitialized" }>, align 1
@alloc19240 = private unnamed_addr constant <{ [11 x i8] }> <{ [11 x i8] c"MemoryBlock" }>, align 1
@alloc19241 = private unnamed_addr constant <{ [3 x i8] }> <{ [3 x i8] c"ptr" }>, align 1
@vtable.1L = private unnamed_addr constant { void (i8***) addrspace(1)*, i16, i16, i1 (i8***, %"fmt::Formatter"*) addrspace(1)* } { void (i8***) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (i8***) addrspace(1)*), i16 2, i16 1, i1 (i8***, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h61efb25cb6bd03a2E" }, align 1
@alloc19242 = private unnamed_addr constant <{ [4 x i8] }> <{ [4 x i8] c"size" }>, align 1
@alloc19243 = private unnamed_addr constant <{ [7 x i8] }> <{ [7 x i8] c"InPlace" }>, align 1
@alloc19244 = private unnamed_addr constant <{ [7 x i8] }> <{ [7 x i8] c"MayMove" }>, align 1
@alloc19245 = private unnamed_addr constant <{ [4 x i8] }> <{ [4 x i8] c"u8x2" }>, align 1
@alloc19246 = private unnamed_addr constant <{ [4 x i8] }> <{ [4 x i8] c"i8x2" }>, align 1
@vtable.1M = private unnamed_addr constant { void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* } { void (i8**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (i8**) addrspace(1)*), i16 2, i16 1, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hb0c028c27cc14cbeE" }, align 1
@alloc19247 = private unnamed_addr constant <{ [4 x i8] }> <{ [4 x i8] c"u8x4" }>, align 1
@alloc19248 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"u16x2" }>, align 1
@alloc19249 = private unnamed_addr constant <{ [4 x i8] }> <{ [4 x i8] c"i8x4" }>, align 1
@alloc19250 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"i16x2" }>, align 1
@alloc19251 = private unnamed_addr constant <{ [4 x i8] }> <{ [4 x i8] c"u8x8" }>, align 1
@alloc19252 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"u16x4" }>, align 1
@alloc19253 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"u32x2" }>, align 1
@alloc19254 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"u64x1" }>, align 1
@alloc19255 = private unnamed_addr constant <{ [4 x i8] }> <{ [4 x i8] c"i8x8" }>, align 1
@alloc19256 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"i16x4" }>, align 1
@alloc19257 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"i32x2" }>, align 1
@vtable.1N = private unnamed_addr constant { void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* } { void (i32**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (i32**) addrspace(1)*), i16 2, i16 1, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h434e85a496737504E" }, align 1
@alloc19258 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"i64x1" }>, align 1
@alloc19259 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"f32x2" }>, align 1
@vtable.1O = private unnamed_addr constant { void (float**) addrspace(1)*, i16, i16, i1 (float**, %"fmt::Formatter"*) addrspace(1)* } { void (float**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (float**) addrspace(1)*), i16 2, i16 1, i1 (float**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h89bf6075c5fedd4cE" }, align 1
@alloc19260 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"u8x16" }>, align 1
@alloc19261 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"u16x8" }>, align 1
@alloc19262 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"u32x4" }>, align 1
@alloc19263 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"u64x2" }>, align 1
@alloc19264 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"i8x16" }>, align 1
@alloc19265 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"i16x8" }>, align 1
@alloc19266 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"i32x4" }>, align 1
@alloc19267 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"i64x2" }>, align 1
@alloc19268 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"f32x4" }>, align 1
@alloc19269 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"f64x2" }>, align 1
@vtable.1P = private unnamed_addr constant { void (double**) addrspace(1)*, i16, i16, i1 (double**, %"fmt::Formatter"*) addrspace(1)* } { void (double**) addrspace(1)* bitcast (void (%"str::SplitInternal<char>"*) addrspace(1)* @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E to void (double**) addrspace(1)*), i16 2, i16 1, i1 (double**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h13ec643071344407E" }, align 1
@alloc19270 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"m8x16" }>, align 1
@alloc19271 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"m16x8" }>, align 1
@alloc19272 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"m32x4" }>, align 1
@alloc19273 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"m64x2" }>, align 1
@alloc19274 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"u8x32" }>, align 1
@alloc19275 = private unnamed_addr constant <{ [6 x i8] }> <{ [6 x i8] c"u16x16" }>, align 1
@alloc19276 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"u32x8" }>, align 1
@alloc19277 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"u64x4" }>, align 1
@alloc19278 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"i8x32" }>, align 1
@alloc19279 = private unnamed_addr constant <{ [6 x i8] }> <{ [6 x i8] c"i16x16" }>, align 1
@alloc19280 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"i32x8" }>, align 1
@alloc19281 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"i64x4" }>, align 1
@alloc19282 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"f32x8" }>, align 1
@alloc19283 = private unnamed_addr constant <{ [6 x i8] }> <{ [6 x i8] c"i32x16" }>, align 1
@alloc19284 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"i64x8" }>, align 1
@alloc19285 = private unnamed_addr constant <{ [5 x i8] }> <{ [5 x i8] c"u64x8" }>, align 1
@"switch.table._ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$9size_hint17h58612c0b5d28dfdaE" = private unnamed_addr constant [8 x i16] [i16 4, i16 5, i16 0, i16 0, i16 0, i16 1, i16 2, i16 3], align 1
@"switch.table._ZN86_$LT$core..char..CaseMappingIter$u20$as$u20$core..iter..traits..iterator..Iterator$GT$9size_hint17hf43ae4ae63901416E" = private unnamed_addr constant [4 x i16] [i16 1, i16 0, i16 3, i16 2], align 1
@switch.table._ZN4core3fmt9Formatter5align17h74799e5bbc609da6E = private unnamed_addr constant [4 x i8] c"\02\03\00\01", align 1
@"switch.table._ZN63_$LT$core..str..EscapeUnicode$u20$as$u20$core..fmt..Display$GT$3fmt17hcefaf5179aadfe2dE.195" = private unnamed_addr constant [8 x i8] c"\04\05\00\00\00\01\02\03", align 1

@"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u8$GT$3fmt17h60e0f1f08fe98d54E" = unnamed_addr alias i1 (i8*, %"fmt::Formatter"*), i1 (i8*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i8$GT$3fmt17h7943257fc24ac32eE"
@"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u8$GT$3fmt17he584874f14cc0ebbE" = unnamed_addr alias i1 (i8*, %"fmt::Formatter"*), i1 (i8*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i8$GT$3fmt17h405967de1e4d6acaE"
@"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Binary$u20$for$u20$u8$GT$3fmt17h34dd9c76a9c0174bE" = unnamed_addr alias i1 (i8*, %"fmt::Formatter"*), i1 (i8*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Binary$u20$for$u20$i8$GT$3fmt17hbc734efa183f2c21E"
@"_ZN4core3fmt3num49_$LT$impl$u20$core..fmt..Octal$u20$for$u20$u8$GT$3fmt17h407f1408e7bab1cbE" = unnamed_addr alias i1 (i8*, %"fmt::Formatter"*), i1 (i8*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num49_$LT$impl$u20$core..fmt..Octal$u20$for$u20$i8$GT$3fmt17h6a53c27400875c65E"
@"_ZN4core3fmt3num51_$LT$impl$u20$core..fmt..Binary$u20$for$u20$u32$GT$3fmt17h91fe6c9098114047E" = unnamed_addr alias i1 (i32*, %"fmt::Formatter"*), i1 (i32*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num51_$LT$impl$u20$core..fmt..Binary$u20$for$u20$i32$GT$3fmt17ha09d6646116c986eE"
@"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Octal$u20$for$u20$u32$GT$3fmt17he28c477778783c6fE" = unnamed_addr alias i1 (i32*, %"fmt::Formatter"*), i1 (i32*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Octal$u20$for$u20$i32$GT$3fmt17hc86fdb5c97f09d41E"
@"_ZN4core3fmt3num51_$LT$impl$u20$core..fmt..Binary$u20$for$u20$u64$GT$3fmt17h5314b23d4c6f1d7dE" = unnamed_addr alias i1 (i64*, %"fmt::Formatter"*), i1 (i64*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num51_$LT$impl$u20$core..fmt..Binary$u20$for$u20$i64$GT$3fmt17h4583eb7fcf02bafeE"
@"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Octal$u20$for$u20$u64$GT$3fmt17h693ab53aeb3b1445E" = unnamed_addr alias i1 (i64*, %"fmt::Formatter"*), i1 (i64*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Octal$u20$for$u20$i64$GT$3fmt17hdcc035834c8d4f67E"
@"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..Binary$u20$for$u20$u128$GT$3fmt17hf56dc593f2bad769E" = unnamed_addr alias i1 (i128*, %"fmt::Formatter"*), i1 (i128*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..Binary$u20$for$u20$i128$GT$3fmt17h6377cbff058dbecdE"
@"_ZN4core3fmt3num51_$LT$impl$u20$core..fmt..Octal$u20$for$u20$u128$GT$3fmt17h77fca972d7f27044E" = unnamed_addr alias i1 (i128*, %"fmt::Formatter"*), i1 (i128*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num51_$LT$impl$u20$core..fmt..Octal$u20$for$u20$i128$GT$3fmt17h018f102a3a752ccbE"
@"_ZN99_$LT$core..num..TryFromIntError$u20$as$u20$core..convert..From$LT$core..convert..Infallible$GT$$GT$4from17h9ce398bb311b6110E" = unnamed_addr alias void (), void () addrspace(1)* @"_ZN103_$LT$core..array..TryFromSliceError$u20$as$u20$core..convert..From$LT$core..convert..Infallible$GT$$GT$4from17hf3d6d7bc57846785E"
@"_ZN79_$LT$core..num..TryFromIntError$u20$as$u20$core..convert..From$LT$$u21$$GT$$GT$4from17h757302ba202aeff0E" = unnamed_addr alias void (), void () addrspace(1)* @"_ZN103_$LT$core..array..TryFromSliceError$u20$as$u20$core..convert..From$LT$core..convert..Infallible$GT$$GT$4from17hf3d6d7bc57846785E"
@"_ZN78_$LT$core..convert..Infallible$u20$as$u20$core..convert..From$LT$$u21$$GT$$GT$4from17h098cea88ae8cc77aE" = unnamed_addr alias void (), void () addrspace(1)* @"_ZN103_$LT$core..array..TryFromSliceError$u20$as$u20$core..convert..From$LT$core..convert..Infallible$GT$$GT$4from17hf3d6d7bc57846785E"
@"_ZN4core3num23_$LT$impl$u20$usize$GT$26wrapping_next_power_of_two17h8be73f0fb57d394bE" = unnamed_addr alias i16 (i16), i16 (i16) addrspace(1)* @"_ZN4core3num21_$LT$impl$u20$u16$GT$26wrapping_next_power_of_two17h170a8d2e2a69f778E"
@"_ZN4core3num86_$LT$impl$u20$core..convert..From$LT$core..num..NonZeroUsize$GT$$u20$for$u20$usize$GT$4from17h22188a5d594d53a4E" = unnamed_addr alias i16 (i16), i16 (i16) addrspace(1)* @"_ZN4core3num82_$LT$impl$u20$core..convert..From$LT$core..num..NonZeroI16$GT$$u20$for$u20$i16$GT$4from17ha2db8fded0754f73E"
@"_ZN4core3num80_$LT$impl$u20$core..convert..From$LT$core..num..NonZeroU8$GT$$u20$for$u20$u8$GT$4from17ha7d1cb0110cf89f0E" = unnamed_addr alias i8 (i8), i8 (i8) addrspace(1)* @"_ZN42_$LT$i8$u20$as$u20$core..fmt..num..Int$GT$7from_u817hf7ce69d8ef2c8667E"
@"_ZN4core3num82_$LT$impl$u20$core..convert..From$LT$core..num..NonZeroU16$GT$$u20$for$u20$u16$GT$4from17ha02095cb45b617ddE" = unnamed_addr alias i16 (i16), i16 (i16) addrspace(1)* @"_ZN4core3num82_$LT$impl$u20$core..convert..From$LT$core..num..NonZeroI16$GT$$u20$for$u20$i16$GT$4from17ha2db8fded0754f73E"
@"_ZN4core3num82_$LT$impl$u20$core..convert..From$LT$core..num..NonZeroU32$GT$$u20$for$u20$u32$GT$4from17h23f59eca4a885c18E" = unnamed_addr alias i32 (i32), i32 (i32) addrspace(1)* @"_ZN4core3num82_$LT$impl$u20$core..convert..From$LT$core..num..NonZeroI32$GT$$u20$for$u20$i32$GT$4from17h04f1f7f042d837ddE"
@"_ZN4core3num82_$LT$impl$u20$core..convert..From$LT$core..num..NonZeroU64$GT$$u20$for$u20$u64$GT$4from17h87dfdd9609f621fcE" = unnamed_addr alias i64 (i64), i64 (i64) addrspace(1)* @"_ZN4core3num82_$LT$impl$u20$core..convert..From$LT$core..num..NonZeroI64$GT$$u20$for$u20$i64$GT$4from17h69add7030fe88fa3E"
@"_ZN4core3num84_$LT$impl$u20$core..convert..From$LT$core..num..NonZeroU128$GT$$u20$for$u20$u128$GT$4from17h013e382d62fb7d58E" = unnamed_addr alias i128 (i128), i128 (i128) addrspace(1)* @"_ZN4core3num84_$LT$impl$u20$core..convert..From$LT$core..num..NonZeroI128$GT$$u20$for$u20$i128$GT$4from17hb51029429c636000E"
@"_ZN4core3num86_$LT$impl$u20$core..convert..From$LT$core..num..NonZeroIsize$GT$$u20$for$u20$isize$GT$4from17h20bf82a1c85e8d5aE" = unnamed_addr alias i16 (i16), i16 (i16) addrspace(1)* @"_ZN4core3num82_$LT$impl$u20$core..convert..From$LT$core..num..NonZeroI16$GT$$u20$for$u20$i16$GT$4from17ha2db8fded0754f73E"
@"_ZN4core3num80_$LT$impl$u20$core..convert..From$LT$core..num..NonZeroI8$GT$$u20$for$u20$i8$GT$4from17h5954b55abea81e53E" = unnamed_addr alias i8 (i8), i8 (i8) addrspace(1)* @"_ZN42_$LT$i8$u20$as$u20$core..fmt..num..Int$GT$7from_u817hf7ce69d8ef2c8667E"
@"_ZN42_$LT$u8$u20$as$u20$core..fmt..num..Int$GT$7from_u817h778071c97d5ca06bE" = unnamed_addr alias i8 (i8), i8 (i8) addrspace(1)* @"_ZN42_$LT$i8$u20$as$u20$core..fmt..num..Int$GT$7from_u817hf7ce69d8ef2c8667E"
@"_ZN4core3cmp5impls57_$LT$impl$u20$core..cmp..PartialOrd$u20$for$u20$$u21$$GT$11partial_cmp17hc9a2f440b57343a1E" = unnamed_addr alias i8 ({ [0 x i8] }*, { [0 x i8] }*), i8 ({ [0 x i8] }*, { [0 x i8] }*) addrspace(1)* @"_ZN4core3cmp5impls50_$LT$impl$u20$core..cmp..Ord$u20$for$u20$$u21$$GT$3cmp17hb189e8ca59069ca7E"
@"_ZN64_$LT$core..convert..Infallible$u20$as$u20$core..fmt..Display$GT$3fmt17h40d973c37d65c4f8E" = unnamed_addr alias i1 (%"convert::Infallible"*, %"fmt::Formatter"*), bitcast (i1 ({ [0 x i8] }*, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$u21$$u20$as$u20$core..fmt..Debug$GT$3fmt17h4ba6093cbc78122dE" to i1 (%"convert::Infallible"*, %"fmt::Formatter"*) addrspace(1)*)
@"_ZN66_$LT$core..convert..Infallible$u20$as$u20$core..cmp..PartialEq$GT$2eq17hb961f4276fbf3151E" = unnamed_addr alias i1 (%"convert::Infallible"*, %"convert::Infallible"*), bitcast (i1 ({ [0 x i8] }*, { [0 x i8] }*) addrspace(1)* @"_ZN4core3cmp5impls56_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$$u21$$GT$2eq17h4809a88bca9d7284E" to i1 (%"convert::Infallible"*, %"convert::Infallible"*) addrspace(1)*)
@"_ZN67_$LT$core..convert..Infallible$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17ha3af77d4a6b975e7E" = unnamed_addr alias i8 (%"convert::Infallible"*, %"convert::Infallible"*), bitcast (i8 ({ [0 x i8] }*, { [0 x i8] }*) addrspace(1)* @"_ZN4core3cmp5impls50_$LT$impl$u20$core..cmp..Ord$u20$for$u20$$u21$$GT$3cmp17hb189e8ca59069ca7E" to i8 (%"convert::Infallible"*, %"convert::Infallible"*) addrspace(1)*)
@"_ZN60_$LT$core..convert..Infallible$u20$as$u20$core..cmp..Ord$GT$3cmp17h6a2772269a471984E" = unnamed_addr alias i8 (%"convert::Infallible"*, %"convert::Infallible"*), bitcast (i8 ({ [0 x i8] }*, { [0 x i8] }*) addrspace(1)* @"_ZN4core3cmp5impls50_$LT$impl$u20$core..cmp..Ord$u20$for$u20$$u21$$GT$3cmp17hb189e8ca59069ca7E" to i8 (%"convert::Infallible"*, %"convert::Infallible"*) addrspace(1)*)
@"_ZN62_$LT$core..convert..Infallible$u20$as$u20$core..fmt..Debug$GT$3fmt17h8a5b84c0019aee05E" = unnamed_addr alias i1 (%"convert::Infallible"*, %"fmt::Formatter"*), bitcast (i1 ({ [0 x i8] }*, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$u21$$u20$as$u20$core..fmt..Debug$GT$3fmt17h4ba6093cbc78122dE" to i1 (%"convert::Infallible"*, %"fmt::Formatter"*) addrspace(1)*)
@"_ZN44_$LT$$u21$$u20$as$u20$core..fmt..Display$GT$3fmt17ha9350854af752202E" = unnamed_addr alias i1 ({ [0 x i8] }*, %"fmt::Formatter"*), i1 ({ [0 x i8] }*, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$u21$$u20$as$u20$core..fmt..Debug$GT$3fmt17h4ba6093cbc78122dE"
@"_ZN45_$LT$isize$u20$as$u20$core..fmt..num..Int$GT$7from_u817h44fa9c26b99d77b3E" = unnamed_addr alias i16 (i8), i16 (i8) addrspace(1)* @"_ZN43_$LT$i16$u20$as$u20$core..fmt..num..Int$GT$7from_u817h6040fe633953f297E"
@"_ZN43_$LT$u16$u20$as$u20$core..fmt..num..Int$GT$7from_u817hdb7998e9469ad797E" = unnamed_addr alias i16 (i8), i16 (i8) addrspace(1)* @"_ZN43_$LT$i16$u20$as$u20$core..fmt..num..Int$GT$7from_u817h6040fe633953f297E"
@"_ZN43_$LT$u32$u20$as$u20$core..fmt..num..Int$GT$7from_u817h201e16e65c1f8284E" = unnamed_addr alias i32 (i8), i32 (i8) addrspace(1)* @"_ZN43_$LT$i32$u20$as$u20$core..fmt..num..Int$GT$7from_u817h6e89768d278f5116E"
@"_ZN43_$LT$u64$u20$as$u20$core..fmt..num..Int$GT$7from_u817h78241e3c7ab1431eE" = unnamed_addr alias i64 (i8), i64 (i8) addrspace(1)* @"_ZN43_$LT$i64$u20$as$u20$core..fmt..num..Int$GT$7from_u817h2c359657a5cb62ebE"
@"_ZN44_$LT$u128$u20$as$u20$core..fmt..num..Int$GT$7from_u817h38f4cad02c1663b3E" = unnamed_addr alias i128 (i8), i128 (i8) addrspace(1)* @"_ZN44_$LT$i128$u20$as$u20$core..fmt..num..Int$GT$7from_u817h7731059343a74512E"
@"_ZN45_$LT$usize$u20$as$u20$core..fmt..num..Int$GT$7from_u817h8791a01ad2c0837eE" = unnamed_addr alias i16 (i8), i16 (i8) addrspace(1)* @"_ZN43_$LT$i16$u20$as$u20$core..fmt..num..Int$GT$7from_u817h6040fe633953f297E"
@"_ZN45_$LT$isize$u20$as$u20$core..fmt..num..Int$GT$5to_u817h05745a57eacf7a07E" = unnamed_addr alias i8 (i16*), i8 (i16*) addrspace(1)* @"_ZN43_$LT$i16$u20$as$u20$core..fmt..num..Int$GT$5to_u817h8495f6252eae5181E"
@"_ZN43_$LT$u16$u20$as$u20$core..fmt..num..Int$GT$5to_u817he1e95cfb55b28273E" = unnamed_addr alias i8 (i16*), i8 (i16*) addrspace(1)* @"_ZN43_$LT$i16$u20$as$u20$core..fmt..num..Int$GT$5to_u817h8495f6252eae5181E"
@"_ZN43_$LT$u32$u20$as$u20$core..fmt..num..Int$GT$5to_u817h26bbe95ad649cf87E" = unnamed_addr alias i8 (i32*), i8 (i32*) addrspace(1)* @"_ZN43_$LT$i32$u20$as$u20$core..fmt..num..Int$GT$5to_u817h7de54af5a717242bE"
@"_ZN43_$LT$u32$u20$as$u20$core..fmt..num..Int$GT$6to_u1617h9149e7b8e5cb292dE" = unnamed_addr alias i16 (i32*), i16 (i32*) addrspace(1)* @"_ZN43_$LT$i32$u20$as$u20$core..fmt..num..Int$GT$6to_u1617h7f672626f4ddf678E"
@"_ZN43_$LT$u64$u20$as$u20$core..fmt..num..Int$GT$5to_u817h1c2c26a56d61056dE" = unnamed_addr alias i8 (i64*), i8 (i64*) addrspace(1)* @"_ZN43_$LT$i64$u20$as$u20$core..fmt..num..Int$GT$5to_u817h92166536da2d75dcE"
@"_ZN43_$LT$u64$u20$as$u20$core..fmt..num..Int$GT$6to_u1617h18547926de0cd299E" = unnamed_addr alias i16 (i64*), i16 (i64*) addrspace(1)* @"_ZN43_$LT$i64$u20$as$u20$core..fmt..num..Int$GT$6to_u1617h00c62a5e0e1777daE"
@"_ZN43_$LT$u64$u20$as$u20$core..fmt..num..Int$GT$6to_u3217h936ea6b0bc84bb05E" = unnamed_addr alias i32 (i64*), i32 (i64*) addrspace(1)* @"_ZN43_$LT$i64$u20$as$u20$core..fmt..num..Int$GT$6to_u3217h1ae4aeaaf04e3954E"
@"_ZN44_$LT$u128$u20$as$u20$core..fmt..num..Int$GT$5to_u817h73da7fd0783be4f8E" = unnamed_addr alias i8 (i128*), i8 (i128*) addrspace(1)* @"_ZN44_$LT$i128$u20$as$u20$core..fmt..num..Int$GT$5to_u817heb077c9682d01badE"
@"_ZN44_$LT$u128$u20$as$u20$core..fmt..num..Int$GT$6to_u1617h221e43b2a774b376E" = unnamed_addr alias i16 (i128*), i16 (i128*) addrspace(1)* @"_ZN44_$LT$i128$u20$as$u20$core..fmt..num..Int$GT$6to_u1617hb0151545321a5863E"
@"_ZN44_$LT$u128$u20$as$u20$core..fmt..num..Int$GT$6to_u3217hb6cd64cf7e869d67E" = unnamed_addr alias i32 (i128*), i32 (i128*) addrspace(1)* @"_ZN44_$LT$i128$u20$as$u20$core..fmt..num..Int$GT$6to_u3217hd613b485699fc404E"
@"_ZN44_$LT$u128$u20$as$u20$core..fmt..num..Int$GT$6to_u6417hd83b8c96274cca59E" = unnamed_addr alias i64 (i128*), i64 (i128*) addrspace(1)* @"_ZN44_$LT$i128$u20$as$u20$core..fmt..num..Int$GT$6to_u6417h7573984034ab6802E"
@"_ZN45_$LT$usize$u20$as$u20$core..fmt..num..Int$GT$5to_u817hf555faf0e217ba07E" = unnamed_addr alias i8 (i16*), i8 (i16*) addrspace(1)* @"_ZN43_$LT$i16$u20$as$u20$core..fmt..num..Int$GT$5to_u817h8495f6252eae5181E"
@"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u32$GT$3fmt17h4ca75baaf8eb9a05E" = unnamed_addr alias i1 (i32*, %"fmt::Formatter"*), i1 (i32*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i32$GT$3fmt17h980e7dc46f13d3abE"
@"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u32$GT$3fmt17h0202965dcf7330deE" = unnamed_addr alias i1 (i32*, %"fmt::Formatter"*), i1 (i32*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i32$GT$3fmt17h9869bb78d76c2b48E"
@"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u64$GT$3fmt17hbd45bfb477ec6170E" = unnamed_addr alias i1 (i64*, %"fmt::Formatter"*), i1 (i64*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i64$GT$3fmt17he773bf19e2d9299eE"
@"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u64$GT$3fmt17h3d4cc53cb3cf6b58E" = unnamed_addr alias i1 (i64*, %"fmt::Formatter"*), i1 (i64*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i64$GT$3fmt17hd747966a00df068dE"
@"_ZN4core3fmt3num54_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u128$GT$3fmt17h34c547e6a03ac3a9E" = unnamed_addr alias i1 (i128*, %"fmt::Formatter"*), i1 (i128*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num54_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i128$GT$3fmt17hff3976b100fb1b9aE"
@"_ZN4core3fmt3num54_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u128$GT$3fmt17hbbace21965093e37E" = unnamed_addr alias i1 (i128*, %"fmt::Formatter"*), i1 (i128*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num54_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i128$GT$3fmt17ha1a408fa56c0179eE"
@"_ZN4core3fmt3num3imp54_$LT$impl$u20$core..fmt..Display$u20$for$u20$usize$GT$3fmt17h322c7240ebdab40eE" = unnamed_addr alias i1 (i16*, %"fmt::Formatter"*), i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u16$GT$3fmt17ha65397985f1509e1E"
@_ZN4core3fmt8builders9DebugList5entry17h955fc248ae873a0eE = unnamed_addr alias %"fmt::builders::DebugList"* (%"fmt::builders::DebugList"*, {}*, [3 x i16]*), bitcast (%"fmt::builders::DebugSet"* (%"fmt::builders::DebugSet"*, {}*, [3 x i16]*) addrspace(1)* @_ZN4core3fmt8builders8DebugSet5entry17hab71764ecc2a5a61E to %"fmt::builders::DebugList"* (%"fmt::builders::DebugList"*, {}*, [3 x i16]*) addrspace(1)*)
@"_ZN45_$LT$isize$u20$as$u20$core..fmt..num..Int$GT$6to_u3217h70d35af8164a447aE" = unnamed_addr alias i32 (i16*), i32 (i16*) addrspace(1)* @"_ZN43_$LT$i16$u20$as$u20$core..fmt..num..Int$GT$6to_u3217h0fb0820f10a2243dE"
@"_ZN45_$LT$isize$u20$as$u20$core..fmt..num..Int$GT$6to_u6417ha4a5fa2ff0e3230dE" = unnamed_addr alias i64 (i16*), i64 (i16*) addrspace(1)* @"_ZN43_$LT$i16$u20$as$u20$core..fmt..num..Int$GT$6to_u6417hcea3caa116f89affE"
@"_ZN45_$LT$isize$u20$as$u20$core..fmt..num..Int$GT$7to_u12817h43818c45bfe7bbbfE" = unnamed_addr alias i128 (i16*), i128 (i16*) addrspace(1)* @"_ZN43_$LT$i16$u20$as$u20$core..fmt..num..Int$GT$7to_u12817h71acd2280271ccb6E"
@"_ZN59_$LT$core..fmt..Arguments$u20$as$u20$core..fmt..Display$GT$3fmt17h5b241885dd078dc0E" = unnamed_addr alias i1 (%"fmt::Arguments"*, %"fmt::Formatter"*), i1 (%"fmt::Arguments"*, %"fmt::Formatter"*) addrspace(1)* @"_ZN57_$LT$core..fmt..Arguments$u20$as$u20$core..fmt..Debug$GT$3fmt17h372d321edf14a66aE"
@"_ZN57_$LT$core..fmt..Formatter$u20$as$u20$core..fmt..Write$GT$9write_fmt17h18548904c0fd7ec4E" = unnamed_addr alias i1 (%"fmt::Formatter"*, %"fmt::Arguments"*), i1 (%"fmt::Formatter"*, %"fmt::Arguments"*) addrspace(1)* @_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E
@"_ZN82_$LT$dyn$u20$core..any..Any$u2b$core..marker..Send$u20$as$u20$core..fmt..Debug$GT$3fmt17ha4437650326f9988E" = unnamed_addr alias i1 ({}*, [3 x i16]*, %"fmt::Formatter"*), i1 ({}*, [3 x i16]*, %"fmt::Formatter"*) addrspace(1)* @"_ZN105_$LT$dyn$u20$core..any..Any$u2b$core..marker..Send$u2b$core..marker..Sync$u20$as$u20$core..fmt..Debug$GT$3fmt17ha6f95ce58d12c9a1E"
@"_ZN59_$LT$dyn$u20$core..any..Any$u20$as$u20$core..fmt..Debug$GT$3fmt17h5cf68418baeab182E" = unnamed_addr alias i1 ({}*, [3 x i16]*, %"fmt::Formatter"*), i1 ({}*, [3 x i16]*, %"fmt::Formatter"*) addrspace(1)* @"_ZN105_$LT$dyn$u20$core..any..Any$u2b$core..marker..Send$u2b$core..marker..Sync$u20$as$u20$core..fmt..Debug$GT$3fmt17ha6f95ce58d12c9a1E"
@"_ZN4core3num54_$LT$impl$u20$core..str..FromStr$u20$for$u20$usize$GT$8from_str17hbac0790142415f7cE" = unnamed_addr alias void (%"result::Result<usize, num::ParseIntError>"*, [0 x i8]*, i16), bitcast (void (%"result::Result<u16, num::ParseIntError>"*, [0 x i8]*, i16) addrspace(1)* @"_ZN4core3num52_$LT$impl$u20$core..str..FromStr$u20$for$u20$u16$GT$8from_str17h47116b27e517701fE" to void (%"result::Result<usize, num::ParseIntError>"*, [0 x i8]*, i16) addrspace(1)*)
@_ZN4core4char6decode16DecodeUtf16Error18unpaired_surrogate17h83c7352b77bdd73bE = unnamed_addr alias i16 (i16*), i16 (i16*) addrspace(1)* @"_ZN43_$LT$i16$u20$as$u20$core..fmt..num..Int$GT$6to_u1617h8cbb65656a32a72dE"
@"_ZN45_$LT$isize$u20$as$u20$core..fmt..num..Int$GT$6to_u1617h1cab6d03406a4cdbE" = unnamed_addr alias i16 (i16*), i16 (i16*) addrspace(1)* @"_ZN43_$LT$i16$u20$as$u20$core..fmt..num..Int$GT$6to_u1617h8cbb65656a32a72dE"
@"_ZN42_$LT$u8$u20$as$u20$core..fmt..num..Int$GT$5to_u817h52cb271fd6a01721E" = unnamed_addr alias i8 (i8*), i8 (i8*) addrspace(1)* @"_ZN42_$LT$i8$u20$as$u20$core..fmt..num..Int$GT$5to_u817h95e1881cce7a03c8E"
@"_ZN43_$LT$u16$u20$as$u20$core..fmt..num..Int$GT$6to_u1617hce5ada8231db6282E" = unnamed_addr alias i16 (i16*), i16 (i16*) addrspace(1)* @"_ZN43_$LT$i16$u20$as$u20$core..fmt..num..Int$GT$6to_u1617h8cbb65656a32a72dE"
@"_ZN43_$LT$u32$u20$as$u20$core..fmt..num..Int$GT$6to_u3217h00873bd4b3652ce2E" = unnamed_addr alias i32 (i32*), i32 (i32*) addrspace(1)* @"_ZN43_$LT$i32$u20$as$u20$core..fmt..num..Int$GT$6to_u3217h28296c6cb7b4fd58E"
@"_ZN43_$LT$u64$u20$as$u20$core..fmt..num..Int$GT$6to_u6417h7ef01d77e0d9571eE" = unnamed_addr alias i64 (i64*), i64 (i64*) addrspace(1)* @"_ZN43_$LT$i64$u20$as$u20$core..fmt..num..Int$GT$6to_u6417hacb58487baf6aebeE"
@"_ZN44_$LT$u128$u20$as$u20$core..fmt..num..Int$GT$7to_u12817h3e683c9310df84f0E" = unnamed_addr alias i128 (i128*), i128 (i128*) addrspace(1)* @"_ZN44_$LT$i128$u20$as$u20$core..fmt..num..Int$GT$7to_u12817h2ae67584dcb2366dE"
@"_ZN45_$LT$usize$u20$as$u20$core..fmt..num..Int$GT$6to_u1617hb98caf998b0d43f8E" = unnamed_addr alias i16 (i16*), i16 (i16*) addrspace(1)* @"_ZN43_$LT$i16$u20$as$u20$core..fmt..num..Int$GT$6to_u1617h8cbb65656a32a72dE"
@"_ZN82_$LT$core..char..ToUppercase$u20$as$u20$core..iter..traits..iterator..Iterator$GT$9size_hint17hcaeb6b914b79930bE" = unnamed_addr alias void ({ [0 x i8], i16, [0 x i8], { i8, i16 }, [0 x i8] }*, %"char::ToUppercase"*), bitcast (void ({ [0 x i8], i16, [0 x i8], { i8, i16 }, [0 x i8] }*, %"char::ToLowercase"*) addrspace(1)* @"_ZN82_$LT$core..char..ToLowercase$u20$as$u20$core..iter..traits..iterator..Iterator$GT$9size_hint17hee9a7a042dce8712E" to void ({ [0 x i8], i16, [0 x i8], { i8, i16 }, [0 x i8] }*, %"char::ToUppercase"*) addrspace(1)*)
@"_ZN86_$LT$core..char..CaseMappingIter$u20$as$u20$core..iter..traits..iterator..Iterator$GT$9size_hint17hf43ae4ae63901416E" = unnamed_addr alias void ({ [0 x i8], i16, [0 x i8], { i8, i16 }, [0 x i8] }*, %"char::CaseMappingIter"*), bitcast (void ({ [0 x i8], i16, [0 x i8], { i8, i16 }, [0 x i8] }*, %"char::ToLowercase"*) addrspace(1)* @"_ZN82_$LT$core..char..ToLowercase$u20$as$u20$core..iter..traits..iterator..Iterator$GT$9size_hint17hee9a7a042dce8712E" to void ({ [0 x i8], i16, [0 x i8], { i8, i16 }, [0 x i8] }*, %"char::CaseMappingIter"*) addrspace(1)*)
@"_ZN4core3fmt3num3imp55_$LT$impl$u20$core..fmt..LowerExp$u20$for$u20$isize$GT$3fmt17hd58079dc4f4f7061E" = unnamed_addr alias i1 (i16*, %"fmt::Formatter"*), i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp53_$LT$impl$u20$core..fmt..LowerExp$u20$for$u20$i16$GT$3fmt17h4f63267f9ad7d44eE"
@"_ZN4core3fmt3num3imp55_$LT$impl$u20$core..fmt..UpperExp$u20$for$u20$isize$GT$3fmt17h1de1db56312f2427E" = unnamed_addr alias i1 (i16*, %"fmt::Formatter"*), i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp53_$LT$impl$u20$core..fmt..UpperExp$u20$for$u20$i16$GT$3fmt17h3b9ac9f9dcf0aa43E"
@"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$usize$GT$3fmt17he5ed7a2681b30ea1E" = unnamed_addr alias i1 (i16*, %"fmt::Formatter"*), i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i16$GT$3fmt17hbe4318a26c58a6ceE"
@"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$usize$GT$3fmt17h4b84f8ccc51f0806E" = unnamed_addr alias i1 (i16*, %"fmt::Formatter"*), i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i16$GT$3fmt17hbf7433b6c707aeabE"
@"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$isize$GT$3fmt17h0fbfe5d4f03302b6E" = unnamed_addr alias i1 (i16*, %"fmt::Formatter"*), i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i16$GT$3fmt17hbe4318a26c58a6ceE"
@"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$isize$GT$3fmt17h4a747279ae650ea3E" = unnamed_addr alias i1 (i16*, %"fmt::Formatter"*), i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i16$GT$3fmt17hbf7433b6c707aeabE"
@"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u16$GT$3fmt17h8250f7f13a1439d7E" = unnamed_addr alias i1 (i16*, %"fmt::Formatter"*), i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i16$GT$3fmt17hbe4318a26c58a6ceE"
@"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u16$GT$3fmt17h736ee6d5f84359d0E" = unnamed_addr alias i1 (i16*, %"fmt::Formatter"*), i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i16$GT$3fmt17hbf7433b6c707aeabE"
@"_ZN49_$LT$u8$u20$as$u20$core..slice..SliceContains$GT$14slice_contains17h435642bd36d557cdE" = unnamed_addr alias i1 (i8*, [0 x i8]*, i16), i1 (i8*, [0 x i8]*, i16) addrspace(1)* @"_ZN49_$LT$i8$u20$as$u20$core..slice..SliceContains$GT$14slice_contains17h76e02f3fb2b6fcc7E"
@"_ZN82_$LT$core..char..ToUppercase$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17he42c5d7239c9da45E" = unnamed_addr alias i32 (%"char::ToUppercase"*), bitcast (i32 (%"char::ToLowercase"*) addrspace(1)* @"_ZN82_$LT$core..char..ToLowercase$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hebe40ae0f7591db9E" to i32 (%"char::ToUppercase"*) addrspace(1)*)
@"_ZN45_$LT$usize$u20$as$u20$core..fmt..num..Int$GT$6to_u3217h1996265e85be8edeE" = unnamed_addr alias i32 (i16*), i32 (i16*) addrspace(1)* @"_ZN43_$LT$u16$u20$as$u20$core..fmt..num..Int$GT$6to_u3217hd607d5d46d82e016E"
@"_ZN45_$LT$usize$u20$as$u20$core..fmt..num..Int$GT$6to_u6417h1ae4b54bc2000c35E" = unnamed_addr alias i64 (i16*), i64 (i16*) addrspace(1)* @"_ZN43_$LT$u16$u20$as$u20$core..fmt..num..Int$GT$6to_u6417h8132477c30c9257aE"
@"_ZN45_$LT$usize$u20$as$u20$core..fmt..num..Int$GT$7to_u12817hce913b842954bf9eE" = unnamed_addr alias i128 (i16*), i128 (i16*) addrspace(1)* @"_ZN43_$LT$u16$u20$as$u20$core..fmt..num..Int$GT$7to_u12817ha1433e42835a66fbE"
@"_ZN4core3fmt3num3imp54_$LT$impl$u20$core..fmt..Display$u20$for$u20$isize$GT$3fmt17h5448284b084ed489E" = unnamed_addr alias i1 (i16*, %"fmt::Formatter"*), i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$i16$GT$3fmt17hb97f6f3d4d1ad318E"
@_ZN4core6result13unwrap_failed17h40ee427b983a01b3E = unnamed_addr alias void ([0 x i8]*, i16, {}*, [3 x i16]*, %"panic::Location"*), void ([0 x i8]*, i16, {}*, [3 x i16]*, %"panic::Location"*) addrspace(1)* @_ZN4core6option18expect_none_failed17h25a13f9c35365ea1E
@"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..Binary$u20$for$u20$usize$GT$3fmt17hf52cf54b13bd72d5E" = unnamed_addr alias i1 (i16*, %"fmt::Formatter"*), i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num51_$LT$impl$u20$core..fmt..Binary$u20$for$u20$i16$GT$3fmt17h123d318960f83c97E"
@"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..Octal$u20$for$u20$usize$GT$3fmt17h9f2b1aaddc7ba14fE" = unnamed_addr alias i1 (i16*, %"fmt::Formatter"*), i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Octal$u20$for$u20$i16$GT$3fmt17h89dc187a377e47afE"
@"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..Binary$u20$for$u20$isize$GT$3fmt17h859edf2e6c92e71eE" = unnamed_addr alias i1 (i16*, %"fmt::Formatter"*), i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num51_$LT$impl$u20$core..fmt..Binary$u20$for$u20$i16$GT$3fmt17h123d318960f83c97E"
@"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..Octal$u20$for$u20$isize$GT$3fmt17h4a3c4b210c84a43aE" = unnamed_addr alias i1 (i16*, %"fmt::Formatter"*), i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Octal$u20$for$u20$i16$GT$3fmt17h89dc187a377e47afE"
@"_ZN4core3fmt3num51_$LT$impl$u20$core..fmt..Binary$u20$for$u20$u16$GT$3fmt17hece2d77e7abd6555E" = unnamed_addr alias i1 (i16*, %"fmt::Formatter"*), i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num51_$LT$impl$u20$core..fmt..Binary$u20$for$u20$i16$GT$3fmt17h123d318960f83c97E"
@"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Octal$u20$for$u20$u16$GT$3fmt17h51097a7295b7e8ceE" = unnamed_addr alias i1 (i16*, %"fmt::Formatter"*), i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Octal$u20$for$u20$i16$GT$3fmt17h89dc187a377e47afE"
@"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17hfe9954e5c26e2ab2E" = unnamed_addr alias i8 (float), i8 (float) addrspace(1)* @"_ZN4core3f3221_$LT$impl$u20$f32$GT$8classify17hbf675d444afadc06E"
@"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17ha6dce715db4a91a6E" = unnamed_addr alias i8 (double), i8 (double) addrspace(1)* @"_ZN4core3f6421_$LT$impl$u20$f64$GT$8classify17h83d79608df6ab252E"
@_ZN4core3str5lossy9Utf8Lossy8from_str17hecbf838e82b4c245E = unnamed_addr alias { %"str::lossy::Utf8Lossy"*, i16 } ([0 x i8]*, i16), { %"str::lossy::Utf8Lossy"*, i16 } ([0 x i8]*, i16) addrspace(1)* @_ZN4core3str5lossy9Utf8Lossy10from_bytes17h1517e2a04734d2ecE
@"_ZN62_$LT$core..num..NonZeroUsize$u20$as$u20$core..str..FromStr$GT$8from_str17h72b5961ec399dc43E" = unnamed_addr alias void (%"result::Result<num::NonZeroUsize, num::ParseIntError>"*, [0 x i8]*, i16), bitcast (void (%"result::Result<num::NonZeroU16, num::ParseIntError>"*, [0 x i8]*, i16) addrspace(1)* @"_ZN60_$LT$core..num..NonZeroU16$u20$as$u20$core..str..FromStr$GT$8from_str17h96ae2e95c553f314E" to void (%"result::Result<num::NonZeroUsize, num::ParseIntError>"*, [0 x i8]*, i16) addrspace(1)*)
@"_ZN57_$LT$core..fmt..Formatter$u20$as$u20$core..fmt..Write$GT$9write_str17h48b401e4b153acebE" = unnamed_addr alias i1 (%"fmt::Formatter"*, [0 x i8]*, i16), i1 (%"fmt::Formatter"*, [0 x i8]*, i16) addrspace(1)* @_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE
@"_ZN62_$LT$core..num..NonZeroIsize$u20$as$u20$core..str..FromStr$GT$8from_str17hb83008eb9bfdf301E" = unnamed_addr alias void (%"result::Result<num::NonZeroIsize, num::ParseIntError>"*, [0 x i8]*, i16), bitcast (void (%"result::Result<num::NonZeroI16, num::ParseIntError>"*, [0 x i8]*, i16) addrspace(1)* @"_ZN60_$LT$core..num..NonZeroI16$u20$as$u20$core..str..FromStr$GT$8from_str17hc3751c469c278944E" to void (%"result::Result<num::NonZeroIsize, num::ParseIntError>"*, [0 x i8]*, i16) addrspace(1)*)
@"_ZN79_$LT$core..fmt..builders..PadAdapterState$u20$as$u20$core..default..Default$GT$7default17h465e76f220635788E" = unnamed_addr alias i1 (), i1 () addrspace(1)* @_ZN4core3num7dec2flt11pfe_invalid17he120300a4d384747E
@"_ZN83_$LT$core..str..Bytes$u20$as$u20$core..iter..adapters..zip..TrustedRandomAccess$GT$20may_have_side_effect17h59973cd963cb999aE" = unnamed_addr alias i1 (), i1 () addrspace(1)* @_ZN4core3num7dec2flt9pfe_empty17h2b41cc3330edce23E
@"_ZN4core3str68_$LT$impl$u20$core..default..Default$u20$for$u20$$RF$mut$u20$str$GT$7default17h7fdc77cf1edf836aE" = unnamed_addr alias { [0 x i8]*, i16 } (), { [0 x i8]*, i16 } () addrspace(1)* @"_ZN4core3str60_$LT$impl$u20$core..default..Default$u20$for$u20$$RF$str$GT$7default17h1999413fd3a75e1aE"
@"_ZN73_$LT$core..sync..atomic..AtomicBool$u20$as$u20$core..default..Default$GT$7default17hd1f41eabf94a85bcE" = unnamed_addr alias i8 (), i8 () addrspace(1)* @"_ZN42_$LT$i8$u20$as$u20$core..fmt..num..Int$GT$4zero17hac89f764e73299e7E"
@"_ZN71_$LT$core..sync..atomic..AtomicU8$u20$as$u20$core..default..Default$GT$7default17h3627d82dc740092dE" = unnamed_addr alias i8 (), i8 () addrspace(1)* @"_ZN42_$LT$i8$u20$as$u20$core..fmt..num..Int$GT$4zero17hac89f764e73299e7E"
@"_ZN72_$LT$core..sync..atomic..AtomicU16$u20$as$u20$core..default..Default$GT$7default17h0be8d400d9273eb1E" = unnamed_addr alias i16 (), i16 () addrspace(1)* @"_ZN43_$LT$i16$u20$as$u20$core..fmt..num..Int$GT$4zero17he9c357d073c6f5c4E"
@"_ZN74_$LT$core..sync..atomic..AtomicIsize$u20$as$u20$core..default..Default$GT$7default17h18087c69b3c4e29bE" = unnamed_addr alias i16 (), i16 () addrspace(1)* @"_ZN43_$LT$i16$u20$as$u20$core..fmt..num..Int$GT$4zero17he9c357d073c6f5c4E"
@"_ZN74_$LT$core..sync..atomic..AtomicUsize$u20$as$u20$core..default..Default$GT$7default17h38e87ec5e573d659E" = unnamed_addr alias i16 (), i16 () addrspace(1)* @"_ZN43_$LT$i16$u20$as$u20$core..fmt..num..Int$GT$4zero17he9c357d073c6f5c4E"
@"_ZN71_$LT$core..sync..atomic..AtomicI8$u20$as$u20$core..default..Default$GT$7default17h7d9a4af2378b95abE" = unnamed_addr alias i8 (), i8 () addrspace(1)* @"_ZN42_$LT$i8$u20$as$u20$core..fmt..num..Int$GT$4zero17hac89f764e73299e7E"
@"_ZN72_$LT$core..sync..atomic..AtomicI16$u20$as$u20$core..default..Default$GT$7default17hf141ce2f4f881fa4E" = unnamed_addr alias i16 (), i16 () addrspace(1)* @"_ZN43_$LT$i16$u20$as$u20$core..fmt..num..Int$GT$4zero17he9c357d073c6f5c4E"
@"_ZN45_$LT$isize$u20$as$u20$core..fmt..num..Int$GT$4zero17hf43b208706c7a99dE" = unnamed_addr alias i16 (), i16 () addrspace(1)* @"_ZN43_$LT$i16$u20$as$u20$core..fmt..num..Int$GT$4zero17he9c357d073c6f5c4E"
@"_ZN42_$LT$u8$u20$as$u20$core..fmt..num..Int$GT$4zero17ha413f168a97273bdE" = unnamed_addr alias i8 (), i8 () addrspace(1)* @"_ZN42_$LT$i8$u20$as$u20$core..fmt..num..Int$GT$4zero17hac89f764e73299e7E"
@"_ZN43_$LT$u16$u20$as$u20$core..fmt..num..Int$GT$4zero17hf08afef610add3afE" = unnamed_addr alias i16 (), i16 () addrspace(1)* @"_ZN43_$LT$i16$u20$as$u20$core..fmt..num..Int$GT$4zero17he9c357d073c6f5c4E"
@"_ZN43_$LT$u32$u20$as$u20$core..fmt..num..Int$GT$4zero17h986e7b47cab1b011E" = unnamed_addr alias i32 (), i32 () addrspace(1)* @"_ZN43_$LT$i32$u20$as$u20$core..fmt..num..Int$GT$4zero17h67c6a7d331783363E"
@"_ZN43_$LT$u64$u20$as$u20$core..fmt..num..Int$GT$4zero17hbcc1ab683fbeb932E" = unnamed_addr alias i64 (), i64 () addrspace(1)* @"_ZN43_$LT$i64$u20$as$u20$core..fmt..num..Int$GT$4zero17h5af41034e7d89dd6E"
@"_ZN44_$LT$u128$u20$as$u20$core..fmt..num..Int$GT$4zero17hb35de8e7a18cc7d4E" = unnamed_addr alias i128 (), i128 () addrspace(1)* @"_ZN44_$LT$i128$u20$as$u20$core..fmt..num..Int$GT$4zero17h4e65ad729fb31e4fE"
@"_ZN45_$LT$usize$u20$as$u20$core..fmt..num..Int$GT$4zero17h2295e5a1cd6b18efE" = unnamed_addr alias i16 (), i16 () addrspace(1)* @"_ZN43_$LT$i16$u20$as$u20$core..fmt..num..Int$GT$4zero17he9c357d073c6f5c4E"
@"_ZN4core3fmt3num3imp55_$LT$impl$u20$core..fmt..LowerExp$u20$for$u20$usize$GT$3fmt17hf47c9eeda9fa59b8E" = unnamed_addr alias i1 (i16*, %"fmt::Formatter"*), i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp53_$LT$impl$u20$core..fmt..LowerExp$u20$for$u20$u16$GT$3fmt17hab9c02f2e31d0bfdE"
@"_ZN4core3fmt3num3imp55_$LT$impl$u20$core..fmt..UpperExp$u20$for$u20$usize$GT$3fmt17h2d4b08a0c2d07de8E" = unnamed_addr alias i1 (i16*, %"fmt::Formatter"*), i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp53_$LT$impl$u20$core..fmt..UpperExp$u20$for$u20$u16$GT$3fmt17h5bffd2fc2b793d30E"
@"_ZN66_$LT$core..char..CaseMappingIter$u20$as$u20$core..fmt..Display$GT$3fmt17hdd20f507413af705E" = unnamed_addr alias i1 (%"char::CaseMappingIter"*, %"fmt::Formatter"*), bitcast (i1 (%"char::ToLowercase"*, %"fmt::Formatter"*) addrspace(1)* @"_ZN62_$LT$core..char..ToLowercase$u20$as$u20$core..fmt..Display$GT$3fmt17h49ab0f58c0b13896E" to i1 (%"char::CaseMappingIter"*, %"fmt::Formatter"*) addrspace(1)*)
@"_ZN62_$LT$core..char..ToUppercase$u20$as$u20$core..fmt..Display$GT$3fmt17h8280fff87b555aabE" = unnamed_addr alias i1 (%"char::ToUppercase"*, %"fmt::Formatter"*), bitcast (i1 (%"char::ToLowercase"*, %"fmt::Formatter"*) addrspace(1)* @"_ZN62_$LT$core..char..ToLowercase$u20$as$u20$core..fmt..Display$GT$3fmt17h49ab0f58c0b13896E" to i1 (%"char::ToUppercase"*, %"fmt::Formatter"*) addrspace(1)*)
@"_ZN69_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17h4c44a10cf557a94aE" = unnamed_addr alias i8 (%"num::bignum::Big32x40"*, %"num::bignum::Big32x40"*), i8 (%"num::bignum::Big32x40"*, %"num::bignum::Big32x40"*) addrspace(1)* @"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE"

; core::ops::function::FnOnce::call_once
; Function Attrs: nofree norecurse noreturn nounwind uwtable
define internal zeroext i1 @_ZN4core3ops8function6FnOnce9call_once17h35286f7b5a1cec98E(i16* noalias readonly align 1 dereferenceable(2) %0, %"fmt::Formatter"* nocapture readnone align 1 dereferenceable(19) %1) unnamed_addr addrspace(1) #0 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %2 = load volatile i16, i16* %0, align 1, !alias.scope !1
  br label %bb2.i

bb2.i:                                            ; preds = %bb2.i, %start
  br label %bb2.i
}

; core::ptr::drop_in_place
; Function Attrs: norecurse nounwind readnone uwtable
define internal void @_ZN4core3ptr13drop_in_place17h00090b05ac68e799E(%"str::SplitInternal<char>"* nocapture %_1) unnamed_addr addrspace(1) #1 {
start:
  ret void
}

; core::f32::<impl f32>::classify
; Function Attrs: norecurse nounwind readnone uwtable
define i8 @"_ZN4core3f3221_$LT$impl$u20$f32$GT$8classify17hbf675d444afadc06E"(float %self) unnamed_addr addrspace(1) #1 {
start:
  %0 = bitcast float %self to i32
  %_5 = and i32 %0, 8388607
  %1 = icmp eq i32 %_5, 0
  %2 = and i32 %0, 2147483647
  %3 = icmp eq i32 %2, 0
  br i1 %3, label %bb10, label %bb3

bb3:                                              ; preds = %start
  %4 = trunc i32 %0 to i31
  %trunc = and i31 %4, -8388608
  switch i31 %trunc, label %bb10 [
    i31 0, label %bb7
    i31 -8388608, label %bb4
  ]

bb4:                                              ; preds = %bb3
  %. = zext i1 %1 to i8
  br label %bb10

bb7:                                              ; preds = %bb3
  br label %bb10

bb10:                                             ; preds = %start, %bb3, %bb4, %bb7
  %.0 = phi i8 [ 3, %bb7 ], [ %., %bb4 ], [ 4, %bb3 ], [ 2, %start ]
  ret i8 %.0
}

; core::f64::<impl f64>::classify
; Function Attrs: norecurse nounwind readnone uwtable
define i8 @"_ZN4core3f6421_$LT$impl$u20$f64$GT$8classify17h83d79608df6ab252E"(double %self) unnamed_addr addrspace(1) #1 {
start:
  %0 = bitcast double %self to i64
  %_5 = and i64 %0, 4503599627370495
  %1 = icmp eq i64 %_5, 0
  %2 = and i64 %0, 9223372036854775807
  %3 = icmp eq i64 %2, 0
  br i1 %3, label %bb10, label %bb3

bb3:                                              ; preds = %start
  %4 = trunc i64 %0 to i63
  %trunc = and i63 %4, -4503599627370496
  switch i63 %trunc, label %bb10 [
    i63 0, label %bb7
    i63 -4503599627370496, label %bb4
  ]

bb4:                                              ; preds = %bb3
  %. = zext i1 %1 to i8
  br label %bb10

bb7:                                              ; preds = %bb3
  br label %bb10

bb10:                                             ; preds = %start, %bb3, %bb4, %bb7
  %.0 = phi i8 [ 3, %bb7 ], [ %., %bb4 ], [ 4, %bb3 ], [ 2, %start ]
  ret i8 %.0
}

; core::num::dec2flt::algorithm::power_of_ten
; Function Attrs: uwtable
define { i64, i16 } @_ZN4core3num7dec2flt9algorithm12power_of_ten17hc31e1150ebe070d2E(i16 %e) unnamed_addr addrspace(1) #2 {
start:
  %_3 = icmp slt i16 %e, -305
  br i1 %_3, label %bb2, label %bb1

bb1:                                              ; preds = %start
  %i = add i16 %e, 305
  %_14 = icmp ult i16 %i, 611
  br i1 %_14, label %bb4, label %panic, !prof !4, !misexpect !5

bb2:                                              ; preds = %start
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [35 x i8] }>* @alloc18113 to [0 x i8]*), i16 35, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18115 to %"panic::Location"*))
  unreachable

bb4:                                              ; preds = %bb1
  %0 = getelementptr inbounds [611 x i64], [611 x i64]* bitcast (<{ [6110 x i8] }>* @0 to [611 x i64]*), i16 0, i16 %i
  %sig = load i64, i64* %0, align 1
  %1 = getelementptr inbounds [611 x i16], [611 x i16]* bitcast (i8* getelementptr inbounds (<{ [6110 x i8] }>, <{ [6110 x i8] }>* @0, i16 0, i32 0, i16 4888) to [611 x i16]*), i16 0, i16 %i
  %exp = load i16, i16* %1, align 1
  %2 = insertvalue { i64, i16 } undef, i64 %sig, 0
  %3 = insertvalue { i64, i16 } %2, i16 %exp, 1
  ret { i64, i16 } %3

panic:                                            ; preds = %bb1
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %i, i16 611, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18117 to %"panic::Location"*))
  unreachable
}

; core::num::dec2flt::algorithm::make_ratio
; Function Attrs: uwtable
define void @_ZN4core3num7dec2flt9algorithm10make_ratio17hecb96393fb56ab8bE(%"num::bignum::Big32x40"* align 1 dereferenceable(162) %x, %"num::bignum::Big32x40"* align 1 dereferenceable(162) %y, i16 %e, i16 %k) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = icmp slt i16 %e, 0
  %1 = sub i16 0, %e
  %.0.i = select i1 %0, i16 %1, i16 %e
  %2 = icmp slt i16 %k, 0
  %3 = sub i16 0, %k
  %.0.i4 = select i1 %2, i16 %3, i16 %k
  %_14 = icmp sgt i16 %e, -1
  %_16 = icmp sgt i16 %k, -1
  br i1 %_14, label %bb4, label %bb3

bb3:                                              ; preds = %start
  br i1 %_16, label %bb15, label %bb14

bb4:                                              ; preds = %start
  br i1 %_16, label %bb6, label %bb5

bb5:                                              ; preds = %bb4
; call core::num::bignum::Big32x40::mul_pow5
  %_36 = tail call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x408mul_pow517h15ae11d011832683E(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %x, i16 %.0.i)
  %_39 = add i16 %.0.i4, %.0.i
; call core::num::bignum::Big32x40::mul_pow2
  %_34 = tail call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x408mul_pow217h0cff03c1c9e177a8E(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %_36, i16 %_39)
  br label %bb23

bb6:                                              ; preds = %bb4
  %4 = icmp ugt i16 %.0.i, %.0.i4
  %.0.sroa.speculated.i.i.i = select i1 %4, i16 %.0.i4, i16 %.0.i
; call core::num::bignum::Big32x40::mul_pow5
  %_23 = tail call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x408mul_pow517h15ae11d011832683E(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %x, i16 %.0.i)
  %_26 = sub i16 %.0.i, %.0.sroa.speculated.i.i.i
; call core::num::bignum::Big32x40::mul_pow2
  %_21 = tail call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x408mul_pow217h0cff03c1c9e177a8E(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %_23, i16 %_26)
  %_31 = sub i16 %.0.i4, %.0.sroa.speculated.i.i.i
; call core::num::bignum::Big32x40::mul_pow2
  %_29 = tail call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x408mul_pow217h0cff03c1c9e177a8E(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %y, i16 %_31)
  br label %bb23

bb14:                                             ; preds = %bb3
  %5 = icmp ugt i16 %.0.i, %.0.i4
  %.0.sroa.speculated.i.i.i5 = select i1 %5, i16 %.0.i4, i16 %.0.i
  %_57 = sub i16 %.0.i4, %.0.sroa.speculated.i.i.i5
; call core::num::bignum::Big32x40::mul_pow2
  %_55 = tail call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x408mul_pow217h0cff03c1c9e177a8E(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %x, i16 %_57)
; call core::num::bignum::Big32x40::mul_pow5
  %_62 = tail call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x408mul_pow517h15ae11d011832683E(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %y, i16 %.0.i)
  %_65 = sub i16 %.0.i, %.0.sroa.speculated.i.i.i5
; call core::num::bignum::Big32x40::mul_pow2
  %_60 = tail call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x408mul_pow217h0cff03c1c9e177a8E(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %_62, i16 %_65)
  br label %bb23

bb15:                                             ; preds = %bb3
; call core::num::bignum::Big32x40::mul_pow5
  %_46 = tail call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x408mul_pow517h15ae11d011832683E(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %y, i16 %.0.i)
  %_49 = add i16 %.0.i4, %.0.i
; call core::num::bignum::Big32x40::mul_pow2
  %_44 = tail call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x408mul_pow217h0cff03c1c9e177a8E(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %_46, i16 %_49)
  br label %bb23

bb23:                                             ; preds = %bb15, %bb14, %bb6, %bb5
  ret void
}

; core::num::dec2flt::num::compare_with_half_ulp
; Function Attrs: uwtable
define i8 @_ZN4core3num7dec2flt3num21compare_with_half_ulp17h681c619de51d1debE(%"num::bignum::Big32x40"* noalias nocapture readonly align 1 dereferenceable(162) %f, i16 %ones_place) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_3 = icmp eq i16 %ones_place, 0
  br i1 %_3, label %bb3, label %bb1

bb1:                                              ; preds = %start
  %half_bit = add i16 %ones_place, -1
  %d.i = lshr i16 %half_bit, 5
  %_18.i = icmp ult i16 %half_bit, 1280
  br i1 %_18.i, label %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit, label %panic2.i, !prof !4, !misexpect !5

panic2.i:                                         ; preds = %bb1
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %d.i, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*)), !noalias !6
  unreachable

_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit: ; preds = %bb1
  %0 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %f, i16 0, i32 3, i16 %d.i
  %_15.i = load i32, i32* %0, align 1, !alias.scope !6
  %1 = and i16 %half_bit, 31
  %2 = zext i16 %1 to i32
  %3 = shl nuw i32 1, %2
  %4 = and i32 %_15.i, %3
  %_7 = icmp eq i32 %4, 0
  br i1 %_7, label %bb3, label %bb9

bb3:                                              ; preds = %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit11, %bb9, %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit, %start
  %.0 = phi i8 [ -1, %start ], [ -1, %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit ], [ 1, %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit11 ], [ 0, %bb9 ]
  ret i8 %.0

bb9:                                              ; preds = %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit, %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit11
  %iter.sroa.0.0 = phi i16 [ %6, %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit11 ], [ 0, %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit ]
  %5 = icmp ult i16 %iter.sroa.0.0, %half_bit
  br i1 %5, label %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit11, label %bb3

_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit11: ; preds = %bb9
  %d.i6 = lshr i16 %iter.sroa.0.0, 5
  %6 = add nuw nsw i16 %iter.sroa.0.0, 1
  %7 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %f, i16 0, i32 3, i16 %d.i6
  %_15.i8 = load i32, i32* %7, align 1, !alias.scope !9
  %8 = and i16 %iter.sroa.0.0, 31
  %9 = zext i16 %8 to i32
  %10 = shl nuw i32 1, %9
  %11 = and i32 %_15.i8, %10
  %_23 = icmp eq i32 %11, 0
  br i1 %_23, label %bb9, label %bb3
}

; core::num::dec2flt::num::digits_to_big
; Function Attrs: uwtable
define void @_ZN4core3num7dec2flt3num13digits_to_big17hbddd569acf6105f4E(%"num::bignum::Big32x40"* noalias nocapture sret dereferenceable(162) %f, [0 x i8]* noalias nonnull readonly align 1 %integral.0, i16 %integral.1, [0 x i8]* noalias nonnull readonly align 1 %fractional.0, i16 %fractional.1) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = bitcast %"num::bignum::Big32x40"* %f to i16*
  store i16 1, i16* %0, align 1, !alias.scope !12
  %_5.sroa.0.0..sroa_idx.i = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %f, i16 0, i32 3, i16 0
  %1 = getelementptr inbounds [0 x i8], [0 x i8]* %integral.0, i16 0, i16 %integral.1
  %2 = getelementptr inbounds [0 x i8], [0 x i8]* %fractional.0, i16 0, i16 %fractional.1
  %3 = getelementptr [0 x i8], [0 x i8]* %integral.0, i16 0, i16 0
  %4 = getelementptr [0 x i8], [0 x i8]* %fractional.0, i16 0, i16 0
  %_10.i = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %f, i16 0, i32 3
  %5 = getelementptr [40 x i32], [40 x i32]* %_10.i, i16 0, i16 0
  %6 = bitcast [40 x i32]* %_10.i to i8*
  %7 = bitcast i32* %_5.sroa.0.0..sroa_idx.i to i8*
  call addrspace(1) void @llvm.memset.p0i8.i64(i8* nonnull align 1 dereferenceable(160) %7, i8 0, i64 160, i1 false)
  br label %bb5

bb5:                                              ; preds = %bb5.backedge, %start
  %8 = phi i16 [ 1, %start ], [ %.be, %bb5.backedge ]
  %iter.sroa.0.0 = phi i8* [ %3, %start ], [ %iter.sroa.0.2, %bb5.backedge ]
  %iter.sroa.7.0 = phi i8* [ %4, %start ], [ %iter.sroa.7.1, %bb5.backedge ]
  %9 = icmp eq i8* %iter.sroa.0.0, null
  %_13.i.i5 = icmp eq i8* %iter.sroa.0.0, %1
  %or.cond47 = or i1 %9, %_13.i.i5
  br i1 %or.cond47, label %bb12.i, label %bb10.i8

bb10.i8:                                          ; preds = %bb5
  %10 = getelementptr inbounds i8, i8* %iter.sroa.0.0, i16 1
  br label %bb9

bb12.i:                                           ; preds = %bb5
  %11 = icmp eq i8* %iter.sroa.7.0, null
  %_13.i11.i = icmp eq i8* %2, %iter.sroa.7.0
  %or.cond = or i1 %11, %_13.i11.i
  br i1 %or.cond, label %bb7, label %bb11.i12.i

bb11.i12.i:                                       ; preds = %bb12.i
  %12 = getelementptr inbounds i8, i8* %iter.sroa.7.0, i16 1
  br label %bb9

bb7:                                              ; preds = %bb12.i
  ret void

bb9:                                              ; preds = %bb11.i12.i, %bb10.i8
  %iter.sroa.0.2 = phi i8* [ null, %bb11.i12.i ], [ %10, %bb10.i8 ]
  %iter.sroa.7.1 = phi i8* [ %12, %bb11.i12.i ], [ %iter.sroa.7.0, %bb10.i8 ]
  %.0.i = phi i8* [ %iter.sroa.7.0, %bb11.i12.i ], [ %iter.sroa.0.0, %bb10.i8 ]
  %c = load i8, i8* %.0.i, align 1
  %_18 = add i8 %c, -48
  %n = zext i8 %_18 to i32
  %_9.i.i.i.i = icmp ugt i16 %8, 40
  br i1 %_9.i.i.i.i, label %bb5.i.i.i.i, label %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i"

bb5.i.i.i.i:                                      ; preds = %bb9
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %8, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i": ; preds = %bb9
  %13 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %f, i16 0, i32 3, i16 %8
  %_13.i16.i = icmp eq i32* %13, %5
  br i1 %_13.i16.i, label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit, label %bb7.i

bb5.i3:                                           ; preds = %bb7.i
  %_30.i = icmp eq i32 %_14.i.i, 0
  br i1 %_30.i, label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit, label %bb10.i

bb7.i:                                            ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i", %bb7.i
  %carry.018.i = phi i32 [ %_14.i.i, %bb7.i ], [ 0, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i" ]
  %iter.sroa.0.017.i = phi i8* [ %14, %bb7.i ], [ %6, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i" ]
  %14 = getelementptr inbounds i8, i8* %iter.sroa.0.017.i, i16 4
  %15 = bitcast i8* %iter.sroa.0.017.i to i32*
  %_25.i = load i32, i32* %15, align 1
  %_8.i.i = zext i32 %_25.i to i64
  %_7.i.i = mul nuw nsw i64 %_8.i.i, 10
  %_12.i11.i = zext i32 %carry.018.i to i64
  %v.i.i = add nuw nsw i64 %_7.i.i, %_12.i11.i
  %_15.i.i = lshr i64 %v.i.i, 32
  %_14.i.i = trunc i64 %_15.i.i to i32
  %_18.i.i = trunc i64 %v.i.i to i32
  store i32 %_18.i.i, i32* %15, align 1
  %16 = bitcast i8* %14 to i32*
  %_13.i.i = icmp eq i32* %13, %16
  br i1 %_13.i.i, label %bb5.i3, label %bb7.i

bb10.i:                                           ; preds = %bb5.i3
  %_35.i = icmp ult i16 %8, 40
  br i1 %_35.i, label %bb11.i, label %panic.i4, !prof !4, !misexpect !5

bb11.i:                                           ; preds = %bb10.i
  store i32 %_14.i.i, i32* %13, align 1
  %17 = add nuw nsw i16 %8, 1
  br label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit

panic.i4:                                         ; preds = %bb10.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %8, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit: ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i", %bb5.i3, %bb11.i
  %sz.0.i = phi i16 [ %17, %bb11.i ], [ %8, %bb5.i3 ], [ %8, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i" ]
  store i16 %sz.0.i, i16* %0, align 1
  %_7.i = load i32, i32* %_5.sroa.0.0..sroa_idx.i, align 1
  %18 = tail call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %_7.i, i32 %n) #20
  %19 = extractvalue { i32, i1 } %18, 0
  %20 = extractvalue { i32, i1 } %18, 1
  store i32 %19, i32* %_5.sroa.0.0..sroa_idx.i, align 1
  br i1 %20, label %bb4.i, label %bb3.i

bb3.i:                                            ; preds = %bb5.i, %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit
  %i.0.lcssa.i = phi i16 [ 1, %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit ], [ %25, %bb5.i ]
  %_27.i = icmp ugt i16 %i.0.lcssa.i, %sz.0.i
  br i1 %_27.i, label %bb9.i, label %bb5.backedge

bb5.backedge:                                     ; preds = %bb3.i, %bb9.i
  %.be = phi i16 [ %sz.0.i, %bb3.i ], [ %i.0.lcssa.i, %bb9.i ]
  br label %bb5

bb4.i:                                            ; preds = %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit, %bb5.i
  %i.010.i = phi i16 [ %25, %bb5.i ], [ 1, %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit ]
  %_20.i = icmp ult i16 %i.010.i, 40
  br i1 %_20.i, label %bb5.i, label %panic.i, !prof !4, !misexpect !5

bb5.i:                                            ; preds = %bb4.i
  %21 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %f, i16 0, i32 3, i16 %i.010.i
  %_17.i = load i32, i32* %21, align 1
  %22 = tail call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %_17.i, i32 1) #20
  %23 = extractvalue { i32, i1 } %22, 0
  %24 = extractvalue { i32, i1 } %22, 1
  store i32 %23, i32* %21, align 1
  %25 = add nuw nsw i16 %i.010.i, 1
  br i1 %24, label %bb4.i, label %bb3.i

bb9.i:                                            ; preds = %bb3.i
  store i16 %i.0.lcssa.i, i16* %0, align 1
  br label %bb5.backedge

panic.i:                                          ; preds = %bb4.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 40, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable
}

; core::num::dec2flt::num::to_u64
; Function Attrs: uwtable
define i64 @_ZN4core3num7dec2flt3num6to_u6417hdd4dc057b908c9ebE(%"num::bignum::Big32x40"* noalias readonly align 1 dereferenceable(162) %x) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = bitcast %"num::bignum::Big32x40"* %x to i16*
  %_6.i.i = load i16, i16* %0, align 1, !alias.scope !15
  %_8.i.i.i.i.i = icmp ugt i16 %_6.i.i, 40
  br i1 %_8.i.i.i.i.i, label %bb5.i.i.i.i.i, label %bb5.i.i.i4.i

bb5.i.i.i.i.i:                                    ; preds = %start
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %_6.i.i, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

bb5.i.i.i4.i:                                     ; preds = %start
  %1 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %x, i16 0, i32 3, i16 0
  %_13.i.i4.i.i.i.i.i = icmp eq i16 %_6.i.i, 0
  br i1 %_13.i.i4.i.i.i.i.i, label %panic, label %bb6.i.i.i.i.i.preheader.i

bb6.i.i.i.i.i.preheader.i:                        ; preds = %bb5.i.i.i4.i
  %2 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %x, i16 0, i32 3, i16 %_6.i.i
  br label %bb6.i.i.i.i.i.i

bb6.i.i.i.i.i.i:                                  ; preds = %bb8.i.i.i.i.i.i, %bb6.i.i.i.i.i.preheader.i
  %_12.i.i6.i.i.i.i.i = phi i32* [ %3, %bb8.i.i.i.i.i.i ], [ %2, %bb6.i.i.i.i.i.preheader.i ]
  %accum.0.i5.i.i.i.i.i = phi i16 [ %_5.0.i.i.i.i.i.i.i.i.i.i.i, %bb8.i.i.i.i.i.i ], [ 0, %bb6.i.i.i.i.i.preheader.i ]
  %3 = getelementptr inbounds i32, i32* %_12.i.i6.i.i.i.i.i, i16 -1
  %x.val.val.i.i.i.i.i.i.i = load i32, i32* %3, align 1, !alias.scope !20, !noalias !23
  %4 = icmp eq i32 %x.val.val.i.i.i.i.i.i.i, 0
  br i1 %4, label %bb8.i.i.i.i.i.i, label %_ZN4core4iter6traits8iterator8Iterator5count17h833b2edda10f8956E.exit.i

bb8.i.i.i.i.i.i:                                  ; preds = %bb6.i.i.i.i.i.i
  %_5.0.i.i.i.i.i.i.i.i.i.i.i = add nuw nsw i16 %accum.0.i5.i.i.i.i.i, 1
  %_13.i.i.i.i.i.i.i = icmp eq i32* %1, %3
  br i1 %_13.i.i.i.i.i.i.i, label %_ZN4core4iter6traits8iterator8Iterator5count17h833b2edda10f8956E.exit.i, label %bb6.i.i.i.i.i.i

_ZN4core4iter6traits8iterator8Iterator5count17h833b2edda10f8956E.exit.i: ; preds = %bb8.i.i.i.i.i.i, %bb6.i.i.i.i.i.i
  %.0.i.i.i.i = phi i16 [ %accum.0.i5.i.i.i.i.i, %bb6.i.i.i.i.i.i ], [ %_5.0.i.i.i.i.i.i.i.i.i.i.i, %bb8.i.i.i.i.i.i ]
  %end.i = sub i16 %_6.i.i, %.0.i.i.i.i
  %_8.i.i.i.i = icmp ult i16 %_6.i.i, %.0.i.i.i.i
  br i1 %_8.i.i.i.i, label %bb5.i.i.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i"

bb5.i.i.i.i:                                      ; preds = %_ZN4core4iter6traits8iterator8Iterator5count17h833b2edda10f8956E.exit.i
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %end.i, i16 %_6.i.i, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i": ; preds = %_ZN4core4iter6traits8iterator8Iterator5count17h833b2edda10f8956E.exit.i
  %5 = icmp eq i16 %end.i, 0
  br i1 %5, label %_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E.exit, label %bb9.i

bb9.i:                                            ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i"
  %_24.i = shl i16 %end.i, 5
  br label %bb14.i

bb14.i:                                           ; preds = %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit.i, %bb9.i
  %i.0.in.i = phi i16 [ %_24.i, %bb9.i ], [ %i.0.i, %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit.i ]
  %i.0.i = add i16 %i.0.in.i, -1
  %d.i.i = lshr i16 %i.0.i, 5
  %_18.i.i = icmp ult i16 %i.0.i, 1280
  br i1 %_18.i.i, label %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit.i, label %panic2.i.i, !prof !4, !misexpect !5

panic2.i.i:                                       ; preds = %bb14.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %d.i.i, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*)), !noalias !28
  unreachable

_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit.i: ; preds = %bb14.i
  %6 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %x, i16 0, i32 3, i16 %d.i.i
  %_15.i.i = load i32, i32* %6, align 1, !alias.scope !31
  %7 = and i16 %i.0.i, 31
  %8 = zext i16 %7 to i32
  %9 = shl nuw i32 1, %8
  %10 = and i32 %_15.i.i, %9
  %_28.i = icmp eq i32 %10, 0
  br i1 %_28.i, label %bb14.i, label %_ZN4core3num6bignum8Big32x4010bit_length17he5a5e93bd40911c1E.exit

_ZN4core3num6bignum8Big32x4010bit_length17he5a5e93bd40911c1E.exit: ; preds = %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit.i
  %_3 = icmp ugt i16 %i.0.in.i, 63
  br i1 %_3, label %bb3, label %_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E.exit

_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E.exit: ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i", %_ZN4core3num6bignum8Big32x4010bit_length17he5a5e93bd40911c1E.exit
  %_4.i = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %x, i16 0, i32 3
  %_10 = icmp ult i16 %_6.i.i, 2
  br i1 %_10, label %bb8, label %bb10

bb3:                                              ; preds = %_ZN4core3num6bignum8Big32x4010bit_length17he5a5e93bd40911c1E.exit
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [37 x i8] }>* @alloc18120 to [0 x i8]*), i16 37, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18122 to %"panic::Location"*))
  unreachable

bb8:                                              ; preds = %_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E.exit
  %11 = getelementptr inbounds [40 x i32], [40 x i32]* %_4.i, i16 0, i16 0
  %_13 = load i32, i32* %11, align 1
  %12 = zext i32 %_13 to i64
  br label %bb11

bb10:                                             ; preds = %_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E.exit
  %13 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %x, i16 0, i32 3, i16 1
  %_19 = load i32, i32* %13, align 1
  %_18 = zext i32 %_19 to i64
  %_17 = shl nuw i64 %_18, 32
  %14 = getelementptr inbounds [40 x i32], [40 x i32]* %_4.i, i16 0, i16 0
  %_24 = load i32, i32* %14, align 1
  %_23 = zext i32 %_24 to i64
  %15 = or i64 %_17, %_23
  br label %bb11

bb11:                                             ; preds = %bb10, %bb8
  %.0 = phi i64 [ %12, %bb8 ], [ %15, %bb10 ]
  ret i64 %.0

panic:                                            ; preds = %bb5.i.i.i4.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 0, i16 %_6.i.i, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18124 to %"panic::Location"*))
  unreachable
}

; core::num::dec2flt::num::get_bits
; Function Attrs: uwtable
define i64 @_ZN4core3num7dec2flt3num8get_bits17h63dbbac52a9956dfE(%"num::bignum::Big32x40"* noalias nocapture readonly align 1 dereferenceable(162) %x, i16 %start1, i16 %end) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_6 = sub i16 %end, %start1
  %_5 = icmp ugt i16 %_6, 64
  br i1 %_5, label %bb2, label %bb5.preheader

bb5.preheader:                                    ; preds = %start
  %0 = icmp ugt i16 %end, %start1
  br i1 %0, label %bb9, label %bb7

bb2:                                              ; preds = %start
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [35 x i8] }>* @alloc18129 to [0 x i8]*), i16 35, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18131 to %"panic::Location"*))
  unreachable

bb7:                                              ; preds = %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit, %bb5.preheader
  %result.0.lcssa = phi i64 [ 0, %bb5.preheader ], [ %7, %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit ]
  ret i64 %result.0.lcssa

bb9:                                              ; preds = %bb5.preheader, %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit
  %result.016 = phi i64 [ %7, %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit ], [ 0, %bb5.preheader ]
  %iter.sroa.4.015 = phi i16 [ %1, %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit ], [ %end, %bb5.preheader ]
  %1 = add i16 %iter.sroa.4.015, -1
  %d.i = lshr i16 %1, 5
  %_18.i = icmp ult i16 %1, 1280
  br i1 %_18.i, label %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit, label %panic2.i, !prof !4, !misexpect !5

panic2.i:                                         ; preds = %bb9
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %d.i, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*)), !noalias !32
  unreachable

_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit: ; preds = %bb9
  %_25 = shl i64 %result.016, 1
  %2 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %x, i16 0, i32 3, i16 %d.i
  %_15.i = load i32, i32* %2, align 1, !alias.scope !32
  %3 = and i16 %1, 31
  %4 = zext i16 %3 to i32
  %_14.i = lshr i32 %_15.i, %4
  %5 = trunc i32 %_14.i to i8
  %6 = and i8 %5, 1
  %_27 = zext i8 %6 to i64
  %7 = or i64 %_25, %_27
  %8 = icmp ugt i16 %1, %start1
  br i1 %8, label %bb9, label %bb7
}

; core::num::dec2flt::parse::Decimal::new
; Function Attrs: nofree norecurse nounwind uwtable writeonly
define void @_ZN4core3num7dec2flt5parse7Decimal3new17hb276be54faf3e178E(%"num::dec2flt::parse::Decimal"* noalias nocapture sret dereferenceable(16) %0, [0 x i8]* noalias nonnull readonly align 1 %integral.0, i16 %integral.1, [0 x i8]* noalias nonnull readonly align 1 %fractional.0, i16 %fractional.1, i64 %exp) unnamed_addr addrspace(1) #3 {
start:
  %1 = bitcast %"num::dec2flt::parse::Decimal"* %0 to [0 x i8]**
  store [0 x i8]* %integral.0, [0 x i8]** %1, align 1
  %2 = getelementptr inbounds %"num::dec2flt::parse::Decimal", %"num::dec2flt::parse::Decimal"* %0, i16 0, i32 1, i32 1
  store i16 %integral.1, i16* %2, align 1
  %3 = getelementptr inbounds %"num::dec2flt::parse::Decimal", %"num::dec2flt::parse::Decimal"* %0, i16 0, i32 3, i32 0
  store [0 x i8]* %fractional.0, [0 x i8]** %3, align 1
  %4 = getelementptr inbounds %"num::dec2flt::parse::Decimal", %"num::dec2flt::parse::Decimal"* %0, i16 0, i32 3, i32 1
  store i16 %fractional.1, i16* %4, align 1
  %5 = getelementptr inbounds %"num::dec2flt::parse::Decimal", %"num::dec2flt::parse::Decimal"* %0, i16 0, i32 5
  store i64 %exp, i64* %5, align 1
  ret void
}

; core::num::dec2flt::parse::parse_decimal
; Function Attrs: uwtable
define void @_ZN4core3num7dec2flt5parse13parse_decimal17h16d1a41b0d2cc5e4E(%"num::dec2flt::parse::ParseResult"* noalias nocapture sret dereferenceable(17) %0, [0 x i8]* noalias nonnull readonly align 1 %s.0, i16 %s.1) unnamed_addr addrspace(1) #2 {
start:
  %1 = icmp eq i16 %s.1, 0
  br i1 %1, label %bb3, label %bb11.i

bb3.i:                                            ; preds = %bb11.i
  %_8.i.i.i.i = icmp ugt i16 %i.011.i, %s.1
  br i1 %_8.i.i.i.i, label %bb5.i.i.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit16"

bb5.i.i.i.i:                                      ; preds = %bb3.i
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %i.011.i, i16 %s.1, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18143 to %"panic::Location"*)), !noalias !35
  unreachable

bb11.i:                                           ; preds = %start, %bb14.i
  %i.011.i = phi i16 [ %4, %bb14.i ], [ 0, %start ]
  %2 = getelementptr inbounds [0 x i8], [0 x i8]* %s.0, i16 0, i16 %i.011.i
  %_10.i = load i8, i8* %2, align 1, !alias.scope !38, !noalias !35
  %_10.off.i = add i8 %_10.i, -48
  %3 = icmp ult i8 %_10.off.i, 10
  br i1 %3, label %bb14.i, label %bb3.i

bb14.i:                                           ; preds = %bb11.i
  %4 = add nuw i16 %i.011.i, 1
  %_5.i = icmp ult i16 %4, %s.1
  br i1 %_5.i, label %bb11.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit16"

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit16": ; preds = %bb14.i, %bb3.i
  %i.0.lcssa15.i79 = phi i16 [ %i.011.i, %bb3.i ], [ %s.1, %bb14.i ]
  %5 = getelementptr inbounds [0 x i8], [0 x i8]* %s.0, i16 0, i16 %i.0.lcssa15.i79
  %_7.i.i.i.i14 = sub i16 %s.1, %i.0.lcssa15.i79
  %_4.i = icmp eq i16 %_7.i.i.i.i14, 0
  br i1 %_4.i, label %bb10, label %bb8

bb3:                                              ; preds = %start
  %6 = getelementptr inbounds %"num::dec2flt::parse::ParseResult", %"num::dec2flt::parse::ParseResult"* %0, i16 0, i32 0, i16 0
  store i8 3, i8* %6, align 1
  br label %bb4

bb4:                                              ; preds = %bb9, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit43", %bb10, %bb33, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit", %bb32, %bb29, %bb15, %bb3
  ret void

bb8:                                              ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit16"
  %7 = load i8, i8* %5, align 1
  switch i8 %7, label %bb9 [
    i8 101, label %bb12
    i8 69, label %bb12
    i8 46, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit48"
  ]

bb9:                                              ; preds = %bb8
  %8 = getelementptr inbounds %"num::dec2flt::parse::ParseResult", %"num::dec2flt::parse::ParseResult"* %0, i16 0, i32 0, i16 0
  store i8 3, i8* %8, align 1
  br label %bb4

bb10:                                             ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit16"
  %_13.sroa.0.0..sroa_idx = getelementptr inbounds %"num::dec2flt::parse::ParseResult", %"num::dec2flt::parse::ParseResult"* %0, i16 0, i32 2
  %_13.sroa.0.0..sroa_cast53 = bitcast [16 x i8]* %_13.sroa.0.0..sroa_idx to [0 x i8]**
  store [0 x i8]* %s.0, [0 x i8]** %_13.sroa.0.0..sroa_cast53, align 1
  %_13.sroa.4.0..sroa_idx = getelementptr inbounds %"num::dec2flt::parse::ParseResult", %"num::dec2flt::parse::ParseResult"* %0, i16 0, i32 2, i16 2
  %_13.sroa.4.0..sroa_cast55 = bitcast i8* %_13.sroa.4.0..sroa_idx to i16*
  store i16 %i.0.lcssa15.i79, i16* %_13.sroa.4.0..sroa_cast55, align 1
  %_13.sroa.5.0..sroa_idx = getelementptr inbounds %"num::dec2flt::parse::ParseResult", %"num::dec2flt::parse::ParseResult"* %0, i16 0, i32 2, i16 4
  %_13.sroa.5.0..sroa_cast57 = bitcast i8* %_13.sroa.5.0..sroa_idx to [0 x i8]**
  store [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), [0 x i8]** %_13.sroa.5.0..sroa_cast57, align 1
  %_13.sroa.6.0..sroa_idx = getelementptr inbounds %"num::dec2flt::parse::ParseResult", %"num::dec2flt::parse::ParseResult"* %0, i16 0, i32 2, i16 6
  %_13.sroa.6.0..sroa_cast59 = bitcast i8* %_13.sroa.6.0..sroa_idx to i16*
  store i16 0, i16* %_13.sroa.6.0..sroa_cast59, align 1
  %_13.sroa.7.0..sroa_idx = getelementptr inbounds %"num::dec2flt::parse::ParseResult", %"num::dec2flt::parse::ParseResult"* %0, i16 0, i32 2, i16 8
  %_13.sroa.7.0..sroa_cast61 = bitcast i8* %_13.sroa.7.0..sroa_idx to i64*
  store i64 0, i64* %_13.sroa.7.0..sroa_cast61, align 1
  %9 = getelementptr inbounds %"num::dec2flt::parse::ParseResult", %"num::dec2flt::parse::ParseResult"* %0, i16 0, i32 0, i16 0
  store i8 0, i8* %9, align 1
  br label %bb4

bb12:                                             ; preds = %bb8, %bb8
  %10 = icmp eq i16 %i.0.lcssa15.i79, 0
  br i1 %10, label %bb15, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit43"

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit43": ; preds = %bb12
  %11 = getelementptr inbounds i8, i8* %5, i16 1
  %_7.i.i.i.i41 = add i16 %_7.i.i.i.i14, -1
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i42 = bitcast i8* %11 to [0 x i8]*
; call core::num::dec2flt::parse::parse_exp
  tail call fastcc addrspace(1) void @_ZN4core3num7dec2flt5parse9parse_exp17h0d97154cad6987fdE(%"num::dec2flt::parse::ParseResult"* noalias nocapture nonnull dereferenceable(17) %0, [0 x i8]* noalias nonnull readonly align 1 %s.0, i16 %i.0.lcssa15.i79, [0 x i8]* noalias nonnull readonly align 1 getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), i16 0, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i42, i16 %_7.i.i.i.i41)
  br label %bb4

bb15:                                             ; preds = %bb12
  %12 = getelementptr inbounds %"num::dec2flt::parse::ParseResult", %"num::dec2flt::parse::ParseResult"* %0, i16 0, i32 0, i16 0
  store i8 3, i8* %12, align 1
  br label %bb4

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit48": ; preds = %bb8
  %13 = getelementptr inbounds i8, i8* %5, i16 1
  %_7.i.i.i.i46 = add i16 %_7.i.i.i.i14, -1
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i47 = bitcast i8* %13 to [0 x i8]*
  %_510.i20 = icmp eq i16 %_7.i.i.i.i46, 0
  br i1 %_510.i20, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit38", label %bb11.i30

bb3.i22:                                          ; preds = %bb11.i30
  %_8.i.i.i.i21 = icmp ugt i16 %i.011.i27, %_7.i.i.i.i46
  br i1 %_8.i.i.i.i21, label %bb5.i.i.i.i23, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit38"

bb5.i.i.i.i23:                                    ; preds = %bb3.i22
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %i.011.i27, i16 %_7.i.i.i.i46, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18143 to %"panic::Location"*)), !noalias !40
  unreachable

bb11.i30:                                         ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit48", %bb14.i32
  %i.011.i27 = phi i16 [ %16, %bb14.i32 ], [ 0, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit48" ]
  %14 = getelementptr inbounds i8, i8* %13, i16 %i.011.i27
  %_10.i28 = load i8, i8* %14, align 1, !alias.scope !43, !noalias !40
  %_10.off.i29 = add i8 %_10.i28, -48
  %15 = icmp ult i8 %_10.off.i29, 10
  br i1 %15, label %bb14.i32, label %bb3.i22

bb14.i32:                                         ; preds = %bb11.i30
  %16 = add nuw i16 %i.011.i27, 1
  %_5.i31 = icmp ult i16 %16, %_7.i.i.i.i46
  br i1 %_5.i31, label %bb11.i30, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit38"

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit38": ; preds = %bb14.i32, %bb3.i22, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit48"
  %i.0.lcssa15.i2482 = phi i16 [ 0, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit48" ], [ %i.011.i27, %bb3.i22 ], [ %_7.i.i.i.i46, %bb14.i32 ]
  %17 = getelementptr inbounds i8, i8* %13, i16 %i.0.lcssa15.i2482
  %_7.i.i.i.i36 = sub i16 %_7.i.i.i.i46, %i.0.lcssa15.i2482
  %18 = or i16 %i.0.lcssa15.i2482, %i.0.lcssa15.i79
  %19 = icmp eq i16 %18, 0
  br i1 %19, label %bb29, label %bb28.critedge

bb28.critedge:                                    ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit38"
  %_4.i17 = icmp eq i16 %_7.i.i.i.i36, 0
  br i1 %_4.i17, label %bb33, label %bb31

bb29:                                             ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit38"
  %20 = getelementptr inbounds %"num::dec2flt::parse::ParseResult", %"num::dec2flt::parse::ParseResult"* %0, i16 0, i32 0, i16 0
  store i8 3, i8* %20, align 1
  br label %bb4

bb31:                                             ; preds = %bb28.critedge
  %21 = load i8, i8* %17, align 1
  switch i8 %21, label %bb32 [
    i8 101, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit"
    i8 69, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit"
  ]

bb32:                                             ; preds = %bb31
  %22 = getelementptr inbounds %"num::dec2flt::parse::ParseResult", %"num::dec2flt::parse::ParseResult"* %0, i16 0, i32 0, i16 0
  store i8 3, i8* %22, align 1
  br label %bb4

bb33:                                             ; preds = %bb28.critedge
  %_45.sroa.0.0..sroa_idx = getelementptr inbounds %"num::dec2flt::parse::ParseResult", %"num::dec2flt::parse::ParseResult"* %0, i16 0, i32 2
  %_45.sroa.0.0..sroa_cast67 = bitcast [16 x i8]* %_45.sroa.0.0..sroa_idx to [0 x i8]**
  store [0 x i8]* %s.0, [0 x i8]** %_45.sroa.0.0..sroa_cast67, align 1
  %_45.sroa.4.0..sroa_idx = getelementptr inbounds %"num::dec2flt::parse::ParseResult", %"num::dec2flt::parse::ParseResult"* %0, i16 0, i32 2, i16 2
  %_45.sroa.4.0..sroa_cast69 = bitcast i8* %_45.sroa.4.0..sroa_idx to i16*
  store i16 %i.0.lcssa15.i79, i16* %_45.sroa.4.0..sroa_cast69, align 1
  %_45.sroa.5.0..sroa_idx = getelementptr inbounds %"num::dec2flt::parse::ParseResult", %"num::dec2flt::parse::ParseResult"* %0, i16 0, i32 2, i16 4
  %23 = bitcast i8* %_45.sroa.5.0..sroa_idx to i8**
  store i8* %13, i8** %23, align 1
  %_45.sroa.6.0..sroa_idx = getelementptr inbounds %"num::dec2flt::parse::ParseResult", %"num::dec2flt::parse::ParseResult"* %0, i16 0, i32 2, i16 6
  %_45.sroa.6.0..sroa_cast73 = bitcast i8* %_45.sroa.6.0..sroa_idx to i16*
  store i16 %i.0.lcssa15.i2482, i16* %_45.sroa.6.0..sroa_cast73, align 1
  %_45.sroa.7.0..sroa_idx = getelementptr inbounds %"num::dec2flt::parse::ParseResult", %"num::dec2flt::parse::ParseResult"* %0, i16 0, i32 2, i16 8
  %_45.sroa.7.0..sroa_cast75 = bitcast i8* %_45.sroa.7.0..sroa_idx to i64*
  store i64 0, i64* %_45.sroa.7.0..sroa_cast75, align 1
  %24 = getelementptr inbounds %"num::dec2flt::parse::ParseResult", %"num::dec2flt::parse::ParseResult"* %0, i16 0, i32 0, i16 0
  store i8 0, i8* %24, align 1
  br label %bb4

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit": ; preds = %bb31, %bb31
  %25 = getelementptr inbounds i8, i8* %17, i16 1
  %_7.i.i.i.i = add i16 %_7.i.i.i.i36, -1
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i = bitcast i8* %25 to [0 x i8]*
; call core::num::dec2flt::parse::parse_exp
  tail call fastcc addrspace(1) void @_ZN4core3num7dec2flt5parse9parse_exp17h0d97154cad6987fdE(%"num::dec2flt::parse::ParseResult"* noalias nocapture nonnull dereferenceable(17) %0, [0 x i8]* noalias nonnull readonly align 1 %s.0, i16 %i.0.lcssa15.i79, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i47, i16 %i.0.lcssa15.i2482, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i, i16 %_7.i.i.i.i)
  br label %bb4
}

; core::num::dec2flt::parse::parse_exp
; Function Attrs: uwtable
define internal fastcc void @_ZN4core3num7dec2flt5parse9parse_exp17h0d97154cad6987fdE(%"num::dec2flt::parse::ParseResult"* noalias nocapture dereferenceable(17) %0, [0 x i8]* noalias nonnull readonly align 1 %integral.0, i16 %integral.1, [0 x i8]* noalias nonnull readonly align 1 %fractional.0, i16 %fractional.1, [0 x i8]* noalias nonnull readonly align 1 %rest.0, i16 %rest.1) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_4.i = icmp eq i16 %rest.1, 0
  br i1 %_4.i, label %bb17, label %bb3

bb3:                                              ; preds = %start
  %first.i = getelementptr inbounds [0 x i8], [0 x i8]* %rest.0, i16 0, i16 0
  %1 = load i8, i8* %first.i, align 1
  switch i8 %1, label %bb11.i.preheader [
    i8 45, label %bb8
    i8 43, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit28"
  ]

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit28": ; preds = %bb3
  br label %bb8

bb8:                                              ; preds = %bb3, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit28"
  %_6.sroa.0.0 = phi i16 [ 0, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit28" ], [ 1, %bb3 ]
  %_6.sroa.6.0.in = getelementptr inbounds [0 x i8], [0 x i8]* %rest.0, i16 0, i16 1
  %_6.sroa.6.0 = bitcast i8* %_6.sroa.6.0.in to [0 x i8]*
  %_6.sroa.10.0 = add i16 %rest.1, -1
  %_510.i = icmp eq i16 %_6.sroa.10.0, 0
  br i1 %_510.i, label %bb17, label %bb11.i.preheader

bb11.i.preheader:                                 ; preds = %bb3, %bb8
  %_6.sroa.0.0114 = phi i16 [ %_6.sroa.0.0, %bb8 ], [ 0, %bb3 ]
  %_6.sroa.6.0113 = phi [0 x i8]* [ %_6.sroa.6.0, %bb8 ], [ %rest.0, %bb3 ]
  %_6.sroa.10.0112 = phi i16 [ %_6.sroa.10.0, %bb8 ], [ %rest.1, %bb3 ]
  br label %bb11.i

bb3.i:                                            ; preds = %bb11.i
  %_8.i.i.i.i = icmp ugt i16 %i.011.i, %_6.sroa.10.0112
  br i1 %_8.i.i.i.i, label %bb5.i.i.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit33"

bb5.i.i.i.i:                                      ; preds = %bb3.i
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %i.011.i, i16 %_6.sroa.10.0112, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18143 to %"panic::Location"*)), !noalias !45
  unreachable

bb11.i:                                           ; preds = %bb11.i.preheader, %bb14.i
  %i.011.i = phi i16 [ %4, %bb14.i ], [ 0, %bb11.i.preheader ]
  %2 = getelementptr inbounds [0 x i8], [0 x i8]* %_6.sroa.6.0113, i16 0, i16 %i.011.i
  %_10.i = load i8, i8* %2, align 1, !alias.scope !48, !noalias !45
  %_10.off.i = add i8 %_10.i, -48
  %3 = icmp ult i8 %_10.off.i, 10
  br i1 %3, label %bb14.i, label %bb3.i

bb14.i:                                           ; preds = %bb11.i
  %4 = add nuw i16 %i.011.i, 1
  %_5.i = icmp ult i16 %4, %_6.sroa.10.0112
  br i1 %_5.i, label %bb11.i, label %bb18.preheader

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit33": ; preds = %bb3.i
  %5 = icmp eq i16 %_6.sroa.10.0112, %i.011.i
  br i1 %5, label %bb11, label %bb12

bb11:                                             ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit33"
  %6 = icmp eq i16 %i.011.i, 0
  br i1 %6, label %bb17, label %bb18.preheader

bb18.preheader:                                   ; preds = %bb14.i, %bb11
  %i.0.lcssa15.i68119131 = phi i16 [ %i.011.i, %bb11 ], [ %_6.sroa.10.0112, %bb14.i ]
  %first.i3678 = getelementptr [0 x i8], [0 x i8]* %_6.sroa.6.0113, i16 0, i16 0
  br i1 icmp eq (i16 select (i1 icmp ule ({}* bitcast (<{ [1 x i8] }>* @alloc247 to {}*), {}* null), i16 0, i16 1), i16 1), label %bb7.i, label %bb21

bb12:                                             ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit33"
  %7 = getelementptr inbounds %"num::dec2flt::parse::ParseResult", %"num::dec2flt::parse::ParseResult"* %0, i16 0, i32 0, i16 0
  store i8 3, i8* %7, align 1
  br label %bb13

bb13:                                             ; preds = %bb12, %bb17, %bb29, %bb27, %_ZN4core3num7dec2flt3num18from_str_unchecked17hee47d75fd5efa3f4E.exit
  ret void

bb17:                                             ; preds = %bb8, %start, %bb11
  %8 = getelementptr inbounds %"num::dec2flt::parse::ParseResult", %"num::dec2flt::parse::ParseResult"* %0, i16 0, i32 0, i16 0
  store i8 3, i8* %8, align 1
  br label %bb13

bb7.i:                                            ; preds = %bb18.preheader, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit"
  %.0.i3787 = phi i8* [ %.0.i37, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit" ], [ %first.i3678, %bb18.preheader ]
  %first.i3686 = phi i8* [ %11, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit" ], [ %first.i3678, %bb18.preheader ]
  %_4.i3585 = phi i1 [ %_4.i35, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit" ], [ false, %bb18.preheader ]
  %number.sroa.9.083 = phi i16 [ %_7.i.i.i.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit" ], [ %i.0.lcssa15.i68119131, %bb18.preheader ]
  %9 = icmp eq i8* %.0.i3787, null
  %brmerge.i = or i1 %9, icmp ne (i16 select (i1 icmp ule ({}* bitcast (<{ [1 x i8] }>* @alloc247 to {}*), {}* null), i16 0, i16 1), i16 1)
  br i1 %brmerge.i, label %bb22, label %"_ZN70_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..cmp..PartialEq$GT$2eq17h8fc1261f3e06ac1cE.exit"

"_ZN70_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..cmp..PartialEq$GT$2eq17h8fc1261f3e06ac1cE.exit": ; preds = %bb7.i
  %self.val.val.i = load i8, i8* %.0.i3787, align 1, !noalias !50
  %10 = icmp eq i8 %self.val.val.i, 48
  br i1 %10, label %bb22, label %bb21.loopexit

bb18.bb21_crit_edge:                              ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit"
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i.le = bitcast i8* %11 to [0 x i8]*
  br label %bb21

bb21.loopexit:                                    ; preds = %"_ZN70_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..cmp..PartialEq$GT$2eq17h8fc1261f3e06ac1cE.exit"
  %indvars107.le = bitcast i8* %first.i3686 to [0 x i8]*
  br label %bb21

bb21:                                             ; preds = %bb21.loopexit, %bb18.bb21_crit_edge, %bb18.preheader
  %number.sroa.0.0.lcssa = phi [0 x i8]* [ %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i.le, %bb18.bb21_crit_edge ], [ %_6.sroa.6.0113, %bb18.preheader ], [ %indvars107.le, %bb21.loopexit ]
  %number.sroa.9.0.lcssa = phi i16 [ %_7.i.i.i.i, %bb18.bb21_crit_edge ], [ %i.0.lcssa15.i68119131, %bb18.preheader ], [ %number.sroa.9.083, %bb21.loopexit ]
  %_4.i35.lcssa = phi i1 [ %_4.i35, %bb18.bb21_crit_edge ], [ false, %bb18.preheader ], [ %_4.i3585, %bb21.loopexit ]
  %first.i36.lcssa = phi i8* [ %11, %bb18.bb21_crit_edge ], [ %first.i3678, %bb18.preheader ], [ %first.i3686, %bb21.loopexit ]
  %_41 = icmp ugt i16 %number.sroa.9.0.lcssa, 17
  br i1 %_41, label %bb26, label %bb25

bb22:                                             ; preds = %bb7.i, %"_ZN70_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..cmp..PartialEq$GT$2eq17h8fc1261f3e06ac1cE.exit"
  %_3.i.i.i = icmp eq i16 %number.sroa.9.083, 0
  br i1 %_3.i.i.i, label %bb2.i.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit"

bb2.i.i.i:                                        ; preds = %bb22
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 1, i16 0, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18151 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit": ; preds = %bb22
  %11 = getelementptr inbounds i8, i8* %first.i3686, i16 1
  %_7.i.i.i.i = add i16 %number.sroa.9.083, -1
  %_4.i35 = icmp eq i16 %_7.i.i.i.i, 0
  %.0.i37 = select i1 %_4.i35, i8* null, i8* %11
  %12 = icmp ne i8* %.0.i37, null
  %13 = zext i1 %12 to i16
  %_10.i34 = icmp eq i16 %13, select (i1 icmp ule ({}* bitcast (<{ [1 x i8] }>* @alloc247 to {}*), {}* null), i16 0, i16 1)
  br i1 %_10.i34, label %bb7.i, label %bb18.bb21_crit_edge

bb25:                                             ; preds = %bb21
  %14 = getelementptr inbounds [0 x i8], [0 x i8]* %number.sroa.0.0.lcssa, i16 0, i16 %number.sroa.9.0.lcssa
  br i1 %_4.i35.lcssa, label %_ZN4core3num7dec2flt3num18from_str_unchecked17hee47d75fd5efa3f4E.exit, label %bb8.i

bb8.i:                                            ; preds = %bb25, %bb8.i
  %result.012.i = phi i64 [ %16, %bb8.i ], [ 0, %bb25 ]
  %iter.sroa.0.011.i = phi i8* [ %15, %bb8.i ], [ %first.i36.lcssa, %bb25 ]
  %15 = getelementptr inbounds i8, i8* %iter.sroa.0.011.i, i16 1
  %c.i = load i8, i8* %iter.sroa.0.011.i, align 1, !alias.scope !53
  %_13.i = mul i64 %result.012.i, 10
  %_16.i = add i8 %c.i, -48
  %_15.i = zext i8 %_16.i to i64
  %16 = add i64 %_13.i, %_15.i
  %_13.i.i = icmp eq i8* %15, %14
  br i1 %_13.i.i, label %_ZN4core3num7dec2flt3num18from_str_unchecked17hee47d75fd5efa3f4E.exit, label %bb8.i

_ZN4core3num7dec2flt3num18from_str_unchecked17hee47d75fd5efa3f4E.exit: ; preds = %bb8.i, %bb25
  %result.0.lcssa.i = phi i64 [ 0, %bb25 ], [ %16, %bb8.i ]
  %switch4 = icmp eq i16 %_6.sroa.0.0114, 1
  %17 = sub i64 0, %result.0.lcssa.i
  %e.0 = select i1 %switch4, i64 %17, i64 %result.0.lcssa.i
  %_52.sroa.0.0..sroa_idx = getelementptr inbounds %"num::dec2flt::parse::ParseResult", %"num::dec2flt::parse::ParseResult"* %0, i16 0, i32 2
  %_52.sroa.0.0..sroa_cast43 = bitcast [16 x i8]* %_52.sroa.0.0..sroa_idx to [0 x i8]**
  store [0 x i8]* %integral.0, [0 x i8]** %_52.sroa.0.0..sroa_cast43, align 1
  %_52.sroa.4.0..sroa_idx = getelementptr inbounds %"num::dec2flt::parse::ParseResult", %"num::dec2flt::parse::ParseResult"* %0, i16 0, i32 2, i16 2
  %_52.sroa.4.0..sroa_cast45 = bitcast i8* %_52.sroa.4.0..sroa_idx to i16*
  store i16 %integral.1, i16* %_52.sroa.4.0..sroa_cast45, align 1
  %_52.sroa.5.0..sroa_idx = getelementptr inbounds %"num::dec2flt::parse::ParseResult", %"num::dec2flt::parse::ParseResult"* %0, i16 0, i32 2, i16 4
  %_52.sroa.5.0..sroa_cast47 = bitcast i8* %_52.sroa.5.0..sroa_idx to [0 x i8]**
  store [0 x i8]* %fractional.0, [0 x i8]** %_52.sroa.5.0..sroa_cast47, align 1
  %_52.sroa.6.0..sroa_idx = getelementptr inbounds %"num::dec2flt::parse::ParseResult", %"num::dec2flt::parse::ParseResult"* %0, i16 0, i32 2, i16 6
  %_52.sroa.6.0..sroa_cast49 = bitcast i8* %_52.sroa.6.0..sroa_idx to i16*
  store i16 %fractional.1, i16* %_52.sroa.6.0..sroa_cast49, align 1
  %_52.sroa.7.0..sroa_idx = getelementptr inbounds %"num::dec2flt::parse::ParseResult", %"num::dec2flt::parse::ParseResult"* %0, i16 0, i32 2, i16 8
  %_52.sroa.7.0..sroa_cast51 = bitcast i8* %_52.sroa.7.0..sroa_idx to i64*
  store i64 %e.0, i64* %_52.sroa.7.0..sroa_cast51, align 1
  %18 = getelementptr inbounds %"num::dec2flt::parse::ParseResult", %"num::dec2flt::parse::ParseResult"* %0, i16 0, i32 0, i16 0
  store i8 0, i8* %18, align 1
  br label %bb13

bb26:                                             ; preds = %bb21
  %switch = icmp eq i16 %_6.sroa.0.0114, 1
  %19 = getelementptr inbounds %"num::dec2flt::parse::ParseResult", %"num::dec2flt::parse::ParseResult"* %0, i16 0, i32 0, i16 0
  br i1 %switch, label %bb27, label %bb29

bb27:                                             ; preds = %bb26
  store i8 2, i8* %19, align 1
  br label %bb13

bb29:                                             ; preds = %bb26
  store i8 1, i8* %19, align 1
  br label %bb13
}

; core::num::dec2flt::rawfp::Unpacked::new
; Function Attrs: norecurse nounwind readnone uwtable
define { i64, i16 } @_ZN4core3num7dec2flt5rawfp8Unpacked3new17h706f478d246ad351E(i64 %sig, i16 %k) unnamed_addr addrspace(1) #1 {
start:
  %0 = insertvalue { i64, i16 } undef, i64 %sig, 0
  %1 = insertvalue { i64, i16 } %0, i16 %k, 1
  ret { i64, i16 } %1
}

; <f32 as core::num::dec2flt::rawfp::RawFloat>::integer_decode
; Function Attrs: nofree norecurse nounwind uwtable writeonly
define void @"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$14integer_decode17h73166203f8139649E"({ [0 x i8], i64, [0 x i8], i16, [0 x i8], i8, [0 x i8] }* noalias nocapture sret dereferenceable(11) %0, float %self) unnamed_addr addrspace(1) #3 {
start:
  %1 = bitcast float %self to i32
  %_5 = icmp sgt i32 %1, -1
  %. = select i1 %_5, i8 1, i8 -1
  %_10 = lshr i32 %1, 23
  %2 = trunc i32 %_10 to i16
  %3 = and i16 %2, 255
  %_13 = icmp eq i16 %3, 0
  %_15 = and i32 %1, 8388607
  %4 = shl nuw nsw i32 %_15, 1
  %5 = or i32 %_15, 8388608
  %mantissa.0 = select i1 %_13, i32 %4, i32 %5
  %6 = add nsw i16 %3, -150
  %_20 = zext i32 %mantissa.0 to i64
  %7 = bitcast { [0 x i8], i64, [0 x i8], i16, [0 x i8], i8, [0 x i8] }* %0 to i64*
  store i64 %_20, i64* %7, align 1
  %8 = getelementptr inbounds { [0 x i8], i64, [0 x i8], i16, [0 x i8], i8, [0 x i8] }, { [0 x i8], i64, [0 x i8], i16, [0 x i8], i8, [0 x i8] }* %0, i16 0, i32 3
  store i16 %6, i16* %8, align 1
  %9 = getelementptr inbounds { [0 x i8], i64, [0 x i8], i16, [0 x i8], i8, [0 x i8] }, { [0 x i8], i64, [0 x i8], i16, [0 x i8], i8, [0 x i8] }* %0, i16 0, i32 5
  store i8 %., i8* %9, align 1
  ret void
}

; <f32 as core::num::dec2flt::rawfp::RawFloat>::unpack
; Function Attrs: nounwind readnone uwtable
define { i64, i16 } @"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$6unpack17he514a5b851b499dcE"(float %self) unnamed_addr addrspace(1) #4 {
start:
  %0 = bitcast float %self to i32
  %_10.i = lshr i32 %0, 23
  %1 = trunc i32 %_10.i to i16
  %2 = and i16 %1, 255
  %_13.i = icmp eq i16 %2, 0
  %_15.i = and i32 %0, 8388607
  %3 = shl nuw nsw i32 %_15.i, 1
  %4 = or i32 %_15.i, 8388608
  %mantissa.0.i = select i1 %_13.i, i32 %3, i32 %4
  %5 = add nsw i16 %2, -150
  %_20.i = zext i32 %mantissa.0.i to i64
  %6 = insertvalue { i64, i16 } undef, i64 %_20.i, 0
  %7 = insertvalue { i64, i16 } %6, i16 %5, 1
  ret { i64, i16 } %7
}

; <f32 as core::num::dec2flt::rawfp::RawFloat>::from_int
; Function Attrs: norecurse nounwind readnone uwtable
define float @"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8from_int17h038fca272e099c4bE"(i64 %x) unnamed_addr addrspace(1) #1 {
start:
  %0 = uitofp i64 %x to float
  ret float %0
}

; <f32 as core::num::dec2flt::rawfp::RawFloat>::short_fast_pow10
; Function Attrs: uwtable
define float @"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$16short_fast_pow1017h61593188a22c93e9E"(i16 %e) unnamed_addr addrspace(1) #2 {
start:
  %_5 = icmp ult i16 %e, 11
  br i1 %_5, label %bb1, label %panic, !prof !4, !misexpect !5

bb1:                                              ; preds = %start
  %0 = getelementptr inbounds [11 x float], [11 x float]* bitcast (<{ [44 x i8] }>* @1 to [11 x float]*), i16 0, i16 %e
  %1 = load float, float* %0, align 1
  ret float %1

panic:                                            ; preds = %start
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %e, i16 11, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18153 to %"panic::Location"*))
  unreachable
}

; <f32 as core::num::dec2flt::rawfp::RawFloat>::to_bits
; Function Attrs: norecurse nounwind readnone uwtable
define i32 @"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$7to_bits17h91769c6f5a29afecE"(float %self) unnamed_addr addrspace(1) #1 {
start:
  %0 = bitcast float %self to i32
  ret i32 %0
}

; <f32 as core::num::dec2flt::rawfp::RawFloat>::from_bits
; Function Attrs: norecurse nounwind readnone uwtable
define float @"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$9from_bits17hf798ce49c99fa6a8E"(i32 %v) unnamed_addr addrspace(1) #1 {
start:
  %0 = bitcast i32 %v to float
  ret float %0
}

; <f64 as core::num::dec2flt::rawfp::RawFloat>::integer_decode
; Function Attrs: nofree norecurse nounwind uwtable writeonly
define void @"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$14integer_decode17h805576977943dde0E"({ [0 x i8], i64, [0 x i8], i16, [0 x i8], i8, [0 x i8] }* noalias nocapture sret dereferenceable(11) %0, double %self) unnamed_addr addrspace(1) #3 {
start:
  %1 = bitcast double %self to i64
  %_5 = icmp sgt i64 %1, -1
  %. = select i1 %_5, i8 1, i8 -1
  %_10 = lshr i64 %1, 52
  %2 = trunc i64 %_10 to i16
  %3 = and i16 %2, 2047
  %_13 = icmp eq i16 %3, 0
  %_15 = and i64 %1, 4503599627370495
  %4 = shl nuw nsw i64 %_15, 1
  %5 = or i64 %_15, 4503599627370496
  %mantissa.0 = select i1 %_13, i64 %4, i64 %5
  %6 = add nsw i16 %3, -1075
  %7 = bitcast { [0 x i8], i64, [0 x i8], i16, [0 x i8], i8, [0 x i8] }* %0 to i64*
  store i64 %mantissa.0, i64* %7, align 1
  %8 = getelementptr inbounds { [0 x i8], i64, [0 x i8], i16, [0 x i8], i8, [0 x i8] }, { [0 x i8], i64, [0 x i8], i16, [0 x i8], i8, [0 x i8] }* %0, i16 0, i32 3
  store i16 %6, i16* %8, align 1
  %9 = getelementptr inbounds { [0 x i8], i64, [0 x i8], i16, [0 x i8], i8, [0 x i8] }, { [0 x i8], i64, [0 x i8], i16, [0 x i8], i8, [0 x i8] }* %0, i16 0, i32 5
  store i8 %., i8* %9, align 1
  ret void
}

; <f64 as core::num::dec2flt::rawfp::RawFloat>::unpack
; Function Attrs: nounwind readnone uwtable
define { i64, i16 } @"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$6unpack17hfed758320f1713d9E"(double %self) unnamed_addr addrspace(1) #4 {
start:
  %0 = bitcast double %self to i64
  %_10.i = lshr i64 %0, 52
  %1 = trunc i64 %_10.i to i16
  %2 = and i16 %1, 2047
  %_13.i = icmp eq i16 %2, 0
  %_15.i = and i64 %0, 4503599627370495
  %3 = shl nuw nsw i64 %_15.i, 1
  %4 = or i64 %_15.i, 4503599627370496
  %mantissa.0.i = select i1 %_13.i, i64 %3, i64 %4
  %5 = add nsw i16 %2, -1075
  %6 = insertvalue { i64, i16 } undef, i64 %mantissa.0.i, 0
  %7 = insertvalue { i64, i16 } %6, i16 %5, 1
  ret { i64, i16 } %7
}

; <f64 as core::num::dec2flt::rawfp::RawFloat>::from_int
; Function Attrs: norecurse nounwind readnone uwtable
define double @"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8from_int17hed473d9be87df04cE"(i64 %x) unnamed_addr addrspace(1) #1 {
start:
  %0 = uitofp i64 %x to double
  ret double %0
}

; <f64 as core::num::dec2flt::rawfp::RawFloat>::short_fast_pow10
; Function Attrs: uwtable
define double @"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$16short_fast_pow1017h9ff7928074c8edc2E"(i16 %e) unnamed_addr addrspace(1) #2 {
start:
  %_5 = icmp ult i16 %e, 23
  br i1 %_5, label %bb1, label %panic, !prof !4, !misexpect !5

bb1:                                              ; preds = %start
  %0 = getelementptr inbounds [23 x double], [23 x double]* bitcast (<{ [184 x i8] }>* @2 to [23 x double]*), i16 0, i16 %e
  %1 = load double, double* %0, align 1
  ret double %1

panic:                                            ; preds = %start
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %e, i16 23, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18155 to %"panic::Location"*))
  unreachable
}

; <f64 as core::num::dec2flt::rawfp::RawFloat>::to_bits
; Function Attrs: norecurse nounwind readnone uwtable
define i64 @"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$7to_bits17hc242e6aaa2a5500aE"(double %self) unnamed_addr addrspace(1) #1 {
start:
  %0 = bitcast double %self to i64
  ret i64 %0
}

; <f64 as core::num::dec2flt::rawfp::RawFloat>::from_bits
; Function Attrs: norecurse nounwind readnone uwtable
define double @"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$9from_bits17hd54eb1ef9f4cb384E"(i64 %v) unnamed_addr addrspace(1) #1 {
start:
  %0 = bitcast i64 %v to double
  ret double %0
}

; core::num::dec2flt::rawfp::big_to_fp
; Function Attrs: uwtable
define { i64, i16 } @_ZN4core3num7dec2flt5rawfp9big_to_fp17h2b0cb21516ff4d5bE(%"num::bignum::Big32x40"* noalias readonly align 1 dereferenceable(162) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = bitcast %"num::bignum::Big32x40"* %f to i16*
  %_6.i.i = load i16, i16* %0, align 1, !alias.scope !56
  %_8.i.i.i.i.i = icmp ugt i16 %_6.i.i, 40
  br i1 %_8.i.i.i.i.i, label %bb5.i.i.i.i.i, label %bb5.i.i.i4.i

bb5.i.i.i.i.i:                                    ; preds = %start
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %_6.i.i, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

bb5.i.i.i4.i:                                     ; preds = %start
  %1 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %f, i16 0, i32 3, i16 0
  %_13.i.i4.i.i.i.i.i = icmp eq i16 %_6.i.i, 0
  br i1 %_13.i.i4.i.i.i.i.i, label %bb3, label %bb6.i.i.i.i.i.preheader.i

bb6.i.i.i.i.i.preheader.i:                        ; preds = %bb5.i.i.i4.i
  %2 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %f, i16 0, i32 3, i16 %_6.i.i
  br label %bb6.i.i.i.i.i.i

bb6.i.i.i.i.i.i:                                  ; preds = %bb8.i.i.i.i.i.i, %bb6.i.i.i.i.i.preheader.i
  %_12.i.i6.i.i.i.i.i = phi i32* [ %3, %bb8.i.i.i.i.i.i ], [ %2, %bb6.i.i.i.i.i.preheader.i ]
  %accum.0.i5.i.i.i.i.i = phi i16 [ %_5.0.i.i.i.i.i.i.i.i.i.i.i, %bb8.i.i.i.i.i.i ], [ 0, %bb6.i.i.i.i.i.preheader.i ]
  %3 = getelementptr inbounds i32, i32* %_12.i.i6.i.i.i.i.i, i16 -1
  %x.val.val.i.i.i.i.i.i.i = load i32, i32* %3, align 1, !alias.scope !61, !noalias !64
  %4 = icmp eq i32 %x.val.val.i.i.i.i.i.i.i, 0
  br i1 %4, label %bb8.i.i.i.i.i.i, label %_ZN4core4iter6traits8iterator8Iterator5count17h833b2edda10f8956E.exit.i

bb8.i.i.i.i.i.i:                                  ; preds = %bb6.i.i.i.i.i.i
  %_5.0.i.i.i.i.i.i.i.i.i.i.i = add nuw nsw i16 %accum.0.i5.i.i.i.i.i, 1
  %_13.i.i.i.i.i.i.i = icmp eq i32* %1, %3
  br i1 %_13.i.i.i.i.i.i.i, label %_ZN4core4iter6traits8iterator8Iterator5count17h833b2edda10f8956E.exit.i, label %bb6.i.i.i.i.i.i

_ZN4core4iter6traits8iterator8Iterator5count17h833b2edda10f8956E.exit.i: ; preds = %bb8.i.i.i.i.i.i, %bb6.i.i.i.i.i.i
  %.0.i.i.i.i = phi i16 [ %accum.0.i5.i.i.i.i.i, %bb6.i.i.i.i.i.i ], [ %_5.0.i.i.i.i.i.i.i.i.i.i.i, %bb8.i.i.i.i.i.i ]
  %end.i = sub i16 %_6.i.i, %.0.i.i.i.i
  %_8.i.i.i.i = icmp ult i16 %_6.i.i, %.0.i.i.i.i
  br i1 %_8.i.i.i.i, label %bb5.i.i.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i"

bb5.i.i.i.i:                                      ; preds = %_ZN4core4iter6traits8iterator8Iterator5count17h833b2edda10f8956E.exit.i
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %end.i, i16 %_6.i.i, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i": ; preds = %_ZN4core4iter6traits8iterator8Iterator5count17h833b2edda10f8956E.exit.i
  %5 = icmp eq i16 %end.i, 0
  br i1 %5, label %bb3, label %bb9.i

bb9.i:                                            ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i"
  %_24.i = shl i16 %end.i, 5
  br label %bb14.i

bb14.i:                                           ; preds = %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit.i, %bb9.i
  %i.0.in.i = phi i16 [ %_24.i, %bb9.i ], [ %i.0.i, %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit.i ]
  %i.0.i = add i16 %i.0.in.i, -1
  %d.i.i = lshr i16 %i.0.i, 5
  %_18.i.i = icmp ult i16 %i.0.i, 1280
  br i1 %_18.i.i, label %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit.i, label %panic2.i.i, !prof !4, !misexpect !5

panic2.i.i:                                       ; preds = %bb14.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %d.i.i, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*)), !noalias !69
  unreachable

_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit.i: ; preds = %bb14.i
  %6 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %f, i16 0, i32 3, i16 %d.i.i
  %_15.i.i = load i32, i32* %6, align 1, !alias.scope !72
  %7 = and i16 %i.0.i, 31
  %8 = zext i16 %7 to i32
  %9 = shl nuw i32 1, %8
  %10 = and i32 %_15.i.i, %9
  %_28.i = icmp eq i32 %10, 0
  br i1 %_28.i, label %bb14.i, label %bb2

bb2:                                              ; preds = %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit.i
  %11 = tail call addrspace(1) i16 @llvm.usub.sat.i16(i16 %i.0.in.i, i16 64) #20
  %_6.i = sub nsw i16 %i.0.in.i, %11
  %_5.i = icmp ugt i16 %_6.i, 64
  br i1 %_5.i, label %bb2.i, label %bb5.preheader.i

bb5.preheader.i:                                  ; preds = %bb2
  %12 = icmp ugt i16 %i.0.in.i, %11
  br i1 %12, label %bb9.i9, label %_ZN4core3num7dec2flt3num8get_bits17h63dbbac52a9956dfE.exit

bb2.i:                                            ; preds = %bb2
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [35 x i8] }>* @alloc18129 to [0 x i8]*), i16 35, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18131 to %"panic::Location"*)), !noalias !73
  unreachable

bb9.i9:                                           ; preds = %bb5.preheader.i, %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit.i12
  %result.016.i = phi i64 [ %19, %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit.i12 ], [ 0, %bb5.preheader.i ]
  %iter.sroa.4.015.i = phi i16 [ %13, %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit.i12 ], [ %i.0.in.i, %bb5.preheader.i ]
  %13 = add i16 %iter.sroa.4.015.i, -1
  %d.i.i7 = lshr i16 %13, 5
  %_18.i.i8 = icmp ult i16 %13, 1280
  br i1 %_18.i.i8, label %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit.i12, label %panic2.i.i10, !prof !4, !misexpect !5

panic2.i.i10:                                     ; preds = %bb9.i9
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %d.i.i7, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*)), !noalias !76
  unreachable

_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit.i12: ; preds = %bb9.i9
  %_25.i = shl i64 %result.016.i, 1
  %14 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %f, i16 0, i32 3, i16 %d.i.i7
  %_15.i.i11 = load i32, i32* %14, align 1, !alias.scope !76
  %15 = and i16 %13, 31
  %16 = zext i16 %15 to i32
  %_14.i.i = lshr i32 %_15.i.i11, %16
  %17 = trunc i32 %_14.i.i to i8
  %18 = and i8 %17, 1
  %_27.i = zext i8 %18 to i64
  %19 = or i64 %_25.i, %_27.i
  %20 = icmp ugt i16 %13, %11
  br i1 %20, label %bb9.i9, label %_ZN4core3num7dec2flt3num8get_bits17h63dbbac52a9956dfE.exit

_ZN4core3num7dec2flt3num8get_bits17h63dbbac52a9956dfE.exit: ; preds = %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit.i12, %bb5.preheader.i
  %result.0.lcssa.i = phi i64 [ 0, %bb5.preheader.i ], [ %19, %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit.i12 ]
  %_4.i = icmp ult i64 %result.0.lcssa.i, 4294967296
  %21 = shl i64 %result.0.lcssa.i, 32
  %22 = add i16 %11, -32
  %f.0.i = select i1 %_4.i, i64 %21, i64 %result.0.lcssa.i
  %e.0.i = select i1 %_4.i, i16 %22, i16 %11
  %_8.i = icmp ult i64 %f.0.i, 281474976710656
  %23 = shl i64 %f.0.i, 16
  %24 = add i16 %e.0.i, -16
  %f.1.i = select i1 %_8.i, i64 %23, i64 %f.0.i
  %e.1.i = select i1 %_8.i, i16 %24, i16 %e.0.i
  %_12.i = icmp ult i64 %f.1.i, 72057594037927936
  %25 = shl i64 %f.1.i, 8
  %26 = add i16 %e.1.i, -8
  %f.2.i = select i1 %_12.i, i64 %25, i64 %f.1.i
  %e.2.i = select i1 %_12.i, i16 %26, i16 %e.1.i
  %_16.i = icmp ult i64 %f.2.i, 1152921504606846976
  %27 = shl i64 %f.2.i, 4
  %28 = add i16 %e.2.i, -4
  %f.3.i = select i1 %_16.i, i64 %27, i64 %f.2.i
  %e.3.i = select i1 %_16.i, i16 %28, i16 %e.2.i
  %_20.i = icmp ult i64 %f.3.i, 4611686018427387904
  %29 = shl i64 %f.3.i, 2
  %30 = add i16 %e.3.i, -2
  %f.4.i = select i1 %_20.i, i64 %29, i64 %f.3.i
  %e.4.i = select i1 %_20.i, i16 %30, i16 %e.3.i
  %f.4.lobit.i = lshr i64 %f.4.i, 63
  %f.4.lobit.not.i = xor i64 %f.4.lobit.i, 1
  %f.5.i = shl i64 %f.4.i, %f.4.lobit.not.i
  %f.4.lobit21.i = ashr i64 %f.4.i, 63
  %31 = trunc i64 %f.4.lobit21.i to i16
  %.not.i = xor i16 %31, -1
  %e.5.i = add i16 %e.4.i, %.not.i
  %_3.i = icmp ult i16 %i.0.in.i, 65
  br i1 %_3.i, label %bb20, label %bb1.i

bb1.i:                                            ; preds = %_ZN4core3num7dec2flt3num8get_bits17h63dbbac52a9956dfE.exit
  %half_bit.i = add i16 %11, -1
  %d.i.i13 = lshr i16 %half_bit.i, 5
  %_18.i.i14 = icmp ult i16 %half_bit.i, 1280
  br i1 %_18.i.i14, label %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit.i17, label %panic2.i.i15, !prof !4, !misexpect !5

panic2.i.i15:                                     ; preds = %bb1.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %d.i.i13, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*)), !noalias !79
  unreachable

_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit.i17: ; preds = %bb1.i
  %32 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %f, i16 0, i32 3, i16 %d.i.i13
  %_15.i.i16 = load i32, i32* %32, align 1, !alias.scope !79
  %33 = and i16 %half_bit.i, 31
  %34 = zext i16 %33 to i32
  %35 = shl nuw i32 1, %34
  %36 = and i32 %_15.i.i16, %35
  %_7.i = icmp eq i32 %36, 0
  br i1 %_7.i, label %bb20, label %bb9.i19

bb9.i19:                                          ; preds = %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit.i17, %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit11.i
  %iter.sroa.0.0.i = phi i16 [ %38, %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit11.i ], [ 0, %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit.i17 ]
  %37 = icmp ult i16 %iter.sroa.0.0.i, %half_bit.i
  br i1 %37, label %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit11.i, label %bb10

_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit11.i: ; preds = %bb9.i19
  %d.i6.i = lshr i16 %iter.sroa.0.0.i, 5
  %38 = add nuw nsw i16 %iter.sroa.0.0.i, 1
  %39 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %f, i16 0, i32 3, i16 %d.i6.i
  %_15.i8.i = load i32, i32* %39, align 1, !alias.scope !84
  %40 = and i16 %iter.sroa.0.0.i, 31
  %41 = zext i16 %40 to i32
  %42 = shl nuw i32 1, %41
  %43 = and i32 %_15.i8.i, %42
  %_23.i = icmp eq i32 %43, 0
  br i1 %_23.i, label %bb9.i19, label %bb13

bb3:                                              ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i", %bb5.i.i.i4.i
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [38 x i8] }>* @alloc18156 to [0 x i8]*), i16 38, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18158 to %"panic::Location"*))
  unreachable

bb10:                                             ; preds = %bb9.i19
  %_27 = and i64 %result.0.lcssa.i, 1
  %_26 = icmp eq i64 %_27, 0
  br i1 %_26, label %bb20, label %bb13

bb13:                                             ; preds = %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit11.i, %bb10
  %44 = tail call addrspace(1) { i64, i1 } @llvm.uadd.with.overflow.i64(i64 %result.0.lcssa.i, i64 1) #20
  %45 = extractvalue { i64, i1 } %44, 0
  %46 = extractvalue { i64, i1 } %44, 1
  br i1 %46, label %bb15, label %bb17

bb15:                                             ; preds = %bb13
  %_38 = add nuw i16 %11, 1
  br label %bb20

bb17:                                             ; preds = %bb13
  %_4.i20 = icmp ult i64 %45, 4294967296
  %47 = shl i64 %45, 32
  %f.0.i21 = select i1 %_4.i20, i64 %47, i64 %45
  %e.0.i22 = select i1 %_4.i20, i16 %22, i16 %11
  %_8.i23 = icmp ult i64 %f.0.i21, 281474976710656
  %48 = shl i64 %f.0.i21, 16
  %49 = add i16 %e.0.i22, -16
  %f.1.i24 = select i1 %_8.i23, i64 %48, i64 %f.0.i21
  %e.1.i25 = select i1 %_8.i23, i16 %49, i16 %e.0.i22
  %_12.i26 = icmp ult i64 %f.1.i24, 72057594037927936
  %50 = shl i64 %f.1.i24, 8
  %51 = add i16 %e.1.i25, -8
  %f.2.i27 = select i1 %_12.i26, i64 %50, i64 %f.1.i24
  %e.2.i28 = select i1 %_12.i26, i16 %51, i16 %e.1.i25
  %_16.i29 = icmp ult i64 %f.2.i27, 1152921504606846976
  %52 = shl i64 %f.2.i27, 4
  %53 = add i16 %e.2.i28, -4
  %f.3.i30 = select i1 %_16.i29, i64 %52, i64 %f.2.i27
  %e.3.i31 = select i1 %_16.i29, i16 %53, i16 %e.2.i28
  %_20.i32 = icmp ult i64 %f.3.i30, 4611686018427387904
  %54 = shl i64 %f.3.i30, 2
  %55 = add i16 %e.3.i31, -2
  %f.4.i33 = select i1 %_20.i32, i64 %54, i64 %f.3.i30
  %e.4.i34 = select i1 %_20.i32, i16 %55, i16 %e.3.i31
  %f.4.lobit.i35 = lshr i64 %f.4.i33, 63
  %f.4.lobit.not.i36 = xor i64 %f.4.lobit.i35, 1
  %f.5.i37 = shl i64 %f.4.i33, %f.4.lobit.not.i36
  %f.4.lobit21.i38 = ashr i64 %f.4.i33, 63
  %56 = trunc i64 %f.4.lobit21.i38 to i16
  %.not.i39 = xor i16 %56, -1
  %e.5.i40 = add i16 %e.4.i34, %.not.i39
  br label %bb20

bb20:                                             ; preds = %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit.i17, %_ZN4core3num7dec2flt3num8get_bits17h63dbbac52a9956dfE.exit, %bb17, %bb15, %bb10
  %.sroa.5.1 = phi i16 [ %e.5.i, %bb10 ], [ %_38, %bb15 ], [ %e.5.i40, %bb17 ], [ %e.5.i, %_ZN4core3num7dec2flt3num8get_bits17h63dbbac52a9956dfE.exit ], [ %e.5.i, %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit.i17 ]
  %.sroa.0.1 = phi i64 [ %f.5.i, %bb10 ], [ -9223372036854775808, %bb15 ], [ %f.5.i37, %bb17 ], [ %f.5.i, %_ZN4core3num7dec2flt3num8get_bits17h63dbbac52a9956dfE.exit ], [ %f.5.i, %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit.i17 ]
  %57 = insertvalue { i64, i16 } undef, i64 %.sroa.0.1, 0
  %58 = insertvalue { i64, i16 } %57, i16 %.sroa.5.1, 1
  ret { i64, i16 } %58
}

; core::num::dec2flt::ParseFloatError::__description
; Function Attrs: norecurse nounwind readonly uwtable
define { [0 x i8]*, i16 } @_ZN4core3num7dec2flt15ParseFloatError13__description17h041b6c9eccbc2702E(i8* noalias nocapture readonly align 1 dereferenceable(1) %self) unnamed_addr addrspace(1) #5 {
start:
  %0 = load i8, i8* %self, align 1, !range !87
  %switch = icmp eq i8 %0, 1
  %. = select i1 %switch, i16 21, i16 36
  %.2 = select i1 %switch, [0 x i8]* bitcast (<{ [21 x i8] }>* @alloc18159 to [0 x i8]*), [0 x i8]* bitcast (<{ [36 x i8] }>* @alloc18160 to [0 x i8]*)
  %1 = insertvalue { [0 x i8]*, i16 } undef, [0 x i8]* %.2, 0
  %2 = insertvalue { [0 x i8]*, i16 } %1, i16 %., 1
  ret { [0 x i8]*, i16 } %2
}

; <core::num::dec2flt::ParseFloatError as core::fmt::Display>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN74_$LT$core..num..dec2flt..ParseFloatError$u20$as$u20$core..fmt..Display$GT$3fmt17h8a1acbfaac5449d6E"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %0 = load i8, i8* %self, align 1, !range !87, !alias.scope !88
  %switch.i = icmp eq i8 %0, 1
  %..i = select i1 %switch.i, i16 21, i16 36
  %.2.i = select i1 %switch.i, [0 x i8]* bitcast (<{ [21 x i8] }>* @alloc18159 to [0 x i8]*), [0 x i8]* bitcast (<{ [36 x i8] }>* @alloc18160 to [0 x i8]*)
; call core::fmt::Formatter::pad
  %1 = tail call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter3pad17h307fb261f2dc8a5eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, [0 x i8]* noalias nonnull readonly align 1 %.2.i, i16 %..i)
  ret i1 %1
}

; core::num::dec2flt::pfe_empty
; Function Attrs: norecurse nounwind readnone uwtable
define zeroext i1 @_ZN4core3num7dec2flt9pfe_empty17h2b41cc3330edce23E() unnamed_addr addrspace(1) #1 {
start:
  ret i1 false
}

; core::num::dec2flt::pfe_invalid
; Function Attrs: norecurse nounwind readnone uwtable
define zeroext i1 @_ZN4core3num7dec2flt11pfe_invalid17he120300a4d384747E() unnamed_addr addrspace(1) #1 {
start:
  ret i1 true
}

; core::num::dec2flt::extract_sign
; Function Attrs: uwtable
define void @_ZN4core3num7dec2flt12extract_sign17hd658cdc2ba50deb2E({ [0 x i8], i8, [0 x i8], { [0 x i8]*, i16 }, [0 x i8] }* noalias nocapture sret dereferenceable(5) %0, [0 x i8]* noalias nonnull readonly align 1 %s.0, i16 %s.1) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_6 = icmp eq i16 %s.1, 0
  br i1 %_6, label %panic, label %bb2, !prof !91, !misexpect !5

bb2:                                              ; preds = %start
  %1 = getelementptr inbounds [0 x i8], [0 x i8]* %s.0, i16 0, i16 0
  %2 = load i8, i8* %1, align 1
  switch i8 %2, label %bb3 [
    i8 43, label %bb4
    i8 45, label %bb6
  ]

bb3:                                              ; preds = %bb2
  %3 = getelementptr inbounds { [0 x i8], i8, [0 x i8], { [0 x i8]*, i16 }, [0 x i8] }, { [0 x i8], i8, [0 x i8], { [0 x i8]*, i16 }, [0 x i8] }* %0, i16 0, i32 0, i16 0
  store i8 0, i8* %3, align 1
  %4 = getelementptr inbounds { [0 x i8], i8, [0 x i8], { [0 x i8]*, i16 }, [0 x i8] }, { [0 x i8], i8, [0 x i8], { [0 x i8]*, i16 }, [0 x i8] }* %0, i16 0, i32 3, i32 0
  store [0 x i8]* %s.0, [0 x i8]** %4, align 1
  br label %bb8

bb4:                                              ; preds = %bb2
  %_6.i.i.i.i = icmp eq i16 %s.1, 1
  br i1 %_6.i.i.i.i, label %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E.exit", label %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i"

"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i": ; preds = %bb4
  %5 = getelementptr inbounds [0 x i8], [0 x i8]* %s.0, i16 0, i16 1
  %b.i.i.i.i = load i8, i8* %5, align 1, !alias.scope !92
  %6 = icmp sgt i8 %b.i.i.i.i, -65
  br i1 %6, label %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E.exit", label %bb1.i.i.i

bb1.i.i.i:                                        ; preds = %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i"
; call core::str::slice_error_fail
  tail call addrspace(1) void @_ZN4core3str16slice_error_fail17h31442c6f648259d9E([0 x i8]* noalias nonnull readonly align 1 %s.0, i16 %s.1, i16 1, i16 %s.1, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18842 to %"panic::Location"*)), !noalias !99
  unreachable

"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E.exit": ; preds = %bb4, %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i"
  %7 = getelementptr inbounds [0 x i8], [0 x i8]* %s.0, i16 0, i16 1
  %len.i.i.i.i = add i16 %s.1, -1
  %8 = getelementptr inbounds { [0 x i8], i8, [0 x i8], { [0 x i8]*, i16 }, [0 x i8] }, { [0 x i8], i8, [0 x i8], { [0 x i8]*, i16 }, [0 x i8] }* %0, i16 0, i32 0, i16 0
  store i8 0, i8* %8, align 1
  %9 = getelementptr inbounds { [0 x i8], i8, [0 x i8], { [0 x i8]*, i16 }, [0 x i8] }, { [0 x i8], i8, [0 x i8], { [0 x i8]*, i16 }, [0 x i8] }* %0, i16 0, i32 3, i32 0
  %10 = bitcast [0 x i8]** %9 to i8**
  store i8* %7, i8** %10, align 1
  br label %bb8

bb6:                                              ; preds = %bb2
  %_6.i.i.i.i1 = icmp eq i16 %s.1, 1
  br i1 %_6.i.i.i.i1, label %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E.exit8", label %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i5"

"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i5": ; preds = %bb6
  %11 = getelementptr inbounds [0 x i8], [0 x i8]* %s.0, i16 0, i16 1
  %b.i.i.i.i4 = load i8, i8* %11, align 1, !alias.scope !104
  %12 = icmp sgt i8 %b.i.i.i.i4, -65
  br i1 %12, label %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E.exit8", label %bb1.i.i.i6

bb1.i.i.i6:                                       ; preds = %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i5"
; call core::str::slice_error_fail
  tail call addrspace(1) void @_ZN4core3str16slice_error_fail17h31442c6f648259d9E([0 x i8]* noalias nonnull readonly align 1 %s.0, i16 %s.1, i16 1, i16 %s.1, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18842 to %"panic::Location"*)), !noalias !111
  unreachable

"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E.exit8": ; preds = %bb6, %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i5"
  %13 = getelementptr inbounds [0 x i8], [0 x i8]* %s.0, i16 0, i16 1
  %len.i.i.i.i7 = add i16 %s.1, -1
  %14 = getelementptr inbounds { [0 x i8], i8, [0 x i8], { [0 x i8]*, i16 }, [0 x i8] }, { [0 x i8], i8, [0 x i8], { [0 x i8]*, i16 }, [0 x i8] }* %0, i16 0, i32 0, i16 0
  store i8 1, i8* %14, align 1
  %15 = getelementptr inbounds { [0 x i8], i8, [0 x i8], { [0 x i8]*, i16 }, [0 x i8] }, { [0 x i8], i8, [0 x i8], { [0 x i8]*, i16 }, [0 x i8] }* %0, i16 0, i32 3, i32 0
  %16 = bitcast [0 x i8]** %15 to i8**
  store i8* %13, i8** %16, align 1
  br label %bb8

bb8:                                              ; preds = %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E.exit", %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E.exit8", %bb3
  %len.i.i.i.i.sink = phi i16 [ %len.i.i.i.i, %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E.exit" ], [ %len.i.i.i.i7, %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E.exit8" ], [ %s.1, %bb3 ]
  %17 = getelementptr inbounds { [0 x i8], i8, [0 x i8], { [0 x i8]*, i16 }, [0 x i8] }, { [0 x i8], i8, [0 x i8], { [0 x i8]*, i16 }, [0 x i8] }* %0, i16 0, i32 3, i32 1
  store i16 %len.i.i.i.i.sink, i16* %17, align 1
  ret void

panic:                                            ; preds = %start
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 0, i16 0, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18162 to %"panic::Location"*))
  unreachable
}

; core::num::dec2flt::bound_intermediate_digits
; Function Attrs: norecurse nounwind readonly uwtable
define i64 @_ZN4core3num7dec2flt25bound_intermediate_digits17h73b0af9f03f02c8eE(%"num::dec2flt::parse::Decimal"* noalias nocapture readonly align 1 dereferenceable(16) %decimal, i64 %e) unnamed_addr addrspace(1) #5 {
start:
  %0 = getelementptr inbounds %"num::dec2flt::parse::Decimal", %"num::dec2flt::parse::Decimal"* %decimal, i16 0, i32 1, i32 1
  %_6.1 = load i16, i16* %0, align 1
  %_4 = zext i16 %_6.1 to i64
  %1 = getelementptr inbounds %"num::dec2flt::parse::Decimal", %"num::dec2flt::parse::Decimal"* %decimal, i16 0, i32 3, i32 1
  %_9.1 = load i16, i16* %1, align 1
  %_7 = zext i16 %_9.1 to i64
  %f_len = add nuw nsw i64 %_7, %_4
  %_10 = icmp sgt i64 %e, -1
  %_15 = sub i64 17, %e
  %.0.v = select i1 %_10, i64 %e, i64 %_15
  %.0 = add i64 %f_len, %.0.v
  ret i64 %.0
}

; core::num::diy_float::Fp::mul
; Function Attrs: norecurse nounwind readonly uwtable
define { i64, i16 } @_ZN4core3num9diy_float2Fp3mul17hf862bd294c7bb1abE({ i64, i16 }* noalias nocapture readonly align 1 dereferenceable(10) %self, { i64, i16 }* noalias nocapture readonly align 1 dereferenceable(10) %other) unnamed_addr addrspace(1) #5 {
start:
  %0 = getelementptr inbounds { i64, i16 }, { i64, i16 }* %self, i16 0, i32 0
  %_4 = load i64, i64* %0, align 1
  %a = lshr i64 %_4, 32
  %b = and i64 %_4, 4294967295
  %1 = getelementptr inbounds { i64, i16 }, { i64, i16 }* %other, i16 0, i32 0
  %_8 = load i64, i64* %1, align 1
  %c = lshr i64 %_8, 32
  %d = and i64 %_8, 4294967295
  %ac = mul nuw i64 %c, %a
  %bc = mul nuw i64 %c, %b
  %ad = mul nuw i64 %d, %a
  %bd = mul nuw i64 %d, %b
  %_26 = lshr i64 %bd, 32
  %_28 = and i64 %ad, 4294967295
  %_30 = and i64 %bc, 4294967295
  %_25 = add nuw nsw i64 %_28, 2147483648
  %_24 = add nuw nsw i64 %_25, %_26
  %tmp = add nuw nsw i64 %_24, %_30
  %_37 = lshr i64 %ad, 32
  %_35 = add nuw i64 %_37, %ac
  %_39 = lshr i64 %bc, 32
  %_34 = add nuw i64 %_35, %_39
  %_41 = lshr i64 %tmp, 32
  %f = add i64 %_34, %_41
  %2 = getelementptr inbounds { i64, i16 }, { i64, i16 }* %self, i16 0, i32 1
  %_45 = load i16, i16* %2, align 1
  %3 = getelementptr inbounds { i64, i16 }, { i64, i16 }* %other, i16 0, i32 1
  %_46 = load i16, i16* %3, align 1
  %_44 = add i16 %_45, 64
  %e = add i16 %_44, %_46
  %4 = insertvalue { i64, i16 } undef, i64 %f, 0
  %5 = insertvalue { i64, i16 } %4, i16 %e, 1
  ret { i64, i16 } %5
}

; core::num::diy_float::Fp::normalize
; Function Attrs: norecurse nounwind readonly uwtable
define { i64, i16 } @_ZN4core3num9diy_float2Fp9normalize17h385e8b2664953f07E({ i64, i16 }* noalias nocapture readonly align 1 dereferenceable(10) %self) unnamed_addr addrspace(1) #5 {
start:
  %0 = getelementptr inbounds { i64, i16 }, { i64, i16 }* %self, i16 0, i32 0
  %1 = load i64, i64* %0, align 1
  %2 = getelementptr inbounds { i64, i16 }, { i64, i16 }* %self, i16 0, i32 1
  %3 = load i16, i16* %2, align 1
  %_4 = icmp ult i64 %1, 4294967296
  %4 = shl i64 %1, 32
  %5 = add i16 %3, -32
  %f.0 = select i1 %_4, i64 %4, i64 %1
  %e.0 = select i1 %_4, i16 %5, i16 %3
  %_8 = icmp ult i64 %f.0, 281474976710656
  %6 = shl i64 %f.0, 16
  %7 = add i16 %e.0, -16
  %f.1 = select i1 %_8, i64 %6, i64 %f.0
  %e.1 = select i1 %_8, i16 %7, i16 %e.0
  %_12 = icmp ult i64 %f.1, 72057594037927936
  %8 = shl i64 %f.1, 8
  %9 = add i16 %e.1, -8
  %f.2 = select i1 %_12, i64 %8, i64 %f.1
  %e.2 = select i1 %_12, i16 %9, i16 %e.1
  %_16 = icmp ult i64 %f.2, 1152921504606846976
  %10 = shl i64 %f.2, 4
  %11 = add i16 %e.2, -4
  %f.3 = select i1 %_16, i64 %10, i64 %f.2
  %e.3 = select i1 %_16, i16 %11, i16 %e.2
  %_20 = icmp ult i64 %f.3, 4611686018427387904
  %12 = shl i64 %f.3, 2
  %13 = add i16 %e.3, -2
  %f.4 = select i1 %_20, i64 %12, i64 %f.3
  %e.4 = select i1 %_20, i16 %13, i16 %e.3
  %f.4.lobit = lshr i64 %f.4, 63
  %f.4.lobit.not = xor i64 %f.4.lobit, 1
  %f.5 = shl i64 %f.4, %f.4.lobit.not
  %f.4.lobit21 = ashr i64 %f.4, 63
  %14 = trunc i64 %f.4.lobit21 to i16
  %.not = xor i16 %14, -1
  %e.5 = add i16 %e.4, %.not
  %15 = insertvalue { i64, i16 } undef, i64 %f.5, 0
  %16 = insertvalue { i64, i16 } %15, i16 %e.5, 1
  ret { i64, i16 } %16
}

; core::num::diy_float::Fp::normalize_to
; Function Attrs: uwtable
define { i64, i16 } @_ZN4core3num9diy_float2Fp12normalize_to17hce0993befe2b6f77E({ i64, i16 }* noalias readonly align 1 dereferenceable(10) %self, i16 %e) unnamed_addr addrspace(1) #2 {
start:
  %_39 = alloca i64*, align 1
  %_37 = alloca i64*, align 1
  %_34 = alloca [2 x { i8*, i8 addrspace(1)* }], align 1
  %_27 = alloca %"fmt::Arguments", align 1
  %_15 = alloca i64, align 1
  %0 = getelementptr inbounds { i64, i16 }, { i64, i16 }* %self, i16 0, i32 1
  %_4 = load i16, i16* %0, align 1
  %edelta = sub i16 %_4, %e
  %_7 = icmp slt i16 %edelta, 0
  br i1 %_7, label %bb2, label %bb1

bb1:                                              ; preds = %start
  %1 = bitcast i64* %_15 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %1)
  %2 = getelementptr inbounds { i64, i16 }, { i64, i16 }* %self, i16 0, i32 0
  %_17 = load i64, i64* %2, align 1
  %3 = and i16 %edelta, 63
  %4 = zext i16 %3 to i64
  %5 = lshr i64 -1, %4
  %6 = and i64 %_17, %5
  store i64 %6, i64* %_15, align 1
  %7 = icmp ugt i64 %_17, %5
  br i1 %7, label %bb4, label %bb3

bb2:                                              ; preds = %start
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [29 x i8] }>* @alloc18167 to [0 x i8]*), i16 29, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18169 to %"panic::Location"*))
  unreachable

bb3:                                              ; preds = %bb1
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 8, i8* nonnull %1)
  %_48 = shl i64 %_17, %4
  %8 = insertvalue { i64, i16 } undef, i64 %_48, 0
  %9 = insertvalue { i64, i16 } %8, i16 %e, 1
  ret { i64, i16 } %9

bb4:                                              ; preds = %bb1
  %10 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_27, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %10)
  %11 = bitcast [2 x { i8*, i8 addrspace(1)* }]* %_34 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %11)
  %12 = bitcast i64** %_37 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i64* %_15, i64** %_37, align 1
  %13 = bitcast i64** %_39 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i64* %2, i64** %_39, align 1
  %14 = bitcast [2 x { i8*, i8 addrspace(1)* }]* %_34 to i64***
  store i64** %_37, i64*** %14, align 1
  %15 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_34, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 (i64**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17ha55c377638c0fa88E" to i8 addrspace(1)*), i8 addrspace(1)** %15, align 1
  %16 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_34, i16 0, i16 1, i32 0
  %17 = bitcast i8** %16 to i64***
  store i64** %_39, i64*** %17, align 1
  %18 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_34, i16 0, i16 1, i32 1
  store i8 addrspace(1)* bitcast (i1 (i64**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17ha55c377638c0fa88E" to i8 addrspace(1)*), i8 addrspace(1)** %18, align 1
  %19 = bitcast %"fmt::Arguments"* %_27 to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8], i8*, [2 x i8], i8*, [2 x i8] }>* @alloc16655 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %19, align 1, !alias.scope !116, !noalias !119
  %20 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_27, i16 0, i32 1, i32 1
  store i16 3, i16* %20, align 1, !alias.scope !116, !noalias !119
  %21 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_27, i16 0, i32 3, i32 0
  store i8* null, i8** %21, align 1, !alias.scope !116, !noalias !119
  %22 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_27, i16 0, i32 5, i32 0
  %23 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %22 to [2 x { i8*, i8 addrspace(1)* }]**
  store [2 x { i8*, i8 addrspace(1)* }]* %_34, [2 x { i8*, i8 addrspace(1)* }]** %23, align 1, !alias.scope !116, !noalias !119
  %24 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_27, i16 0, i32 5, i32 1
  store i16 2, i16* %24, align 1, !alias.scope !116, !noalias !119
; call core::panicking::panic_fmt
  call addrspace(1) void @_ZN4core9panicking9panic_fmt17hb7ee2cb815ea49cfE(%"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_27, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18171 to %"panic::Location"*))
  unreachable
}

; <f32 as core::num::flt2dec::decoder::DecodableFloat>::min_pos_norm_value
; Function Attrs: norecurse nounwind readnone uwtable
define float @"_ZN67_$LT$f32$u20$as$u20$core..num..flt2dec..decoder..DecodableFloat$GT$18min_pos_norm_value17h58ac5ad451b25928E"() unnamed_addr addrspace(1) #1 {
start:
  ret float 0x3810000000000000
}

; <f64 as core::num::flt2dec::decoder::DecodableFloat>::min_pos_norm_value
; Function Attrs: norecurse nounwind readnone uwtable
define double @"_ZN67_$LT$f64$u20$as$u20$core..num..flt2dec..decoder..DecodableFloat$GT$18min_pos_norm_value17heca44433639a3777E"() unnamed_addr addrspace(1) #1 {
start:
  ret double 0x10000000000000
}

; core::num::flt2dec::estimator::estimate_scaling_factor
; Function Attrs: nounwind readnone uwtable
define i16 @_ZN4core3num7flt2dec9estimator23estimate_scaling_factor17h3c0a4e55ab446841E(i64 %mant, i16 %exp) unnamed_addr addrspace(1) #4 {
start:
  %_6 = add i64 %mant, -1
  %0 = tail call addrspace(1) i64 @llvm.ctlz.i64(i64 %_6, i1 false) #20, !range !122
  %nbits = sub nuw nsw i64 64, %0
  %_12 = sext i16 %exp to i64
  %_10 = add nsw i64 %nbits, %_12
  %_9 = mul nsw i64 %_10, 1292913986
  %1 = lshr i64 %_9, 32
  %2 = trunc i64 %1 to i16
  ret i16 %2
}

; core::num::flt2dec::strategy::dragon::mul_pow10
; Function Attrs: uwtable
define nonnull align 1 dereferenceable(162) %"num::bignum::Big32x40"* @_ZN4core3num7flt2dec8strategy6dragon9mul_pow1017hf3e5382c315238dfE(%"num::bignum::Big32x40"* returned align 1 dereferenceable(162) %x, i16 %n) unnamed_addr addrspace(1) #2 {
start:
  %_5 = and i16 %n, 7
  %_4 = icmp eq i16 %_5, 0
  br i1 %_4, label %bb5, label %bb3

bb3:                                              ; preds = %start
  %0 = getelementptr inbounds [10 x i32], [10 x i32]* bitcast (<{ [40 x i8] }>* @_ZN4core3num7flt2dec8strategy6dragon5POW1017hc92859078f5b25a5E to [10 x i32]*), i16 0, i16 %_5
  %_9 = load i32, i32* %0, align 1
  %1 = bitcast %"num::bignum::Big32x40"* %x to i16*
  %2 = load i16, i16* %1, align 1
  %_9.i.i.i.i = icmp ugt i16 %2, 40
  br i1 %_9.i.i.i.i, label %bb5.i.i.i.i, label %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i"

bb5.i.i.i.i:                                      ; preds = %bb3
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %2, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i": ; preds = %bb3
  %_10.i = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %x, i16 0, i32 3
  %3 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %x, i16 0, i32 3, i16 %2
  %4 = getelementptr [40 x i32], [40 x i32]* %_10.i, i16 0, i16 0
  %_13.i16.i = icmp eq i32* %3, %4
  br i1 %_13.i16.i, label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit, label %bb7.lr.ph.i

bb7.lr.ph.i:                                      ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i"
  %5 = bitcast [40 x i32]* %_10.i to i8*
  %_10.i.i = zext i32 %_9 to i64
  br label %bb7.i

bb5.i:                                            ; preds = %bb7.i
  %_30.i = icmp eq i32 %_14.i.i, 0
  br i1 %_30.i, label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit, label %bb10.i

bb7.i:                                            ; preds = %bb7.i, %bb7.lr.ph.i
  %carry.018.i = phi i32 [ 0, %bb7.lr.ph.i ], [ %_14.i.i, %bb7.i ]
  %iter.sroa.0.017.i = phi i8* [ %5, %bb7.lr.ph.i ], [ %6, %bb7.i ]
  %6 = getelementptr inbounds i8, i8* %iter.sroa.0.017.i, i16 4
  %7 = bitcast i8* %iter.sroa.0.017.i to i32*
  %_25.i = load i32, i32* %7, align 1
  %_8.i.i = zext i32 %_25.i to i64
  %_7.i.i = mul nuw i64 %_8.i.i, %_10.i.i
  %_12.i11.i = zext i32 %carry.018.i to i64
  %v.i.i = add nuw i64 %_7.i.i, %_12.i11.i
  %_15.i.i = lshr i64 %v.i.i, 32
  %_14.i.i = trunc i64 %_15.i.i to i32
  %_18.i.i = trunc i64 %v.i.i to i32
  store i32 %_18.i.i, i32* %7, align 1
  %8 = bitcast i8* %6 to i32*
  %_13.i.i = icmp eq i32* %3, %8
  br i1 %_13.i.i, label %bb5.i, label %bb7.i

bb10.i:                                           ; preds = %bb5.i
  %_35.i = icmp ult i16 %2, 40
  br i1 %_35.i, label %bb11.i, label %panic.i, !prof !4, !misexpect !5

bb11.i:                                           ; preds = %bb10.i
  store i32 %_14.i.i, i32* %3, align 1
  %9 = add nuw nsw i16 %2, 1
  br label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit

panic.i:                                          ; preds = %bb10.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %2, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit: ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i", %bb5.i, %bb11.i
  %sz.0.i = phi i16 [ %9, %bb11.i ], [ %2, %bb5.i ], [ %2, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i" ]
  store i16 %sz.0.i, i16* %1, align 1
  br label %bb5

bb5:                                              ; preds = %start, %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit
  %_16 = and i16 %n, 8
  %_15 = icmp eq i16 %_16, 0
  br i1 %_15, label %bb9, label %bb7

bb7:                                              ; preds = %bb5
  %10 = bitcast %"num::bignum::Big32x40"* %x to i16*
  %11 = load i16, i16* %10, align 1
  %_9.i.i.i.i1 = icmp ugt i16 %11, 40
  br i1 %_9.i.i.i.i1, label %bb5.i.i.i.i2, label %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i5"

bb5.i.i.i.i2:                                     ; preds = %bb7
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %11, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i5": ; preds = %bb7
  %_10.i3 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %x, i16 0, i32 3
  %12 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %x, i16 0, i32 3, i16 %11
  %13 = getelementptr [40 x i32], [40 x i32]* %_10.i3, i16 0, i16 0
  %_13.i16.i4 = icmp eq i32* %12, %13
  br i1 %_13.i16.i4, label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit26, label %bb7.lr.ph.i6

bb7.lr.ph.i6:                                     ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i5"
  %14 = bitcast [40 x i32]* %_10.i3 to i8*
  br label %bb7.i20

bb5.i8:                                           ; preds = %bb7.i20
  %_30.i7 = icmp eq i32 %_14.i.i17, 0
  br i1 %_30.i7, label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit26, label %bb10.i22

bb7.i20:                                          ; preds = %bb7.i20, %bb7.lr.ph.i6
  %carry.018.i9 = phi i32 [ 0, %bb7.lr.ph.i6 ], [ %_14.i.i17, %bb7.i20 ]
  %iter.sroa.0.017.i10 = phi i8* [ %14, %bb7.lr.ph.i6 ], [ %15, %bb7.i20 ]
  %15 = getelementptr inbounds i8, i8* %iter.sroa.0.017.i10, i16 4
  %16 = bitcast i8* %iter.sroa.0.017.i10 to i32*
  %_25.i11 = load i32, i32* %16, align 1
  %_8.i.i12 = zext i32 %_25.i11 to i64
  %_7.i.i13 = mul nuw nsw i64 %_8.i.i12, 100000000
  %_12.i11.i14 = zext i32 %carry.018.i9 to i64
  %v.i.i15 = add nuw nsw i64 %_7.i.i13, %_12.i11.i14
  %_15.i.i16 = lshr i64 %v.i.i15, 32
  %_14.i.i17 = trunc i64 %_15.i.i16 to i32
  %_18.i.i18 = trunc i64 %v.i.i15 to i32
  store i32 %_18.i.i18, i32* %16, align 1
  %17 = bitcast i8* %15 to i32*
  %_13.i.i19 = icmp eq i32* %12, %17
  br i1 %_13.i.i19, label %bb5.i8, label %bb7.i20

bb10.i22:                                         ; preds = %bb5.i8
  %_35.i21 = icmp ult i16 %11, 40
  br i1 %_35.i21, label %bb11.i23, label %panic.i25, !prof !4, !misexpect !5

bb11.i23:                                         ; preds = %bb10.i22
  store i32 %_14.i.i17, i32* %12, align 1
  %18 = add nuw nsw i16 %11, 1
  br label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit26

panic.i25:                                        ; preds = %bb10.i22
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %11, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit26: ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i5", %bb5.i8, %bb11.i23
  %sz.0.i24 = phi i16 [ %18, %bb11.i23 ], [ %11, %bb5.i8 ], [ %11, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i5" ]
  store i16 %sz.0.i24, i16* %10, align 1
  br label %bb9

bb9:                                              ; preds = %bb5, %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit26
  %_22 = and i16 %n, 16
  %_21 = icmp eq i16 %_22, 0
  br i1 %_21, label %bb13, label %bb11

bb11:                                             ; preds = %bb9
; call core::num::bignum::Big32x40::mul_digits
  %_24 = tail call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x4010mul_digits17hbd72180d49f6c94bE(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %x, [0 x i32]* noalias nonnull readonly align 1 bitcast (<{ [8 x i8] }>* @_ZN4core3num7flt2dec8strategy6dragon9POW10TO1617h132fe39569e0e6d6E to [0 x i32]*), i16 2)
  br label %bb13

bb13:                                             ; preds = %bb9, %bb11
  %_31 = and i16 %n, 32
  %_30 = icmp eq i16 %_31, 0
  br i1 %_30, label %bb17, label %bb15

bb15:                                             ; preds = %bb13
; call core::num::bignum::Big32x40::mul_digits
  %_33 = tail call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x4010mul_digits17hbd72180d49f6c94bE(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %x, [0 x i32]* noalias nonnull readonly align 1 bitcast (<{ [16 x i8] }>* @_ZN4core3num7flt2dec8strategy6dragon9POW10TO3217h0018191b6fd28150E to [0 x i32]*), i16 4)
  br label %bb17

bb17:                                             ; preds = %bb13, %bb15
  %_40 = and i16 %n, 64
  %_39 = icmp eq i16 %_40, 0
  br i1 %_39, label %bb21, label %bb19

bb19:                                             ; preds = %bb17
; call core::num::bignum::Big32x40::mul_digits
  %_42 = tail call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x4010mul_digits17hbd72180d49f6c94bE(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %x, [0 x i32]* noalias nonnull readonly align 1 bitcast (<{ [28 x i8] }>* @_ZN4core3num7flt2dec8strategy6dragon9POW10TO6417h41a8dce6686980ecE to [0 x i32]*), i16 7)
  br label %bb21

bb21:                                             ; preds = %bb17, %bb19
  %19 = trunc i16 %n to i8
  %_48 = icmp slt i8 %19, 0
  br i1 %_48, label %bb23, label %bb25

bb23:                                             ; preds = %bb21
; call core::num::bignum::Big32x40::mul_digits
  %_51 = tail call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x4010mul_digits17hbd72180d49f6c94bE(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %x, [0 x i32]* noalias nonnull readonly align 1 bitcast (<{ [56 x i8] }>* @_ZN4core3num7flt2dec8strategy6dragon10POW10TO12817h85a7f087c30d6154E to [0 x i32]*), i16 14)
  br label %bb25

bb25:                                             ; preds = %bb21, %bb23
  %_58 = and i16 %n, 256
  %_57 = icmp eq i16 %_58, 0
  br i1 %_57, label %bb29, label %bb27

bb27:                                             ; preds = %bb25
; call core::num::bignum::Big32x40::mul_digits
  %_60 = tail call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x4010mul_digits17hbd72180d49f6c94bE(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %x, [0 x i32]* noalias nonnull readonly align 1 bitcast (<{ [108 x i8] }>* @_ZN4core3num7flt2dec8strategy6dragon10POW10TO25617hb3b8f4268a0e6c0eE to [0 x i32]*), i16 27)
  br label %bb29

bb29:                                             ; preds = %bb25, %bb27
  ret %"num::bignum::Big32x40"* %x
}

; core::num::flt2dec::strategy::dragon::format_shortest
; Function Attrs: uwtable
define { i16, i16 } @_ZN4core3num7flt2dec8strategy6dragon15format_shortest17h0c494f8b5739104dE(%"num::flt2dec::decoder::Decoded"* noalias nocapture readonly align 1 dereferenceable(27) %d, [0 x i8]* nonnull align 1 %buf.0, i16 %buf.1) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %base.i = alloca [40 x i32], align 1
  %_161 = alloca %"num::bignum::Big32x40", align 1
  %scale8 = alloca %"num::bignum::Big32x40", align 1
  %scale4 = alloca %"num::bignum::Big32x40", align 1
  %scale2 = alloca %"num::bignum::Big32x40", align 1
  %_105 = alloca %"num::bignum::Big32x40", align 1
  %scale = alloca %"num::bignum::Big32x40", align 1
  %plus = alloca %"num::bignum::Big32x40", align 1
  %minus = alloca %"num::bignum::Big32x40", align 1
  %mant = alloca %"num::bignum::Big32x40", align 1
  %0 = bitcast %"num::flt2dec::decoder::Decoded"* %d to i64*
  %_5 = load i64, i64* %0, align 1
  %_4 = icmp eq i64 %_5, 0
  br i1 %_4, label %bb2, label %bb1

bb1:                                              ; preds = %start
  %1 = getelementptr inbounds %"num::flt2dec::decoder::Decoded", %"num::flt2dec::decoder::Decoded"* %d, i16 0, i32 3
  %_10 = load i64, i64* %1, align 1
  %_9 = icmp eq i64 %_10, 0
  br i1 %_9, label %bb4, label %bb3

bb2:                                              ; preds = %start
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [28 x i8] }>* @alloc18265 to [0 x i8]*), i16 28, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18180 to %"panic::Location"*))
  unreachable

bb3:                                              ; preds = %bb1
  %2 = getelementptr inbounds %"num::flt2dec::decoder::Decoded", %"num::flt2dec::decoder::Decoded"* %d, i16 0, i32 5
  %_15 = load i64, i64* %2, align 1
  %_14 = icmp eq i64 %_15, 0
  br i1 %_14, label %bb6, label %bb5

bb4:                                              ; preds = %bb1
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [29 x i8] }>* @alloc18230 to [0 x i8]*), i16 29, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18183 to %"panic::Location"*))
  unreachable

bb5:                                              ; preds = %bb3
  %3 = tail call addrspace(1) { i64, i1 } @llvm.uadd.with.overflow.i64(i64 %_5, i64 %_15) #20
  %4 = extractvalue { i64, i1 } %3, 1
  br i1 %4, label %bb10, label %bb9

bb6:                                              ; preds = %bb3
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [28 x i8] }>* @alloc18233 to [0 x i8]*), i16 28, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18186 to %"panic::Location"*))
  unreachable

bb9:                                              ; preds = %bb5
  %5 = tail call addrspace(1) { i64, i1 } @llvm.usub.with.overflow.i64(i64 %_5, i64 %_10) #20
  %6 = extractvalue { i64, i1 } %5, 1
  br i1 %6, label %bb14, label %bb13

bb10:                                             ; preds = %bb5
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [54 x i8] }>* @alloc18236 to [0 x i8]*), i16 54, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18189 to %"panic::Location"*))
  unreachable

bb13:                                             ; preds = %bb9
  %_35 = icmp ult i16 %buf.1, 17
  br i1 %_35, label %bb17, label %bb16

bb14:                                             ; preds = %bb9
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [55 x i8] }>* @alloc18239 to [0 x i8]*), i16 55, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18192 to %"panic::Location"*))
  unreachable

bb16:                                             ; preds = %bb13
  %7 = getelementptr inbounds %"num::flt2dec::decoder::Decoded", %"num::flt2dec::decoder::Decoded"* %d, i16 0, i32 9
  %8 = load i8, i8* %7, align 1, !range !87
  %9 = getelementptr inbounds %"num::flt2dec::decoder::Decoded", %"num::flt2dec::decoder::Decoded"* %d, i16 0, i32 7
  %_46 = load i16, i16* %9, align 1
  %_43 = add i64 %_5, -1
  %_6.i = add i64 %_43, %_15
  %10 = tail call addrspace(1) i64 @llvm.ctlz.i64(i64 %_6.i, i1 false) #20, !range !122
  %nbits.i = sub nuw nsw i64 64, %10
  %_12.i = sext i16 %_46 to i64
  %_10.i = add nsw i64 %nbits.i, %_12.i
  %_9.i = mul nsw i64 %_10.i, 1292913986
  %11 = lshr i64 %_9.i, 32
  %12 = trunc i64 %11 to i16
  %13 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %mant, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 162, i8* nonnull %13)
  %14 = bitcast [40 x i32]* %base.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 160, i8* nonnull %14), !noalias !123
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(160) %14, i8 0, i16 160, i1 false), !noalias !123
  br label %bb3.i

bb3.i:                                            ; preds = %bb16, %bb4.i
  %v.012.i = phi i64 [ %17, %bb4.i ], [ %_5, %bb16 ]
  %sz.011.i = phi i16 [ %18, %bb4.i ], [ 0, %bb16 ]
  %_9.i31 = icmp ult i16 %sz.011.i, 40
  br i1 %_9.i31, label %bb4.i, label %panic.i32, !prof !4, !misexpect !5

bb4.i:                                            ; preds = %bb3.i
  %15 = getelementptr inbounds [40 x i32], [40 x i32]* %base.i, i16 0, i16 %sz.011.i
  %16 = trunc i64 %v.012.i to i32
  store i32 %16, i32* %15, align 1, !noalias !123
  %17 = lshr i64 %v.012.i, 32
  %18 = add nuw nsw i16 %sz.011.i, 1
  %_4.i = icmp eq i64 %17, 0
  br i1 %_4.i, label %_ZN4core3num6bignum8Big32x408from_u6417ha925c6f2f34e00d9E.exit, label %bb3.i

panic.i32:                                        ; preds = %bb3.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 40, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*)), !noalias !123
  unreachable

_ZN4core3num6bignum8Big32x408from_u6417ha925c6f2f34e00d9E.exit: ; preds = %bb4.i
  %19 = bitcast %"num::bignum::Big32x40"* %mant to i16*
  store i16 %18, i16* %19, align 1, !alias.scope !123
  %20 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %mant, i16 0, i32 3
  %21 = bitcast [40 x i32]* %20 to i8*
  call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 dereferenceable(160) %21, i8* nonnull align 1 dereferenceable(160) %14, i16 160, i1 false)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 160, i8* nonnull %14), !noalias !123
  %22 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %minus, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 162, i8* nonnull %22)
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 160, i8* nonnull %14), !noalias !126
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(160) %14, i8 0, i16 160, i1 false), !noalias !126
  br label %bb3.i39

bb3.i39:                                          ; preds = %_ZN4core3num6bignum8Big32x408from_u6417ha925c6f2f34e00d9E.exit, %bb4.i41
  %v.012.i36 = phi i64 [ %25, %bb4.i41 ], [ %_10, %_ZN4core3num6bignum8Big32x408from_u6417ha925c6f2f34e00d9E.exit ]
  %sz.011.i37 = phi i16 [ %26, %bb4.i41 ], [ 0, %_ZN4core3num6bignum8Big32x408from_u6417ha925c6f2f34e00d9E.exit ]
  %_9.i38 = icmp ult i16 %sz.011.i37, 40
  br i1 %_9.i38, label %bb4.i41, label %panic.i42, !prof !4, !misexpect !5

bb4.i41:                                          ; preds = %bb3.i39
  %23 = getelementptr inbounds [40 x i32], [40 x i32]* %base.i, i16 0, i16 %sz.011.i37
  %24 = trunc i64 %v.012.i36 to i32
  store i32 %24, i32* %23, align 1, !noalias !126
  %25 = lshr i64 %v.012.i36, 32
  %26 = add nuw nsw i16 %sz.011.i37, 1
  %_4.i40 = icmp eq i64 %25, 0
  br i1 %_4.i40, label %_ZN4core3num6bignum8Big32x408from_u6417ha925c6f2f34e00d9E.exit43, label %bb3.i39

panic.i42:                                        ; preds = %bb3.i39
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 40, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*)), !noalias !126
  unreachable

_ZN4core3num6bignum8Big32x408from_u6417ha925c6f2f34e00d9E.exit43: ; preds = %bb4.i41
  %27 = bitcast %"num::bignum::Big32x40"* %minus to i16*
  store i16 %26, i16* %27, align 1, !alias.scope !126
  %28 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %minus, i16 0, i32 3
  %29 = bitcast [40 x i32]* %28 to i8*
  call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 dereferenceable(160) %29, i8* nonnull align 1 dereferenceable(160) %14, i16 160, i1 false)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 160, i8* nonnull %14), !noalias !126
  %30 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %plus, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 162, i8* nonnull %30)
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 160, i8* nonnull %14), !noalias !129
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(160) %14, i8 0, i16 160, i1 false), !noalias !129
  br label %bb3.i50

bb3.i50:                                          ; preds = %_ZN4core3num6bignum8Big32x408from_u6417ha925c6f2f34e00d9E.exit43, %bb4.i52
  %v.012.i47 = phi i64 [ %33, %bb4.i52 ], [ %_15, %_ZN4core3num6bignum8Big32x408from_u6417ha925c6f2f34e00d9E.exit43 ]
  %sz.011.i48 = phi i16 [ %34, %bb4.i52 ], [ 0, %_ZN4core3num6bignum8Big32x408from_u6417ha925c6f2f34e00d9E.exit43 ]
  %_9.i49 = icmp ult i16 %sz.011.i48, 40
  br i1 %_9.i49, label %bb4.i52, label %panic.i53, !prof !4, !misexpect !5

bb4.i52:                                          ; preds = %bb3.i50
  %31 = getelementptr inbounds [40 x i32], [40 x i32]* %base.i, i16 0, i16 %sz.011.i48
  %32 = trunc i64 %v.012.i47 to i32
  store i32 %32, i32* %31, align 1, !noalias !129
  %33 = lshr i64 %v.012.i47, 32
  %34 = add nuw nsw i16 %sz.011.i48, 1
  %_4.i51 = icmp eq i64 %33, 0
  br i1 %_4.i51, label %_ZN4core3num6bignum8Big32x408from_u6417ha925c6f2f34e00d9E.exit54, label %bb3.i50

panic.i53:                                        ; preds = %bb3.i50
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 40, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*)), !noalias !129
  unreachable

_ZN4core3num6bignum8Big32x408from_u6417ha925c6f2f34e00d9E.exit54: ; preds = %bb4.i52
  %35 = bitcast %"num::bignum::Big32x40"* %plus to i16*
  store i16 %34, i16* %35, align 1, !alias.scope !129
  %36 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %plus, i16 0, i32 3
  %37 = bitcast [40 x i32]* %36 to i8*
  call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 dereferenceable(160) %37, i8* nonnull align 1 dereferenceable(160) %14, i16 160, i1 false)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 160, i8* nonnull %14), !noalias !129
  %38 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 162, i8* nonnull %38)
  %39 = bitcast %"num::bignum::Big32x40"* %scale to i16*
  store i16 1, i16* %39, align 1, !alias.scope !132
  %_5.sroa.0.0..sroa_idx.i = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale, i16 0, i32 3, i16 0
  store i32 1, i32* %_5.sroa.0.0..sroa_idx.i, align 1, !alias.scope !132
  %_5.sroa.4.0..sroa_idx.i = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale, i16 0, i32 3, i16 1
  %_5.sroa.4.0..sroa_cast13.i = bitcast i32* %_5.sroa.4.0..sroa_idx.i to i8*
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(156) %_5.sroa.4.0..sroa_cast13.i, i8 0, i16 156, i1 false) #20, !alias.scope !132
  %_54 = icmp slt i16 %_46, 0
  br i1 %_54, label %bb27, label %bb26

bb17:                                             ; preds = %bb13
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [45 x i8] }>* @alloc18453 to [0 x i8]*), i16 45, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18195 to %"panic::Location"*))
  unreachable

bb26:                                             ; preds = %_ZN4core3num6bignum8Big32x408from_u6417ha925c6f2f34e00d9E.exit54
; call core::num::bignum::Big32x40::mul_pow2
  %_61 = call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x408mul_pow217h0cff03c1c9e177a8E(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %mant, i16 %_46)
; call core::num::bignum::Big32x40::mul_pow2
  %_65 = call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x408mul_pow217h0cff03c1c9e177a8E(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %minus, i16 %_46)
; call core::num::bignum::Big32x40::mul_pow2
  %_69 = call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x408mul_pow217h0cff03c1c9e177a8E(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %plus, i16 %_46)
  br label %bb32

bb27:                                             ; preds = %_ZN4core3num6bignum8Big32x408from_u6417ha925c6f2f34e00d9E.exit54
  %_59 = sub i16 0, %_46
; call core::num::bignum::Big32x40::mul_pow2
  %_56 = call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x408mul_pow217h0cff03c1c9e177a8E(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %scale, i16 %_59)
  br label %bb32

bb32:                                             ; preds = %bb26, %bb27
  %_73 = icmp sgt i16 %12, -1
  br i1 %_73, label %bb34, label %bb33

bb33:                                             ; preds = %bb32
  %_84 = sub i16 0, %12
; call core::num::flt2dec::strategy::dragon::mul_pow10
  %_80 = call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num7flt2dec8strategy6dragon9mul_pow1017hf3e5382c315238dfE(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %mant, i16 %_84)
; call core::num::flt2dec::strategy::dragon::mul_pow10
  %_86 = call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num7flt2dec8strategy6dragon9mul_pow1017hf3e5382c315238dfE(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %minus, i16 %_84)
; call core::num::flt2dec::strategy::dragon::mul_pow10
  %_92 = call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num7flt2dec8strategy6dragon9mul_pow1017hf3e5382c315238dfE(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %plus, i16 %_84)
  br label %bb39

bb34:                                             ; preds = %bb32
; call core::num::flt2dec::strategy::dragon::mul_pow10
  %_75 = call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num7flt2dec8strategy6dragon9mul_pow1017hf3e5382c315238dfE(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %scale, i16 %12)
  br label %bb39

bb39:                                             ; preds = %bb33, %bb34
  %40 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %_105, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 162, i8* nonnull %40)
  %_2.i = load i16, i16* %19, align 1, !alias.scope !135, !noalias !138
  %41 = bitcast %"num::bignum::Big32x40"* %_105 to i16*
  store i16 %_2.i, i16* %41, align 1, !alias.scope !138, !noalias !135
  %42 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %_105, i16 0, i32 3
  %43 = bitcast [40 x i32]* %42 to i8*
  call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 dereferenceable(160) %43, i8* nonnull align 1 dereferenceable(160) %21, i16 160, i1 false) #20, !alias.scope !140
  %_6.i81 = load i16, i16* %35, align 1, !alias.scope !141
  %44 = icmp ugt i16 %_2.i, %_6.i81
  %.0.sroa.speculated.i.i.i.i = select i1 %44, i16 %_2.i, i16 %_6.i81
  %_9.i.i.i.i82 = icmp ugt i16 %.0.sroa.speculated.i.i.i.i, 40
  br i1 %_9.i.i.i.i82, label %bb5.i.i.i.i83, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i"

bb5.i.i.i.i83:                                    ; preds = %bb39
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.0.sroa.speculated.i.i.i.i, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*)), !noalias !141
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i": ; preds = %bb39
  %_2.i.i39.i = icmp eq i16 %.0.sroa.speculated.i.i.i.i, 0
  br i1 %_2.i.i39.i, label %_ZN4core3num6bignum8Big32x403add17hc5fc99826d0d9f42E.exit, label %bb11.i84

bb9.i:                                            ; preds = %bb11.i84
  br i1 %brmerge.i.i, label %bb14.i, label %_ZN4core3num6bignum8Big32x403add17hc5fc99826d0d9f42E.exit

bb11.i84:                                         ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i", %bb11.i84
  %carry.041.i = phi i8 [ %_15.0.i.i, %bb11.i84 ], [ 0, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i" ]
  %iter.sroa.8.040.i = phi i16 [ %45, %bb11.i84 ], [ 0, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i" ]
  %45 = add nuw nsw i16 %iter.sroa.8.040.i, 1
  %46 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %_105, i16 0, i32 3, i16 %iter.sroa.8.040.i
  %47 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %plus, i16 0, i32 3, i16 %iter.sroa.8.040.i
  %_36.i = load i32, i32* %46, align 1, !noalias !141
  %_37.i = load i32, i32* %47, align 1, !alias.scope !141
  %48 = call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %_36.i, i32 %_37.i) #20
  %49 = extractvalue { i32, i1 } %48, 0
  %50 = extractvalue { i32, i1 } %48, 1
  %51 = zext i8 %carry.041.i to i32
  %52 = call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %49, i32 %51) #20
  %53 = extractvalue { i32, i1 } %52, 0
  %54 = extractvalue { i32, i1 } %52, 1
  %brmerge.i.i = or i1 %50, %54
  %_15.0.i.i = zext i1 %brmerge.i.i to i8
  store i32 %53, i32* %46, align 1, !noalias !141
  %_2.i.i.i = icmp ult i16 %45, %.0.sroa.speculated.i.i.i.i
  br i1 %_2.i.i.i, label %bb11.i84, label %bb9.i

bb14.i:                                           ; preds = %bb9.i
  %_44.i = icmp ult i16 %.0.sroa.speculated.i.i.i.i, 40
  br i1 %_44.i, label %bb15.i, label %panic.i86, !prof !4, !misexpect !5

bb15.i:                                           ; preds = %bb14.i
  %55 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %_105, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i
  store i32 1, i32* %55, align 1, !noalias !141
  %56 = add nuw nsw i16 %.0.sroa.speculated.i.i.i.i, 1
  br label %_ZN4core3num6bignum8Big32x403add17hc5fc99826d0d9f42E.exit

panic.i86:                                        ; preds = %bb14.i
; call core::panicking::panic_bounds_check
  call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %.0.sroa.speculated.i.i.i.i, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*)), !noalias !141
  unreachable

_ZN4core3num6bignum8Big32x403add17hc5fc99826d0d9f42E.exit: ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i", %bb9.i, %bb15.i
  %sz.0.i85 = phi i16 [ %56, %bb15.i ], [ %.0.sroa.speculated.i.i.i.i, %bb9.i ], [ 0, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i" ]
  store i16 %sz.0.i85, i16* %41, align 1, !noalias !141
  %_4.i87 = load i16, i16* %39, align 1, !alias.scope !144, !noalias !147
  %57 = icmp ugt i16 %_4.i87, %sz.0.i85
  %.0.sroa.speculated.i.i.i.i89 = select i1 %57, i16 %_4.i87, i16 %sz.0.i85
  %_8.i.i.i3.i = icmp ugt i16 %.0.sroa.speculated.i.i.i.i89, 40
  br i1 %_8.i.i.i3.i, label %bb5.i.i.i4.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i91"

bb5.i.i.i4.i:                                     ; preds = %_ZN4core3num6bignum8Big32x403add17hc5fc99826d0d9f42E.exit
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.0.sroa.speculated.i.i.i.i89, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i91": ; preds = %_ZN4core3num6bignum8Big32x403add17hc5fc99826d0d9f42E.exit
  %_12.i90 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale, i16 0, i32 3
  %58 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i89
  %59 = bitcast [40 x i32]* %_12.i90 to i8*
  %60 = bitcast i32* %58 to i8*
  %61 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %_105, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i89
  %62 = bitcast i32* %61 to i8*
  br label %bb5.i.i.i

bb5.i.i.i:                                        ; preds = %bb32.i.i.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i91"
  %self.sroa.2.0.i.i.i = phi i8* [ %60, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i91" ], [ %63, %bb32.i.i.i ]
  %other.sroa.5.0.i.i.i = phi i8* [ %62, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i91" ], [ %65, %bb32.i.i.i ]
  %_13.i.i.i51.i.i.i = icmp eq i8* %self.sroa.2.0.i.i.i, %59
  br i1 %_13.i.i.i51.i.i.i, label %bb10.i.i.i, label %bb32.i.i.i

bb10.i.i.i:                                       ; preds = %bb5.i.i.i
  %_13.i.i.i.i.i.i = icmp ne i8* %other.sroa.5.0.i.i.i, %43
  %spec.select.i.i.i = sext i1 %_13.i.i.i.i.i.i to i8
  br label %"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE.exit"

bb32.i.i.i:                                       ; preds = %bb5.i.i.i
  %63 = getelementptr inbounds i8, i8* %self.sroa.2.0.i.i.i, i16 -4
  %64 = bitcast i8* %63 to i32*
  %.val.i.i.i.i52.i.i.i = load i32, i32* %64, align 1, !alias.scope !149, !noalias !147
  %65 = getelementptr inbounds i8, i8* %other.sroa.5.0.i.i.i, i16 -4
  %66 = bitcast i8* %65 to i32*
  %.val.i.i.i.i44.i.i.i = load i32, i32* %66, align 1, !alias.scope !154, !noalias !144
  %_3.i.i.i.i.i = icmp ult i32 %.val.i.i.i.i52.i.i.i, %.val.i.i.i.i44.i.i.i
  %_6.i.i.i.i.i = icmp ne i32 %.val.i.i.i.i52.i.i.i, %.val.i.i.i.i44.i.i.i
  %..i.i.i.i.i = zext i1 %_6.i.i.i.i.i to i8
  %.0.i.i.i.i.i = select i1 %_3.i.i.i.i.i, i8 -1, i8 %..i.i.i.i.i
  %67 = icmp eq i8 %.0.i.i.i.i.i, 0
  br i1 %67, label %bb5.i.i.i, label %"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE.exit"

"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE.exit": ; preds = %bb32.i.i.i, %bb10.i.i.i
  %68 = phi i8 [ %spec.select.i.i.i, %bb10.i.i.i ], [ %.0.i.i.i.i.i, %bb32.i.i.i ]
  %_3.i.i.i.i = icmp slt i8 %68, %8
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 162, i8* nonnull %40)
  br i1 %_3.i.i.i.i, label %bb45, label %bb44

bb44:                                             ; preds = %"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE.exit"
  %_9.i.i.i.i92 = icmp ugt i16 %_2.i, 40
  br i1 %_9.i.i.i.i92, label %bb5.i.i.i.i93, label %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i96"

bb5.i.i.i.i93:                                    ; preds = %bb44
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %_2.i, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i96": ; preds = %bb44
  %69 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %mant, i16 0, i32 3, i16 %_2.i
  %70 = getelementptr [40 x i32], [40 x i32]* %20, i16 0, i16 0
  %_13.i16.i95 = icmp eq i32* %69, %70
  br i1 %_13.i16.i95, label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit117, label %bb7.i111

bb5.i99:                                          ; preds = %bb7.i111
  %_30.i98 = icmp eq i32 %_14.i.i108, 0
  br i1 %_30.i98, label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit117, label %bb10.i113

bb7.i111:                                         ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i96", %bb7.i111
  %carry.018.i100 = phi i32 [ %_14.i.i108, %bb7.i111 ], [ 0, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i96" ]
  %iter.sroa.0.017.i101 = phi i8* [ %71, %bb7.i111 ], [ %21, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i96" ]
  %71 = getelementptr inbounds i8, i8* %iter.sroa.0.017.i101, i16 4
  %72 = bitcast i8* %iter.sroa.0.017.i101 to i32*
  %_25.i102 = load i32, i32* %72, align 1
  %_8.i.i103 = zext i32 %_25.i102 to i64
  %_7.i.i104 = mul nuw nsw i64 %_8.i.i103, 10
  %_12.i11.i105 = zext i32 %carry.018.i100 to i64
  %v.i.i106 = add nuw nsw i64 %_7.i.i104, %_12.i11.i105
  %_15.i.i107 = lshr i64 %v.i.i106, 32
  %_14.i.i108 = trunc i64 %_15.i.i107 to i32
  %_18.i.i109 = trunc i64 %v.i.i106 to i32
  store i32 %_18.i.i109, i32* %72, align 1
  %73 = bitcast i8* %71 to i32*
  %_13.i.i110 = icmp eq i32* %69, %73
  br i1 %_13.i.i110, label %bb5.i99, label %bb7.i111

bb10.i113:                                        ; preds = %bb5.i99
  %_35.i112 = icmp ult i16 %_2.i, 40
  br i1 %_35.i112, label %bb11.i114, label %panic.i116, !prof !4, !misexpect !5

bb11.i114:                                        ; preds = %bb10.i113
  store i32 %_14.i.i108, i32* %69, align 1
  %74 = add nuw nsw i16 %_2.i, 1
  br label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit117

panic.i116:                                       ; preds = %bb10.i113
; call core::panicking::panic_bounds_check
  call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_2.i, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit117: ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i96", %bb5.i99, %bb11.i114
  %sz.0.i115 = phi i16 [ %74, %bb11.i114 ], [ %_2.i, %bb5.i99 ], [ %_2.i, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i96" ]
  store i16 %sz.0.i115, i16* %19, align 1
  %75 = load i16, i16* %27, align 1
  %_9.i.i.i.i118 = icmp ugt i16 %75, 40
  br i1 %_9.i.i.i.i118, label %bb5.i.i.i.i119, label %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i122"

bb5.i.i.i.i119:                                   ; preds = %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit117
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %75, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i122": ; preds = %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit117
  %76 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %minus, i16 0, i32 3, i16 %75
  %77 = getelementptr [40 x i32], [40 x i32]* %28, i16 0, i16 0
  %_13.i16.i121 = icmp eq i32* %76, %77
  br i1 %_13.i16.i121, label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit143, label %bb7.i137

bb5.i125:                                         ; preds = %bb7.i137
  %_30.i124 = icmp eq i32 %_14.i.i134, 0
  br i1 %_30.i124, label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit143, label %bb10.i139

bb7.i137:                                         ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i122", %bb7.i137
  %carry.018.i126 = phi i32 [ %_14.i.i134, %bb7.i137 ], [ 0, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i122" ]
  %iter.sroa.0.017.i127 = phi i8* [ %78, %bb7.i137 ], [ %29, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i122" ]
  %78 = getelementptr inbounds i8, i8* %iter.sroa.0.017.i127, i16 4
  %79 = bitcast i8* %iter.sroa.0.017.i127 to i32*
  %_25.i128 = load i32, i32* %79, align 1
  %_8.i.i129 = zext i32 %_25.i128 to i64
  %_7.i.i130 = mul nuw nsw i64 %_8.i.i129, 10
  %_12.i11.i131 = zext i32 %carry.018.i126 to i64
  %v.i.i132 = add nuw nsw i64 %_7.i.i130, %_12.i11.i131
  %_15.i.i133 = lshr i64 %v.i.i132, 32
  %_14.i.i134 = trunc i64 %_15.i.i133 to i32
  %_18.i.i135 = trunc i64 %v.i.i132 to i32
  store i32 %_18.i.i135, i32* %79, align 1
  %80 = bitcast i8* %78 to i32*
  %_13.i.i136 = icmp eq i32* %76, %80
  br i1 %_13.i.i136, label %bb5.i125, label %bb7.i137

bb10.i139:                                        ; preds = %bb5.i125
  %_35.i138 = icmp ult i16 %75, 40
  br i1 %_35.i138, label %bb11.i140, label %panic.i142, !prof !4, !misexpect !5

bb11.i140:                                        ; preds = %bb10.i139
  store i32 %_14.i.i134, i32* %76, align 1
  %81 = add nuw nsw i16 %75, 1
  br label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit143

panic.i142:                                       ; preds = %bb10.i139
; call core::panicking::panic_bounds_check
  call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %75, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit143: ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i122", %bb5.i125, %bb11.i140
  %sz.0.i141 = phi i16 [ %81, %bb11.i140 ], [ %75, %bb5.i125 ], [ %75, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i122" ]
  store i16 %sz.0.i141, i16* %27, align 1
  %_9.i.i.i.i144 = icmp ugt i16 %_6.i81, 40
  br i1 %_9.i.i.i.i144, label %bb5.i.i.i.i145, label %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i148"

bb5.i.i.i.i145:                                   ; preds = %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit143
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %_6.i81, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i148": ; preds = %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit143
  %82 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %plus, i16 0, i32 3, i16 %_6.i81
  %83 = getelementptr [40 x i32], [40 x i32]* %36, i16 0, i16 0
  %_13.i16.i147 = icmp eq i32* %82, %83
  br i1 %_13.i16.i147, label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit169, label %bb7.i163

bb5.i151:                                         ; preds = %bb7.i163
  %_30.i150 = icmp eq i32 %_14.i.i160, 0
  br i1 %_30.i150, label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit169, label %bb10.i165

bb7.i163:                                         ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i148", %bb7.i163
  %carry.018.i152 = phi i32 [ %_14.i.i160, %bb7.i163 ], [ 0, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i148" ]
  %iter.sroa.0.017.i153 = phi i8* [ %84, %bb7.i163 ], [ %37, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i148" ]
  %84 = getelementptr inbounds i8, i8* %iter.sroa.0.017.i153, i16 4
  %85 = bitcast i8* %iter.sroa.0.017.i153 to i32*
  %_25.i154 = load i32, i32* %85, align 1
  %_8.i.i155 = zext i32 %_25.i154 to i64
  %_7.i.i156 = mul nuw nsw i64 %_8.i.i155, 10
  %_12.i11.i157 = zext i32 %carry.018.i152 to i64
  %v.i.i158 = add nuw nsw i64 %_7.i.i156, %_12.i11.i157
  %_15.i.i159 = lshr i64 %v.i.i158, 32
  %_14.i.i160 = trunc i64 %_15.i.i159 to i32
  %_18.i.i161 = trunc i64 %v.i.i158 to i32
  store i32 %_18.i.i161, i32* %85, align 1
  %86 = bitcast i8* %84 to i32*
  %_13.i.i162 = icmp eq i32* %82, %86
  br i1 %_13.i.i162, label %bb5.i151, label %bb7.i163

bb10.i165:                                        ; preds = %bb5.i151
  %_35.i164 = icmp ult i16 %_6.i81, 40
  br i1 %_35.i164, label %bb11.i166, label %panic.i168, !prof !4, !misexpect !5

bb11.i166:                                        ; preds = %bb10.i165
  store i32 %_14.i.i160, i32* %82, align 1
  %87 = add nuw nsw i16 %_6.i81, 1
  br label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit169

panic.i168:                                       ; preds = %bb10.i165
; call core::panicking::panic_bounds_check
  call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_6.i81, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit169: ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i148", %bb5.i151, %bb11.i166
  %sz.0.i167 = phi i16 [ %87, %bb11.i166 ], [ %_6.i81, %bb5.i151 ], [ %_6.i81, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i148" ]
  store i16 %sz.0.i167, i16* %35, align 1
  br label %bb49

bb45:                                             ; preds = %"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE.exit"
  %88 = add i16 %12, 1
  br label %bb49

bb49:                                             ; preds = %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit169, %bb45
  %k.0 = phi i16 [ %88, %bb45 ], [ %12, %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit169 ]
  %89 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale2, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 162, i8* nonnull %89)
  %90 = bitcast %"num::bignum::Big32x40"* %scale2 to i16*
  store i16 %_4.i87, i16* %90, align 1, !alias.scope !159, !noalias !162
  %91 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale2, i16 0, i32 3
  %92 = bitcast [40 x i32]* %91 to i8*
  call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 dereferenceable(160) %92, i8* nonnull align 1 dereferenceable(160) %59, i16 160, i1 false) #20, !alias.scope !164
; call core::num::bignum::Big32x40::mul_pow2
  %_118 = call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x408mul_pow217h0cff03c1c9e177a8E(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %scale2, i16 1)
  %93 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale4, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 162, i8* nonnull %93)
  %_2.i171 = load i16, i16* %39, align 1, !alias.scope !165, !noalias !168
  %94 = bitcast %"num::bignum::Big32x40"* %scale4 to i16*
  store i16 %_2.i171, i16* %94, align 1, !alias.scope !168, !noalias !165
  %95 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale4, i16 0, i32 3
  %96 = bitcast [40 x i32]* %95 to i8*
  call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 dereferenceable(160) %96, i8* nonnull align 1 dereferenceable(160) %59, i16 160, i1 false) #20, !alias.scope !170
; call core::num::bignum::Big32x40::mul_pow2
  %_122 = call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x408mul_pow217h0cff03c1c9e177a8E(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %scale4, i16 2)
  %97 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale8, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 162, i8* nonnull %97)
  %_2.i172 = load i16, i16* %39, align 1, !alias.scope !171, !noalias !174
  %98 = bitcast %"num::bignum::Big32x40"* %scale8 to i16*
  store i16 %_2.i172, i16* %98, align 1, !alias.scope !174, !noalias !171
  %99 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale8, i16 0, i32 3
  %100 = bitcast [40 x i32]* %99 to i8*
  call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 dereferenceable(160) %100, i8* nonnull align 1 dereferenceable(160) %59, i16 160, i1 false) #20, !alias.scope !176
; call core::num::bignum::Big32x40::mul_pow2
  %_126 = call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x408mul_pow217h0cff03c1c9e177a8E(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %scale8, i16 3)
  %_4.i.i.i.i450 = load i16, i16* %19, align 1, !alias.scope !177, !noalias !184
  %_5.i.i.i.i451 = load i16, i16* %98, align 1, !alias.scope !193, !noalias !194
  %101 = icmp ugt i16 %_4.i.i.i.i450, %_5.i.i.i.i451
  %.0.sroa.speculated.i.i.i.i.i.i.i452 = select i1 %101, i16 %_4.i.i.i.i450, i16 %_5.i.i.i.i451
  %_8.i.i.i3.i.i.i.i453 = icmp ugt i16 %.0.sroa.speculated.i.i.i.i.i.i.i452, 40
  br i1 %_8.i.i.i3.i.i.i.i453, label %bb5.i.i.i4.i.i.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i.i.lr.ph"

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i.i.lr.ph": ; preds = %bb49
  %_5.i.i.i2.i = load i16, i16* %94, align 1
  %_5.i.i.i45.i = load i16, i16* %90, align 1
  %_5.i.i.i88.i = load i16, i16* %39, align 1
  %102 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %_161, i16 0, i32 0, i16 0
  %103 = bitcast %"num::bignum::Big32x40"* %_161 to i16*
  %104 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %_161, i16 0, i32 3
  %105 = bitcast [40 x i32]* %104 to i8*
  %106 = getelementptr [40 x i32], [40 x i32]* %20, i16 0, i16 0
  %107 = getelementptr [40 x i32], [40 x i32]* %28, i16 0, i16 0
  %108 = getelementptr [40 x i32], [40 x i32]* %36, i16 0, i16 0
  br label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i.i"

bb5.i.i.i4.i.i.i.i:                               ; preds = %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit, %bb49
  %.0.sroa.speculated.i.i.i.i.i.i.i.lcssa = phi i16 [ %.0.sroa.speculated.i.i.i.i.i.i.i452, %bb49 ], [ %.0.sroa.speculated.i.i.i.i.i.i.i, %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit ]
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.0.sroa.speculated.i.i.i.i.i.i.i.lcssa, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i.i": ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i.i.lr.ph", %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit
  %.0.sroa.speculated.i.i.i.i.i.i.i456 = phi i16 [ %.0.sroa.speculated.i.i.i.i.i.i.i452, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i.i.lr.ph" ], [ %.0.sroa.speculated.i.i.i.i.i.i.i, %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit ]
  %_4.i.i.i.i455 = phi i16 [ %_4.i.i.i.i450, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i.i.lr.ph" ], [ %_4.i.i.i.i, %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit ]
  %i.0454 = phi i16 [ 0, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i.i.lr.ph" ], [ %197, %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit ]
  %109 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %mant, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i.i.i.i456
  %110 = bitcast i32* %109 to i8*
  %111 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale8, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i.i.i.i456
  %112 = bitcast i32* %111 to i8*
  br label %bb5.i.i.i.i.i.i

bb5.i.i.i.i.i.i:                                  ; preds = %bb32.i.i.i.i.i.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i.i"
  %self.sroa.2.0.i.i.i.i.i.i = phi i8* [ %110, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i.i" ], [ %113, %bb32.i.i.i.i.i.i ]
  %other.sroa.5.0.i.i.i.i.i.i = phi i8* [ %112, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i.i" ], [ %115, %bb32.i.i.i.i.i.i ]
  %_13.i.i.i51.i.i.i.i.i.i = icmp eq i8* %self.sroa.2.0.i.i.i.i.i.i, %21
  br i1 %_13.i.i.i51.i.i.i.i.i.i, label %bb10.i.i.i.i.i.i, label %bb32.i.i.i.i.i.i

bb10.i.i.i.i.i.i:                                 ; preds = %bb5.i.i.i.i.i.i
  %_13.i.i.i.i.i.i.i.i.i = icmp ne i8* %other.sroa.5.0.i.i.i.i.i.i, %100
  %spec.select.i.i.i.i.i.i = sext i1 %_13.i.i.i.i.i.i.i.i.i to i8
  br label %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit.i

bb32.i.i.i.i.i.i:                                 ; preds = %bb5.i.i.i.i.i.i
  %113 = getelementptr inbounds i8, i8* %self.sroa.2.0.i.i.i.i.i.i, i16 -4
  %114 = bitcast i8* %113 to i32*
  %.val.i.i.i.i52.i.i.i.i.i.i = load i32, i32* %114, align 1, !alias.scope !195, !noalias !184
  %115 = getelementptr inbounds i8, i8* %other.sroa.5.0.i.i.i.i.i.i, i16 -4
  %116 = bitcast i8* %115 to i32*
  %.val.i.i.i.i44.i.i.i.i.i.i = load i32, i32* %116, align 1, !alias.scope !200, !noalias !194
  %_3.i.i.i.i.i.i.i.i = icmp ult i32 %.val.i.i.i.i52.i.i.i.i.i.i, %.val.i.i.i.i44.i.i.i.i.i.i
  %_6.i.i.i.i.i.i.i.i = icmp ne i32 %.val.i.i.i.i52.i.i.i.i.i.i, %.val.i.i.i.i44.i.i.i.i.i.i
  %..i.i.i.i.i.i.i.i = zext i1 %_6.i.i.i.i.i.i.i.i to i8
  %.0.i.i.i.i.i.i.i.i = select i1 %_3.i.i.i.i.i.i.i.i, i8 -1, i8 %..i.i.i.i.i.i.i.i
  %117 = icmp eq i8 %.0.i.i.i.i.i.i.i.i, 0
  br i1 %117, label %bb5.i.i.i.i.i.i, label %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit.i

_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit.i: ; preds = %bb32.i.i.i.i.i.i, %bb10.i.i.i.i.i.i
  %118 = phi i8 [ %spec.select.i.i.i.i.i.i, %bb10.i.i.i.i.i.i ], [ %.0.i.i.i.i.i.i.i.i, %bb32.i.i.i.i.i.i ]
  %switch.i.i = icmp ult i8 %118, 2
  br i1 %switch.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i", label %bb5.i173

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i": ; preds = %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit.i
  %_2.i.i34.i.i = icmp eq i16 %.0.sroa.speculated.i.i.i.i.i.i.i456, 0
  br i1 %_2.i.i34.i.i, label %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit.i, label %bb11.i.i

bb9.i.i:                                          ; preds = %bb11.i.i
  br i1 %brmerge.i.i.i, label %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit.i, label %bb14.i.i

bb11.i.i:                                         ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i", %bb11.i.i
  %noborrow.036.i.i = phi i8 [ %_15.0.i.i.i, %bb11.i.i ], [ 1, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i" ]
  %iter.sroa.8.035.i.i = phi i16 [ %119, %bb11.i.i ], [ 0, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i" ]
  %119 = add nuw nsw i16 %iter.sroa.8.035.i.i, 1
  %120 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %mant, i16 0, i32 3, i16 %iter.sroa.8.035.i.i
  %121 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale8, i16 0, i32 3, i16 %iter.sroa.8.035.i.i
  %_36.i.i = load i32, i32* %120, align 1, !noalias !205
  %_38.i.i = load i32, i32* %121, align 1, !alias.scope !208, !noalias !209
  %_37.i.i = xor i32 %_38.i.i, -1
  %122 = call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %_36.i.i, i32 %_37.i.i) #20
  %123 = extractvalue { i32, i1 } %122, 0
  %124 = extractvalue { i32, i1 } %122, 1
  %125 = zext i8 %noborrow.036.i.i to i32
  %126 = call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %123, i32 %125) #20
  %127 = extractvalue { i32, i1 } %126, 0
  %128 = extractvalue { i32, i1 } %126, 1
  %brmerge.i.i.i = or i1 %124, %128
  %_15.0.i.i.i = zext i1 %brmerge.i.i.i to i8
  store i32 %127, i32* %120, align 1, !noalias !205
  %_2.i.i.i.i = icmp ult i16 %119, %.0.sroa.speculated.i.i.i.i.i.i.i456
  br i1 %_2.i.i.i.i, label %bb11.i.i, label %bb9.i.i

bb14.i.i:                                         ; preds = %bb9.i.i
; call core::panicking::panic
  call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [26 x i8] }>* @alloc18922 to [0 x i8]*), i16 26, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*)), !noalias !210
  unreachable

_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit.i: ; preds = %bb9.i.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i"
  store i16 %.0.sroa.speculated.i.i.i.i.i.i.i456, i16* %19, align 1, !noalias !205
  br label %bb5.i173

bb5.i173:                                         ; preds = %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit.i, %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit.i
  %_4.i.i.i1.i = phi i16 [ %.0.sroa.speculated.i.i.i.i.i.i.i456, %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit.i ], [ %_4.i.i.i.i455, %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit.i ]
  %d.0.i = phi i8 [ 8, %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit.i ], [ 0, %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit.i ]
  %129 = icmp ugt i16 %_4.i.i.i1.i, %_5.i.i.i2.i
  %.0.sroa.speculated.i.i.i.i.i.i3.i = select i1 %129, i16 %_4.i.i.i1.i, i16 %_5.i.i.i2.i
  %_8.i.i.i3.i.i.i4.i = icmp ugt i16 %.0.sroa.speculated.i.i.i.i.i.i3.i, 40
  br i1 %_8.i.i.i3.i.i.i4.i, label %bb5.i.i.i4.i.i.i5.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i8.i"

bb5.i.i.i4.i.i.i5.i:                              ; preds = %bb5.i173
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.0.sroa.speculated.i.i.i.i.i.i3.i, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i8.i": ; preds = %bb5.i173
  %130 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %mant, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i.i.i3.i
  %131 = bitcast i32* %130 to i8*
  %132 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale4, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i.i.i3.i
  %133 = bitcast i32* %132 to i8*
  br label %bb5.i.i.i.i.i12.i

bb5.i.i.i.i.i12.i:                                ; preds = %bb32.i.i.i.i.i22.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i8.i"
  %self.sroa.2.0.i.i.i.i.i9.i = phi i8* [ %131, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i8.i" ], [ %134, %bb32.i.i.i.i.i22.i ]
  %other.sroa.5.0.i.i.i.i.i10.i = phi i8* [ %133, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i8.i" ], [ %136, %bb32.i.i.i.i.i22.i ]
  %_13.i.i.i51.i.i.i.i.i11.i = icmp eq i8* %self.sroa.2.0.i.i.i.i.i9.i, %21
  br i1 %_13.i.i.i51.i.i.i.i.i11.i, label %bb10.i.i.i.i.i15.i, label %bb32.i.i.i.i.i22.i

bb10.i.i.i.i.i15.i:                               ; preds = %bb5.i.i.i.i.i12.i
  %_13.i.i.i.i.i.i.i.i13.i = icmp ne i8* %other.sroa.5.0.i.i.i.i.i10.i, %96
  %spec.select.i.i.i.i.i14.i = sext i1 %_13.i.i.i.i.i.i.i.i13.i to i8
  br label %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit24.i

bb32.i.i.i.i.i22.i:                               ; preds = %bb5.i.i.i.i.i12.i
  %134 = getelementptr inbounds i8, i8* %self.sroa.2.0.i.i.i.i.i9.i, i16 -4
  %135 = bitcast i8* %134 to i32*
  %.val.i.i.i.i52.i.i.i.i.i16.i = load i32, i32* %135, align 1, !alias.scope !211, !noalias !222
  %136 = getelementptr inbounds i8, i8* %other.sroa.5.0.i.i.i.i.i10.i, i16 -4
  %137 = bitcast i8* %136 to i32*
  %.val.i.i.i.i44.i.i.i.i.i17.i = load i32, i32* %137, align 1, !alias.scope !226, !noalias !231
  %_3.i.i.i.i.i.i.i18.i = icmp ult i32 %.val.i.i.i.i52.i.i.i.i.i16.i, %.val.i.i.i.i44.i.i.i.i.i17.i
  %_6.i.i.i.i.i.i.i19.i = icmp ne i32 %.val.i.i.i.i52.i.i.i.i.i16.i, %.val.i.i.i.i44.i.i.i.i.i17.i
  %..i.i.i.i.i.i.i20.i = zext i1 %_6.i.i.i.i.i.i.i19.i to i8
  %.0.i.i.i.i.i.i.i21.i = select i1 %_3.i.i.i.i.i.i.i18.i, i8 -1, i8 %..i.i.i.i.i.i.i20.i
  %138 = icmp eq i8 %.0.i.i.i.i.i.i.i21.i, 0
  br i1 %138, label %bb5.i.i.i.i.i12.i, label %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit24.i

_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit24.i: ; preds = %bb32.i.i.i.i.i22.i, %bb10.i.i.i.i.i15.i
  %139 = phi i8 [ %spec.select.i.i.i.i.i14.i, %bb10.i.i.i.i.i15.i ], [ %.0.i.i.i.i.i.i.i21.i, %bb32.i.i.i.i.i22.i ]
  %switch.i23.i = icmp ult i8 %139, 2
  br i1 %switch.i23.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i31.i", label %bb10.i174

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i31.i": ; preds = %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit24.i
  %_2.i.i34.i30.i = icmp eq i16 %.0.sroa.speculated.i.i.i.i.i.i3.i, 0
  br i1 %_2.i.i34.i30.i, label %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit43.i, label %bb11.i41.i

bb9.i32.i:                                        ; preds = %bb11.i41.i
  br i1 %brmerge.i.i38.i, label %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit43.i, label %bb14.i42.i

bb11.i41.i:                                       ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i31.i", %bb11.i41.i
  %noborrow.036.i33.i = phi i8 [ %_15.0.i.i39.i, %bb11.i41.i ], [ 1, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i31.i" ]
  %iter.sroa.8.035.i34.i = phi i16 [ %140, %bb11.i41.i ], [ 0, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i31.i" ]
  %140 = add nuw nsw i16 %iter.sroa.8.035.i34.i, 1
  %141 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %mant, i16 0, i32 3, i16 %iter.sroa.8.035.i34.i
  %142 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale4, i16 0, i32 3, i16 %iter.sroa.8.035.i34.i
  %_36.i35.i = load i32, i32* %141, align 1, !noalias !232
  %_38.i36.i = load i32, i32* %142, align 1, !alias.scope !235, !noalias !236
  %_37.i37.i = xor i32 %_38.i36.i, -1
  %143 = call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %_36.i35.i, i32 %_37.i37.i) #20
  %144 = extractvalue { i32, i1 } %143, 0
  %145 = extractvalue { i32, i1 } %143, 1
  %146 = zext i8 %noborrow.036.i33.i to i32
  %147 = call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %144, i32 %146) #20
  %148 = extractvalue { i32, i1 } %147, 0
  %149 = extractvalue { i32, i1 } %147, 1
  %brmerge.i.i38.i = or i1 %145, %149
  %_15.0.i.i39.i = zext i1 %brmerge.i.i38.i to i8
  store i32 %148, i32* %141, align 1, !noalias !232
  %_2.i.i.i40.i = icmp ult i16 %140, %.0.sroa.speculated.i.i.i.i.i.i3.i
  br i1 %_2.i.i.i40.i, label %bb11.i41.i, label %bb9.i32.i

bb14.i42.i:                                       ; preds = %bb9.i32.i
; call core::panicking::panic
  call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [26 x i8] }>* @alloc18922 to [0 x i8]*), i16 26, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*)), !noalias !237
  unreachable

_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit43.i: ; preds = %bb9.i32.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i31.i"
  store i16 %.0.sroa.speculated.i.i.i.i.i.i3.i, i16* %19, align 1, !noalias !232
  %150 = or i8 %d.0.i, 4
  br label %bb10.i174

bb10.i174:                                        ; preds = %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit43.i, %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit24.i
  %_4.i.i.i44.i = phi i16 [ %.0.sroa.speculated.i.i.i.i.i.i3.i, %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit43.i ], [ %_4.i.i.i1.i, %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit24.i ]
  %d.1.i = phi i8 [ %150, %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit43.i ], [ %d.0.i, %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit24.i ]
  %151 = icmp ugt i16 %_4.i.i.i44.i, %_5.i.i.i45.i
  %.0.sroa.speculated.i.i.i.i.i.i46.i = select i1 %151, i16 %_4.i.i.i44.i, i16 %_5.i.i.i45.i
  %_8.i.i.i3.i.i.i47.i = icmp ugt i16 %.0.sroa.speculated.i.i.i.i.i.i46.i, 40
  br i1 %_8.i.i.i3.i.i.i47.i, label %bb5.i.i.i4.i.i.i48.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i51.i"

bb5.i.i.i4.i.i.i48.i:                             ; preds = %bb10.i174
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.0.sroa.speculated.i.i.i.i.i.i46.i, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i51.i": ; preds = %bb10.i174
  %152 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %mant, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i.i.i46.i
  %153 = bitcast i32* %152 to i8*
  %154 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale2, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i.i.i46.i
  %155 = bitcast i32* %154 to i8*
  br label %bb5.i.i.i.i.i55.i

bb5.i.i.i.i.i55.i:                                ; preds = %bb32.i.i.i.i.i65.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i51.i"
  %self.sroa.2.0.i.i.i.i.i52.i = phi i8* [ %153, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i51.i" ], [ %156, %bb32.i.i.i.i.i65.i ]
  %other.sroa.5.0.i.i.i.i.i53.i = phi i8* [ %155, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i51.i" ], [ %158, %bb32.i.i.i.i.i65.i ]
  %_13.i.i.i51.i.i.i.i.i54.i = icmp eq i8* %self.sroa.2.0.i.i.i.i.i52.i, %21
  br i1 %_13.i.i.i51.i.i.i.i.i54.i, label %bb10.i.i.i.i.i58.i, label %bb32.i.i.i.i.i65.i

bb10.i.i.i.i.i58.i:                               ; preds = %bb5.i.i.i.i.i55.i
  %_13.i.i.i.i.i.i.i.i56.i = icmp ne i8* %other.sroa.5.0.i.i.i.i.i53.i, %92
  %spec.select.i.i.i.i.i57.i = sext i1 %_13.i.i.i.i.i.i.i.i56.i to i8
  br label %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit67.i

bb32.i.i.i.i.i65.i:                               ; preds = %bb5.i.i.i.i.i55.i
  %156 = getelementptr inbounds i8, i8* %self.sroa.2.0.i.i.i.i.i52.i, i16 -4
  %157 = bitcast i8* %156 to i32*
  %.val.i.i.i.i52.i.i.i.i.i59.i = load i32, i32* %157, align 1, !alias.scope !238, !noalias !249
  %158 = getelementptr inbounds i8, i8* %other.sroa.5.0.i.i.i.i.i53.i, i16 -4
  %159 = bitcast i8* %158 to i32*
  %.val.i.i.i.i44.i.i.i.i.i60.i = load i32, i32* %159, align 1, !alias.scope !253, !noalias !258
  %_3.i.i.i.i.i.i.i61.i = icmp ult i32 %.val.i.i.i.i52.i.i.i.i.i59.i, %.val.i.i.i.i44.i.i.i.i.i60.i
  %_6.i.i.i.i.i.i.i62.i = icmp ne i32 %.val.i.i.i.i52.i.i.i.i.i59.i, %.val.i.i.i.i44.i.i.i.i.i60.i
  %..i.i.i.i.i.i.i63.i = zext i1 %_6.i.i.i.i.i.i.i62.i to i8
  %.0.i.i.i.i.i.i.i64.i = select i1 %_3.i.i.i.i.i.i.i61.i, i8 -1, i8 %..i.i.i.i.i.i.i63.i
  %160 = icmp eq i8 %.0.i.i.i.i.i.i.i64.i, 0
  br i1 %160, label %bb5.i.i.i.i.i55.i, label %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit67.i

_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit67.i: ; preds = %bb32.i.i.i.i.i65.i, %bb10.i.i.i.i.i58.i
  %161 = phi i8 [ %spec.select.i.i.i.i.i57.i, %bb10.i.i.i.i.i58.i ], [ %.0.i.i.i.i.i.i.i64.i, %bb32.i.i.i.i.i65.i ]
  %switch.i66.i = icmp ult i8 %161, 2
  br i1 %switch.i66.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i74.i", label %bb15.i175

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i74.i": ; preds = %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit67.i
  %_2.i.i34.i73.i = icmp eq i16 %.0.sroa.speculated.i.i.i.i.i.i46.i, 0
  br i1 %_2.i.i34.i73.i, label %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit86.i, label %bb11.i84.i

bb9.i75.i:                                        ; preds = %bb11.i84.i
  br i1 %brmerge.i.i81.i, label %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit86.i, label %bb14.i85.i

bb11.i84.i:                                       ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i74.i", %bb11.i84.i
  %noborrow.036.i76.i = phi i8 [ %_15.0.i.i82.i, %bb11.i84.i ], [ 1, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i74.i" ]
  %iter.sroa.8.035.i77.i = phi i16 [ %162, %bb11.i84.i ], [ 0, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i74.i" ]
  %162 = add nuw nsw i16 %iter.sroa.8.035.i77.i, 1
  %163 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %mant, i16 0, i32 3, i16 %iter.sroa.8.035.i77.i
  %164 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale2, i16 0, i32 3, i16 %iter.sroa.8.035.i77.i
  %_36.i78.i = load i32, i32* %163, align 1, !noalias !259
  %_38.i79.i = load i32, i32* %164, align 1, !alias.scope !262, !noalias !263
  %_37.i80.i = xor i32 %_38.i79.i, -1
  %165 = call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %_36.i78.i, i32 %_37.i80.i) #20
  %166 = extractvalue { i32, i1 } %165, 0
  %167 = extractvalue { i32, i1 } %165, 1
  %168 = zext i8 %noborrow.036.i76.i to i32
  %169 = call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %166, i32 %168) #20
  %170 = extractvalue { i32, i1 } %169, 0
  %171 = extractvalue { i32, i1 } %169, 1
  %brmerge.i.i81.i = or i1 %167, %171
  %_15.0.i.i82.i = zext i1 %brmerge.i.i81.i to i8
  store i32 %170, i32* %163, align 1, !noalias !259
  %_2.i.i.i83.i = icmp ult i16 %162, %.0.sroa.speculated.i.i.i.i.i.i46.i
  br i1 %_2.i.i.i83.i, label %bb11.i84.i, label %bb9.i75.i

bb14.i85.i:                                       ; preds = %bb9.i75.i
; call core::panicking::panic
  call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [26 x i8] }>* @alloc18922 to [0 x i8]*), i16 26, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*)), !noalias !264
  unreachable

_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit86.i: ; preds = %bb9.i75.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i74.i"
  store i16 %.0.sroa.speculated.i.i.i.i.i.i46.i, i16* %19, align 1, !noalias !259
  %172 = add nsw i8 %d.1.i, 2
  br label %bb15.i175

bb15.i175:                                        ; preds = %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit86.i, %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit67.i
  %_4.i.i.i87.i = phi i16 [ %.0.sroa.speculated.i.i.i.i.i.i46.i, %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit86.i ], [ %_4.i.i.i44.i, %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit67.i ]
  %d.2.i = phi i8 [ %172, %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit86.i ], [ %d.1.i, %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit67.i ]
  %173 = icmp ugt i16 %_4.i.i.i87.i, %_5.i.i.i88.i
  %.0.sroa.speculated.i.i.i.i.i.i89.i = select i1 %173, i16 %_4.i.i.i87.i, i16 %_5.i.i.i88.i
  %_8.i.i.i3.i.i.i90.i = icmp ugt i16 %.0.sroa.speculated.i.i.i.i.i.i89.i, 40
  br i1 %_8.i.i.i3.i.i.i90.i, label %bb5.i.i.i4.i.i.i91.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i94.i"

bb5.i.i.i4.i.i.i91.i:                             ; preds = %bb15.i175
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.0.sroa.speculated.i.i.i.i.i.i89.i, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i94.i": ; preds = %bb15.i175
  %174 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %mant, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i.i.i89.i
  %175 = bitcast i32* %174 to i8*
  %176 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i.i.i89.i
  %177 = bitcast i32* %176 to i8*
  br label %bb5.i.i.i.i.i98.i

bb5.i.i.i.i.i98.i:                                ; preds = %bb32.i.i.i.i.i108.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i94.i"
  %self.sroa.2.0.i.i.i.i.i95.i = phi i8* [ %175, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i94.i" ], [ %178, %bb32.i.i.i.i.i108.i ]
  %other.sroa.5.0.i.i.i.i.i96.i = phi i8* [ %177, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i94.i" ], [ %180, %bb32.i.i.i.i.i108.i ]
  %_13.i.i.i51.i.i.i.i.i97.i = icmp eq i8* %self.sroa.2.0.i.i.i.i.i95.i, %21
  br i1 %_13.i.i.i51.i.i.i.i.i97.i, label %bb10.i.i.i.i.i101.i, label %bb32.i.i.i.i.i108.i

bb10.i.i.i.i.i101.i:                              ; preds = %bb5.i.i.i.i.i98.i
  %_13.i.i.i.i.i.i.i.i99.i = icmp ne i8* %other.sroa.5.0.i.i.i.i.i96.i, %59
  %spec.select.i.i.i.i.i100.i = sext i1 %_13.i.i.i.i.i.i.i.i99.i to i8
  br label %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit110.i

bb32.i.i.i.i.i108.i:                              ; preds = %bb5.i.i.i.i.i98.i
  %178 = getelementptr inbounds i8, i8* %self.sroa.2.0.i.i.i.i.i95.i, i16 -4
  %179 = bitcast i8* %178 to i32*
  %.val.i.i.i.i52.i.i.i.i.i102.i = load i32, i32* %179, align 1, !alias.scope !265, !noalias !276
  %180 = getelementptr inbounds i8, i8* %other.sroa.5.0.i.i.i.i.i96.i, i16 -4
  %181 = bitcast i8* %180 to i32*
  %.val.i.i.i.i44.i.i.i.i.i103.i = load i32, i32* %181, align 1, !alias.scope !280, !noalias !285
  %_3.i.i.i.i.i.i.i104.i = icmp ult i32 %.val.i.i.i.i52.i.i.i.i.i102.i, %.val.i.i.i.i44.i.i.i.i.i103.i
  %_6.i.i.i.i.i.i.i105.i = icmp ne i32 %.val.i.i.i.i52.i.i.i.i.i102.i, %.val.i.i.i.i44.i.i.i.i.i103.i
  %..i.i.i.i.i.i.i106.i = zext i1 %_6.i.i.i.i.i.i.i105.i to i8
  %.0.i.i.i.i.i.i.i107.i = select i1 %_3.i.i.i.i.i.i.i104.i, i8 -1, i8 %..i.i.i.i.i.i.i106.i
  %182 = icmp eq i8 %.0.i.i.i.i.i.i.i107.i, 0
  br i1 %182, label %bb5.i.i.i.i.i98.i, label %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit110.i

_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit110.i: ; preds = %bb32.i.i.i.i.i108.i, %bb10.i.i.i.i.i101.i
  %183 = phi i8 [ %spec.select.i.i.i.i.i100.i, %bb10.i.i.i.i.i101.i ], [ %.0.i.i.i.i.i.i.i107.i, %bb32.i.i.i.i.i108.i ]
  %switch.i109.i = icmp ult i8 %183, 2
  br i1 %switch.i109.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i117.i", label %_ZN4core3num7flt2dec8strategy6dragon15div_rem_upto_1617haf525d19dbb221baE.exit

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i117.i": ; preds = %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit110.i
  %_2.i.i34.i116.i = icmp eq i16 %.0.sroa.speculated.i.i.i.i.i.i89.i, 0
  br i1 %_2.i.i34.i116.i, label %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit129.i, label %bb11.i127.i

bb9.i118.i:                                       ; preds = %bb11.i127.i
  br i1 %brmerge.i.i124.i, label %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit129.i, label %bb14.i128.i

bb11.i127.i:                                      ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i117.i", %bb11.i127.i
  %noborrow.036.i119.i = phi i8 [ %_15.0.i.i125.i, %bb11.i127.i ], [ 1, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i117.i" ]
  %iter.sroa.8.035.i120.i = phi i16 [ %184, %bb11.i127.i ], [ 0, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i117.i" ]
  %184 = add nuw nsw i16 %iter.sroa.8.035.i120.i, 1
  %185 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %mant, i16 0, i32 3, i16 %iter.sroa.8.035.i120.i
  %186 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale, i16 0, i32 3, i16 %iter.sroa.8.035.i120.i
  %_36.i121.i = load i32, i32* %185, align 1, !noalias !286
  %_38.i122.i = load i32, i32* %186, align 1, !alias.scope !289, !noalias !290
  %_37.i123.i = xor i32 %_38.i122.i, -1
  %187 = call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %_36.i121.i, i32 %_37.i123.i) #20
  %188 = extractvalue { i32, i1 } %187, 0
  %189 = extractvalue { i32, i1 } %187, 1
  %190 = zext i8 %noborrow.036.i119.i to i32
  %191 = call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %188, i32 %190) #20
  %192 = extractvalue { i32, i1 } %191, 0
  %193 = extractvalue { i32, i1 } %191, 1
  %brmerge.i.i124.i = or i1 %189, %193
  %_15.0.i.i125.i = zext i1 %brmerge.i.i124.i to i8
  store i32 %192, i32* %185, align 1, !noalias !286
  %_2.i.i.i126.i = icmp ult i16 %184, %.0.sroa.speculated.i.i.i.i.i.i89.i
  br i1 %_2.i.i.i126.i, label %bb11.i127.i, label %bb9.i118.i

bb14.i128.i:                                      ; preds = %bb9.i118.i
; call core::panicking::panic
  call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [26 x i8] }>* @alloc18922 to [0 x i8]*), i16 26, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*)), !noalias !291
  unreachable

_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit129.i: ; preds = %bb9.i118.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i117.i"
  store i16 %.0.sroa.speculated.i.i.i.i.i.i89.i, i16* %19, align 1, !noalias !286
  %194 = add nsw i8 %d.2.i, 1
  br label %_ZN4core3num7flt2dec8strategy6dragon15div_rem_upto_1617haf525d19dbb221baE.exit

_ZN4core3num7flt2dec8strategy6dragon15div_rem_upto_1617haf525d19dbb221baE.exit: ; preds = %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit110.i, %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit129.i
  %_4.i176 = phi i16 [ %.0.sroa.speculated.i.i.i.i.i.i89.i, %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit129.i ], [ %_4.i.i.i87.i, %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit110.i ]
  %d.3.i = phi i8 [ %194, %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit129.i ], [ %d.2.i, %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit110.i ]
  %_146 = icmp ult i16 %i.0454, %buf.1
  br i1 %_146, label %bb58, label %panic, !prof !4, !misexpect !5

bb58:                                             ; preds = %_ZN4core3num7flt2dec8strategy6dragon15div_rem_upto_1617haf525d19dbb221baE.exit
  %195 = getelementptr inbounds [0 x i8], [0 x i8]* %buf.0, i16 0, i16 %i.0454
  %196 = add i8 %d.3.i, 48
  store i8 %196, i8* %195, align 1
  %197 = add nuw i16 %i.0454, 1
  %_5.i177 = load i16, i16* %27, align 1, !alias.scope !292, !noalias !295
  %198 = icmp ugt i16 %_4.i176, %_5.i177
  %.0.sroa.speculated.i.i.i.i178 = select i1 %198, i16 %_4.i176, i16 %_5.i177
  %_8.i.i.i3.i179 = icmp ugt i16 %.0.sroa.speculated.i.i.i.i178, 40
  br i1 %_8.i.i.i3.i179, label %bb5.i.i.i4.i180, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i183"

bb5.i.i.i4.i180:                                  ; preds = %bb58
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.0.sroa.speculated.i.i.i.i178, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i183": ; preds = %bb58
  %199 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %mant, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i178
  %200 = bitcast i32* %199 to i8*
  %201 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %minus, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i178
  %202 = bitcast i32* %201 to i8*
  br label %bb5.i.i.i187

bb5.i.i.i187:                                     ; preds = %bb32.i.i.i197, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i183"
  %self.sroa.2.0.i.i.i184 = phi i8* [ %200, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i183" ], [ %203, %bb32.i.i.i197 ]
  %other.sroa.5.0.i.i.i185 = phi i8* [ %202, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i183" ], [ %205, %bb32.i.i.i197 ]
  %_13.i.i.i51.i.i.i186 = icmp eq i8* %self.sroa.2.0.i.i.i184, %21
  br i1 %_13.i.i.i51.i.i.i186, label %bb10.i.i.i190, label %bb32.i.i.i197

bb10.i.i.i190:                                    ; preds = %bb5.i.i.i187
  %_13.i.i.i.i.i.i188 = icmp ne i8* %other.sroa.5.0.i.i.i185, %29
  %spec.select.i.i.i189 = sext i1 %_13.i.i.i.i.i.i188 to i8
  br label %"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE.exit198"

bb32.i.i.i197:                                    ; preds = %bb5.i.i.i187
  %203 = getelementptr inbounds i8, i8* %self.sroa.2.0.i.i.i184, i16 -4
  %204 = bitcast i8* %203 to i32*
  %.val.i.i.i.i52.i.i.i191 = load i32, i32* %204, align 1, !alias.scope !297, !noalias !292
  %205 = getelementptr inbounds i8, i8* %other.sroa.5.0.i.i.i185, i16 -4
  %206 = bitcast i8* %205 to i32*
  %.val.i.i.i.i44.i.i.i192 = load i32, i32* %206, align 1, !alias.scope !302, !noalias !295
  %_3.i.i.i.i.i193 = icmp ult i32 %.val.i.i.i.i52.i.i.i191, %.val.i.i.i.i44.i.i.i192
  %_6.i.i.i.i.i194 = icmp ne i32 %.val.i.i.i.i52.i.i.i191, %.val.i.i.i.i44.i.i.i192
  %..i.i.i.i.i195 = zext i1 %_6.i.i.i.i.i194 to i8
  %.0.i.i.i.i.i196 = select i1 %_3.i.i.i.i.i193, i8 -1, i8 %..i.i.i.i.i195
  %207 = icmp eq i8 %.0.i.i.i.i.i196, 0
  br i1 %207, label %bb5.i.i.i187, label %"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE.exit198"

"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE.exit198": ; preds = %bb32.i.i.i197, %bb10.i.i.i190
  %208 = phi i8 [ %spec.select.i.i.i189, %bb10.i.i.i190 ], [ %.0.i.i.i.i.i196, %bb32.i.i.i197 ]
  %_3.i.i.i.i199 = icmp slt i8 %208, %8
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 162, i8* nonnull %102)
  store i16 %_4.i176, i16* %103, align 1, !alias.scope !307, !noalias !310
  call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 dereferenceable(160) %105, i8* nonnull align 1 dereferenceable(160) %21, i16 160, i1 false) #20, !alias.scope !312
  %_6.i202 = load i16, i16* %35, align 1, !alias.scope !313
  %209 = icmp ugt i16 %_4.i176, %_6.i202
  %.0.sroa.speculated.i.i.i.i203 = select i1 %209, i16 %_4.i176, i16 %_6.i202
  %_9.i.i.i.i204 = icmp ugt i16 %.0.sroa.speculated.i.i.i.i203, 40
  br i1 %_9.i.i.i.i204, label %bb5.i.i.i.i205, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i207"

bb5.i.i.i.i205:                                   ; preds = %"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE.exit198"
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.0.sroa.speculated.i.i.i.i203, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*)), !noalias !313
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i207": ; preds = %"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE.exit198"
  %_2.i.i39.i206 = icmp eq i16 %.0.sroa.speculated.i.i.i.i203, 0
  br i1 %_2.i.i39.i206, label %_ZN4core3num6bignum8Big32x403add17hc5fc99826d0d9f42E.exit222, label %bb11.i216

bb9.i208:                                         ; preds = %bb11.i216
  br i1 %brmerge.i.i213, label %bb14.i218, label %_ZN4core3num6bignum8Big32x403add17hc5fc99826d0d9f42E.exit222

bb11.i216:                                        ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i207", %bb11.i216
  %carry.041.i209 = phi i8 [ %_15.0.i.i214, %bb11.i216 ], [ 0, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i207" ]
  %iter.sroa.8.040.i210 = phi i16 [ %210, %bb11.i216 ], [ 0, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i207" ]
  %210 = add nuw nsw i16 %iter.sroa.8.040.i210, 1
  %211 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %_161, i16 0, i32 3, i16 %iter.sroa.8.040.i210
  %212 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %plus, i16 0, i32 3, i16 %iter.sroa.8.040.i210
  %_36.i211 = load i32, i32* %211, align 1, !noalias !313
  %_37.i212 = load i32, i32* %212, align 1, !alias.scope !313
  %213 = call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %_36.i211, i32 %_37.i212) #20
  %214 = extractvalue { i32, i1 } %213, 0
  %215 = extractvalue { i32, i1 } %213, 1
  %216 = zext i8 %carry.041.i209 to i32
  %217 = call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %214, i32 %216) #20
  %218 = extractvalue { i32, i1 } %217, 0
  %219 = extractvalue { i32, i1 } %217, 1
  %brmerge.i.i213 = or i1 %215, %219
  %_15.0.i.i214 = zext i1 %brmerge.i.i213 to i8
  store i32 %218, i32* %211, align 1, !noalias !313
  %_2.i.i.i215 = icmp ult i16 %210, %.0.sroa.speculated.i.i.i.i203
  br i1 %_2.i.i.i215, label %bb11.i216, label %bb9.i208

bb14.i218:                                        ; preds = %bb9.i208
  %_44.i217 = icmp ult i16 %.0.sroa.speculated.i.i.i.i203, 40
  br i1 %_44.i217, label %bb15.i219, label %panic.i221, !prof !4, !misexpect !5

bb15.i219:                                        ; preds = %bb14.i218
  %220 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %_161, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i203
  store i32 1, i32* %220, align 1, !noalias !313
  %221 = add nuw nsw i16 %.0.sroa.speculated.i.i.i.i203, 1
  br label %_ZN4core3num6bignum8Big32x403add17hc5fc99826d0d9f42E.exit222

panic.i221:                                       ; preds = %bb14.i218
; call core::panicking::panic_bounds_check
  call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %.0.sroa.speculated.i.i.i.i203, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*)), !noalias !313
  unreachable

_ZN4core3num6bignum8Big32x403add17hc5fc99826d0d9f42E.exit222: ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i207", %bb9.i208, %bb15.i219
  %sz.0.i220 = phi i16 [ %221, %bb15.i219 ], [ %.0.sroa.speculated.i.i.i.i203, %bb9.i208 ], [ 0, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i207" ]
  store i16 %sz.0.i220, i16* %103, align 1, !noalias !313
  %222 = icmp ugt i16 %_5.i.i.i88.i, %sz.0.i220
  %.0.sroa.speculated.i.i.i.i225 = select i1 %222, i16 %_5.i.i.i88.i, i16 %sz.0.i220
  %_8.i.i.i3.i226 = icmp ugt i16 %.0.sroa.speculated.i.i.i.i225, 40
  br i1 %_8.i.i.i3.i226, label %bb5.i.i.i4.i227, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i230"

bb5.i.i.i4.i227:                                  ; preds = %_ZN4core3num6bignum8Big32x403add17hc5fc99826d0d9f42E.exit222
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.0.sroa.speculated.i.i.i.i225, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i230": ; preds = %_ZN4core3num6bignum8Big32x403add17hc5fc99826d0d9f42E.exit222
  %223 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i225
  %224 = bitcast i32* %223 to i8*
  %225 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %_161, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i225
  %226 = bitcast i32* %225 to i8*
  br label %bb5.i.i.i234

bb5.i.i.i234:                                     ; preds = %bb32.i.i.i244, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i230"
  %self.sroa.2.0.i.i.i231 = phi i8* [ %224, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i230" ], [ %227, %bb32.i.i.i244 ]
  %other.sroa.5.0.i.i.i232 = phi i8* [ %226, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i230" ], [ %229, %bb32.i.i.i244 ]
  %_13.i.i.i51.i.i.i233 = icmp eq i8* %self.sroa.2.0.i.i.i231, %59
  br i1 %_13.i.i.i51.i.i.i233, label %bb10.i.i.i237, label %bb32.i.i.i244

bb10.i.i.i237:                                    ; preds = %bb5.i.i.i234
  %_13.i.i.i.i.i.i235 = icmp ne i8* %other.sroa.5.0.i.i.i232, %105
  %spec.select.i.i.i236 = sext i1 %_13.i.i.i.i.i.i235 to i8
  br label %"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE.exit245"

bb32.i.i.i244:                                    ; preds = %bb5.i.i.i234
  %227 = getelementptr inbounds i8, i8* %self.sroa.2.0.i.i.i231, i16 -4
  %228 = bitcast i8* %227 to i32*
  %.val.i.i.i.i52.i.i.i238 = load i32, i32* %228, align 1, !alias.scope !316, !noalias !323
  %229 = getelementptr inbounds i8, i8* %other.sroa.5.0.i.i.i232, i16 -4
  %230 = bitcast i8* %229 to i32*
  %.val.i.i.i.i44.i.i.i239 = load i32, i32* %230, align 1, !alias.scope !325, !noalias !330
  %_3.i.i.i.i.i240 = icmp ult i32 %.val.i.i.i.i52.i.i.i238, %.val.i.i.i.i44.i.i.i239
  %_6.i.i.i.i.i241 = icmp ne i32 %.val.i.i.i.i52.i.i.i238, %.val.i.i.i.i44.i.i.i239
  %..i.i.i.i.i242 = zext i1 %_6.i.i.i.i.i241 to i8
  %.0.i.i.i.i.i243 = select i1 %_3.i.i.i.i.i240, i8 -1, i8 %..i.i.i.i.i242
  %231 = icmp eq i8 %.0.i.i.i.i.i243, 0
  br i1 %231, label %bb5.i.i.i234, label %"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE.exit245"

"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE.exit245": ; preds = %bb32.i.i.i244, %bb10.i.i.i237
  %232 = phi i8 [ %spec.select.i.i.i236, %bb10.i.i.i237 ], [ %.0.i.i.i.i.i243, %bb32.i.i.i244 ]
  %_3.i.i.i.i246 = icmp slt i8 %232, %8
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 162, i8* nonnull %102)
  %brmerge = or i1 %_3.i.i.i.i199, %_3.i.i.i.i246
  br i1 %brmerge, label %bb70, label %bb69

bb69:                                             ; preds = %"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE.exit245"
  %_9.i.i.i.i247 = icmp ugt i16 %_4.i176, 40
  br i1 %_9.i.i.i.i247, label %bb5.i.i.i.i248, label %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i251"

bb5.i.i.i.i248:                                   ; preds = %bb69
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %_4.i176, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i251": ; preds = %bb69
  %233 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %mant, i16 0, i32 3, i16 %_4.i176
  %_13.i16.i250 = icmp eq i32* %233, %106
  br i1 %_13.i16.i250, label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit272, label %bb7.i266

bb5.i254:                                         ; preds = %bb7.i266
  %_30.i253 = icmp eq i32 %_14.i.i263, 0
  br i1 %_30.i253, label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit272, label %bb10.i268

bb7.i266:                                         ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i251", %bb7.i266
  %carry.018.i255 = phi i32 [ %_14.i.i263, %bb7.i266 ], [ 0, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i251" ]
  %iter.sroa.0.017.i256 = phi i8* [ %234, %bb7.i266 ], [ %21, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i251" ]
  %234 = getelementptr inbounds i8, i8* %iter.sroa.0.017.i256, i16 4
  %235 = bitcast i8* %iter.sroa.0.017.i256 to i32*
  %_25.i257 = load i32, i32* %235, align 1
  %_8.i.i258 = zext i32 %_25.i257 to i64
  %_7.i.i259 = mul nuw nsw i64 %_8.i.i258, 10
  %_12.i11.i260 = zext i32 %carry.018.i255 to i64
  %v.i.i261 = add nuw nsw i64 %_7.i.i259, %_12.i11.i260
  %_15.i.i262 = lshr i64 %v.i.i261, 32
  %_14.i.i263 = trunc i64 %_15.i.i262 to i32
  %_18.i.i264 = trunc i64 %v.i.i261 to i32
  store i32 %_18.i.i264, i32* %235, align 1
  %236 = bitcast i8* %234 to i32*
  %_13.i.i265 = icmp eq i32* %233, %236
  br i1 %_13.i.i265, label %bb5.i254, label %bb7.i266

bb10.i268:                                        ; preds = %bb5.i254
  %_35.i267 = icmp ult i16 %_4.i176, 40
  br i1 %_35.i267, label %bb11.i269, label %panic.i271, !prof !4, !misexpect !5

bb11.i269:                                        ; preds = %bb10.i268
  store i32 %_14.i.i263, i32* %233, align 1
  %237 = add nuw nsw i16 %_4.i176, 1
  br label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit272

panic.i271:                                       ; preds = %bb10.i268
; call core::panicking::panic_bounds_check
  call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_4.i176, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit272: ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i251", %bb5.i254, %bb11.i269
  %_4.i.i.i.i = phi i16 [ %237, %bb11.i269 ], [ %_4.i176, %bb5.i254 ], [ %_4.i176, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i251" ]
  store i16 %_4.i.i.i.i, i16* %19, align 1
  %_9.i.i.i.i55 = icmp ugt i16 %_5.i177, 40
  br i1 %_9.i.i.i.i55, label %bb5.i.i.i.i56, label %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i59"

bb5.i.i.i.i56:                                    ; preds = %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit272
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %_5.i177, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i59": ; preds = %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit272
  %238 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %minus, i16 0, i32 3, i16 %_5.i177
  %_13.i16.i58 = icmp eq i32* %238, %107
  br i1 %_13.i16.i58, label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit80, label %bb7.i74

bb5.i62:                                          ; preds = %bb7.i74
  %_30.i61 = icmp eq i32 %_14.i.i71, 0
  br i1 %_30.i61, label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit80, label %bb10.i76

bb7.i74:                                          ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i59", %bb7.i74
  %carry.018.i63 = phi i32 [ %_14.i.i71, %bb7.i74 ], [ 0, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i59" ]
  %iter.sroa.0.017.i64 = phi i8* [ %239, %bb7.i74 ], [ %29, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i59" ]
  %239 = getelementptr inbounds i8, i8* %iter.sroa.0.017.i64, i16 4
  %240 = bitcast i8* %iter.sroa.0.017.i64 to i32*
  %_25.i65 = load i32, i32* %240, align 1
  %_8.i.i66 = zext i32 %_25.i65 to i64
  %_7.i.i67 = mul nuw nsw i64 %_8.i.i66, 10
  %_12.i11.i68 = zext i32 %carry.018.i63 to i64
  %v.i.i69 = add nuw nsw i64 %_7.i.i67, %_12.i11.i68
  %_15.i.i70 = lshr i64 %v.i.i69, 32
  %_14.i.i71 = trunc i64 %_15.i.i70 to i32
  %_18.i.i72 = trunc i64 %v.i.i69 to i32
  store i32 %_18.i.i72, i32* %240, align 1
  %241 = bitcast i8* %239 to i32*
  %_13.i.i73 = icmp eq i32* %238, %241
  br i1 %_13.i.i73, label %bb5.i62, label %bb7.i74

bb10.i76:                                         ; preds = %bb5.i62
  %_35.i75 = icmp ult i16 %_5.i177, 40
  br i1 %_35.i75, label %bb11.i77, label %panic.i79, !prof !4, !misexpect !5

bb11.i77:                                         ; preds = %bb10.i76
  store i32 %_14.i.i71, i32* %238, align 1
  %242 = add nuw nsw i16 %_5.i177, 1
  br label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit80

panic.i79:                                        ; preds = %bb10.i76
; call core::panicking::panic_bounds_check
  call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_5.i177, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit80: ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i59", %bb5.i62, %bb11.i77
  %sz.0.i78 = phi i16 [ %242, %bb11.i77 ], [ %_5.i177, %bb5.i62 ], [ %_5.i177, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i59" ]
  store i16 %sz.0.i78, i16* %27, align 1
  %_9.i.i.i.i = icmp ugt i16 %_6.i202, 40
  br i1 %_9.i.i.i.i, label %bb5.i.i.i.i, label %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i"

bb5.i.i.i.i:                                      ; preds = %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit80
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %_6.i202, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i": ; preds = %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit80
  %243 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %plus, i16 0, i32 3, i16 %_6.i202
  %_13.i16.i = icmp eq i32* %243, %108
  br i1 %_13.i16.i, label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit, label %bb7.i

bb5.i:                                            ; preds = %bb7.i
  %_30.i = icmp eq i32 %_14.i.i, 0
  br i1 %_30.i, label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit, label %bb10.i

bb7.i:                                            ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i", %bb7.i
  %carry.018.i = phi i32 [ %_14.i.i, %bb7.i ], [ 0, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i" ]
  %iter.sroa.0.017.i = phi i8* [ %244, %bb7.i ], [ %37, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i" ]
  %244 = getelementptr inbounds i8, i8* %iter.sroa.0.017.i, i16 4
  %245 = bitcast i8* %iter.sroa.0.017.i to i32*
  %_25.i = load i32, i32* %245, align 1
  %_8.i.i = zext i32 %_25.i to i64
  %_7.i.i = mul nuw nsw i64 %_8.i.i, 10
  %_12.i11.i = zext i32 %carry.018.i to i64
  %v.i.i = add nuw nsw i64 %_7.i.i, %_12.i11.i
  %_15.i.i = lshr i64 %v.i.i, 32
  %_14.i.i = trunc i64 %_15.i.i to i32
  %_18.i.i = trunc i64 %v.i.i to i32
  store i32 %_18.i.i, i32* %245, align 1
  %246 = bitcast i8* %244 to i32*
  %_13.i.i = icmp eq i32* %243, %246
  br i1 %_13.i.i, label %bb5.i, label %bb7.i

bb10.i:                                           ; preds = %bb5.i
  %_35.i = icmp ult i16 %_6.i202, 40
  br i1 %_35.i, label %bb11.i, label %panic.i, !prof !4, !misexpect !5

bb11.i:                                           ; preds = %bb10.i
  store i32 %_14.i.i, i32* %243, align 1
  %247 = add nuw nsw i16 %_6.i202, 1
  br label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit

panic.i:                                          ; preds = %bb10.i
; call core::panicking::panic_bounds_check
  call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_6.i202, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit: ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i", %bb5.i, %bb11.i
  %sz.0.i = phi i16 [ %247, %bb11.i ], [ %_6.i202, %bb5.i ], [ %_6.i202, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i" ]
  store i16 %sz.0.i, i16* %35, align 1
  %248 = icmp ugt i16 %_4.i.i.i.i, %_5.i.i.i.i451
  %.0.sroa.speculated.i.i.i.i.i.i.i = select i1 %248, i16 %_4.i.i.i.i, i16 %_5.i.i.i.i451
  %_8.i.i.i3.i.i.i.i = icmp ugt i16 %.0.sroa.speculated.i.i.i.i.i.i.i, 40
  br i1 %_8.i.i.i3.i.i.i.i, label %bb5.i.i.i4.i.i.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i.i"

bb70:                                             ; preds = %"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE.exit245"
  br i1 %_3.i.i.i.i246, label %bb76, label %bb91

bb76:                                             ; preds = %bb70
  br i1 %_3.i.i.i.i199, label %bb80, label %bb85

bb80:                                             ; preds = %bb76
; call core::num::bignum::Big32x40::mul_pow2
  %_182 = call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x408mul_pow217h0cff03c1c9e177a8E(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %mant, i16 1)
  %249 = bitcast %"num::bignum::Big32x40"* %_182 to i16*
  %_4.i.i.i = load i16, i16* %249, align 1, !alias.scope !331, !noalias !338
  %_5.i.i.i = load i16, i16* %39, align 1, !alias.scope !338, !noalias !331
  %250 = icmp ugt i16 %_4.i.i.i, %_5.i.i.i
  %.0.sroa.speculated.i.i.i.i.i.i = select i1 %250, i16 %_4.i.i.i, i16 %_5.i.i.i
  %_8.i.i.i3.i.i.i = icmp ugt i16 %.0.sroa.speculated.i.i.i.i.i.i, 40
  br i1 %_8.i.i.i3.i.i.i, label %bb5.i.i.i4.i.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i"

bb5.i.i.i4.i.i.i:                                 ; preds = %bb80
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.0.sroa.speculated.i.i.i.i.i.i, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i": ; preds = %bb80
  %_12.i.i.i = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %_182, i16 0, i32 3
  %251 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %_182, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i.i.i
  %252 = bitcast [40 x i32]* %_12.i.i.i to i8*
  %253 = bitcast i32* %251 to i8*
  %254 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i.i.i
  %255 = bitcast i32* %254 to i8*
  br label %bb5.i.i.i.i.i

bb5.i.i.i.i.i:                                    ; preds = %bb32.i.i.i.i.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i"
  %self.sroa.2.0.i.i.i.i.i = phi i8* [ %253, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i" ], [ %256, %bb32.i.i.i.i.i ]
  %other.sroa.5.0.i.i.i.i.i = phi i8* [ %255, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i" ], [ %258, %bb32.i.i.i.i.i ]
  %_13.i.i.i51.i.i.i.i.i = icmp eq i8* %self.sroa.2.0.i.i.i.i.i, %252
  br i1 %_13.i.i.i51.i.i.i.i.i, label %bb10.i.i.i.i.i, label %bb32.i.i.i.i.i

bb10.i.i.i.i.i:                                   ; preds = %bb5.i.i.i.i.i
  %_13.i.i.i.i.i.i.i.i = icmp ne i8* %other.sroa.5.0.i.i.i.i.i, %59
  %spec.select.i.i.i.i.i = sext i1 %_13.i.i.i.i.i.i.i.i to i8
  br label %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit

bb32.i.i.i.i.i:                                   ; preds = %bb5.i.i.i.i.i
  %256 = getelementptr inbounds i8, i8* %self.sroa.2.0.i.i.i.i.i, i16 -4
  %257 = bitcast i8* %256 to i32*
  %.val.i.i.i.i52.i.i.i.i.i = load i32, i32* %257, align 1, !alias.scope !342, !noalias !338
  %258 = getelementptr inbounds i8, i8* %other.sroa.5.0.i.i.i.i.i, i16 -4
  %259 = bitcast i8* %258 to i32*
  %.val.i.i.i.i44.i.i.i.i.i = load i32, i32* %259, align 1, !alias.scope !347, !noalias !331
  %_3.i.i.i.i.i.i.i = icmp ult i32 %.val.i.i.i.i52.i.i.i.i.i, %.val.i.i.i.i44.i.i.i.i.i
  %_6.i.i.i.i.i.i.i = icmp ne i32 %.val.i.i.i.i52.i.i.i.i.i, %.val.i.i.i.i44.i.i.i.i.i
  %..i.i.i.i.i.i.i = zext i1 %_6.i.i.i.i.i.i.i to i8
  %.0.i.i.i.i.i.i.i = select i1 %_3.i.i.i.i.i.i.i, i8 -1, i8 %..i.i.i.i.i.i.i
  %260 = icmp eq i8 %.0.i.i.i.i.i.i.i, 0
  br i1 %260, label %bb5.i.i.i.i.i, label %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit

_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit: ; preds = %bb32.i.i.i.i.i, %bb10.i.i.i.i.i
  %261 = phi i8 [ %spec.select.i.i.i.i.i, %bb10.i.i.i.i.i ], [ %.0.i.i.i.i.i.i.i, %bb32.i.i.i.i.i ]
  %switch.i = icmp ult i8 %261, 2
  br i1 %switch.i, label %bb85, label %bb91

bb85:                                             ; preds = %bb76, %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit
; call core::num::flt2dec::round_up
  %262 = call addrspace(1) { i8, i8 } @_ZN4core3num7flt2dec8round_up17haab4a1ca790fdd49E([0 x i8]* nonnull align 1 %buf.0, i16 %buf.1, i16 %197)
  %.fca.0.extract19 = extractvalue { i8, i8 } %262, 0
  %.fca.1.extract21 = extractvalue { i8, i8 } %262, 1
  %263 = and i8 %.fca.0.extract19, 1
  %264 = icmp eq i8 %263, 0
  br i1 %264, label %bb91, label %bb88

bb88:                                             ; preds = %bb85
  %_193 = icmp ult i16 %197, %buf.1
  br i1 %_193, label %bb89, label %panic1, !prof !4, !misexpect !5

bb89:                                             ; preds = %bb88
  %265 = getelementptr inbounds [0 x i8], [0 x i8]* %buf.0, i16 0, i16 %197
  store i8 %.fca.1.extract21, i8* %265, align 1
  %266 = add i16 %i.0454, 2
  %267 = add i16 %k.0, 1
  br label %bb91

bb91:                                             ; preds = %bb70, %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit, %bb89, %bb85
  %i.2 = phi i16 [ %266, %bb89 ], [ %197, %bb85 ], [ %197, %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit ], [ %197, %bb70 ]
  %k.2 = phi i16 [ %267, %bb89 ], [ %k.0, %bb85 ], [ %k.0, %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit ], [ %k.0, %bb70 ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 162, i8* nonnull %97)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 162, i8* nonnull %93)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 162, i8* nonnull %89)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 162, i8* nonnull %38)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 162, i8* nonnull %30)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 162, i8* nonnull %22)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 162, i8* nonnull %13)
  %268 = insertvalue { i16, i16 } undef, i16 %i.2, 0
  %269 = insertvalue { i16, i16 } %268, i16 %k.2, 1
  ret { i16, i16 } %269

panic:                                            ; preds = %_ZN4core3num7flt2dec8strategy6dragon15div_rem_upto_1617haf525d19dbb221baE.exit
; call core::panicking::panic_bounds_check
  call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %buf.1, i16 %buf.1, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18197 to %"panic::Location"*))
  unreachable

panic1:                                           ; preds = %bb88
; call core::panicking::panic_bounds_check
  call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %197, i16 %buf.1, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18199 to %"panic::Location"*))
  unreachable
}

; core::num::flt2dec::strategy::dragon::format_exact
; Function Attrs: uwtable
define { i16, i16 } @_ZN4core3num7flt2dec8strategy6dragon12format_exact17h8254a82163510597E(%"num::flt2dec::decoder::Decoded"* noalias nocapture readonly align 1 dereferenceable(27) %d, [0 x i8]* nonnull align 1 %buf.0, i16 %buf.1, i16 %limit) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %base.i = alloca [40 x i32], align 1
  %scale8 = alloca %"num::bignum::Big32x40", align 1
  %scale4 = alloca %"num::bignum::Big32x40", align 1
  %scale2 = alloca %"num::bignum::Big32x40", align 1
  %_72 = alloca %"num::bignum::Big32x40", align 1
  %scale = alloca %"num::bignum::Big32x40", align 1
  %mant = alloca %"num::bignum::Big32x40", align 1
  %0 = bitcast %"num::flt2dec::decoder::Decoded"* %d to i64*
  %_6 = load i64, i64* %0, align 1
  %_5 = icmp eq i64 %_6, 0
  br i1 %_5, label %bb2, label %bb1

bb1:                                              ; preds = %start
  %1 = getelementptr inbounds %"num::flt2dec::decoder::Decoded", %"num::flt2dec::decoder::Decoded"* %d, i16 0, i32 3
  %_11 = load i64, i64* %1, align 1
  %_10 = icmp eq i64 %_11, 0
  br i1 %_10, label %bb4, label %bb3

bb2:                                              ; preds = %start
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [28 x i8] }>* @alloc18265 to [0 x i8]*), i16 28, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18202 to %"panic::Location"*))
  unreachable

bb3:                                              ; preds = %bb1
  %2 = getelementptr inbounds %"num::flt2dec::decoder::Decoded", %"num::flt2dec::decoder::Decoded"* %d, i16 0, i32 5
  %_16 = load i64, i64* %2, align 1
  %_15 = icmp eq i64 %_16, 0
  br i1 %_15, label %bb6, label %bb5

bb4:                                              ; preds = %bb1
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [29 x i8] }>* @alloc18230 to [0 x i8]*), i16 29, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18205 to %"panic::Location"*))
  unreachable

bb5:                                              ; preds = %bb3
  %3 = tail call addrspace(1) { i64, i1 } @llvm.uadd.with.overflow.i64(i64 %_6, i64 %_16) #20
  %4 = extractvalue { i64, i1 } %3, 1
  br i1 %4, label %bb10, label %bb9

bb6:                                              ; preds = %bb3
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [28 x i8] }>* @alloc18233 to [0 x i8]*), i16 28, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18208 to %"panic::Location"*))
  unreachable

bb9:                                              ; preds = %bb5
  %5 = tail call addrspace(1) { i64, i1 } @llvm.usub.with.overflow.i64(i64 %_6, i64 %_11) #20
  %6 = extractvalue { i64, i1 } %5, 1
  br i1 %6, label %bb14, label %bb13

bb10:                                             ; preds = %bb5
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [54 x i8] }>* @alloc18236 to [0 x i8]*), i16 54, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18211 to %"panic::Location"*))
  unreachable

bb13:                                             ; preds = %bb9
  %7 = getelementptr inbounds %"num::flt2dec::decoder::Decoded", %"num::flt2dec::decoder::Decoded"* %d, i16 0, i32 7
  %_37 = load i16, i16* %7, align 1
  %_6.i = add i64 %_6, -1
  %8 = tail call addrspace(1) i64 @llvm.ctlz.i64(i64 %_6.i, i1 false) #20, !range !122
  %nbits.i = sub nuw nsw i64 64, %8
  %_12.i = sext i16 %_37 to i64
  %_10.i = add nsw i64 %nbits.i, %_12.i
  %_9.i = mul nsw i64 %_10.i, 1292913986
  %9 = lshr i64 %_9.i, 32
  %10 = trunc i64 %9 to i16
  %11 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %mant, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 162, i8* nonnull %11)
  %12 = bitcast [40 x i32]* %base.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 160, i8* nonnull %12), !noalias !352
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(160) %12, i8 0, i16 160, i1 false), !noalias !352
  br label %bb3.i

bb3.i:                                            ; preds = %bb13, %bb4.i
  %v.012.i = phi i64 [ %15, %bb4.i ], [ %_6, %bb13 ]
  %sz.011.i = phi i16 [ %16, %bb4.i ], [ 0, %bb13 ]
  %_9.i61 = icmp ult i16 %sz.011.i, 40
  br i1 %_9.i61, label %bb4.i, label %panic.i, !prof !4, !misexpect !5

bb4.i:                                            ; preds = %bb3.i
  %13 = getelementptr inbounds [40 x i32], [40 x i32]* %base.i, i16 0, i16 %sz.011.i
  %14 = trunc i64 %v.012.i to i32
  store i32 %14, i32* %13, align 1, !noalias !352
  %15 = lshr i64 %v.012.i, 32
  %16 = add nuw nsw i16 %sz.011.i, 1
  %_4.i62 = icmp eq i64 %15, 0
  br i1 %_4.i62, label %_ZN4core3num6bignum8Big32x408from_u6417ha925c6f2f34e00d9E.exit, label %bb3.i

panic.i:                                          ; preds = %bb3.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 40, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*)), !noalias !352
  unreachable

_ZN4core3num6bignum8Big32x408from_u6417ha925c6f2f34e00d9E.exit: ; preds = %bb4.i
  %17 = bitcast %"num::bignum::Big32x40"* %mant to i16*
  store i16 %16, i16* %17, align 1, !alias.scope !352
  %18 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %mant, i16 0, i32 3
  %19 = bitcast [40 x i32]* %18 to i8*
  call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 dereferenceable(160) %19, i8* nonnull align 1 dereferenceable(160) %12, i16 160, i1 false)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 160, i8* nonnull %12), !noalias !352
  %20 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 162, i8* nonnull %20)
  %21 = bitcast %"num::bignum::Big32x40"* %scale to i16*
  store i16 1, i16* %21, align 1, !alias.scope !355
  %_5.sroa.0.0..sroa_idx.i = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale, i16 0, i32 3, i16 0
  store i32 1, i32* %_5.sroa.0.0..sroa_idx.i, align 1, !alias.scope !355
  %_5.sroa.4.0..sroa_idx.i = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale, i16 0, i32 3, i16 1
  %_5.sroa.4.0..sroa_cast13.i = bitcast i32* %_5.sroa.4.0..sroa_idx.i to i8*
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(156) %_5.sroa.4.0..sroa_cast13.i, i8 0, i16 156, i1 false) #20, !alias.scope !355
  %_41 = icmp slt i16 %_37, 0
  br i1 %_41, label %bb19, label %bb18

bb14:                                             ; preds = %bb9
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [55 x i8] }>* @alloc18239 to [0 x i8]*), i16 55, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18214 to %"panic::Location"*))
  unreachable

bb18:                                             ; preds = %_ZN4core3num6bignum8Big32x408from_u6417ha925c6f2f34e00d9E.exit
; call core::num::bignum::Big32x40::mul_pow2
  %_48 = call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x408mul_pow217h0cff03c1c9e177a8E(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %mant, i16 %_37)
  br label %bb22

bb19:                                             ; preds = %_ZN4core3num6bignum8Big32x408from_u6417ha925c6f2f34e00d9E.exit
  %_46 = sub i16 0, %_37
; call core::num::bignum::Big32x40::mul_pow2
  %_43 = call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x408mul_pow217h0cff03c1c9e177a8E(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %scale, i16 %_46)
  br label %bb22

bb22:                                             ; preds = %bb18, %bb19
  %_52 = icmp sgt i16 %10, -1
  br i1 %_52, label %bb24, label %bb23

bb23:                                             ; preds = %bb22
  %_63 = sub i16 0, %10
; call core::num::flt2dec::strategy::dragon::mul_pow10
  %_59 = call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num7flt2dec8strategy6dragon9mul_pow1017hf3e5382c315238dfE(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %mant, i16 %_63)
  br label %bb27

bb24:                                             ; preds = %bb22
; call core::num::flt2dec::strategy::dragon::mul_pow10
  %_54 = call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num7flt2dec8strategy6dragon9mul_pow1017hf3e5382c315238dfE(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %scale, i16 %10)
  br label %bb27

bb27:                                             ; preds = %bb23, %bb24
  %22 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %_72, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 162, i8* nonnull %22)
  %_2.i = load i16, i16* %21, align 1, !alias.scope !358, !noalias !361
  %23 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale, i16 0, i32 3
  %24 = bitcast [40 x i32]* %23 to i8*
  %25 = bitcast %"num::bignum::Big32x40"* %_72 to i16*
  store i16 %_2.i, i16* %25, align 1, !alias.scope !361, !noalias !358
  %26 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %_72, i16 0, i32 3
  %27 = bitcast [40 x i32]* %26 to i8*
  call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 dereferenceable(160) %27, i8* nonnull align 1 dereferenceable(160) %24, i16 160, i1 false) #20, !alias.scope !363
  %_929.i = icmp ugt i16 %buf.1, 9
  br i1 %_929.i, label %bb1.i.lr.ph.i, label %bb7.i92

bb1.i.lr.ph.i:                                    ; preds = %bb27
  %28 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %_72, i16 0, i32 3, i16 0
  %_9.i.i.i.i.i629 = icmp ugt i16 %_2.i, 40
  br i1 %_9.i.i.i.i.i629, label %bb5.i.i.i.i.i, label %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i.i"

bb5.i.i.i.i.i:                                    ; preds = %_ZN4core3num6bignum8Big32x4013div_rem_small17h11770f9624b0c09fE.exit.i.bb1.i.i_crit_edge, %bb1.i.lr.ph.i
  %sz.i.i.lcssa = phi i16 [ %_2.i, %bb1.i.lr.ph.i ], [ %sz.i.i.pre, %_ZN4core3num6bignum8Big32x4013div_rem_small17h11770f9624b0c09fE.exit.i.bb1.i.i_crit_edge ]
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %sz.i.i.lcssa, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i.i": ; preds = %bb1.i.lr.ph.i, %_ZN4core3num6bignum8Big32x4013div_rem_small17h11770f9624b0c09fE.exit.i.bb1.i.i_crit_edge
  %n.030.i631 = phi i16 [ %33, %_ZN4core3num6bignum8Big32x4013div_rem_small17h11770f9624b0c09fE.exit.i.bb1.i.i_crit_edge ], [ %buf.1, %bb1.i.lr.ph.i ]
  %sz.i.i630 = phi i16 [ %sz.i.i.pre, %_ZN4core3num6bignum8Big32x4013div_rem_small17h11770f9624b0c09fE.exit.i.bb1.i.i_crit_edge ], [ %_2.i, %bb1.i.lr.ph.i ]
  %_13.i.i10.i.i = icmp eq i16 %sz.i.i630, 0
  br i1 %_13.i.i10.i.i, label %_ZN4core3num6bignum8Big32x4013div_rem_small17h11770f9624b0c09fE.exit.i, label %"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit.lr.ph.i.i"

"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit.lr.ph.i.i": ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i.i"
  %29 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %_72, i16 0, i32 3, i16 %sz.i.i630
  br label %"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit.i.i"

"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit.i.i": ; preds = %"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit.i.i", %"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit.lr.ph.i.i"
  %borrow.011.i.i = phi i32 [ 0, %"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit.lr.ph.i.i" ], [ %_20.i.i.i, %"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit.i.i" ]
  %30 = phi i32* [ %29, %"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit.lr.ph.i.i" ], [ %31, %"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit.i.i" ]
  %31 = getelementptr inbounds i32, i32* %30, i16 -1
  %_31.i.i = load i32, i32* %31, align 1
  %_8.i.i.i = zext i32 %borrow.011.i.i to i64
  %_7.i.i.i = shl nuw i64 %_8.i.i.i, 32
  %_11.i.i.i = zext i32 %_31.i.i to i64
  %lhs.i.i.i = or i64 %_7.i.i.i, %_11.i.i.i
  %_16.i.i.i = udiv i64 %lhs.i.i.i, 1000000000
  %_15.i.i.i = trunc i64 %_16.i.i.i to i32
  %32 = mul i64 %_16.i.i.i, 1000000000
  %_21.i.i.i.decomposed = sub i64 %lhs.i.i.i, %32
  %_20.i.i.i = trunc i64 %_21.i.i.i.decomposed to i32
  store i32 %_15.i.i.i, i32* %31, align 1
  %_13.i.i.i.i = icmp eq i32* %28, %31
  br i1 %_13.i.i.i.i, label %_ZN4core3num6bignum8Big32x4013div_rem_small17h11770f9624b0c09fE.exit.i, label %"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit.i.i"

_ZN4core3num6bignum8Big32x4013div_rem_small17h11770f9624b0c09fE.exit.i: ; preds = %"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit.i.i", %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i.i"
  %33 = add i16 %n.030.i631, -9
  %_9.i91 = icmp ugt i16 %33, 9
  br i1 %_9.i91, label %_ZN4core3num6bignum8Big32x4013div_rem_small17h11770f9624b0c09fE.exit.i.bb1.i.i_crit_edge, label %bb7.i92

_ZN4core3num6bignum8Big32x4013div_rem_small17h11770f9624b0c09fE.exit.i.bb1.i.i_crit_edge: ; preds = %_ZN4core3num6bignum8Big32x4013div_rem_small17h11770f9624b0c09fE.exit.i
  %sz.i.i.pre = load i16, i16* %25, align 1
  %_9.i.i.i.i.i = icmp ugt i16 %sz.i.i.pre, 40
  br i1 %_9.i.i.i.i.i, label %bb5.i.i.i.i.i, label %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i.i"

bb7.i92:                                          ; preds = %_ZN4core3num6bignum8Big32x4013div_rem_small17h11770f9624b0c09fE.exit.i, %bb27
  %n.0.lcssa.i = phi i16 [ %buf.1, %bb27 ], [ %33, %_ZN4core3num6bignum8Big32x4013div_rem_small17h11770f9624b0c09fE.exit.i ]
  %34 = getelementptr inbounds [10 x i32], [10 x i32]* bitcast (<{ [40 x i8] }>* @_ZN4core3num7flt2dec8strategy6dragon8TWOPOW1017h0d6ae407fa6ef985E to [10 x i32]*), i16 0, i16 %n.0.lcssa.i
  %_22.i = load i32, i32* %34, align 1
  %_4.i4.i = icmp eq i32 %_22.i, 0
  br i1 %_4.i4.i, label %bb2.i13.i, label %bb1.i7.i

bb1.i7.i:                                         ; preds = %bb7.i92
  %sz.i5.i = load i16, i16* %25, align 1
  %_9.i.i.i.i6.i = icmp ugt i16 %sz.i5.i, 40
  br i1 %_9.i.i.i.i6.i, label %bb5.i.i.i.i8.i, label %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i10.i"

bb5.i.i.i.i8.i:                                   ; preds = %bb1.i7.i
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %sz.i5.i, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i10.i": ; preds = %bb1.i7.i
  %35 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %_72, i16 0, i32 3, i16 0
  %_13.i.i10.i9.i = icmp eq i16 %sz.i5.i, 0
  br i1 %_13.i.i10.i9.i, label %_ZN4core3num7flt2dec8strategy6dragon10div_2pow1017h8ebe524dc4090f47E.exit, label %"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit.lr.ph.i12.i"

"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit.lr.ph.i12.i": ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i10.i"
  %36 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %_72, i16 0, i32 3, i16 %sz.i5.i
  %rhs.i.i11.i = zext i32 %_22.i to i64
  br label %"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit.i26.i"

bb2.i13.i:                                        ; preds = %bb7.i92
; call core::panicking::panic
  call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [27 x i8] }>* @alloc18924 to [0 x i8]*), i16 27, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit.i26.i": ; preds = %"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit.i26.i", %"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit.lr.ph.i12.i"
  %borrow.011.i15.i = phi i32 [ 0, %"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit.lr.ph.i12.i" ], [ %_20.i.i24.i, %"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit.i26.i" ]
  %37 = phi i32* [ %36, %"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit.lr.ph.i12.i" ], [ %38, %"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit.i26.i" ]
  %38 = getelementptr inbounds i32, i32* %37, i16 -1
  %_31.i16.i = load i32, i32* %38, align 1
  %_8.i.i17.i = zext i32 %borrow.011.i15.i to i64
  %_7.i.i18.i = shl nuw i64 %_8.i.i17.i, 32
  %_11.i.i19.i = zext i32 %_31.i16.i to i64
  %lhs.i.i20.i = or i64 %_7.i.i18.i, %_11.i.i19.i
  %_16.i.i21.i = udiv i64 %lhs.i.i20.i, %rhs.i.i11.i
  %_15.i.i22.i = trunc i64 %_16.i.i21.i to i32
  %39 = mul i64 %_16.i.i21.i, %rhs.i.i11.i
  %_21.i.i23.i.decomposed = sub i64 %lhs.i.i20.i, %39
  %_20.i.i24.i = trunc i64 %_21.i.i23.i.decomposed to i32
  store i32 %_15.i.i22.i, i32* %38, align 1
  %_13.i.i.i25.i = icmp eq i32* %35, %38
  br i1 %_13.i.i.i25.i, label %_ZN4core3num7flt2dec8strategy6dragon10div_2pow1017h8ebe524dc4090f47E.exit.loopexit, label %"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit.i26.i"

_ZN4core3num7flt2dec8strategy6dragon10div_2pow1017h8ebe524dc4090f47E.exit.loopexit: ; preds = %"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit.i26.i"
  %_5.i93.pre = load i16, i16* %25, align 1, !noalias !364
  br label %_ZN4core3num7flt2dec8strategy6dragon10div_2pow1017h8ebe524dc4090f47E.exit

_ZN4core3num7flt2dec8strategy6dragon10div_2pow1017h8ebe524dc4090f47E.exit: ; preds = %_ZN4core3num7flt2dec8strategy6dragon10div_2pow1017h8ebe524dc4090f47E.exit.loopexit, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i10.i"
  %_5.i93 = phi i16 [ %_5.i93.pre, %_ZN4core3num7flt2dec8strategy6dragon10div_2pow1017h8ebe524dc4090f47E.exit.loopexit ], [ 0, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i10.i" ]
  %_6.i94 = load i16, i16* %17, align 1, !alias.scope !364
  %40 = icmp ugt i16 %_5.i93, %_6.i94
  %.0.sroa.speculated.i.i.i.i95 = select i1 %40, i16 %_5.i93, i16 %_6.i94
  %_9.i.i.i.i96 = icmp ugt i16 %.0.sroa.speculated.i.i.i.i95, 40
  br i1 %_9.i.i.i.i96, label %bb5.i.i.i.i97, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i98"

bb5.i.i.i.i97:                                    ; preds = %_ZN4core3num7flt2dec8strategy6dragon10div_2pow1017h8ebe524dc4090f47E.exit
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.0.sroa.speculated.i.i.i.i95, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*)), !noalias !364
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i98": ; preds = %_ZN4core3num7flt2dec8strategy6dragon10div_2pow1017h8ebe524dc4090f47E.exit
  %_2.i.i39.i = icmp eq i16 %.0.sroa.speculated.i.i.i.i95, 0
  br i1 %_2.i.i39.i, label %_ZN4core3num6bignum8Big32x403add17hc5fc99826d0d9f42E.exit, label %bb11.i99

bb9.i:                                            ; preds = %bb11.i99
  br i1 %brmerge.i.i, label %bb14.i, label %_ZN4core3num6bignum8Big32x403add17hc5fc99826d0d9f42E.exit

bb11.i99:                                         ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i98", %bb11.i99
  %carry.041.i = phi i8 [ %_15.0.i.i, %bb11.i99 ], [ 0, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i98" ]
  %iter.sroa.8.040.i = phi i16 [ %41, %bb11.i99 ], [ 0, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i98" ]
  %41 = add nuw nsw i16 %iter.sroa.8.040.i, 1
  %42 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %_72, i16 0, i32 3, i16 %iter.sroa.8.040.i
  %43 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %mant, i16 0, i32 3, i16 %iter.sroa.8.040.i
  %_36.i = load i32, i32* %42, align 1, !noalias !364
  %_37.i = load i32, i32* %43, align 1, !alias.scope !364
  %44 = call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %_36.i, i32 %_37.i) #20
  %45 = extractvalue { i32, i1 } %44, 0
  %46 = extractvalue { i32, i1 } %44, 1
  %47 = zext i8 %carry.041.i to i32
  %48 = call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %45, i32 %47) #20
  %49 = extractvalue { i32, i1 } %48, 0
  %50 = extractvalue { i32, i1 } %48, 1
  %brmerge.i.i = or i1 %46, %50
  %_15.0.i.i = zext i1 %brmerge.i.i to i8
  store i32 %49, i32* %42, align 1, !noalias !364
  %_2.i.i.i = icmp ult i16 %41, %.0.sroa.speculated.i.i.i.i95
  br i1 %_2.i.i.i, label %bb11.i99, label %bb9.i

bb14.i:                                           ; preds = %bb9.i
  %_44.i = icmp ult i16 %.0.sroa.speculated.i.i.i.i95, 40
  br i1 %_44.i, label %bb15.i, label %panic.i101, !prof !4, !misexpect !5

bb15.i:                                           ; preds = %bb14.i
  %51 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %_72, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i95
  store i32 1, i32* %51, align 1, !noalias !364
  %52 = add nuw nsw i16 %.0.sroa.speculated.i.i.i.i95, 1
  br label %_ZN4core3num6bignum8Big32x403add17hc5fc99826d0d9f42E.exit

panic.i101:                                       ; preds = %bb14.i
; call core::panicking::panic_bounds_check
  call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %.0.sroa.speculated.i.i.i.i95, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*)), !noalias !364
  unreachable

_ZN4core3num6bignum8Big32x403add17hc5fc99826d0d9f42E.exit: ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i98", %bb9.i, %bb15.i
  %sz.0.i100 = phi i16 [ %52, %bb15.i ], [ %.0.sroa.speculated.i.i.i.i95, %bb9.i ], [ 0, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i98" ]
  store i16 %sz.0.i100, i16* %25, align 1, !noalias !364
  %_5.i.i.i = load i16, i16* %21, align 1, !alias.scope !367, !noalias !374
  %53 = icmp ugt i16 %sz.0.i100, %_5.i.i.i
  %.0.sroa.speculated.i.i.i.i.i.i = select i1 %53, i16 %sz.0.i100, i16 %_5.i.i.i
  %_8.i.i.i3.i.i.i = icmp ugt i16 %.0.sroa.speculated.i.i.i.i.i.i, 40
  br i1 %_8.i.i.i3.i.i.i, label %bb5.i.i.i4.i.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i"

bb5.i.i.i4.i.i.i:                                 ; preds = %_ZN4core3num6bignum8Big32x403add17hc5fc99826d0d9f42E.exit
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.0.sroa.speculated.i.i.i.i.i.i, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i": ; preds = %_ZN4core3num6bignum8Big32x403add17hc5fc99826d0d9f42E.exit
  %54 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %_72, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i.i.i
  %55 = bitcast i32* %54 to i8*
  %56 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i.i.i
  %57 = bitcast i32* %56 to i8*
  br label %bb5.i.i.i.i.i103

bb5.i.i.i.i.i103:                                 ; preds = %bb32.i.i.i.i.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i"
  %self.sroa.2.0.i.i.i.i.i = phi i8* [ %55, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i" ], [ %58, %bb32.i.i.i.i.i ]
  %other.sroa.5.0.i.i.i.i.i = phi i8* [ %57, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i" ], [ %60, %bb32.i.i.i.i.i ]
  %_13.i.i.i51.i.i.i.i.i = icmp eq i8* %self.sroa.2.0.i.i.i.i.i, %27
  br i1 %_13.i.i.i51.i.i.i.i.i, label %bb10.i.i.i.i.i, label %bb32.i.i.i.i.i

bb10.i.i.i.i.i:                                   ; preds = %bb5.i.i.i.i.i103
  %_13.i.i.i.i.i.i.i.i = icmp ne i8* %other.sroa.5.0.i.i.i.i.i, %24
  %spec.select.i.i.i.i.i = sext i1 %_13.i.i.i.i.i.i.i.i to i8
  br label %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit

bb32.i.i.i.i.i:                                   ; preds = %bb5.i.i.i.i.i103
  %58 = getelementptr inbounds i8, i8* %self.sroa.2.0.i.i.i.i.i, i16 -4
  %59 = bitcast i8* %58 to i32*
  %.val.i.i.i.i52.i.i.i.i.i = load i32, i32* %59, align 1, !alias.scope !378, !noalias !367
  %60 = getelementptr inbounds i8, i8* %other.sroa.5.0.i.i.i.i.i, i16 -4
  %61 = bitcast i8* %60 to i32*
  %.val.i.i.i.i44.i.i.i.i.i = load i32, i32* %61, align 1, !alias.scope !383, !noalias !374
  %_3.i.i.i.i.i.i.i = icmp ult i32 %.val.i.i.i.i52.i.i.i.i.i, %.val.i.i.i.i44.i.i.i.i.i
  %_6.i.i.i.i.i.i.i = icmp ne i32 %.val.i.i.i.i52.i.i.i.i.i, %.val.i.i.i.i44.i.i.i.i.i
  %..i.i.i.i.i.i.i = zext i1 %_6.i.i.i.i.i.i.i to i8
  %.0.i.i.i.i.i.i.i = select i1 %_3.i.i.i.i.i.i.i, i8 -1, i8 %..i.i.i.i.i.i.i
  %62 = icmp eq i8 %.0.i.i.i.i.i.i.i, 0
  br i1 %62, label %bb5.i.i.i.i.i103, label %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit

_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit: ; preds = %bb32.i.i.i.i.i, %bb10.i.i.i.i.i
  %63 = phi i8 [ %spec.select.i.i.i.i.i, %bb10.i.i.i.i.i ], [ %.0.i.i.i.i.i.i.i, %bb32.i.i.i.i.i ]
  %switch.i = icmp ult i8 %63, 2
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 162, i8* nonnull %22)
  br i1 %switch.i, label %bb34, label %bb33

bb33:                                             ; preds = %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit
  %_9.i.i.i.i104 = icmp ugt i16 %_6.i94, 40
  br i1 %_9.i.i.i.i104, label %bb5.i.i.i.i105, label %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i108"

bb5.i.i.i.i105:                                   ; preds = %bb33
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %_6.i94, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i108": ; preds = %bb33
  %64 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %mant, i16 0, i32 3, i16 %_6.i94
  %65 = getelementptr [40 x i32], [40 x i32]* %18, i16 0, i16 0
  %_13.i16.i107 = icmp eq i32* %64, %65
  br i1 %_13.i16.i107, label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit129, label %bb7.i123

bb5.i111:                                         ; preds = %bb7.i123
  %_30.i110 = icmp eq i32 %_14.i.i120, 0
  br i1 %_30.i110, label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit129, label %bb10.i125

bb7.i123:                                         ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i108", %bb7.i123
  %carry.018.i112 = phi i32 [ %_14.i.i120, %bb7.i123 ], [ 0, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i108" ]
  %iter.sroa.0.017.i113 = phi i8* [ %66, %bb7.i123 ], [ %19, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i108" ]
  %66 = getelementptr inbounds i8, i8* %iter.sroa.0.017.i113, i16 4
  %67 = bitcast i8* %iter.sroa.0.017.i113 to i32*
  %_25.i114 = load i32, i32* %67, align 1
  %_8.i.i115 = zext i32 %_25.i114 to i64
  %_7.i.i116 = mul nuw nsw i64 %_8.i.i115, 10
  %_12.i11.i117 = zext i32 %carry.018.i112 to i64
  %v.i.i118 = add nuw nsw i64 %_7.i.i116, %_12.i11.i117
  %_15.i.i119 = lshr i64 %v.i.i118, 32
  %_14.i.i120 = trunc i64 %_15.i.i119 to i32
  %_18.i.i121 = trunc i64 %v.i.i118 to i32
  store i32 %_18.i.i121, i32* %67, align 1
  %68 = bitcast i8* %66 to i32*
  %_13.i.i122 = icmp eq i32* %64, %68
  br i1 %_13.i.i122, label %bb5.i111, label %bb7.i123

bb10.i125:                                        ; preds = %bb5.i111
  %_35.i124 = icmp ult i16 %_6.i94, 40
  br i1 %_35.i124, label %bb11.i126, label %panic.i128, !prof !4, !misexpect !5

bb11.i126:                                        ; preds = %bb10.i125
  store i32 %_14.i.i120, i32* %64, align 1
  %69 = add nuw nsw i16 %_6.i94, 1
  br label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit129

panic.i128:                                       ; preds = %bb10.i125
; call core::panicking::panic_bounds_check
  call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_6.i94, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit129: ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i108", %bb5.i111, %bb11.i126
  %sz.0.i127 = phi i16 [ %69, %bb11.i126 ], [ %_6.i94, %bb5.i111 ], [ %_6.i94, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i108" ]
  store i16 %sz.0.i127, i16* %17, align 1
  br label %bb36

bb34:                                             ; preds = %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit
  %70 = add i16 %10, 1
  br label %bb36

bb36:                                             ; preds = %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit129, %bb34
  %k.0 = phi i16 [ %70, %bb34 ], [ %10, %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit129 ]
  %_82 = icmp slt i16 %k.0, %limit
  br i1 %_82, label %bb92, label %bb37

bb37:                                             ; preds = %bb36
  %_87 = sub i16 %k.0, %limit
  %_85 = icmp ult i16 %_87, %buf.1
  %spec.select = select i1 %_85, i16 %_87, i16 %buf.1
  %_98 = icmp eq i16 %spec.select, 0
  br i1 %_98, label %bb92, label %bb58.lr.ph

bb58.lr.ph:                                       ; preds = %bb37
  %71 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale2, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 162, i8* nonnull %71)
  %72 = bitcast %"num::bignum::Big32x40"* %scale2 to i16*
  store i16 %_5.i.i.i, i16* %72, align 1, !alias.scope !388, !noalias !391
  %73 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale2, i16 0, i32 3
  %74 = bitcast [40 x i32]* %73 to i8*
  call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 dereferenceable(160) %74, i8* nonnull align 1 dereferenceable(160) %24, i16 160, i1 false) #20, !alias.scope !393
; call core::num::bignum::Big32x40::mul_pow2
  %_102 = call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x408mul_pow217h0cff03c1c9e177a8E(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %scale2, i16 1)
  %75 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale4, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 162, i8* nonnull %75)
  %_2.i131 = load i16, i16* %21, align 1, !alias.scope !394, !noalias !397
  %76 = bitcast %"num::bignum::Big32x40"* %scale4 to i16*
  store i16 %_2.i131, i16* %76, align 1, !alias.scope !397, !noalias !394
  %77 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale4, i16 0, i32 3
  %78 = bitcast [40 x i32]* %77 to i8*
  call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 dereferenceable(160) %78, i8* nonnull align 1 dereferenceable(160) %24, i16 160, i1 false) #20, !alias.scope !399
; call core::num::bignum::Big32x40::mul_pow2
  %_106 = call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x408mul_pow217h0cff03c1c9e177a8E(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %scale4, i16 2)
  %79 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale8, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 162, i8* nonnull %79)
  %_2.i132 = load i16, i16* %21, align 1, !alias.scope !400, !noalias !403
  %80 = bitcast %"num::bignum::Big32x40"* %scale8 to i16*
  store i16 %_2.i132, i16* %80, align 1, !alias.scope !403, !noalias !400
  %81 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale8, i16 0, i32 3
  %82 = bitcast [40 x i32]* %81 to i8*
  call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 dereferenceable(160) %82, i8* nonnull align 1 dereferenceable(160) %24, i16 160, i1 false) #20, !alias.scope !405
; call core::num::bignum::Big32x40::mul_pow2
  %_110 = call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x408mul_pow217h0cff03c1c9e177a8E(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %scale8, i16 3)
  %83 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %mant, i16 0, i32 3, i16 0
  %_5.i.i.i153 = load i16, i16* %80, align 1
  %_5.i.i.i224 = load i16, i16* %76, align 1
  %_5.i.i.i267 = load i16, i16* %72, align 1
  %_5.i.i.i181 = load i16, i16* %21, align 1
  %84 = getelementptr [40 x i32], [40 x i32]* %18, i16 0, i16 0
  %_6.i.i.pre = load i16, i16* %17, align 1, !alias.scope !406
  br label %bb58

bb56:                                             ; preds = %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit90
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 162, i8* nonnull %79)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 162, i8* nonnull %75)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 162, i8* nonnull %71)
  br label %bb92

bb58:                                             ; preds = %bb58.lr.ph, %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit90
  %_6.i.i = phi i16 [ %_6.i.i.pre, %bb58.lr.ph ], [ %sz.0.i88, %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit90 ]
  %iter.sroa.0.0396 = phi i16 [ 0, %bb58.lr.ph ], [ %85, %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit90 ]
  %85 = add nuw i16 %iter.sroa.0.0396, 1
  %_8.i.i.i.i.i = icmp ugt i16 %_6.i.i, 40
  br i1 %_8.i.i.i.i.i, label %bb5.i.i.i.i.i150, label %_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E.exit.i

bb5.i.i.i.i.i150:                                 ; preds = %bb58
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %_6.i.i, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E.exit.i: ; preds = %bb58
  %86 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %mant, i16 0, i32 3, i16 %_6.i.i
  br label %bb1.i.i151

bb1.i.i151:                                       ; preds = %bb6.i.i, %_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E.exit.i
  %_62.i.i.i = phi i32* [ %87, %bb6.i.i ], [ %83, %_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E.exit.i ]
  %_13.i.i.i = icmp eq i32* %_62.i.i.i, %86
  br i1 %_13.i.i.i, label %bb61, label %bb6.i.i

bb6.i.i:                                          ; preds = %bb1.i.i151
  %87 = getelementptr inbounds i32, i32* %_62.i.i.i, i16 1
  %.val.i.i = load i32, i32* %_62.i.i.i, align 1, !alias.scope !411
  %88 = icmp eq i32 %.val.i.i, 0
  br i1 %88, label %bb1.i.i151, label %bb60

bb60:                                             ; preds = %bb6.i.i
  %89 = icmp ugt i16 %_6.i.i, %_5.i.i.i153
  %.0.sroa.speculated.i.i.i.i.i.i154 = select i1 %89, i16 %_6.i.i, i16 %_5.i.i.i153
  %_8.i.i.i3.i.i.i155 = icmp ugt i16 %.0.sroa.speculated.i.i.i.i.i.i154, 40
  br i1 %_8.i.i.i3.i.i.i155, label %bb5.i.i.i4.i.i.i156, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i159"

bb5.i.i.i4.i.i.i156:                              ; preds = %bb60
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.0.sroa.speculated.i.i.i.i.i.i154, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i159": ; preds = %bb60
  %90 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %mant, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i.i.i154
  %91 = bitcast i32* %90 to i8*
  %92 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale8, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i.i.i154
  %93 = bitcast i32* %92 to i8*
  br label %bb5.i.i.i.i.i163

bb5.i.i.i.i.i163:                                 ; preds = %bb32.i.i.i.i.i173, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i159"
  %self.sroa.2.0.i.i.i.i.i160 = phi i8* [ %91, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i159" ], [ %94, %bb32.i.i.i.i.i173 ]
  %other.sroa.5.0.i.i.i.i.i161 = phi i8* [ %93, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i159" ], [ %96, %bb32.i.i.i.i.i173 ]
  %_13.i.i.i51.i.i.i.i.i162 = icmp eq i8* %self.sroa.2.0.i.i.i.i.i160, %19
  br i1 %_13.i.i.i51.i.i.i.i.i162, label %bb10.i.i.i.i.i166, label %bb32.i.i.i.i.i173

bb10.i.i.i.i.i166:                                ; preds = %bb5.i.i.i.i.i163
  %_13.i.i.i.i.i.i.i.i164 = icmp ne i8* %other.sroa.5.0.i.i.i.i.i161, %82
  %spec.select.i.i.i.i.i165 = sext i1 %_13.i.i.i.i.i.i.i.i164 to i8
  br label %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit175

bb32.i.i.i.i.i173:                                ; preds = %bb5.i.i.i.i.i163
  %94 = getelementptr inbounds i8, i8* %self.sroa.2.0.i.i.i.i.i160, i16 -4
  %95 = bitcast i8* %94 to i32*
  %.val.i.i.i.i52.i.i.i.i.i167 = load i32, i32* %95, align 1, !alias.scope !412, !noalias !423
  %96 = getelementptr inbounds i8, i8* %other.sroa.5.0.i.i.i.i.i161, i16 -4
  %97 = bitcast i8* %96 to i32*
  %.val.i.i.i.i44.i.i.i.i.i168 = load i32, i32* %97, align 1, !alias.scope !427, !noalias !432
  %_3.i.i.i.i.i.i.i169 = icmp ult i32 %.val.i.i.i.i52.i.i.i.i.i167, %.val.i.i.i.i44.i.i.i.i.i168
  %_6.i.i.i.i.i.i.i170 = icmp ne i32 %.val.i.i.i.i52.i.i.i.i.i167, %.val.i.i.i.i44.i.i.i.i.i168
  %..i.i.i.i.i.i.i171 = zext i1 %_6.i.i.i.i.i.i.i170 to i8
  %.0.i.i.i.i.i.i.i172 = select i1 %_3.i.i.i.i.i.i.i169, i8 -1, i8 %..i.i.i.i.i.i.i171
  %98 = icmp eq i8 %.0.i.i.i.i.i.i.i172, 0
  br i1 %98, label %bb5.i.i.i.i.i163, label %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit175

_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit175: ; preds = %bb32.i.i.i.i.i173, %bb10.i.i.i.i.i166
  %99 = phi i8 [ %spec.select.i.i.i.i.i165, %bb10.i.i.i.i.i166 ], [ %.0.i.i.i.i.i.i.i172, %bb32.i.i.i.i.i173 ]
  %switch.i174 = icmp ult i8 %99, 2
  br i1 %switch.i174, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i210", label %bb74

bb61:                                             ; preds = %bb1.i.i151
  %_4.i.i = icmp ult i16 %spec.select, %iter.sroa.0.0396
  br i1 %_4.i.i, label %bb2.i.i, label %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h9ac7776fb29fe6efE.exit"

bb2.i.i:                                          ; preds = %bb61
; call core::slice::slice_index_order_fail
  call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %iter.sroa.0.0396, i16 %spec.select, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18216 to %"panic::Location"*))
  unreachable

"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h9ac7776fb29fe6efE.exit": ; preds = %bb61
  %_13.i394 = icmp eq i16 %spec.select, %iter.sroa.0.0396
  br i1 %_13.i394, label %bb66, label %bb68.preheader

bb68.preheader:                                   ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h9ac7776fb29fe6efE.exit"
  %100 = getelementptr [0 x i8], [0 x i8]* %buf.0, i16 0, i16 %iter.sroa.0.0396
  %101 = sub i16 %spec.select, %iter.sroa.0.0396
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* align 1 %100, i8 48, i16 %101, i1 false)
  br label %bb66

bb66:                                             ; preds = %bb68.preheader, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h9ac7776fb29fe6efE.exit"
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 162, i8* nonnull %79)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 162, i8* nonnull %75)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 162, i8* nonnull %71)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 162, i8* nonnull %20)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 162, i8* nonnull %11)
  br label %bb69

bb69:                                             ; preds = %bb125, %bb66
  %.sroa.3.0 = phi i16 [ %k.2, %bb125 ], [ %k.0, %bb66 ]
  %.sroa.0.0 = phi i16 [ %len.3, %bb125 ], [ %spec.select, %bb66 ]
  %102 = insertvalue { i16, i16 } undef, i16 %.sroa.0.0, 0
  %103 = insertvalue { i16, i16 } %102, i16 %.sroa.3.0, 1
  ret { i16, i16 } %103

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i210": ; preds = %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit175
  %_2.i.i34.i209 = icmp eq i16 %.0.sroa.speculated.i.i.i.i.i.i154, 0
  br i1 %_2.i.i34.i209, label %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit222, label %bb11.i220

bb9.i211:                                         ; preds = %bb11.i220
  br i1 %brmerge.i.i217, label %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit222, label %bb14.i221

bb11.i220:                                        ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i210", %bb11.i220
  %noborrow.036.i212 = phi i8 [ %_15.0.i.i218, %bb11.i220 ], [ 1, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i210" ]
  %iter.sroa.8.035.i213 = phi i16 [ %104, %bb11.i220 ], [ 0, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i210" ]
  %104 = add nuw nsw i16 %iter.sroa.8.035.i213, 1
  %105 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %mant, i16 0, i32 3, i16 %iter.sroa.8.035.i213
  %106 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale8, i16 0, i32 3, i16 %iter.sroa.8.035.i213
  %_36.i214 = load i32, i32* %105, align 1, !noalias !433
  %_38.i215 = load i32, i32* %106, align 1, !alias.scope !433
  %_37.i216 = xor i32 %_38.i215, -1
  %107 = call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %_36.i214, i32 %_37.i216) #20
  %108 = extractvalue { i32, i1 } %107, 0
  %109 = extractvalue { i32, i1 } %107, 1
  %110 = zext i8 %noborrow.036.i212 to i32
  %111 = call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %108, i32 %110) #20
  %112 = extractvalue { i32, i1 } %111, 0
  %113 = extractvalue { i32, i1 } %111, 1
  %brmerge.i.i217 = or i1 %109, %113
  %_15.0.i.i218 = zext i1 %brmerge.i.i217 to i8
  store i32 %112, i32* %105, align 1, !noalias !433
  %_2.i.i.i219 = icmp ult i16 %104, %.0.sroa.speculated.i.i.i.i.i.i154
  br i1 %_2.i.i.i219, label %bb11.i220, label %bb9.i211

bb14.i221:                                        ; preds = %bb9.i211
; call core::panicking::panic
  call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [26 x i8] }>* @alloc18922 to [0 x i8]*), i16 26, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*)), !noalias !433
  unreachable

_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit222: ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i210", %bb9.i211
  store i16 %.0.sroa.speculated.i.i.i.i.i.i154, i16* %17, align 1, !noalias !433
  br label %bb74

bb74:                                             ; preds = %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit175, %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit222
  %_4.i.i.i223 = phi i16 [ %.0.sroa.speculated.i.i.i.i.i.i154, %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit222 ], [ %_6.i.i, %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit175 ]
  %d2.0 = phi i8 [ 8, %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit222 ], [ 0, %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit175 ]
  %114 = icmp ugt i16 %_4.i.i.i223, %_5.i.i.i224
  %.0.sroa.speculated.i.i.i.i.i.i225 = select i1 %114, i16 %_4.i.i.i223, i16 %_5.i.i.i224
  %_8.i.i.i3.i.i.i226 = icmp ugt i16 %.0.sroa.speculated.i.i.i.i.i.i225, 40
  br i1 %_8.i.i.i3.i.i.i226, label %bb5.i.i.i4.i.i.i227, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i230"

bb5.i.i.i4.i.i.i227:                              ; preds = %bb74
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.0.sroa.speculated.i.i.i.i.i.i225, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i230": ; preds = %bb74
  %115 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %mant, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i.i.i225
  %116 = bitcast i32* %115 to i8*
  %117 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale4, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i.i.i225
  %118 = bitcast i32* %117 to i8*
  br label %bb5.i.i.i.i.i234

bb5.i.i.i.i.i234:                                 ; preds = %bb32.i.i.i.i.i244, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i230"
  %self.sroa.2.0.i.i.i.i.i231 = phi i8* [ %116, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i230" ], [ %119, %bb32.i.i.i.i.i244 ]
  %other.sroa.5.0.i.i.i.i.i232 = phi i8* [ %118, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i230" ], [ %121, %bb32.i.i.i.i.i244 ]
  %_13.i.i.i51.i.i.i.i.i233 = icmp eq i8* %self.sroa.2.0.i.i.i.i.i231, %19
  br i1 %_13.i.i.i51.i.i.i.i.i233, label %bb10.i.i.i.i.i237, label %bb32.i.i.i.i.i244

bb10.i.i.i.i.i237:                                ; preds = %bb5.i.i.i.i.i234
  %_13.i.i.i.i.i.i.i.i235 = icmp ne i8* %other.sroa.5.0.i.i.i.i.i232, %78
  %spec.select.i.i.i.i.i236 = sext i1 %_13.i.i.i.i.i.i.i.i235 to i8
  br label %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit246

bb32.i.i.i.i.i244:                                ; preds = %bb5.i.i.i.i.i234
  %119 = getelementptr inbounds i8, i8* %self.sroa.2.0.i.i.i.i.i231, i16 -4
  %120 = bitcast i8* %119 to i32*
  %.val.i.i.i.i52.i.i.i.i.i238 = load i32, i32* %120, align 1, !alias.scope !436, !noalias !447
  %121 = getelementptr inbounds i8, i8* %other.sroa.5.0.i.i.i.i.i232, i16 -4
  %122 = bitcast i8* %121 to i32*
  %.val.i.i.i.i44.i.i.i.i.i239 = load i32, i32* %122, align 1, !alias.scope !451, !noalias !456
  %_3.i.i.i.i.i.i.i240 = icmp ult i32 %.val.i.i.i.i52.i.i.i.i.i238, %.val.i.i.i.i44.i.i.i.i.i239
  %_6.i.i.i.i.i.i.i241 = icmp ne i32 %.val.i.i.i.i52.i.i.i.i.i238, %.val.i.i.i.i44.i.i.i.i.i239
  %..i.i.i.i.i.i.i242 = zext i1 %_6.i.i.i.i.i.i.i241 to i8
  %.0.i.i.i.i.i.i.i243 = select i1 %_3.i.i.i.i.i.i.i240, i8 -1, i8 %..i.i.i.i.i.i.i242
  %123 = icmp eq i8 %.0.i.i.i.i.i.i.i243, 0
  br i1 %123, label %bb5.i.i.i.i.i234, label %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit246

_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit246: ; preds = %bb32.i.i.i.i.i244, %bb10.i.i.i.i.i237
  %124 = phi i8 [ %spec.select.i.i.i.i.i236, %bb10.i.i.i.i.i237 ], [ %.0.i.i.i.i.i.i.i243, %bb32.i.i.i.i.i244 ]
  %switch.i245 = icmp ult i8 %124, 2
  br i1 %switch.i245, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i253", label %bb79

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i253": ; preds = %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit246
  %_2.i.i34.i252 = icmp eq i16 %.0.sroa.speculated.i.i.i.i.i.i225, 0
  br i1 %_2.i.i34.i252, label %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit265, label %bb11.i263

bb9.i254:                                         ; preds = %bb11.i263
  br i1 %brmerge.i.i260, label %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit265, label %bb14.i264

bb11.i263:                                        ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i253", %bb11.i263
  %noborrow.036.i255 = phi i8 [ %_15.0.i.i261, %bb11.i263 ], [ 1, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i253" ]
  %iter.sroa.8.035.i256 = phi i16 [ %125, %bb11.i263 ], [ 0, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i253" ]
  %125 = add nuw nsw i16 %iter.sroa.8.035.i256, 1
  %126 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %mant, i16 0, i32 3, i16 %iter.sroa.8.035.i256
  %127 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale4, i16 0, i32 3, i16 %iter.sroa.8.035.i256
  %_36.i257 = load i32, i32* %126, align 1, !noalias !457
  %_38.i258 = load i32, i32* %127, align 1, !alias.scope !457
  %_37.i259 = xor i32 %_38.i258, -1
  %128 = call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %_36.i257, i32 %_37.i259) #20
  %129 = extractvalue { i32, i1 } %128, 0
  %130 = extractvalue { i32, i1 } %128, 1
  %131 = zext i8 %noborrow.036.i255 to i32
  %132 = call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %129, i32 %131) #20
  %133 = extractvalue { i32, i1 } %132, 0
  %134 = extractvalue { i32, i1 } %132, 1
  %brmerge.i.i260 = or i1 %130, %134
  %_15.0.i.i261 = zext i1 %brmerge.i.i260 to i8
  store i32 %133, i32* %126, align 1, !noalias !457
  %_2.i.i.i262 = icmp ult i16 %125, %.0.sroa.speculated.i.i.i.i.i.i225
  br i1 %_2.i.i.i262, label %bb11.i263, label %bb9.i254

bb14.i264:                                        ; preds = %bb9.i254
; call core::panicking::panic
  call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [26 x i8] }>* @alloc18922 to [0 x i8]*), i16 26, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*)), !noalias !457
  unreachable

_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit265: ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i253", %bb9.i254
  store i16 %.0.sroa.speculated.i.i.i.i.i.i225, i16* %17, align 1, !noalias !457
  %135 = or i8 %d2.0, 4
  br label %bb79

bb79:                                             ; preds = %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit246, %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit265
  %_4.i.i.i266 = phi i16 [ %.0.sroa.speculated.i.i.i.i.i.i225, %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit265 ], [ %_4.i.i.i223, %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit246 ]
  %d2.1 = phi i8 [ %135, %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit265 ], [ %d2.0, %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit246 ]
  %136 = icmp ugt i16 %_4.i.i.i266, %_5.i.i.i267
  %.0.sroa.speculated.i.i.i.i.i.i268 = select i1 %136, i16 %_4.i.i.i266, i16 %_5.i.i.i267
  %_8.i.i.i3.i.i.i269 = icmp ugt i16 %.0.sroa.speculated.i.i.i.i.i.i268, 40
  br i1 %_8.i.i.i3.i.i.i269, label %bb5.i.i.i4.i.i.i270, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i273"

bb5.i.i.i4.i.i.i270:                              ; preds = %bb79
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.0.sroa.speculated.i.i.i.i.i.i268, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i273": ; preds = %bb79
  %137 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %mant, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i.i.i268
  %138 = bitcast i32* %137 to i8*
  %139 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale2, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i.i.i268
  %140 = bitcast i32* %139 to i8*
  br label %bb5.i.i.i.i.i277

bb5.i.i.i.i.i277:                                 ; preds = %bb32.i.i.i.i.i287, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i273"
  %self.sroa.2.0.i.i.i.i.i274 = phi i8* [ %138, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i273" ], [ %141, %bb32.i.i.i.i.i287 ]
  %other.sroa.5.0.i.i.i.i.i275 = phi i8* [ %140, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i273" ], [ %143, %bb32.i.i.i.i.i287 ]
  %_13.i.i.i51.i.i.i.i.i276 = icmp eq i8* %self.sroa.2.0.i.i.i.i.i274, %19
  br i1 %_13.i.i.i51.i.i.i.i.i276, label %bb10.i.i.i.i.i280, label %bb32.i.i.i.i.i287

bb10.i.i.i.i.i280:                                ; preds = %bb5.i.i.i.i.i277
  %_13.i.i.i.i.i.i.i.i278 = icmp ne i8* %other.sroa.5.0.i.i.i.i.i275, %74
  %spec.select.i.i.i.i.i279 = sext i1 %_13.i.i.i.i.i.i.i.i278 to i8
  br label %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit289

bb32.i.i.i.i.i287:                                ; preds = %bb5.i.i.i.i.i277
  %141 = getelementptr inbounds i8, i8* %self.sroa.2.0.i.i.i.i.i274, i16 -4
  %142 = bitcast i8* %141 to i32*
  %.val.i.i.i.i52.i.i.i.i.i281 = load i32, i32* %142, align 1, !alias.scope !460, !noalias !471
  %143 = getelementptr inbounds i8, i8* %other.sroa.5.0.i.i.i.i.i275, i16 -4
  %144 = bitcast i8* %143 to i32*
  %.val.i.i.i.i44.i.i.i.i.i282 = load i32, i32* %144, align 1, !alias.scope !475, !noalias !480
  %_3.i.i.i.i.i.i.i283 = icmp ult i32 %.val.i.i.i.i52.i.i.i.i.i281, %.val.i.i.i.i44.i.i.i.i.i282
  %_6.i.i.i.i.i.i.i284 = icmp ne i32 %.val.i.i.i.i52.i.i.i.i.i281, %.val.i.i.i.i44.i.i.i.i.i282
  %..i.i.i.i.i.i.i285 = zext i1 %_6.i.i.i.i.i.i.i284 to i8
  %.0.i.i.i.i.i.i.i286 = select i1 %_3.i.i.i.i.i.i.i283, i8 -1, i8 %..i.i.i.i.i.i.i285
  %145 = icmp eq i8 %.0.i.i.i.i.i.i.i286, 0
  br i1 %145, label %bb5.i.i.i.i.i277, label %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit289

_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit289: ; preds = %bb32.i.i.i.i.i287, %bb10.i.i.i.i.i280
  %146 = phi i8 [ %spec.select.i.i.i.i.i279, %bb10.i.i.i.i.i280 ], [ %.0.i.i.i.i.i.i.i286, %bb32.i.i.i.i.i287 ]
  %switch.i288 = icmp ult i8 %146, 2
  br i1 %switch.i288, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i296", label %bb84

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i296": ; preds = %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit289
  %_2.i.i34.i295 = icmp eq i16 %.0.sroa.speculated.i.i.i.i.i.i268, 0
  br i1 %_2.i.i34.i295, label %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit308, label %bb11.i306

bb9.i297:                                         ; preds = %bb11.i306
  br i1 %brmerge.i.i303, label %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit308, label %bb14.i307

bb11.i306:                                        ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i296", %bb11.i306
  %noborrow.036.i298 = phi i8 [ %_15.0.i.i304, %bb11.i306 ], [ 1, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i296" ]
  %iter.sroa.8.035.i299 = phi i16 [ %147, %bb11.i306 ], [ 0, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i296" ]
  %147 = add nuw nsw i16 %iter.sroa.8.035.i299, 1
  %148 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %mant, i16 0, i32 3, i16 %iter.sroa.8.035.i299
  %149 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale2, i16 0, i32 3, i16 %iter.sroa.8.035.i299
  %_36.i300 = load i32, i32* %148, align 1, !noalias !481
  %_38.i301 = load i32, i32* %149, align 1, !alias.scope !481
  %_37.i302 = xor i32 %_38.i301, -1
  %150 = call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %_36.i300, i32 %_37.i302) #20
  %151 = extractvalue { i32, i1 } %150, 0
  %152 = extractvalue { i32, i1 } %150, 1
  %153 = zext i8 %noborrow.036.i298 to i32
  %154 = call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %151, i32 %153) #20
  %155 = extractvalue { i32, i1 } %154, 0
  %156 = extractvalue { i32, i1 } %154, 1
  %brmerge.i.i303 = or i1 %152, %156
  %_15.0.i.i304 = zext i1 %brmerge.i.i303 to i8
  store i32 %155, i32* %148, align 1, !noalias !481
  %_2.i.i.i305 = icmp ult i16 %147, %.0.sroa.speculated.i.i.i.i.i.i268
  br i1 %_2.i.i.i305, label %bb11.i306, label %bb9.i297

bb14.i307:                                        ; preds = %bb9.i297
; call core::panicking::panic
  call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [26 x i8] }>* @alloc18922 to [0 x i8]*), i16 26, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*)), !noalias !481
  unreachable

_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit308: ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i296", %bb9.i297
  store i16 %.0.sroa.speculated.i.i.i.i.i.i268, i16* %17, align 1, !noalias !481
  %157 = add nsw i8 %d2.1, 2
  br label %bb84

bb84:                                             ; preds = %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit289, %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit308
  %_4.i.i.i180 = phi i16 [ %.0.sroa.speculated.i.i.i.i.i.i268, %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit308 ], [ %_4.i.i.i266, %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit289 ]
  %d2.2 = phi i8 [ %157, %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit308 ], [ %d2.1, %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit289 ]
  %158 = icmp ugt i16 %_4.i.i.i180, %_5.i.i.i181
  %.0.sroa.speculated.i.i.i.i.i.i182 = select i1 %158, i16 %_4.i.i.i180, i16 %_5.i.i.i181
  %_8.i.i.i3.i.i.i183 = icmp ugt i16 %.0.sroa.speculated.i.i.i.i.i.i182, 40
  br i1 %_8.i.i.i3.i.i.i183, label %bb5.i.i.i4.i.i.i184, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i187"

bb5.i.i.i4.i.i.i184:                              ; preds = %bb84
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.0.sroa.speculated.i.i.i.i.i.i182, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i187": ; preds = %bb84
  %159 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %mant, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i.i.i182
  %160 = bitcast i32* %159 to i8*
  %161 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i.i.i182
  %162 = bitcast i32* %161 to i8*
  br label %bb5.i.i.i.i.i191

bb5.i.i.i.i.i191:                                 ; preds = %bb32.i.i.i.i.i201, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i187"
  %self.sroa.2.0.i.i.i.i.i188 = phi i8* [ %160, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i187" ], [ %163, %bb32.i.i.i.i.i201 ]
  %other.sroa.5.0.i.i.i.i.i189 = phi i8* [ %162, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i187" ], [ %165, %bb32.i.i.i.i.i201 ]
  %_13.i.i.i51.i.i.i.i.i190 = icmp eq i8* %self.sroa.2.0.i.i.i.i.i188, %19
  br i1 %_13.i.i.i51.i.i.i.i.i190, label %bb10.i.i.i.i.i194, label %bb32.i.i.i.i.i201

bb10.i.i.i.i.i194:                                ; preds = %bb5.i.i.i.i.i191
  %_13.i.i.i.i.i.i.i.i192 = icmp ne i8* %other.sroa.5.0.i.i.i.i.i189, %24
  %spec.select.i.i.i.i.i193 = sext i1 %_13.i.i.i.i.i.i.i.i192 to i8
  br label %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit203

bb32.i.i.i.i.i201:                                ; preds = %bb5.i.i.i.i.i191
  %163 = getelementptr inbounds i8, i8* %self.sroa.2.0.i.i.i.i.i188, i16 -4
  %164 = bitcast i8* %163 to i32*
  %.val.i.i.i.i52.i.i.i.i.i195 = load i32, i32* %164, align 1, !alias.scope !484, !noalias !495
  %165 = getelementptr inbounds i8, i8* %other.sroa.5.0.i.i.i.i.i189, i16 -4
  %166 = bitcast i8* %165 to i32*
  %.val.i.i.i.i44.i.i.i.i.i196 = load i32, i32* %166, align 1, !alias.scope !499, !noalias !504
  %_3.i.i.i.i.i.i.i197 = icmp ult i32 %.val.i.i.i.i52.i.i.i.i.i195, %.val.i.i.i.i44.i.i.i.i.i196
  %_6.i.i.i.i.i.i.i198 = icmp ne i32 %.val.i.i.i.i52.i.i.i.i.i195, %.val.i.i.i.i44.i.i.i.i.i196
  %..i.i.i.i.i.i.i199 = zext i1 %_6.i.i.i.i.i.i.i198 to i8
  %.0.i.i.i.i.i.i.i200 = select i1 %_3.i.i.i.i.i.i.i197, i8 -1, i8 %..i.i.i.i.i.i.i199
  %167 = icmp eq i8 %.0.i.i.i.i.i.i.i200, 0
  br i1 %167, label %bb5.i.i.i.i.i191, label %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit203

_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit203: ; preds = %bb32.i.i.i.i.i201, %bb10.i.i.i.i.i194
  %168 = phi i8 [ %spec.select.i.i.i.i.i193, %bb10.i.i.i.i.i194 ], [ %.0.i.i.i.i.i.i.i200, %bb32.i.i.i.i.i201 ]
  %switch.i202 = icmp ult i8 %168, 2
  br i1 %switch.i202, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i138", label %bb89

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i138": ; preds = %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit203
  %_2.i.i34.i = icmp eq i16 %.0.sroa.speculated.i.i.i.i.i.i182, 0
  br i1 %_2.i.i34.i, label %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit, label %bb11.i145

bb9.i139:                                         ; preds = %bb11.i145
  br i1 %brmerge.i.i142, label %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit, label %bb14.i146

bb11.i145:                                        ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i138", %bb11.i145
  %noborrow.036.i = phi i8 [ %_15.0.i.i143, %bb11.i145 ], [ 1, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i138" ]
  %iter.sroa.8.035.i = phi i16 [ %169, %bb11.i145 ], [ 0, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i138" ]
  %169 = add nuw nsw i16 %iter.sroa.8.035.i, 1
  %170 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %mant, i16 0, i32 3, i16 %iter.sroa.8.035.i
  %171 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale, i16 0, i32 3, i16 %iter.sroa.8.035.i
  %_36.i140 = load i32, i32* %170, align 1, !noalias !505
  %_38.i = load i32, i32* %171, align 1, !alias.scope !505
  %_37.i141 = xor i32 %_38.i, -1
  %172 = call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %_36.i140, i32 %_37.i141) #20
  %173 = extractvalue { i32, i1 } %172, 0
  %174 = extractvalue { i32, i1 } %172, 1
  %175 = zext i8 %noborrow.036.i to i32
  %176 = call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %173, i32 %175) #20
  %177 = extractvalue { i32, i1 } %176, 0
  %178 = extractvalue { i32, i1 } %176, 1
  %brmerge.i.i142 = or i1 %174, %178
  %_15.0.i.i143 = zext i1 %brmerge.i.i142 to i8
  store i32 %177, i32* %170, align 1, !noalias !505
  %_2.i.i.i144 = icmp ult i16 %169, %.0.sroa.speculated.i.i.i.i.i.i182
  br i1 %_2.i.i.i144, label %bb11.i145, label %bb9.i139

bb14.i146:                                        ; preds = %bb9.i139
; call core::panicking::panic
  call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [26 x i8] }>* @alloc18922 to [0 x i8]*), i16 26, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*)), !noalias !505
  unreachable

_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit: ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i138", %bb9.i139
  store i16 %.0.sroa.speculated.i.i.i.i.i.i182, i16* %17, align 1, !noalias !505
  %179 = add nsw i8 %d2.2, 1
  br label %bb89

bb89:                                             ; preds = %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit203, %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit
  %180 = phi i16 [ %.0.sroa.speculated.i.i.i.i.i.i182, %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit ], [ %_4.i.i.i180, %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit203 ]
  %d2.3 = phi i8 [ %179, %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit ], [ %d2.2, %_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E.exit203 ]
  %_176 = icmp ult i16 %iter.sroa.0.0396, %buf.1
  br i1 %_176, label %bb90, label %panic, !prof !4, !misexpect !5

bb90:                                             ; preds = %bb89
  %181 = getelementptr inbounds [0 x i8], [0 x i8]* %buf.0, i16 0, i16 %iter.sroa.0.0396
  %182 = add i8 %d2.3, 48
  store i8 %182, i8* %181, align 1
  %_9.i.i.i.i65 = icmp ugt i16 %180, 40
  br i1 %_9.i.i.i.i65, label %bb5.i.i.i.i66, label %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i69"

bb5.i.i.i.i66:                                    ; preds = %bb90
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %180, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i69": ; preds = %bb90
  %183 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %mant, i16 0, i32 3, i16 %180
  %_13.i16.i68 = icmp eq i32* %183, %84
  br i1 %_13.i16.i68, label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit90, label %bb7.i84

bb5.i72:                                          ; preds = %bb7.i84
  %_30.i71 = icmp eq i32 %_14.i.i81, 0
  br i1 %_30.i71, label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit90, label %bb10.i86

bb7.i84:                                          ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i69", %bb7.i84
  %carry.018.i73 = phi i32 [ %_14.i.i81, %bb7.i84 ], [ 0, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i69" ]
  %iter.sroa.0.017.i74 = phi i8* [ %184, %bb7.i84 ], [ %19, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i69" ]
  %184 = getelementptr inbounds i8, i8* %iter.sroa.0.017.i74, i16 4
  %185 = bitcast i8* %iter.sroa.0.017.i74 to i32*
  %_25.i75 = load i32, i32* %185, align 1
  %_8.i.i76 = zext i32 %_25.i75 to i64
  %_7.i.i77 = mul nuw nsw i64 %_8.i.i76, 10
  %_12.i11.i78 = zext i32 %carry.018.i73 to i64
  %v.i.i79 = add nuw nsw i64 %_7.i.i77, %_12.i11.i78
  %_15.i.i80 = lshr i64 %v.i.i79, 32
  %_14.i.i81 = trunc i64 %_15.i.i80 to i32
  %_18.i.i82 = trunc i64 %v.i.i79 to i32
  store i32 %_18.i.i82, i32* %185, align 1
  %186 = bitcast i8* %184 to i32*
  %_13.i.i83 = icmp eq i32* %183, %186
  br i1 %_13.i.i83, label %bb5.i72, label %bb7.i84

bb10.i86:                                         ; preds = %bb5.i72
  %_35.i85 = icmp ult i16 %180, 40
  br i1 %_35.i85, label %bb11.i87, label %panic.i89, !prof !4, !misexpect !5

bb11.i87:                                         ; preds = %bb10.i86
  store i32 %_14.i.i81, i32* %183, align 1
  %187 = add nuw nsw i16 %180, 1
  br label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit90

panic.i89:                                        ; preds = %bb10.i86
; call core::panicking::panic_bounds_check
  call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %180, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit90: ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i69", %bb5.i72, %bb11.i87
  %sz.0.i88 = phi i16 [ %187, %bb11.i87 ], [ %180, %bb5.i72 ], [ %180, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i69" ]
  store i16 %sz.0.i88, i16* %17, align 1
  %188 = icmp ugt i16 %spec.select, %85
  br i1 %188, label %bb58, label %bb56

bb92:                                             ; preds = %bb36, %bb37, %bb56
  %189 = phi i16 [ %_5.i.i.i, %bb37 ], [ %_5.i.i.i181, %bb56 ], [ %_5.i.i.i, %bb36 ]
  %_98321 = phi i1 [ true, %bb37 ], [ false, %bb56 ], [ true, %bb36 ]
  %len.0320 = phi i16 [ 0, %bb37 ], [ %spec.select, %bb56 ], [ 0, %bb36 ]
  %_9.i.i.i.i = icmp ugt i16 %189, 40
  br i1 %_9.i.i.i.i, label %bb5.i.i.i.i, label %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i"

bb5.i.i.i.i:                                      ; preds = %bb92
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %189, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i": ; preds = %bb92
  %190 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale, i16 0, i32 3, i16 %189
  %191 = getelementptr [40 x i32], [40 x i32]* %23, i16 0, i16 0
  %_13.i16.i = icmp eq i32* %190, %191
  br i1 %_13.i16.i, label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit, label %bb7.i

bb5.i:                                            ; preds = %bb7.i
  %_30.i = icmp eq i32 %_14.i.i, 0
  br i1 %_30.i, label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit, label %bb10.i

bb7.i:                                            ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i", %bb7.i
  %carry.018.i = phi i32 [ %_14.i.i, %bb7.i ], [ 0, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i" ]
  %iter.sroa.0.017.i = phi i8* [ %192, %bb7.i ], [ %24, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i" ]
  %192 = getelementptr inbounds i8, i8* %iter.sroa.0.017.i, i16 4
  %193 = bitcast i8* %iter.sroa.0.017.i to i32*
  %_25.i = load i32, i32* %193, align 1
  %_8.i.i = zext i32 %_25.i to i64
  %_7.i.i = mul nuw nsw i64 %_8.i.i, 5
  %_12.i11.i = zext i32 %carry.018.i to i64
  %v.i.i = add nuw nsw i64 %_7.i.i, %_12.i11.i
  %_15.i.i = lshr i64 %v.i.i, 32
  %_14.i.i = trunc i64 %_15.i.i to i32
  %_18.i.i = trunc i64 %v.i.i to i32
  store i32 %_18.i.i, i32* %193, align 1
  %194 = bitcast i8* %192 to i32*
  %_13.i.i = icmp eq i32* %190, %194
  br i1 %_13.i.i, label %bb5.i, label %bb7.i

bb10.i:                                           ; preds = %bb5.i
  %_35.i = icmp ult i16 %189, 40
  br i1 %_35.i, label %bb11.i, label %panic.i64, !prof !4, !misexpect !5

bb11.i:                                           ; preds = %bb10.i
  store i32 %_14.i.i, i32* %190, align 1
  %195 = add nuw nsw i16 %189, 1
  br label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit

panic.i64:                                        ; preds = %bb10.i
; call core::panicking::panic_bounds_check
  call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %189, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit: ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i", %bb5.i, %bb11.i
  %sz.0.i = phi i16 [ %195, %bb11.i ], [ %189, %bb5.i ], [ %189, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i" ]
  store i16 %sz.0.i, i16* %21, align 1
  %_4.i = load i16, i16* %17, align 1, !alias.scope !508, !noalias !511
  %196 = icmp ugt i16 %_4.i, %sz.0.i
  %.0.sroa.speculated.i.i.i.i = select i1 %196, i16 %_4.i, i16 %sz.0.i
  %_8.i.i.i3.i = icmp ugt i16 %.0.sroa.speculated.i.i.i.i, 40
  br i1 %_8.i.i.i3.i, label %bb5.i.i.i4.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i"

bb5.i.i.i4.i:                                     ; preds = %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.0.sroa.speculated.i.i.i.i, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i": ; preds = %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit
  %197 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %mant, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i
  %198 = bitcast i32* %197 to i8*
  %199 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %scale, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i
  %200 = bitcast i32* %199 to i8*
  br label %bb5.i.i.i

bb5.i.i.i:                                        ; preds = %bb32.i.i.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i"
  %self.sroa.2.0.i.i.i = phi i8* [ %198, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i" ], [ %201, %bb32.i.i.i ]
  %other.sroa.5.0.i.i.i = phi i8* [ %200, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i" ], [ %203, %bb32.i.i.i ]
  %_13.i.i.i51.i.i.i = icmp eq i8* %self.sroa.2.0.i.i.i, %19
  br i1 %_13.i.i.i51.i.i.i, label %bb97, label %bb32.i.i.i

bb32.i.i.i:                                       ; preds = %bb5.i.i.i
  %201 = getelementptr inbounds i8, i8* %self.sroa.2.0.i.i.i, i16 -4
  %202 = bitcast i8* %201 to i32*
  %.val.i.i.i.i52.i.i.i = load i32, i32* %202, align 1, !alias.scope !513, !noalias !511
  %203 = getelementptr inbounds i8, i8* %other.sroa.5.0.i.i.i, i16 -4
  %204 = bitcast i8* %203 to i32*
  %.val.i.i.i.i44.i.i.i = load i32, i32* %204, align 1, !alias.scope !518, !noalias !508
  %_3.i.i.i.i.i = icmp ult i32 %.val.i.i.i.i52.i.i.i, %.val.i.i.i.i44.i.i.i
  %_6.i.i.i.i.i = icmp ne i32 %.val.i.i.i.i52.i.i.i, %.val.i.i.i.i44.i.i.i
  %..i.i.i.i.i = zext i1 %_6.i.i.i.i.i to i8
  %.0.i.i.i.i.i = select i1 %_3.i.i.i.i.i, i8 -1, i8 %..i.i.i.i.i
  switch i8 %.0.i.i.i.i.i, label %bb125 [
    i8 0, label %bb5.i.i.i
    i8 1, label %bb111
  ]

bb97:                                             ; preds = %bb5.i.i.i
  %_13.i.i.i.i.i.i = icmp eq i8* %other.sroa.5.0.i.i.i, %24
  br i1 %_13.i.i.i.i.i.i, label %bb102, label %bb125

bb102:                                            ; preds = %bb97
  br i1 %_98321, label %bb111, label %bb107

bb107:                                            ; preds = %bb102
  %_198 = add i16 %len.0320, -1
  %_201 = icmp ult i16 %_198, %buf.1
  br i1 %_201, label %bb109, label %panic4, !prof !4, !misexpect !5

bb109:                                            ; preds = %bb107
  %205 = getelementptr inbounds [0 x i8], [0 x i8]* %buf.0, i16 0, i16 %_198
  %_197 = load i8, i8* %205, align 1
  %_196 = and i8 %_197, 1
  %_195 = icmp eq i8 %_196, 0
  br i1 %_195, label %bb125, label %bb111

bb111:                                            ; preds = %bb32.i.i.i, %bb109, %bb102
; call core::num::flt2dec::round_up
  %206 = call addrspace(1) { i8, i8 } @_ZN4core3num7flt2dec8round_up17haab4a1ca790fdd49E([0 x i8]* nonnull align 1 %buf.0, i16 %buf.1, i16 %len.0320)
  %.fca.0.extract50 = extractvalue { i8, i8 } %206, 0
  %.fca.1.extract52 = extractvalue { i8, i8 } %206, 1
  %207 = and i8 %.fca.0.extract50, 1
  %208 = icmp eq i8 %207, 0
  br i1 %208, label %bb125, label %bb114

bb114:                                            ; preds = %bb111
  %209 = add i16 %k.0, 1
  %_208 = icmp sgt i16 %209, %limit
  %_211 = icmp ult i16 %len.0320, %buf.1
  %or.cond = and i1 %_208, %_211
  br i1 %or.cond, label %bb122, label %bb125

bb122:                                            ; preds = %bb114
  %210 = getelementptr inbounds [0 x i8], [0 x i8]* %buf.0, i16 0, i16 %len.0320
  store i8 %.fca.1.extract52, i8* %210, align 1
  %211 = add nuw i16 %len.0320, 1
  br label %bb125

bb125:                                            ; preds = %bb32.i.i.i, %bb114, %bb109, %bb97, %bb111, %bb122
  %len.3 = phi i16 [ %len.0320, %bb111 ], [ %211, %bb122 ], [ %len.0320, %bb97 ], [ %len.0320, %bb109 ], [ %len.0320, %bb114 ], [ %len.0320, %bb32.i.i.i ]
  %k.2 = phi i16 [ %k.0, %bb111 ], [ %209, %bb122 ], [ %k.0, %bb97 ], [ %k.0, %bb109 ], [ %209, %bb114 ], [ %k.0, %bb32.i.i.i ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 162, i8* nonnull %20)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 162, i8* nonnull %11)
  br label %bb69

panic:                                            ; preds = %bb89
; call core::panicking::panic_bounds_check
  call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %buf.1, i16 %buf.1, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18218 to %"panic::Location"*))
  unreachable

panic4:                                           ; preds = %bb107
; call core::panicking::panic_bounds_check
  call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_198, i16 %buf.1, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18220 to %"panic::Location"*))
  unreachable
}

; core::num::flt2dec::strategy::grisu::cached_power
; Function Attrs: uwtable
define void @_ZN4core3num7flt2dec8strategy5grisu12cached_power17ha181dc46c2aec330E({ [0 x i8], i16, [0 x i8], { i64, i16 }, [0 x i8] }* noalias nocapture sret dereferenceable(12) %0, i16 %alpha, i16 %gamma) unnamed_addr addrspace(1) #2 {
start:
  %_14 = sext i16 %gamma to i32
  %1 = mul nsw i32 %_14, 80
  %_12 = add nsw i32 %1, 86960
  %idx = sdiv i32 %_12, 2126
  %_26 = trunc i32 %idx to i16
  %_29 = icmp ult i16 %_26, 81
  br i1 %_29, label %bb3, label %panic1, !prof !4, !misexpect !5

bb3:                                              ; preds = %start
  %2 = getelementptr inbounds [81 x { [0 x i8], i64, [0 x i8], i16, [0 x i8], i16, [0 x i8] }], [81 x { [0 x i8], i64, [0 x i8], i16, [0 x i8], i16, [0 x i8] }]* bitcast (<{ [972 x i8] }>* @_ZN4core3num7flt2dec8strategy5grisu12CACHED_POW1017hfa9f1ed7fffa0d3fE to [81 x { [0 x i8], i64, [0 x i8], i16, [0 x i8], i16, [0 x i8] }]*), i16 0, i16 %_26
  %3 = bitcast { [0 x i8], i64, [0 x i8], i16, [0 x i8], i16, [0 x i8] }* %2 to i64*
  %f = load i64, i64* %3, align 1
  %4 = getelementptr inbounds [81 x { [0 x i8], i64, [0 x i8], i16, [0 x i8], i16, [0 x i8] }], [81 x { [0 x i8], i64, [0 x i8], i16, [0 x i8], i16, [0 x i8] }]* bitcast (<{ [972 x i8] }>* @_ZN4core3num7flt2dec8strategy5grisu12CACHED_POW1017hfa9f1ed7fffa0d3fE to [81 x { [0 x i8], i64, [0 x i8], i16, [0 x i8], i16, [0 x i8] }]*), i16 0, i16 %_26, i32 3
  %e = load i16, i16* %4, align 1
  %5 = getelementptr inbounds [81 x { [0 x i8], i64, [0 x i8], i16, [0 x i8], i16, [0 x i8] }], [81 x { [0 x i8], i64, [0 x i8], i16, [0 x i8], i16, [0 x i8] }]* bitcast (<{ [972 x i8] }>* @_ZN4core3num7flt2dec8strategy5grisu12CACHED_POW1017hfa9f1ed7fffa0d3fE to [81 x { [0 x i8], i64, [0 x i8], i16, [0 x i8], i16, [0 x i8] }]*), i16 0, i16 %_26, i32 5
  %k = load i16, i16* %5, align 1
  %6 = bitcast { [0 x i8], i16, [0 x i8], { i64, i16 }, [0 x i8] }* %0 to i16*
  store i16 %k, i16* %6, align 1
  %7 = getelementptr inbounds { [0 x i8], i16, [0 x i8], { i64, i16 }, [0 x i8] }, { [0 x i8], i16, [0 x i8], { i64, i16 }, [0 x i8] }* %0, i16 0, i32 3, i32 0
  store i64 %f, i64* %7, align 1
  %8 = getelementptr inbounds { [0 x i8], i16, [0 x i8], { i64, i16 }, [0 x i8] }, { [0 x i8], i16, [0 x i8], { i64, i16 }, [0 x i8] }* %0, i16 0, i32 3, i32 1
  store i16 %e, i16* %8, align 1
  ret void

panic1:                                           ; preds = %start
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_26, i16 81, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18226 to %"panic::Location"*))
  unreachable
}

; core::num::flt2dec::strategy::grisu::max_pow10_no_more_than
; Function Attrs: norecurse nounwind readnone uwtable
define { i8, i32 } @_ZN4core3num7flt2dec8strategy5grisu22max_pow10_no_more_than17h2916684772bc779cE(i32 %x) unnamed_addr addrspace(1) #1 {
start:
  %_2 = icmp ult i32 %x, 10000
  br i1 %_2, label %bb2, label %bb1

bb1:                                              ; preds = %start
  %_10 = icmp ult i32 %x, 1000000
  br i1 %_10, label %bb13, label %bb12

bb2:                                              ; preds = %start
  %_4 = icmp ult i32 %x, 100
  br i1 %_4, label %bb4, label %bb3

bb3:                                              ; preds = %bb2
  %_8 = icmp ult i32 %x, 1000
  %. = select i1 %_8, i32 100, i32 1000
  %.1 = select i1 %_8, i8 2, i8 3
  br label %bb27

bb4:                                              ; preds = %bb2
  %_6 = icmp ult i32 %x, 10
  %.2 = select i1 %_6, i32 1, i32 10
  %not._6 = xor i1 %_6, true
  %.3 = zext i1 %not._6 to i8
  br label %bb27

bb12:                                             ; preds = %bb1
  %_14 = icmp ult i32 %x, 100000000
  br i1 %_14, label %bb18, label %bb17

bb13:                                             ; preds = %bb1
  %_12 = icmp ult i32 %x, 100000
  %.4 = select i1 %_12, i32 10000, i32 100000
  %.5 = select i1 %_12, i8 4, i8 5
  br label %bb27

bb17:                                             ; preds = %bb12
  %_18 = icmp ult i32 %x, 1000000000
  %.6 = select i1 %_18, i32 100000000, i32 1000000000
  %.7 = select i1 %_18, i8 8, i8 9
  br label %bb27

bb18:                                             ; preds = %bb12
  %_16 = icmp ult i32 %x, 10000000
  %.8 = select i1 %_16, i32 1000000, i32 10000000
  %.9 = select i1 %_16, i8 6, i8 7
  br label %bb27

bb27:                                             ; preds = %bb18, %bb17, %bb13, %bb4, %bb3
  %.sroa.11.0 = phi i32 [ %., %bb3 ], [ %.2, %bb4 ], [ %.4, %bb13 ], [ %.6, %bb17 ], [ %.8, %bb18 ]
  %.sroa.0.0 = phi i8 [ %.1, %bb3 ], [ %.3, %bb4 ], [ %.5, %bb13 ], [ %.7, %bb17 ], [ %.9, %bb18 ]
  %0 = insertvalue { i8, i32 } undef, i8 %.sroa.0.0, 0
  %1 = insertvalue { i8, i32 } %0, i32 %.sroa.11.0, 1
  ret { i8, i32 } %1
}

; core::num::flt2dec::strategy::grisu::format_shortest_opt
; Function Attrs: uwtable
define void @_ZN4core3num7flt2dec8strategy5grisu19format_shortest_opt17h7dc38a7ef9464546E(%"option::Option<(usize, i16)>"* noalias nocapture sret dereferenceable(5) %0, %"num::flt2dec::decoder::Decoded"* noalias nocapture readonly align 1 dereferenceable(27) %d, [0 x i8]* nonnull align 1 %buf.0, i16 %buf.1) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_39.i100 = alloca i64*, align 1
  %_37.i101 = alloca i64*, align 1
  %_27.i103 = alloca %"fmt::Arguments", align 1
  %_15.i104 = alloca i64, align 1
  %_39.i = alloca i64*, align 1
  %_37.i = alloca i64*, align 1
  %_34.i = alloca [2 x { i8*, i8 addrspace(1)* }], align 1
  %_27.i = alloca %"fmt::Arguments", align 1
  %_15.i = alloca i64, align 1
  %_65 = alloca { i64, i16 }, align 1
  %_57 = alloca { i64, i16 }, align 1
  %1 = bitcast %"num::flt2dec::decoder::Decoded"* %d to i64*
  %_5 = load i64, i64* %1, align 1
  %_4 = icmp eq i64 %_5, 0
  br i1 %_4, label %bb2, label %bb1

bb1:                                              ; preds = %start
  %2 = getelementptr inbounds %"num::flt2dec::decoder::Decoded", %"num::flt2dec::decoder::Decoded"* %d, i16 0, i32 3
  %_10 = load i64, i64* %2, align 1
  %_9 = icmp eq i64 %_10, 0
  br i1 %_9, label %bb4, label %bb3

bb2:                                              ; preds = %start
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [28 x i8] }>* @alloc18265 to [0 x i8]*), i16 28, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18229 to %"panic::Location"*))
  unreachable

bb3:                                              ; preds = %bb1
  %3 = getelementptr inbounds %"num::flt2dec::decoder::Decoded", %"num::flt2dec::decoder::Decoded"* %d, i16 0, i32 5
  %_15 = load i64, i64* %3, align 1
  %_14 = icmp eq i64 %_15, 0
  br i1 %_14, label %bb6, label %bb5

bb4:                                              ; preds = %bb1
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [29 x i8] }>* @alloc18230 to [0 x i8]*), i16 29, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18232 to %"panic::Location"*))
  unreachable

bb5:                                              ; preds = %bb3
  %4 = tail call addrspace(1) { i64, i1 } @llvm.uadd.with.overflow.i64(i64 %_5, i64 %_15) #20
  %5 = extractvalue { i64, i1 } %4, 1
  br i1 %5, label %bb10, label %bb9

bb6:                                              ; preds = %bb3
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [28 x i8] }>* @alloc18233 to [0 x i8]*), i16 28, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18235 to %"panic::Location"*))
  unreachable

bb9:                                              ; preds = %bb5
  %6 = tail call addrspace(1) { i64, i1 } @llvm.usub.with.overflow.i64(i64 %_5, i64 %_10) #20
  %7 = extractvalue { i64, i1 } %6, 1
  br i1 %7, label %bb14, label %bb13

bb10:                                             ; preds = %bb5
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [54 x i8] }>* @alloc18236 to [0 x i8]*), i16 54, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18238 to %"panic::Location"*))
  unreachable

bb13:                                             ; preds = %bb9
  %_35 = icmp ult i16 %buf.1, 17
  br i1 %_35, label %bb17, label %bb16

bb14:                                             ; preds = %bb9
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [55 x i8] }>* @alloc18239 to [0 x i8]*), i16 55, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18241 to %"panic::Location"*))
  unreachable

bb16:                                             ; preds = %bb13
  %_42 = add i64 %_15, %_5
  %_41 = icmp ugt i64 %_42, 2305843009213693951
  br i1 %_41, label %bb19, label %bb18

bb17:                                             ; preds = %bb13
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [45 x i8] }>* @alloc18453 to [0 x i8]*), i16 45, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18244 to %"panic::Location"*))
  unreachable

bb18:                                             ; preds = %bb16
  %8 = getelementptr inbounds %"num::flt2dec::decoder::Decoded", %"num::flt2dec::decoder::Decoded"* %d, i16 0, i32 7
  %_54 = load i16, i16* %8, align 1
  %_4.i = icmp ult i64 %_42, 4294967296
  %9 = shl i64 %_42, 32
  %10 = add i16 %_54, -32
  %f.0.i = select i1 %_4.i, i64 %9, i64 %_42
  %e.0.i = select i1 %_4.i, i16 %10, i16 %_54
  %_8.i = icmp ult i64 %f.0.i, 281474976710656
  %11 = shl i64 %f.0.i, 16
  %12 = add i16 %e.0.i, -16
  %f.1.i = select i1 %_8.i, i64 %11, i64 %f.0.i
  %e.1.i = select i1 %_8.i, i16 %12, i16 %e.0.i
  %_12.i = icmp ult i64 %f.1.i, 72057594037927936
  %13 = shl i64 %f.1.i, 8
  %14 = add i16 %e.1.i, -8
  %f.2.i = select i1 %_12.i, i64 %13, i64 %f.1.i
  %e.2.i = select i1 %_12.i, i16 %14, i16 %e.1.i
  %_16.i = icmp ult i64 %f.2.i, 1152921504606846976
  %15 = shl i64 %f.2.i, 4
  %16 = add i16 %e.2.i, -4
  %f.3.i = select i1 %_16.i, i64 %15, i64 %f.2.i
  %e.3.i = select i1 %_16.i, i16 %16, i16 %e.2.i
  %_20.i = icmp ult i64 %f.3.i, 4611686018427387904
  %17 = shl i64 %f.3.i, 2
  %18 = add i16 %e.3.i, -2
  %f.4.i = select i1 %_20.i, i64 %17, i64 %f.3.i
  %e.4.i = select i1 %_20.i, i16 %18, i16 %e.3.i
  %f.4.lobit.i = lshr i64 %f.4.i, 63
  %f.4.lobit.not.i = xor i64 %f.4.lobit.i, 1
  %f.5.i = shl i64 %f.4.i, %f.4.lobit.not.i
  %f.4.lobit21.i = ashr i64 %f.4.i, 63
  %19 = trunc i64 %f.4.lobit21.i to i16
  %.not.i = xor i16 %19, -1
  %e.5.i = add i16 %e.4.i, %.not.i
  %20 = bitcast { i64, i16 }* %_57 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 10, i8* nonnull %20)
  %_58 = sub i64 %_5, %_10
  %21 = getelementptr inbounds { i64, i16 }, { i64, i16 }* %_57, i16 0, i32 0
  store i64 %_58, i64* %21, align 1
  %22 = getelementptr inbounds { i64, i16 }, { i64, i16 }* %_57, i16 0, i32 1
  store i16 %_54, i16* %22, align 1
  %edelta.i = sub i16 %_54, %e.5.i
  %_7.i = icmp slt i16 %edelta.i, 0
  br i1 %_7.i, label %bb2.i, label %bb1.i

bb1.i:                                            ; preds = %bb18
  %23 = bitcast i64* %_15.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %23), !noalias !523
  %24 = and i16 %edelta.i, 63
  %25 = zext i16 %24 to i64
  %26 = lshr i64 -1, %25
  %27 = and i64 %26, %_58
  store i64 %27, i64* %_15.i, align 1, !noalias !523
  %28 = icmp ugt i64 %_58, %26
  br i1 %28, label %bb4.i, label %bb1.i109

bb2.i:                                            ; preds = %bb18
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [29 x i8] }>* @alloc18167 to [0 x i8]*), i16 29, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18169 to %"panic::Location"*))
  unreachable

bb4.i:                                            ; preds = %bb1.i
  %29 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_27.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %29), !noalias !523
  %30 = bitcast [2 x { i8*, i8 addrspace(1)* }]* %_34.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %30), !noalias !523
  %31 = bitcast i64** %_37.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %31), !noalias !523
  store i64* %_15.i, i64** %_37.i, align 1, !noalias !523
  %32 = bitcast i64** %_39.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %32), !noalias !523
  store i64* %21, i64** %_39.i, align 1, !noalias !523
  %33 = bitcast [2 x { i8*, i8 addrspace(1)* }]* %_34.i to i64***
  store i64** %_37.i, i64*** %33, align 1, !noalias !523
  %34 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_34.i, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 (i64**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17ha55c377638c0fa88E" to i8 addrspace(1)*), i8 addrspace(1)** %34, align 1, !noalias !523
  %35 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_34.i, i16 0, i16 1, i32 0
  %36 = bitcast i8** %35 to i64***
  store i64** %_39.i, i64*** %36, align 1, !noalias !523
  %37 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_34.i, i16 0, i16 1, i32 1
  store i8 addrspace(1)* bitcast (i1 (i64**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17ha55c377638c0fa88E" to i8 addrspace(1)*), i8 addrspace(1)** %37, align 1, !noalias !523
  %38 = bitcast %"fmt::Arguments"* %_27.i to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8], i8*, [2 x i8], i8*, [2 x i8] }>* @alloc16655 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %38, align 1, !alias.scope !526, !noalias !529
  %39 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_27.i, i16 0, i32 1, i32 1
  store i16 3, i16* %39, align 1, !alias.scope !526, !noalias !529
  %40 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_27.i, i16 0, i32 3, i32 0
  store i8* null, i8** %40, align 1, !alias.scope !526, !noalias !529
  %41 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_27.i, i16 0, i32 5, i32 0
  %42 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %41 to [2 x { i8*, i8 addrspace(1)* }]**
  store [2 x { i8*, i8 addrspace(1)* }]* %_34.i, [2 x { i8*, i8 addrspace(1)* }]** %42, align 1, !alias.scope !526, !noalias !529
  %43 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_27.i, i16 0, i32 5, i32 1
  store i16 2, i16* %43, align 1, !alias.scope !526, !noalias !529
; call core::panicking::panic_fmt
  call addrspace(1) void @_ZN4core9panicking9panic_fmt17hb7ee2cb815ea49cfE(%"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_27.i, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18171 to %"panic::Location"*))
  unreachable

bb1.i109:                                         ; preds = %bb1.i
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 8, i8* nonnull %23), !noalias !523
  %_48.i = shl i64 %_58, %25
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 10, i8* nonnull %20)
  %44 = bitcast { i64, i16 }* %_65 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 10, i8* nonnull %44)
  %45 = getelementptr inbounds { i64, i16 }, { i64, i16 }* %_65, i16 0, i32 0
  store i64 %_5, i64* %45, align 1
  %46 = getelementptr inbounds { i64, i16 }, { i64, i16 }* %_65, i16 0, i32 1
  store i16 %_54, i16* %46, align 1
  %47 = bitcast i64* %_15.i104 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %47), !noalias !532
  %48 = and i64 %26, %_5
  store i64 %48, i64* %_15.i104, align 1, !noalias !532
  %49 = icmp ugt i64 %_5, %26
  br i1 %49, label %bb4.i113, label %_ZN4core3num9diy_float2Fp12normalize_to17hce0993befe2b6f77E.exit114

bb4.i113:                                         ; preds = %bb1.i109
  %50 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_27.i103, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %50), !noalias !532
  %51 = bitcast [2 x { i8*, i8 addrspace(1)* }]* %_34.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %51), !noalias !532
  %52 = bitcast i64** %_37.i101 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %52), !noalias !532
  store i64* %_15.i104, i64** %_37.i101, align 1, !noalias !532
  %53 = bitcast i64** %_39.i100 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %53), !noalias !532
  store i64* %45, i64** %_39.i100, align 1, !noalias !532
  %54 = bitcast [2 x { i8*, i8 addrspace(1)* }]* %_34.i to i64***
  store i64** %_37.i101, i64*** %54, align 1, !noalias !532
  %55 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_34.i, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 (i64**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17ha55c377638c0fa88E" to i8 addrspace(1)*), i8 addrspace(1)** %55, align 1, !noalias !532
  %56 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_34.i, i16 0, i16 1, i32 0
  %57 = bitcast i8** %56 to i64***
  store i64** %_39.i100, i64*** %57, align 1, !noalias !532
  %58 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_34.i, i16 0, i16 1, i32 1
  store i8 addrspace(1)* bitcast (i1 (i64**, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17ha55c377638c0fa88E" to i8 addrspace(1)*), i8 addrspace(1)** %58, align 1, !noalias !532
  %59 = bitcast %"fmt::Arguments"* %_27.i103 to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8], i8*, [2 x i8], i8*, [2 x i8] }>* @alloc16655 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %59, align 1, !alias.scope !535, !noalias !538
  %60 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_27.i103, i16 0, i32 1, i32 1
  store i16 3, i16* %60, align 1, !alias.scope !535, !noalias !538
  %61 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_27.i103, i16 0, i32 3, i32 0
  store i8* null, i8** %61, align 1, !alias.scope !535, !noalias !538
  %62 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_27.i103, i16 0, i32 5, i32 0
  %63 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %62 to [2 x { i8*, i8 addrspace(1)* }]**
  store [2 x { i8*, i8 addrspace(1)* }]* %_34.i, [2 x { i8*, i8 addrspace(1)* }]** %63, align 1, !alias.scope !535, !noalias !538
  %64 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_27.i103, i16 0, i32 5, i32 1
  store i16 2, i16* %64, align 1, !alias.scope !535, !noalias !538
; call core::panicking::panic_fmt
  call addrspace(1) void @_ZN4core9panicking9panic_fmt17hb7ee2cb815ea49cfE(%"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_27.i103, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18171 to %"panic::Location"*))
  unreachable

_ZN4core3num9diy_float2Fp12normalize_to17hce0993befe2b6f77E.exit114: ; preds = %bb1.i109
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 8, i8* nonnull %47), !noalias !532
  %_48.i111 = shl i64 %_5, %25
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 10, i8* nonnull %44)
  %_75 = sub i16 -96, %e.5.i
  %_14.i = sext i16 %_75 to i32
  %65 = mul nsw i32 %_14.i, 80
  %_12.i115 = add nsw i32 %65, 86960
  %idx.i = sdiv i32 %_12.i115, 2126
  %_26.i116 = trunc i32 %idx.i to i16
  %_29.i117 = icmp ult i16 %_26.i116, 81
  br i1 %_29.i117, label %_ZN4core3num7flt2dec8strategy5grisu12cached_power17ha181dc46c2aec330E.exit, label %panic1.i, !prof !4, !misexpect !5

panic1.i:                                         ; preds = %_ZN4core3num9diy_float2Fp12normalize_to17hce0993befe2b6f77E.exit114
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_26.i116, i16 81, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18226 to %"panic::Location"*)), !noalias !541
  unreachable

_ZN4core3num7flt2dec8strategy5grisu12cached_power17ha181dc46c2aec330E.exit: ; preds = %_ZN4core3num9diy_float2Fp12normalize_to17hce0993befe2b6f77E.exit114
  %66 = getelementptr inbounds [81 x { [0 x i8], i64, [0 x i8], i16, [0 x i8], i16, [0 x i8] }], [81 x { [0 x i8], i64, [0 x i8], i16, [0 x i8], i16, [0 x i8] }]* bitcast (<{ [972 x i8] }>* @_ZN4core3num7flt2dec8strategy5grisu12CACHED_POW1017hfa9f1ed7fffa0d3fE to [81 x { [0 x i8], i64, [0 x i8], i16, [0 x i8], i16, [0 x i8] }]*), i16 0, i16 %_26.i116
  %67 = bitcast { [0 x i8], i64, [0 x i8], i16, [0 x i8], i16, [0 x i8] }* %66 to i64*
  %f.i = load i64, i64* %67, align 1, !noalias !541
  %68 = getelementptr inbounds [81 x { [0 x i8], i64, [0 x i8], i16, [0 x i8], i16, [0 x i8] }], [81 x { [0 x i8], i64, [0 x i8], i16, [0 x i8], i16, [0 x i8] }]* bitcast (<{ [972 x i8] }>* @_ZN4core3num7flt2dec8strategy5grisu12CACHED_POW1017hfa9f1ed7fffa0d3fE to [81 x { [0 x i8], i64, [0 x i8], i16, [0 x i8], i16, [0 x i8] }]*), i16 0, i16 %_26.i116, i32 3
  %e.i = load i16, i16* %68, align 1, !noalias !541
  %69 = getelementptr inbounds [81 x { [0 x i8], i64, [0 x i8], i16, [0 x i8], i16, [0 x i8] }], [81 x { [0 x i8], i64, [0 x i8], i16, [0 x i8], i16, [0 x i8] }]* bitcast (<{ [972 x i8] }>* @_ZN4core3num7flt2dec8strategy5grisu12CACHED_POW1017hfa9f1ed7fffa0d3fE to [81 x { [0 x i8], i64, [0 x i8], i16, [0 x i8], i16, [0 x i8] }]*), i16 0, i16 %_26.i116, i32 5
  %k.i = load i16, i16* %69, align 1, !noalias !541
  %a.i = lshr i64 %f.5.i, 32
  %b.i = and i64 %f.5.i, 4294967295
  %c.i = lshr i64 %f.i, 32
  %d.i = and i64 %f.i, 4294967295
  %ac.i = mul nuw i64 %c.i, %a.i
  %bc.i = mul nuw i64 %c.i, %b.i
  %ad.i = mul nuw i64 %d.i, %a.i
  %bd.i = mul nuw i64 %d.i, %b.i
  %_26.i121 = lshr i64 %bd.i, 32
  %_28.i = and i64 %ad.i, 4294967295
  %_30.i122 = and i64 %bc.i, 4294967295
  %_25.i = add nuw nsw i64 %_28.i, 2147483648
  %_24.i = add nuw nsw i64 %_25.i, %_26.i121
  %tmp.i = add nuw nsw i64 %_24.i, %_30.i122
  %_37.i123 = lshr i64 %ad.i, 32
  %_39.i125 = lshr i64 %bc.i, 32
  %_41.i127 = lshr i64 %tmp.i, 32
  %e.i130 = add i16 %e.5.i, %e.i
  %a.i132 = lshr i64 %_48.i, 32
  %b.i133 = and i64 %_48.i, 4294967295
  %ac.i137 = mul nuw i64 %c.i, %a.i132
  %bc.i138 = mul nuw i64 %c.i, %b.i133
  %ad.i139 = mul nuw i64 %d.i, %a.i132
  %bd.i140 = mul nuw i64 %d.i, %b.i133
  %_26.i141 = lshr i64 %bd.i140, 32
  %_28.i142 = and i64 %ad.i139, 4294967295
  %_30.i143 = and i64 %bc.i138, 4294967295
  %_25.i144 = add nuw nsw i64 %_28.i142, 2147483648
  %_24.i145 = add nuw nsw i64 %_25.i144, %_26.i141
  %tmp.i146 = add nuw nsw i64 %_24.i145, %_30.i143
  %_37.i147 = lshr i64 %ad.i139, 32
  %_39.i149 = lshr i64 %bc.i138, 32
  %_41.i151 = lshr i64 %tmp.i146, 32
  %a.i158 = lshr i64 %_48.i111, 32
  %b.i159 = and i64 %_48.i111, 4294967295
  %ac.i163 = mul nuw i64 %c.i, %a.i158
  %bc.i164 = mul nuw i64 %c.i, %b.i159
  %ad.i165 = mul nuw i64 %d.i, %a.i158
  %bd.i166 = mul nuw i64 %d.i, %b.i159
  %_26.i167 = lshr i64 %bd.i166, 32
  %_28.i168 = and i64 %ad.i165, 4294967295
  %_30.i169 = and i64 %bc.i164, 4294967295
  %_25.i170 = add nuw nsw i64 %_28.i168, 2147483648
  %_24.i171 = add nuw nsw i64 %_25.i170, %_26.i167
  %tmp.i172 = add nuw nsw i64 %_24.i171, %_30.i169
  %_37.i173 = lshr i64 %ad.i165, 32
  %_35.i174 = add nuw i64 %_37.i173, %ac.i163
  %_39.i175 = lshr i64 %bc.i164, 32
  %_34.i176 = add nuw i64 %_35.i174, %_39.i175
  %_41.i177 = lshr i64 %tmp.i172, 32
  %f.i178 = add i64 %_34.i176, %_41.i177
  %_35.i124 = add nuw i64 %ac.i, 1
  %_34.i126 = add nuw i64 %_35.i124, %_37.i123
  %f.i128 = add nuw i64 %_34.i126, %_39.i125
  %plus1 = add i64 %f.i128, %_41.i127
  %_103 = sub i16 0, %e.i130
  %70 = and i16 %_103, 63
  %71 = zext i16 %70 to i64
  %_106 = lshr i64 %plus1, %71
  %plus1int = trunc i64 %_106 to i32
  %_112 = shl nuw i64 1, %71
  %_111 = add i64 %_112, -1
  %plus1frac = and i64 %plus1, %_111
  %_2.i = icmp ult i32 %plus1int, 10000
  br i1 %_2.i, label %bb2.i188, label %bb1.i186

bb1.i186:                                         ; preds = %_ZN4core3num7flt2dec8strategy5grisu12cached_power17ha181dc46c2aec330E.exit
  %_10.i = icmp ult i32 %plus1int, 1000000
  br i1 %_10.i, label %bb13.i, label %bb12.i

bb2.i188:                                         ; preds = %_ZN4core3num7flt2dec8strategy5grisu12cached_power17ha181dc46c2aec330E.exit
  %_4.i187 = icmp ult i32 %plus1int, 100
  br i1 %_4.i187, label %bb4.i192, label %bb3.i191

bb3.i191:                                         ; preds = %bb2.i188
  %_8.i189 = icmp ult i32 %plus1int, 1000
  %..i190 = select i1 %_8.i189, i32 100, i32 1000
  %.1.i = select i1 %_8.i189, i8 2, i8 3
  br label %_ZN4core3num7flt2dec8strategy5grisu22max_pow10_no_more_than17h2916684772bc779cE.exit

bb4.i192:                                         ; preds = %bb2.i188
  %_6.i = icmp ult i32 %plus1int, 10
  %.2.i = select i1 %_6.i, i32 1, i32 10
  %not._6.i = xor i1 %_6.i, true
  %.3.i = zext i1 %not._6.i to i8
  br label %_ZN4core3num7flt2dec8strategy5grisu22max_pow10_no_more_than17h2916684772bc779cE.exit

bb12.i:                                           ; preds = %bb1.i186
  %_14.i193 = icmp ult i32 %plus1int, 100000000
  br i1 %_14.i193, label %bb18.i, label %bb17.i195

bb13.i:                                           ; preds = %bb1.i186
  %_12.i194 = icmp ult i32 %plus1int, 100000
  %.4.i = select i1 %_12.i194, i32 10000, i32 100000
  %.5.i = select i1 %_12.i194, i8 4, i8 5
  br label %_ZN4core3num7flt2dec8strategy5grisu22max_pow10_no_more_than17h2916684772bc779cE.exit

bb17.i195:                                        ; preds = %bb12.i
  %_18.i = icmp ult i32 %plus1int, 1000000000
  %.6.i = select i1 %_18.i, i32 100000000, i32 1000000000
  %.7.i = select i1 %_18.i, i8 8, i8 9
  br label %_ZN4core3num7flt2dec8strategy5grisu22max_pow10_no_more_than17h2916684772bc779cE.exit

bb18.i:                                           ; preds = %bb12.i
  %_16.i196 = icmp ult i32 %plus1int, 10000000
  %.8.i = select i1 %_16.i196, i32 1000000, i32 10000000
  %.9.i = select i1 %_16.i196, i8 6, i8 7
  br label %_ZN4core3num7flt2dec8strategy5grisu22max_pow10_no_more_than17h2916684772bc779cE.exit

_ZN4core3num7flt2dec8strategy5grisu22max_pow10_no_more_than17h2916684772bc779cE.exit: ; preds = %bb3.i191, %bb4.i192, %bb13.i, %bb17.i195, %bb18.i
  %.sroa.11.0.i = phi i32 [ %..i190, %bb3.i191 ], [ %.2.i, %bb4.i192 ], [ %.4.i, %bb13.i ], [ %.6.i, %bb17.i195 ], [ %.8.i, %bb18.i ]
  %.sroa.0.0.i = phi i8 [ %.1.i, %bb3.i191 ], [ %.3.i, %bb4.i192 ], [ %.5.i, %bb13.i ], [ %.7.i, %bb17.i195 ], [ %.9.i, %bb18.i ]
  %_121 = zext i8 %.sroa.0.0.i to i16
  %_120 = sub i16 %_121, %k.i
  %exp = add i16 %_120, 1
  %_35.i148.neg = sub i64 1, %ac.i137
  %_34.i150.neg = sub i64 %_35.i148.neg, %_37.i147
  %f.i152.neg = sub i64 %_34.i150.neg, %_39.i149
  %minus1.neg = sub i64 %f.i152.neg, %_41.i151
  %delta1 = add i64 %minus1.neg, %plus1
  %delta1frac = and i64 %delta1, %_111
  br label %bb30

bb19:                                             ; preds = %bb16
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [45 x i8] }>* @alloc18245 to [0 x i8]*), i16 45, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18247 to %"panic::Location"*))
  unreachable

bb30:                                             ; preds = %_ZN4core3num7flt2dec8strategy5grisu22max_pow10_no_more_than17h2916684772bc779cE.exit, %bb37
  %i.0237 = phi i16 [ 0, %_ZN4core3num7flt2dec8strategy5grisu22max_pow10_no_more_than17h2916684772bc779cE.exit ], [ %75, %bb37 ]
  %ten_kappa.0236 = phi i32 [ %.sroa.11.0.i, %_ZN4core3num7flt2dec8strategy5grisu22max_pow10_no_more_than17h2916684772bc779cE.exit ], [ %83, %bb37 ]
  %remainder.0235 = phi i32 [ %plus1int, %_ZN4core3num7flt2dec8strategy5grisu22max_pow10_no_more_than17h2916684772bc779cE.exit ], [ %r.decomposed, %bb37 ]
  %q = udiv i32 %remainder.0235, %ten_kappa.0236
  %72 = mul i32 %q, %ten_kappa.0236
  %r.decomposed = sub i32 %remainder.0235, %72
  %_148 = icmp ult i16 %i.0237, %buf.1
  br i1 %_148, label %bb31, label %panic3, !prof !4, !misexpect !5

bb31:                                             ; preds = %bb30
  %_144 = trunc i32 %q to i8
  %73 = getelementptr inbounds [0 x i8], [0 x i8]* %buf.0, i16 0, i16 %i.0237
  %74 = add i8 %_144, 48
  store i8 %74, i8* %73, align 1
  %75 = add nuw nsw i16 %i.0237, 1
  %_151 = zext i32 %r.decomposed to i64
  %_150 = shl i64 %_151, %71
  %plus1rem = add i64 %_150, %plus1frac
  %_155 = icmp ugt i64 %delta1, %plus1rem
  br i1 %_155, label %"_ZN4core6option15Option$LT$T$GT$6unwrap17hfec57bb2a60fcff6E.exit.i62", label %bb32

bb32:                                             ; preds = %bb31
  %_175 = icmp ult i16 %i.0237, %_121
  br i1 %_175, label %bb37, label %bb39

"_ZN4core6option15Option$LT$T$GT$6unwrap17hfec57bb2a60fcff6E.exit.i62": ; preds = %bb31
  %_159 = zext i32 %ten_kappa.0236 to i64
  %ten_kappa4 = shl i64 %_159, %71
  %_171 = sub i64 %plus1, %f.i178
  %plus1v_down.i55 = add i64 %_171, 1
  %plus1v_up.i56 = add i64 %_171, -1
  %_2619.i58 = icmp ule i64 %plus1v_up.i56, %plus1rem
  %_3020.i59 = sub i64 %delta1, %plus1rem
  %_2921.i60 = icmp ult i64 %_3020.i59, %ten_kappa4
  %or.cond22.i61 = or i1 %_2619.i58, %_2921.i60
  br i1 %or.cond22.i61, label %bb8.i68, label %bb9.i72

bb8.i68:                                          ; preds = %bb20.i81, %bb17.i76, %"_ZN4core6option15Option$LT$T$GT$6unwrap17hfec57bb2a60fcff6E.exit.i62"
  %plus1w.0.lcssa.i64 = phi i64 [ %plus1rem, %"_ZN4core6option15Option$LT$T$GT$6unwrap17hfec57bb2a60fcff6E.exit.i62" ], [ %_36.i70, %bb20.i81 ], [ %plus1w.023.i69, %bb17.i76 ]
  %_29.lcssa.i65 = phi i1 [ %_2921.i60, %"_ZN4core6option15Option$LT$T$GT$6unwrap17hfec57bb2a60fcff6E.exit.i62" ], [ %_29.i79, %bb20.i81 ], [ false, %bb17.i76 ]
  %_52.i66 = icmp ule i64 %plus1v_down.i55, %plus1w.0.lcssa.i64
  %or.cond17.i67 = or i1 %_52.i66, %_29.lcssa.i65
  br i1 %or.cond17.i67, label %bb22.i83, label %bb23.i86

bb9.i72:                                          ; preds = %"_ZN4core6option15Option$LT$T$GT$6unwrap17hfec57bb2a60fcff6E.exit.i62", %bb20.i81
  %76 = phi i8 [ %77, %bb20.i81 ], [ %74, %"_ZN4core6option15Option$LT$T$GT$6unwrap17hfec57bb2a60fcff6E.exit.i62" ]
  %plus1w.023.i69 = phi i64 [ %_36.i70, %bb20.i81 ], [ %plus1rem, %"_ZN4core6option15Option$LT$T$GT$6unwrap17hfec57bb2a60fcff6E.exit.i62" ]
  %_36.i70 = add i64 %plus1w.023.i69, %ten_kappa4
  %_35.i71 = icmp ult i64 %_36.i70, %plus1v_up.i56
  br i1 %_35.i71, label %bb20.i81, label %bb17.i76

bb17.i76:                                         ; preds = %bb9.i72
  %_41.i73 = sub i64 %plus1v_up.i56, %plus1w.023.i69
  %_44.i74 = sub i64 %_36.i70, %plus1v_up.i56
  %_40.i75 = icmp ult i64 %_41.i73, %_44.i74
  br i1 %_40.i75, label %bb8.i68, label %bb20.i81

bb20.i81:                                         ; preds = %bb17.i76, %bb9.i72
  %77 = add i8 %76, -1
  store i8 %77, i8* %73, align 1, !noalias !544
  %_26.i77 = icmp uge i64 %_36.i70, %plus1v_up.i56
  %_30.i78 = sub i64 %delta1, %_36.i70
  %_29.i79 = icmp ult i64 %_30.i78, %ten_kappa4
  %or.cond.i80 = or i1 %_26.i77, %_29.i79
  br i1 %or.cond.i80, label %bb8.i68, label %bb9.i72

bb22.i83:                                         ; preds = %bb31.i90, %bb8.i68
  %_76.i82 = icmp ult i64 %plus1w.0.lcssa.i64, 2
  %_82.i92 = add i64 %delta1, -4
  %_80.i93 = icmp ugt i64 %plus1w.0.lcssa.i64, %_82.i92
  %or.cond = or i1 %_76.i82, %_80.i93
  br i1 %or.cond, label %bb36, label %bb41.i96

bb23.i86:                                         ; preds = %bb8.i68
  %_62.i84 = add i64 %plus1w.0.lcssa.i64, %ten_kappa4
  %_61.i85 = icmp ult i64 %_62.i84, %plus1v_down.i55
  br i1 %_61.i85, label %bb36, label %bb31.i90

bb31.i90:                                         ; preds = %bb23.i86
  %_67.i87 = sub i64 %plus1v_down.i55, %plus1w.0.lcssa.i64
  %_70.i88 = sub i64 %_62.i84, %plus1v_down.i55
  %_66.i89 = icmp ult i64 %_67.i87, %_70.i88
  br i1 %_66.i89, label %bb22.i83, label %bb36

bb41.i96:                                         ; preds = %bb22.i83
  %78 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %0, i16 0, i32 2
  %79 = bitcast [4 x i8]* %78 to i16*
  store i16 %75, i16* %79, align 1, !alias.scope !544
  %80 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %0, i16 0, i32 2, i16 2
  %81 = bitcast i8* %80 to i16*
  store i16 %exp, i16* %81, align 1, !alias.scope !544
  br label %bb36

bb36:                                             ; preds = %bb22.i83, %bb23.i86, %bb31.i90, %bb22.i, %bb38.i, %bb23.i, %bb31.i, %bb41.i, %bb41.i96
  %.sink = phi i8 [ 1, %bb41.i ], [ 1, %bb41.i96 ], [ 0, %bb31.i ], [ 0, %bb23.i ], [ 0, %bb38.i ], [ 0, %bb22.i ], [ 0, %bb31.i90 ], [ 0, %bb23.i86 ], [ 0, %bb22.i83 ]
  %82 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %0, i16 0, i32 0, i16 0
  store i8 %.sink, i8* %82, align 1, !alias.scope !547
  ret void

bb37:                                             ; preds = %bb32
  %83 = udiv i32 %ten_kappa.0236, 10
  %84 = icmp ult i32 %ten_kappa.0236, 10
  br i1 %84, label %panic, label %bb30, !prof !91, !misexpect !550

bb39:                                             ; preds = %bb32, %bb40
  %threshold.0 = phi i64 [ %86, %bb40 ], [ %delta1frac, %bb32 ]
  %remainder1.0 = phi i64 [ %r6, %bb40 ], [ %plus1frac, %bb32 ]
  %ulp.0 = phi i64 [ %87, %bb40 ], [ 1, %bb32 ]
  %i.1 = phi i16 [ %90, %bb40 ], [ %75, %bb32 ]
  %85 = mul i64 %remainder1.0, 10
  %86 = mul i64 %threshold.0, 10
  %87 = mul i64 %ulp.0, 10
  %r6 = and i64 %85, %_111
  %_203 = icmp ult i16 %i.1, %buf.1
  br i1 %_203, label %bb40, label %panic7, !prof !4, !misexpect !5

bb40:                                             ; preds = %bb39
  %q5 = lshr i64 %85, %71
  %_199 = trunc i64 %q5 to i8
  %88 = getelementptr inbounds [0 x i8], [0 x i8]* %buf.0, i16 0, i16 %i.1
  %89 = add i8 %_199, 48
  store i8 %89, i8* %88, align 1
  %90 = add nuw i16 %i.1, 1
  %_204 = icmp ugt i64 %86, %r6
  br i1 %_204, label %"_ZN4core6option15Option$LT$T$GT$6unwrap17hfec57bb2a60fcff6E.exit.i", label %bb39

"_ZN4core6option15Option$LT$T$GT$6unwrap17hfec57bb2a60fcff6E.exit.i": ; preds = %bb40
  %_219 = sub i64 %plus1, %f.i178
  %_218 = mul i64 %87, %_219
  %plus1v_down.i = add i64 %_218, %87
  %plus1v_up.i = sub i64 %_218, %87
  %_2619.i = icmp ule i64 %plus1v_up.i, %r6
  %_3020.i = sub i64 %86, %r6
  %_2921.i = icmp ult i64 %_3020.i, %_112
  %or.cond22.i = or i1 %_2921.i, %_2619.i
  br i1 %or.cond22.i, label %bb8.i, label %bb9.i

bb8.i:                                            ; preds = %bb20.i, %bb17.i, %"_ZN4core6option15Option$LT$T$GT$6unwrap17hfec57bb2a60fcff6E.exit.i"
  %plus1w.0.lcssa.i = phi i64 [ %r6, %"_ZN4core6option15Option$LT$T$GT$6unwrap17hfec57bb2a60fcff6E.exit.i" ], [ %_36.i, %bb20.i ], [ %plus1w.023.i, %bb17.i ]
  %_29.lcssa.i = phi i1 [ %_2921.i, %"_ZN4core6option15Option$LT$T$GT$6unwrap17hfec57bb2a60fcff6E.exit.i" ], [ %_29.i, %bb20.i ], [ false, %bb17.i ]
  %_52.i = icmp ule i64 %plus1v_down.i, %plus1w.0.lcssa.i
  %or.cond17.i = or i1 %_52.i, %_29.lcssa.i
  br i1 %or.cond17.i, label %bb22.i, label %bb23.i

bb9.i:                                            ; preds = %"_ZN4core6option15Option$LT$T$GT$6unwrap17hfec57bb2a60fcff6E.exit.i", %bb20.i
  %91 = phi i8 [ %92, %bb20.i ], [ %89, %"_ZN4core6option15Option$LT$T$GT$6unwrap17hfec57bb2a60fcff6E.exit.i" ]
  %plus1w.023.i = phi i64 [ %_36.i, %bb20.i ], [ %r6, %"_ZN4core6option15Option$LT$T$GT$6unwrap17hfec57bb2a60fcff6E.exit.i" ]
  %_36.i = add i64 %plus1w.023.i, %_112
  %_35.i = icmp ult i64 %_36.i, %plus1v_up.i
  br i1 %_35.i, label %bb20.i, label %bb17.i

bb17.i:                                           ; preds = %bb9.i
  %_41.i = sub i64 %plus1v_up.i, %plus1w.023.i
  %_44.i = sub i64 %_36.i, %plus1v_up.i
  %_40.i = icmp ult i64 %_41.i, %_44.i
  br i1 %_40.i, label %bb8.i, label %bb20.i

bb20.i:                                           ; preds = %bb17.i, %bb9.i
  %92 = add i8 %91, -1
  store i8 %92, i8* %88, align 1, !noalias !551
  %_26.i = icmp uge i64 %_36.i, %plus1v_up.i
  %_30.i = sub i64 %86, %_36.i
  %_29.i = icmp ult i64 %_30.i, %_112
  %or.cond.i = or i1 %_26.i, %_29.i
  br i1 %or.cond.i, label %bb8.i, label %bb9.i

bb22.i:                                           ; preds = %bb31.i, %bb8.i
  %_77.i = mul i64 %ulp.0, 20
  %_76.i = icmp ugt i64 %_77.i, %plus1w.0.lcssa.i
  br i1 %_76.i, label %bb36, label %bb38.i

bb23.i:                                           ; preds = %bb8.i
  %_62.i = add i64 %plus1w.0.lcssa.i, %_112
  %_61.i = icmp ult i64 %_62.i, %plus1v_down.i
  br i1 %_61.i, label %bb36, label %bb31.i

bb31.i:                                           ; preds = %bb23.i
  %_67.i = sub i64 %plus1v_down.i, %plus1w.0.lcssa.i
  %_70.i = sub i64 %_62.i, %plus1v_down.i
  %_66.i = icmp ult i64 %_67.i, %_70.i
  br i1 %_66.i, label %bb22.i, label %bb36

bb38.i:                                           ; preds = %bb22.i
  %93 = mul i64 %ulp.0, -40
  %_82.i = add i64 %93, %86
  %_80.i = icmp ugt i64 %plus1w.0.lcssa.i, %_82.i
  br i1 %_80.i, label %bb36, label %bb41.i

bb41.i:                                           ; preds = %bb38.i
  %94 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %0, i16 0, i32 2
  %95 = bitcast [4 x i8]* %94 to i16*
  store i16 %90, i16* %95, align 1, !alias.scope !551
  %96 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %0, i16 0, i32 2, i16 2
  %97 = bitcast i8* %96 to i16*
  store i16 %exp, i16* %97, align 1, !alias.scope !551
  br label %bb36

panic:                                            ; preds = %bb37
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast ([25 x i8]* @str.1 to [0 x i8]*), i16 25, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18249 to %"panic::Location"*))
  unreachable

panic3:                                           ; preds = %bb30
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %buf.1, i16 %buf.1, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18253 to %"panic::Location"*))
  unreachable

panic7:                                           ; preds = %bb39
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %i.1, i16 %buf.1, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18257 to %"panic::Location"*))
  unreachable
}

; core::num::flt2dec::strategy::grisu::format_shortest
; Function Attrs: uwtable
define { i16, i16 } @_ZN4core3num7flt2dec8strategy5grisu15format_shortest17h13fe7cab00515fedE(%"num::flt2dec::decoder::Decoded"* noalias nocapture readonly align 1 dereferenceable(27) %d, [0 x i8]* nonnull align 1 %buf.0, i16 %buf.1) unnamed_addr addrspace(1) #2 {
start:
  %_3 = alloca %"option::Option<(usize, i16)>", align 1
  %0 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %_3, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 5, i8* nonnull %0)
; call core::num::flt2dec::strategy::grisu::format_shortest_opt
  call addrspace(1) void @_ZN4core3num7flt2dec8strategy5grisu19format_shortest_opt17h7dc38a7ef9464546E(%"option::Option<(usize, i16)>"* noalias nocapture nonnull sret dereferenceable(5) %_3, %"num::flt2dec::decoder::Decoded"* noalias nonnull readonly align 1 dereferenceable(27) %d, [0 x i8]* nonnull align 1 %buf.0, i16 %buf.1)
  %1 = load i8, i8* %0, align 1, !range !87
  %switch = icmp eq i8 %1, 1
  br i1 %switch, label %bb4, label %bb2

bb2:                                              ; preds = %start
; call core::num::flt2dec::strategy::dragon::format_shortest
  %2 = tail call addrspace(1) { i16, i16 } @_ZN4core3num7flt2dec8strategy6dragon15format_shortest17h0c494f8b5739104dE(%"num::flt2dec::decoder::Decoded"* noalias nonnull readonly align 1 dereferenceable(27) %d, [0 x i8]* nonnull align 1 %buf.0, i16 %buf.1)
  %.fca.0.extract = extractvalue { i16, i16 } %2, 0
  %.fca.1.extract = extractvalue { i16, i16 } %2, 1
  br label %bb6

bb4:                                              ; preds = %start
  %3 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %_3, i16 0, i32 2
  %4 = bitcast [4 x i8]* %3 to i16*
  %ret.0 = load i16, i16* %4, align 1
  %5 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %_3, i16 0, i32 2, i16 2
  %6 = bitcast i8* %5 to i16*
  %ret.1 = load i16, i16* %6, align 1
  br label %bb6

bb6:                                              ; preds = %bb2, %bb4
  %.sroa.3.0 = phi i16 [ %.fca.1.extract, %bb2 ], [ %ret.1, %bb4 ]
  %.sroa.0.0 = phi i16 [ %.fca.0.extract, %bb2 ], [ %ret.0, %bb4 ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 5, i8* nonnull %0)
  %7 = insertvalue { i16, i16 } undef, i16 %.sroa.0.0, 0
  %8 = insertvalue { i16, i16 } %7, i16 %.sroa.3.0, 1
  ret { i16, i16 } %8
}

; core::num::flt2dec::strategy::grisu::format_exact_opt
; Function Attrs: uwtable
define void @_ZN4core3num7flt2dec8strategy5grisu16format_exact_opt17he193f633dc4a3d8fE(%"option::Option<(usize, i16)>"* noalias nocapture sret dereferenceable(5) %0, %"num::flt2dec::decoder::Decoded"* noalias nocapture readonly align 1 dereferenceable(27) %d, [0 x i8]* nonnull align 1 %buf.0, i16 %buf.1, i16 %limit) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %1 = bitcast %"num::flt2dec::decoder::Decoded"* %d to i64*
  %_6 = load i64, i64* %1, align 1
  %_5 = icmp eq i64 %_6, 0
  br i1 %_5, label %bb2, label %bb1

bb1:                                              ; preds = %start
  %_10 = icmp ugt i64 %_6, 2305843009213693951
  br i1 %_10, label %bb4, label %bb3

bb2:                                              ; preds = %start
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [28 x i8] }>* @alloc18265 to [0 x i8]*), i16 28, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18267 to %"panic::Location"*))
  unreachable

bb3:                                              ; preds = %bb1
  %2 = icmp eq i16 %buf.1, 0
  br i1 %2, label %bb7, label %bb6

bb4:                                              ; preds = %bb1
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [36 x i8] }>* @alloc18268 to [0 x i8]*), i16 36, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18270 to %"panic::Location"*))
  unreachable

bb6:                                              ; preds = %bb3
  %3 = getelementptr inbounds %"num::flt2dec::decoder::Decoded", %"num::flt2dec::decoder::Decoded"* %d, i16 0, i32 7
  %_25 = load i16, i16* %3, align 1
  %_4.i = icmp ult i64 %_6, 4294967296
  %4 = shl i64 %_6, 32
  %5 = add i16 %_25, -32
  %f.0.i = select i1 %_4.i, i64 %4, i64 %_6
  %e.0.i = select i1 %_4.i, i16 %5, i16 %_25
  %_8.i = icmp ult i64 %f.0.i, 281474976710656
  %6 = shl i64 %f.0.i, 16
  %7 = add i16 %e.0.i, -16
  %f.1.i = select i1 %_8.i, i64 %6, i64 %f.0.i
  %e.1.i = select i1 %_8.i, i16 %7, i16 %e.0.i
  %_12.i = icmp ult i64 %f.1.i, 72057594037927936
  %8 = shl i64 %f.1.i, 8
  %9 = add i16 %e.1.i, -8
  %f.2.i = select i1 %_12.i, i64 %8, i64 %f.1.i
  %e.2.i = select i1 %_12.i, i16 %9, i16 %e.1.i
  %_16.i = icmp ult i64 %f.2.i, 1152921504606846976
  %10 = shl i64 %f.2.i, 4
  %11 = add i16 %e.2.i, -4
  %f.3.i = select i1 %_16.i, i64 %10, i64 %f.2.i
  %e.3.i = select i1 %_16.i, i16 %11, i16 %e.2.i
  %_20.i = icmp ult i64 %f.3.i, 4611686018427387904
  %12 = shl i64 %f.3.i, 2
  %13 = add i16 %e.3.i, -2
  %f.4.i = select i1 %_20.i, i64 %12, i64 %f.3.i
  %e.4.i = select i1 %_20.i, i16 %13, i16 %e.3.i
  %f.4.lobit.i = lshr i64 %f.4.i, 63
  %f.4.lobit.not.i = xor i64 %f.4.lobit.i, 1
  %f.5.i = shl i64 %f.4.i, %f.4.lobit.not.i
  %f.4.lobit21.i = ashr i64 %f.4.i, 63
  %14 = trunc i64 %f.4.lobit21.i to i16
  %.not.i = xor i16 %14, -1
  %e.5.i = add i16 %e.4.i, %.not.i
  %_32 = sub i16 -96, %e.5.i
  %_14.i = sext i16 %_32 to i32
  %15 = mul nsw i32 %_14.i, 80
  %_12.i34 = add nsw i32 %15, 86960
  %idx.i = sdiv i32 %_12.i34, 2126
  %_26.i = trunc i32 %idx.i to i16
  %_29.i = icmp ult i16 %_26.i, 81
  br i1 %_29.i, label %_ZN4core3num7flt2dec8strategy5grisu12cached_power17ha181dc46c2aec330E.exit, label %panic1.i, !prof !4, !misexpect !5

panic1.i:                                         ; preds = %bb6
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_26.i, i16 81, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18226 to %"panic::Location"*)), !noalias !552
  unreachable

_ZN4core3num7flt2dec8strategy5grisu12cached_power17ha181dc46c2aec330E.exit: ; preds = %bb6
  %16 = getelementptr inbounds [81 x { [0 x i8], i64, [0 x i8], i16, [0 x i8], i16, [0 x i8] }], [81 x { [0 x i8], i64, [0 x i8], i16, [0 x i8], i16, [0 x i8] }]* bitcast (<{ [972 x i8] }>* @_ZN4core3num7flt2dec8strategy5grisu12CACHED_POW1017hfa9f1ed7fffa0d3fE to [81 x { [0 x i8], i64, [0 x i8], i16, [0 x i8], i16, [0 x i8] }]*), i16 0, i16 %_26.i
  %17 = bitcast { [0 x i8], i64, [0 x i8], i16, [0 x i8], i16, [0 x i8] }* %16 to i64*
  %f.i = load i64, i64* %17, align 1, !noalias !552
  %18 = getelementptr inbounds [81 x { [0 x i8], i64, [0 x i8], i16, [0 x i8], i16, [0 x i8] }], [81 x { [0 x i8], i64, [0 x i8], i16, [0 x i8], i16, [0 x i8] }]* bitcast (<{ [972 x i8] }>* @_ZN4core3num7flt2dec8strategy5grisu12CACHED_POW1017hfa9f1ed7fffa0d3fE to [81 x { [0 x i8], i64, [0 x i8], i16, [0 x i8], i16, [0 x i8] }]*), i16 0, i16 %_26.i, i32 3
  %e.i = load i16, i16* %18, align 1, !noalias !552
  %19 = getelementptr inbounds [81 x { [0 x i8], i64, [0 x i8], i16, [0 x i8], i16, [0 x i8] }], [81 x { [0 x i8], i64, [0 x i8], i16, [0 x i8], i16, [0 x i8] }]* bitcast (<{ [972 x i8] }>* @_ZN4core3num7flt2dec8strategy5grisu12CACHED_POW1017hfa9f1ed7fffa0d3fE to [81 x { [0 x i8], i64, [0 x i8], i16, [0 x i8], i16, [0 x i8] }]*), i16 0, i16 %_26.i, i32 5
  %k.i = load i16, i16* %19, align 1, !noalias !552
  %a.i = lshr i64 %f.5.i, 32
  %b.i = and i64 %f.5.i, 4294967295
  %c.i = lshr i64 %f.i, 32
  %d.i = and i64 %f.i, 4294967295
  %ac.i = mul nuw i64 %c.i, %a.i
  %bc.i = mul nuw i64 %c.i, %b.i
  %ad.i = mul nuw i64 %d.i, %a.i
  %bd.i = mul nuw i64 %d.i, %b.i
  %_26.i37 = lshr i64 %bd.i, 32
  %_28.i = and i64 %ad.i, 4294967295
  %_30.i = and i64 %bc.i, 4294967295
  %_25.i = add nuw nsw i64 %_28.i, 2147483648
  %_24.i = add nuw nsw i64 %_25.i, %_26.i37
  %tmp.i = add nuw nsw i64 %_24.i, %_30.i
  %_37.i = lshr i64 %ad.i, 32
  %_35.i = add nuw i64 %_37.i, %ac.i
  %_39.i = lshr i64 %bc.i, 32
  %_34.i = add nuw i64 %_35.i, %_39.i
  %_41.i = lshr i64 %tmp.i, 32
  %f.i38 = add i64 %_34.i, %_41.i
  %_44.i = add i16 %e.5.i, 64
  %e.i39 = add i16 %_44.i, %e.i
  %_40 = sub i16 0, %e.i39
  %20 = and i16 %_40, 63
  %21 = zext i16 %20 to i64
  %_43 = lshr i64 %f.i38, %21
  %vint = trunc i64 %_43 to i32
  %_49 = shl nuw i64 1, %21
  %_48 = add i64 %_49, -1
  %vfrac = and i64 %f.i38, %_48
  %_2.i = icmp ult i32 %vint, 10000
  br i1 %_2.i, label %bb2.i, label %bb1.i

bb1.i:                                            ; preds = %_ZN4core3num7flt2dec8strategy5grisu12cached_power17ha181dc46c2aec330E.exit
  %_10.i = icmp ult i32 %vint, 1000000
  br i1 %_10.i, label %bb13.i, label %bb12.i

bb2.i:                                            ; preds = %_ZN4core3num7flt2dec8strategy5grisu12cached_power17ha181dc46c2aec330E.exit
  %_4.i40 = icmp ult i32 %vint, 100
  br i1 %_4.i40, label %bb4.i, label %bb3.i

bb3.i:                                            ; preds = %bb2.i
  %_8.i41 = icmp ult i32 %vint, 1000
  %..i = select i1 %_8.i41, i32 100, i32 1000
  %.1.i = select i1 %_8.i41, i8 2, i8 3
  br label %_ZN4core3num7flt2dec8strategy5grisu22max_pow10_no_more_than17h2916684772bc779cE.exit

bb4.i:                                            ; preds = %bb2.i
  %_6.i = icmp ult i32 %vint, 10
  %.2.i = select i1 %_6.i, i32 1, i32 10
  %not._6.i = xor i1 %_6.i, true
  %.3.i = zext i1 %not._6.i to i8
  br label %_ZN4core3num7flt2dec8strategy5grisu22max_pow10_no_more_than17h2916684772bc779cE.exit

bb12.i:                                           ; preds = %bb1.i
  %_14.i42 = icmp ult i32 %vint, 100000000
  br i1 %_14.i42, label %bb18.i, label %bb17.i

bb13.i:                                           ; preds = %bb1.i
  %_12.i43 = icmp ult i32 %vint, 100000
  %.4.i = select i1 %_12.i43, i32 10000, i32 100000
  %.5.i = select i1 %_12.i43, i8 4, i8 5
  br label %_ZN4core3num7flt2dec8strategy5grisu22max_pow10_no_more_than17h2916684772bc779cE.exit

bb17.i:                                           ; preds = %bb12.i
  %_18.i = icmp ult i32 %vint, 1000000000
  %.6.i = select i1 %_18.i, i32 100000000, i32 1000000000
  %.7.i = select i1 %_18.i, i8 8, i8 9
  br label %_ZN4core3num7flt2dec8strategy5grisu22max_pow10_no_more_than17h2916684772bc779cE.exit

bb18.i:                                           ; preds = %bb12.i
  %_16.i44 = icmp ult i32 %vint, 10000000
  %.8.i = select i1 %_16.i44, i32 1000000, i32 10000000
  %.9.i = select i1 %_16.i44, i8 6, i8 7
  br label %_ZN4core3num7flt2dec8strategy5grisu22max_pow10_no_more_than17h2916684772bc779cE.exit

_ZN4core3num7flt2dec8strategy5grisu22max_pow10_no_more_than17h2916684772bc779cE.exit: ; preds = %bb3.i, %bb4.i, %bb13.i, %bb17.i, %bb18.i
  %.sroa.11.0.i = phi i32 [ %..i, %bb3.i ], [ %.2.i, %bb4.i ], [ %.4.i, %bb13.i ], [ %.6.i, %bb17.i ], [ %.8.i, %bb18.i ]
  %.sroa.0.0.i = phi i8 [ %.1.i, %bb3.i ], [ %.3.i, %bb4.i ], [ %.5.i, %bb13.i ], [ %.7.i, %bb17.i ], [ %.9.i, %bb18.i ]
  %_59 = zext i8 %.sroa.0.0.i to i16
  %_58 = sub i16 %_59, %k.i
  %exp = add i16 %_58, 1
  %_63 = icmp sgt i16 %exp, %limit
  br i1 %_63, label %bb12, label %bb13

bb7:                                              ; preds = %bb3
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [33 x i8] }>* @alloc18355 to [0 x i8]*), i16 33, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18273 to %"panic::Location"*))
  unreachable

bb12:                                             ; preds = %_ZN4core3num7flt2dec8strategy5grisu22max_pow10_no_more_than17h2916684772bc779cE.exit
  %_80 = sub i16 %exp, %limit
  %_78 = icmp ult i16 %_80, %buf.1
  %spec.select = select i1 %_78, i16 %_80, i16 %buf.1
  br label %bb23

bb13:                                             ; preds = %_ZN4core3num7flt2dec8strategy5grisu22max_pow10_no_more_than17h2916684772bc779cE.exit
  %_69 = udiv i64 %f.i38, 10
  %_72 = zext i32 %.sroa.11.0.i to i64
  %_71 = shl i64 %_72, %21
  %_8.i91 = icmp ugt i64 %_71, %_49
  %_12.i92 = sub i64 %_71, %_49
  %_11.i93 = icmp ugt i64 %_12.i92, %_49
  %or.cond207 = and i1 %_8.i91, %_11.i93
  br i1 %or.cond207, label %bb4.i99, label %bb15

bb4.i99:                                          ; preds = %bb13
  %_18.i97 = sub i64 %_71, %_69
  %_17.i98 = icmp ugt i64 %_18.i97, %_69
  br i1 %_17.i98, label %bb8.i105, label %bb10.critedge.i107

bb8.i105:                                         ; preds = %bb4.i99
  %_25.i101 = shl nuw nsw i64 %_69, 1
  %_23.i102 = sub i64 %_71, %_25.i101
  %_27.i103 = shl i64 %_49, 1
  %_22.i104 = icmp ult i64 %_23.i102, %_27.i103
  br i1 %_22.i104, label %bb10.critedge.i107, label %bb11.i108

bb10.critedge.i107:                               ; preds = %bb8.i105, %bb4.i99
  %_33.i106 = icmp ugt i64 %_69, %_49
  br i1 %_33.i106, label %bb14.i112, label %bb15

bb11.i108:                                        ; preds = %bb8.i105
  %22 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %0, i16 0, i32 2
  %23 = bitcast [4 x i8]* %22 to i16*
  store i16 0, i16* %23, align 1, !alias.scope !555
  %24 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %0, i16 0, i32 2, i16 2
  %25 = bitcast i8* %24 to i16*
  store i16 %exp, i16* %25, align 1, !alias.scope !555
  br label %bb15

bb14.i112:                                        ; preds = %bb10.critedge.i107
  %_39.i109 = sub i64 %_69, %_49
  %_37.i110 = sub i64 %_71, %_39.i109
  %_36.i111 = icmp ugt i64 %_37.i110, %_39.i109
  br i1 %_36.i111, label %bb15, label %bb17.i116

bb17.i116:                                        ; preds = %bb14.i112
  %26 = add i16 %_58, 2
  %_51.i117 = icmp sgt i16 %26, %limit
  br i1 %_51.i117, label %bb28.i121, label %bb30.i124

bb28.i121:                                        ; preds = %bb17.i116
  %27 = getelementptr [0 x i8], [0 x i8]* %buf.0, i16 0, i16 0
  store i8 49, i8* %27, align 1, !noalias !555
  br label %bb30.i124

bb30.i124:                                        ; preds = %bb28.i121, %bb17.i116
  %len.1.i123 = phi i16 [ 1, %bb28.i121 ], [ 0, %bb17.i116 ]
  %28 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %0, i16 0, i32 2
  %29 = bitcast [4 x i8]* %28 to i16*
  store i16 %len.1.i123, i16* %29, align 1, !alias.scope !555
  %30 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %0, i16 0, i32 2, i16 2
  %31 = bitcast i8* %30 to i16*
  store i16 %26, i16* %31, align 1, !alias.scope !555
  br label %bb15

bb15:                                             ; preds = %bb31, %bb10.critedge.i107, %bb14.i112, %bb13, %bb10.critedge.i, %bb14.i, %bb36, %bb10.critedge.i72, %bb14.i77, %bb26, %bb30.i, %bb11.i, %bb30.i89, %bb11.i73, %bb30.i124, %bb11.i108
  %.sink = phi i8 [ 1, %bb30.i ], [ 1, %bb11.i ], [ 1, %bb30.i89 ], [ 1, %bb11.i73 ], [ 1, %bb30.i124 ], [ 1, %bb11.i108 ], [ 0, %bb26 ], [ 0, %bb14.i77 ], [ 0, %bb10.critedge.i72 ], [ 0, %bb36 ], [ 0, %bb14.i ], [ 0, %bb10.critedge.i ], [ 0, %bb13 ], [ 0, %bb14.i112 ], [ 0, %bb10.critedge.i107 ], [ 0, %bb31 ]
  %32 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %0, i16 0, i32 0, i16 0
  store i8 %.sink, i8* %32, align 1
  ret void

bb23:                                             ; preds = %bb12, %bb29
  %i.0158 = phi i16 [ 0, %bb12 ], [ %36, %bb29 ]
  %ten_kappa.0157 = phi i32 [ %.sroa.11.0.i, %bb12 ], [ %51, %bb29 ]
  %remainder.0156 = phi i32 [ %vint, %bb12 ], [ %r.decomposed, %bb29 ]
  %q = udiv i32 %remainder.0156, %ten_kappa.0157
  %33 = mul i32 %q, %ten_kappa.0157
  %r.decomposed = sub i32 %remainder.0156, %33
  %_107 = icmp ult i16 %i.0158, %buf.1
  br i1 %_107, label %bb24, label %panic3, !prof !4, !misexpect !5

bb24:                                             ; preds = %bb23
  %_103 = trunc i32 %q to i8
  %34 = getelementptr inbounds [0 x i8], [0 x i8]* %buf.0, i16 0, i16 %i.0158
  %35 = add i8 %_103, 48
  store i8 %35, i8* %34, align 1
  %36 = add nuw nsw i16 %i.0158, 1
  %_108 = icmp eq i16 %36, %spec.select
  br i1 %_108, label %bb26, label %bb25

bb25:                                             ; preds = %bb24
  %_129 = icmp ult i16 %i.0158, %_59
  br i1 %_129, label %bb29, label %bb30

bb26:                                             ; preds = %bb24
  %_113 = zext i32 %r.decomposed to i64
  %_112 = shl i64 %_113, %21
  %vrem = add i64 %_112, %vfrac
  %_123 = zext i32 %ten_kappa.0157 to i64
  %_122 = shl i64 %_123, %21
  %_8.i56 = icmp ugt i64 %_122, %_49
  %_12.i57 = sub i64 %_122, %_49
  %_11.i58 = icmp ugt i64 %_12.i57, %_49
  %or.cond = and i1 %_8.i56, %_11.i58
  br i1 %or.cond, label %bb4.i64, label %bb15

bb4.i64:                                          ; preds = %bb26
  %_18.i62 = sub i64 %_122, %vrem
  %_17.i63 = icmp ugt i64 %_18.i62, %vrem
  br i1 %_17.i63, label %bb8.i70, label %bb10.critedge.i72

bb8.i70:                                          ; preds = %bb4.i64
  %_25.i66 = shl i64 %vrem, 1
  %_23.i67 = sub i64 %_122, %_25.i66
  %_27.i68 = shl i64 %_49, 1
  %_22.i69 = icmp ult i64 %_23.i67, %_27.i68
  br i1 %_22.i69, label %bb10.critedge.i72, label %bb11.i73

bb10.critedge.i72:                                ; preds = %bb8.i70, %bb4.i64
  %_33.i71 = icmp ugt i64 %vrem, %_49
  br i1 %_33.i71, label %bb14.i77, label %bb15

bb11.i73:                                         ; preds = %bb8.i70
  %37 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %0, i16 0, i32 2
  %38 = bitcast [4 x i8]* %37 to i16*
  store i16 %spec.select, i16* %38, align 1, !alias.scope !558
  %39 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %0, i16 0, i32 2, i16 2
  %40 = bitcast i8* %39 to i16*
  store i16 %exp, i16* %40, align 1, !alias.scope !558
  br label %bb15

bb14.i77:                                         ; preds = %bb10.critedge.i72
  %_39.i74 = sub i64 %vrem, %_49
  %_37.i75 = sub i64 %_122, %_39.i74
  %_36.i76 = icmp ugt i64 %_37.i75, %_39.i74
  br i1 %_36.i76, label %bb15, label %bb17.i81

bb17.i81:                                         ; preds = %bb14.i77
; call core::num::flt2dec::round_up
  %41 = tail call addrspace(1) { i8, i8 } @_ZN4core3num7flt2dec8round_up17haab4a1ca790fdd49E([0 x i8]* nonnull align 1 %buf.0, i16 %buf.1, i16 %spec.select), !noalias !558
  %.fca.0.extract.i79 = extractvalue { i8, i8 } %41, 0
  %.fca.1.extract.i80 = extractvalue { i8, i8 } %41, 1
  %42 = and i8 %.fca.0.extract.i79, 1
  %43 = icmp eq i8 %42, 0
  br i1 %43, label %bb30.i89, label %bb20.i85

bb20.i85:                                         ; preds = %bb17.i81
  %44 = add i16 %_58, 2
  %_51.i82 = icmp sgt i16 %44, %limit
  %or.cond.i84 = and i1 %_51.i82, %_78
  br i1 %or.cond.i84, label %bb28.i86, label %bb30.i89

bb28.i86:                                         ; preds = %bb20.i85
  %45 = getelementptr inbounds [0 x i8], [0 x i8]* %buf.0, i16 0, i16 %spec.select
  store i8 %.fca.1.extract.i80, i8* %45, align 1, !noalias !558
  %46 = add nuw i16 %spec.select, 1
  br label %bb30.i89

bb30.i89:                                         ; preds = %bb28.i86, %bb20.i85, %bb17.i81
  %exp.0.i87 = phi i16 [ %exp, %bb17.i81 ], [ %44, %bb28.i86 ], [ %44, %bb20.i85 ]
  %len.1.i88 = phi i16 [ %spec.select, %bb17.i81 ], [ %46, %bb28.i86 ], [ %spec.select, %bb20.i85 ]
  %47 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %0, i16 0, i32 2
  %48 = bitcast [4 x i8]* %47 to i16*
  store i16 %len.1.i88, i16* %48, align 1, !alias.scope !558
  %49 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %0, i16 0, i32 2, i16 2
  %50 = bitcast i8* %49 to i16*
  store i16 %exp.0.i87, i16* %50, align 1, !alias.scope !558
  br label %bb15

bb29:                                             ; preds = %bb25
  %51 = udiv i32 %ten_kappa.0157, 10
  %52 = icmp ult i32 %ten_kappa.0157, 10
  br i1 %52, label %panic, label %bb23, !prof !91, !misexpect !550

bb30:                                             ; preds = %bb25
  %_144 = and i16 %e.i39, 63
  %53 = xor i16 %_144, 63
  %54 = zext i16 %53 to i64
  br label %bb31

bb31:                                             ; preds = %bb34, %bb30
  %remainder1.0 = phi i64 [ %vfrac, %bb30 ], [ %r5, %bb34 ]
  %i.1 = phi i16 [ %36, %bb30 ], [ %59, %bb34 ]
  %err.0 = phi i64 [ 1, %bb30 ], [ %56, %bb34 ]
  %err.0.highbits = lshr i64 %err.0, %54
  %_146 = icmp eq i64 %err.0.highbits, 0
  br i1 %_146, label %bb33, label %bb15

bb33:                                             ; preds = %bb31
  %55 = mul i64 %remainder1.0, 10
  %56 = mul i64 %err.0, 10
  %r5 = and i64 %55, %_48
  %_161 = icmp ult i16 %i.1, %buf.1
  br i1 %_161, label %bb34, label %panic6, !prof !4, !misexpect !5

bb34:                                             ; preds = %bb33
  %q4 = lshr i64 %55, %21
  %_157 = trunc i64 %q4 to i8
  %57 = getelementptr inbounds [0 x i8], [0 x i8]* %buf.0, i16 0, i16 %i.1
  %58 = add i8 %_157, 48
  store i8 %58, i8* %57, align 1
  %59 = add nuw i16 %i.1, 1
  %_162 = icmp eq i16 %59, %spec.select
  br i1 %_162, label %bb36, label %bb31

bb36:                                             ; preds = %bb34
  %_8.i45 = icmp ugt i64 %_49, %56
  %_12.i46 = sub i64 %_49, %56
  %_11.i = icmp ugt i64 %_12.i46, %56
  %or.cond206 = and i1 %_8.i45, %_11.i
  br i1 %or.cond206, label %bb4.i51, label %bb15

bb4.i51:                                          ; preds = %bb36
  %_18.i50 = sub i64 %_49, %r5
  %_17.i = icmp ugt i64 %_18.i50, %r5
  br i1 %_17.i, label %bb8.i, label %bb10.critedge.i

bb8.i:                                            ; preds = %bb4.i51
  %_25.i52 = shl i64 %r5, 1
  %_23.i = sub i64 %_49, %_25.i52
  %_27.i = mul i64 %err.0, 20
  %_22.i = icmp ult i64 %_23.i, %_27.i
  br i1 %_22.i, label %bb10.critedge.i, label %bb11.i

bb10.critedge.i:                                  ; preds = %bb8.i, %bb4.i51
  %_33.i = icmp ugt i64 %r5, %56
  br i1 %_33.i, label %bb14.i, label %bb15

bb11.i:                                           ; preds = %bb8.i
  %60 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %0, i16 0, i32 2
  %61 = bitcast [4 x i8]* %60 to i16*
  store i16 %spec.select, i16* %61, align 1, !alias.scope !561
  %62 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %0, i16 0, i32 2, i16 2
  %63 = bitcast i8* %62 to i16*
  store i16 %exp, i16* %63, align 1, !alias.scope !561
  br label %bb15

bb14.i:                                           ; preds = %bb10.critedge.i
  %_39.i53 = sub i64 %r5, %56
  %_37.i54 = sub i64 %_49, %_39.i53
  %_36.i = icmp ugt i64 %_37.i54, %_39.i53
  br i1 %_36.i, label %bb15, label %bb17.i55

bb17.i55:                                         ; preds = %bb14.i
; call core::num::flt2dec::round_up
  %64 = tail call addrspace(1) { i8, i8 } @_ZN4core3num7flt2dec8round_up17haab4a1ca790fdd49E([0 x i8]* nonnull align 1 %buf.0, i16 %buf.1, i16 %spec.select), !noalias !561
  %.fca.0.extract.i = extractvalue { i8, i8 } %64, 0
  %.fca.1.extract.i = extractvalue { i8, i8 } %64, 1
  %65 = and i8 %.fca.0.extract.i, 1
  %66 = icmp eq i8 %65, 0
  br i1 %66, label %bb30.i, label %bb20.i

bb20.i:                                           ; preds = %bb17.i55
  %67 = add i16 %_58, 2
  %_51.i = icmp sgt i16 %67, %limit
  %or.cond.i = and i1 %_51.i, %_78
  br i1 %or.cond.i, label %bb28.i, label %bb30.i

bb28.i:                                           ; preds = %bb20.i
  %68 = getelementptr inbounds [0 x i8], [0 x i8]* %buf.0, i16 0, i16 %spec.select
  store i8 %.fca.1.extract.i, i8* %68, align 1, !noalias !561
  %69 = add nuw i16 %spec.select, 1
  br label %bb30.i

bb30.i:                                           ; preds = %bb28.i, %bb20.i, %bb17.i55
  %exp.0.i = phi i16 [ %exp, %bb17.i55 ], [ %67, %bb28.i ], [ %67, %bb20.i ]
  %len.1.i = phi i16 [ %spec.select, %bb17.i55 ], [ %69, %bb28.i ], [ %spec.select, %bb20.i ]
  %70 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %0, i16 0, i32 2
  %71 = bitcast [4 x i8]* %70 to i16*
  store i16 %len.1.i, i16* %71, align 1, !alias.scope !561
  %72 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %0, i16 0, i32 2, i16 2
  %73 = bitcast i8* %72 to i16*
  store i16 %exp.0.i, i16* %73, align 1, !alias.scope !561
  br label %bb15

panic:                                            ; preds = %bb29
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast ([25 x i8]* @str.1 to [0 x i8]*), i16 25, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18275 to %"panic::Location"*))
  unreachable

panic3:                                           ; preds = %bb23
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %buf.1, i16 %buf.1, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18279 to %"panic::Location"*))
  unreachable

panic6:                                           ; preds = %bb33
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %i.1, i16 %buf.1, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18281 to %"panic::Location"*))
  unreachable
}

; core::num::flt2dec::strategy::grisu::format_exact
; Function Attrs: uwtable
define { i16, i16 } @_ZN4core3num7flt2dec8strategy5grisu12format_exact17h149e87f1ffbd8795E(%"num::flt2dec::decoder::Decoded"* noalias nocapture readonly align 1 dereferenceable(27) %d, [0 x i8]* nonnull align 1 %buf.0, i16 %buf.1, i16 %limit) unnamed_addr addrspace(1) #2 {
start:
  %_4 = alloca %"option::Option<(usize, i16)>", align 1
  %0 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %_4, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 5, i8* nonnull %0)
; call core::num::flt2dec::strategy::grisu::format_exact_opt
  call addrspace(1) void @_ZN4core3num7flt2dec8strategy5grisu16format_exact_opt17he193f633dc4a3d8fE(%"option::Option<(usize, i16)>"* noalias nocapture nonnull sret dereferenceable(5) %_4, %"num::flt2dec::decoder::Decoded"* noalias nonnull readonly align 1 dereferenceable(27) %d, [0 x i8]* nonnull align 1 %buf.0, i16 %buf.1, i16 %limit)
  %1 = load i8, i8* %0, align 1, !range !87
  %switch = icmp eq i8 %1, 1
  br i1 %switch, label %bb4, label %bb2

bb2:                                              ; preds = %start
; call core::num::flt2dec::strategy::dragon::format_exact
  %2 = tail call addrspace(1) { i16, i16 } @_ZN4core3num7flt2dec8strategy6dragon12format_exact17h8254a82163510597E(%"num::flt2dec::decoder::Decoded"* noalias nonnull readonly align 1 dereferenceable(27) %d, [0 x i8]* nonnull align 1 %buf.0, i16 %buf.1, i16 %limit)
  %.fca.0.extract = extractvalue { i16, i16 } %2, 0
  %.fca.1.extract = extractvalue { i16, i16 } %2, 1
  br label %bb6

bb4:                                              ; preds = %start
  %3 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %_4, i16 0, i32 2
  %4 = bitcast [4 x i8]* %3 to i16*
  %ret.0 = load i16, i16* %4, align 1
  %5 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %_4, i16 0, i32 2, i16 2
  %6 = bitcast i8* %5 to i16*
  %ret.1 = load i16, i16* %6, align 1
  br label %bb6

bb6:                                              ; preds = %bb2, %bb4
  %.sroa.3.0 = phi i16 [ %.fca.1.extract, %bb2 ], [ %ret.1, %bb4 ]
  %.sroa.0.0 = phi i16 [ %.fca.0.extract, %bb2 ], [ %ret.0, %bb4 ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 5, i8* nonnull %0)
  %7 = insertvalue { i16, i16 } undef, i16 %.sroa.0.0, 0
  %8 = insertvalue { i16, i16 } %7, i16 %.sroa.3.0, 1
  ret { i16, i16 } %8
}

; core::num::flt2dec::round_up
; Function Attrs: uwtable
define { i8, i8 } @_ZN4core3num7flt2dec8round_up17haab4a1ca790fdd49E([0 x i8]* nonnull align 1 %d.0, i16 %d.1, i16 %n) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_8.i.i.i = icmp ult i16 %d.1, %n
  br i1 %_8.i.i.i, label %bb5.i.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit"

bb5.i.i.i:                                        ; preds = %start
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %n, i16 %d.1, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18285 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit": ; preds = %start
  %0 = getelementptr [0 x i8], [0 x i8]* %d.0, i16 0, i16 0
  %1 = getelementptr inbounds [0 x i8], [0 x i8]* %d.0, i16 0, i16 %n
  br label %bb13.i

bb13.i:                                           ; preds = %bb17.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit"
  %_12.i.i = phi i8* [ %1, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit" ], [ %2, %bb17.i ]
  %i.0.i = phi i16 [ %n, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit" ], [ %3, %bb17.i ]
  %_13.i.i = icmp eq i8* %0, %_12.i.i
  br i1 %_13.i.i, label %bb14, label %bb17.i

bb17.i:                                           ; preds = %bb13.i
  %2 = getelementptr inbounds i8, i8* %_12.i.i, i16 -1
  %3 = add i16 %i.0.i, -1
  %.val.i = load i8, i8* %2, align 1
  %4 = icmp eq i8 %.val.i, 57
  br i1 %4, label %bb13.i, label %bb5

bb5:                                              ; preds = %bb17.i
  %_34.i = icmp ult i16 %3, %n
  tail call addrspace(1) void @llvm.assume(i1 %_34.i)
  %_16 = icmp ult i16 %3, %d.1
  br i1 %_16, label %bb6, label %panic, !prof !4, !misexpect !5

bb6:                                              ; preds = %bb5
  %5 = getelementptr inbounds [0 x i8], [0 x i8]* %d.0, i16 0, i16 %3
  %6 = load i8, i8* %5, align 1
  %7 = add i8 %6, 1
  store i8 %7, i8* %5, align 1
  %8 = icmp ult i16 %i.0.i, %n
  br i1 %8, label %bb12, label %bb25

bb12:                                             ; preds = %bb6, %bb13
  %iter.sroa.0.059 = phi i16 [ %9, %bb13 ], [ %i.0.i, %bb6 ]
  %_33 = icmp ult i16 %iter.sroa.0.059, %d.1
  br i1 %_33, label %bb13, label %panic2, !prof !4, !misexpect !5

bb13:                                             ; preds = %bb12
  %9 = add nuw i16 %iter.sroa.0.059, 1
  %10 = getelementptr inbounds [0 x i8], [0 x i8]* %d.0, i16 0, i16 %iter.sroa.0.059
  store i8 48, i8* %10, align 1
  %11 = icmp ult i16 %9, %n
  br i1 %11, label %bb12, label %bb25

bb14:                                             ; preds = %bb13.i
  %_34 = icmp eq i16 %n, 0
  br i1 %_34, label %bb25, label %bb15

bb15:                                             ; preds = %bb14
  %_38 = icmp eq i16 %d.1, 0
  br i1 %_38, label %panic3, label %bb17, !prof !91, !misexpect !5

bb17:                                             ; preds = %bb15
  store i8 49, i8* %0, align 1
  %12 = icmp ugt i16 %n, 1
  br i1 %12, label %bb23, label %bb25

bb23:                                             ; preds = %bb17, %bb24
  %iter1.sroa.0.058 = phi i16 [ %13, %bb24 ], [ 1, %bb17 ]
  %_53 = icmp ult i16 %iter1.sroa.0.058, %d.1
  br i1 %_53, label %bb24, label %panic5, !prof !4, !misexpect !5

bb24:                                             ; preds = %bb23
  %13 = add nuw i16 %iter1.sroa.0.058, 1
  %14 = getelementptr inbounds [0 x i8], [0 x i8]* %d.0, i16 0, i16 %iter1.sroa.0.058
  store i8 48, i8* %14, align 1
  %15 = icmp ult i16 %13, %n
  br i1 %15, label %bb23, label %bb25

bb25:                                             ; preds = %bb13, %bb24, %bb6, %bb17, %bb14
  %.sroa.4.0 = phi i8 [ 49, %bb14 ], [ 48, %bb17 ], [ undef, %bb6 ], [ 48, %bb24 ], [ undef, %bb13 ]
  %.sroa.0.0 = phi i8 [ 1, %bb14 ], [ 1, %bb17 ], [ 0, %bb6 ], [ 1, %bb24 ], [ 0, %bb13 ]
  %16 = insertvalue { i8, i8 } undef, i8 %.sroa.0.0, 0
  %17 = insertvalue { i8, i8 } %16, i8 %.sroa.4.0, 1
  ret { i8, i8 } %17

panic:                                            ; preds = %bb5
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %3, i16 %d.1, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18287 to %"panic::Location"*))
  unreachable

panic2:                                           ; preds = %bb12
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %iter.sroa.0.059, i16 %d.1, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18289 to %"panic::Location"*))
  unreachable

panic3:                                           ; preds = %bb15
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 0, i16 0, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18291 to %"panic::Location"*))
  unreachable

panic5:                                           ; preds = %bb23
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %iter1.sroa.0.058, i16 %d.1, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18293 to %"panic::Location"*))
  unreachable
}

; core::num::flt2dec::Part::len
; Function Attrs: norecurse nounwind readonly uwtable
define i16 @_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E(%"num::flt2dec::Part"* noalias nocapture readonly align 1 dereferenceable(5) %self) unnamed_addr addrspace(1) #5 {
start:
  %0 = getelementptr inbounds %"num::flt2dec::Part", %"num::flt2dec::Part"* %self, i16 0, i32 0, i16 0
  %1 = load i8, i8* %0, align 1, !range !564
  %trunc = trunc i8 %1 to i2
  switch i2 %trunc, label %bb2 [
    i2 0, label %bb3
    i2 1, label %bb4
    i2 -2, label %bb1
  ]

bb1:                                              ; preds = %start
  %2 = getelementptr inbounds %"num::flt2dec::Part", %"num::flt2dec::Part"* %self, i16 0, i32 2, i16 2
  %3 = bitcast i8* %2 to i16*
  %buf.1 = load i16, i16* %3, align 1
  br label %bb18

bb2:                                              ; preds = %start
  unreachable

bb3:                                              ; preds = %start
  %4 = getelementptr inbounds %"num::flt2dec::Part", %"num::flt2dec::Part"* %self, i16 0, i32 2
  %5 = bitcast [4 x i8]* %4 to i16*
  %nzeroes = load i16, i16* %5, align 1
  br label %bb18

bb4:                                              ; preds = %start
  %6 = getelementptr inbounds %"num::flt2dec::Part", %"num::flt2dec::Part"* %self, i16 0, i32 2
  %7 = bitcast [4 x i8]* %6 to i16*
  %v = load i16, i16* %7, align 1
  %_5 = icmp ult i16 %v, 1000
  br i1 %_5, label %bb6, label %bb5

bb5:                                              ; preds = %bb4
  %_11 = icmp ult i16 %v, 10000
  %. = select i1 %_11, i16 4, i16 5
  br label %bb18

bb6:                                              ; preds = %bb4
  %_7 = icmp ult i16 %v, 10
  br i1 %_7, label %bb18, label %bb7

bb7:                                              ; preds = %bb6
  %_9 = icmp ult i16 %v, 100
  %.1 = select i1 %_9, i16 2, i16 3
  br label %bb18

bb18:                                             ; preds = %bb6, %bb7, %bb5, %bb3, %bb1
  %.0 = phi i16 [ %buf.1, %bb1 ], [ %nzeroes, %bb3 ], [ %., %bb5 ], [ %.1, %bb7 ], [ 1, %bb6 ]
  ret i16 %.0
}

; core::num::flt2dec::Part::write
; Function Attrs: uwtable
define { i8, i16 } @_ZN4core3num7flt2dec4Part5write17hce85fea4dc97684bE(%"num::flt2dec::Part"* noalias nocapture readonly align 1 dereferenceable(5) %self, [0 x i8]* nonnull align 1 %out.0, i16 %out.1) unnamed_addr addrspace(1) #2 {
start:
  %out.039 = getelementptr [0 x i8], [0 x i8]* %out.0, i16 0, i16 0
  %0 = getelementptr inbounds %"num::flt2dec::Part", %"num::flt2dec::Part"* %self, i16 0, i32 0, i16 0
  %1 = load i8, i8* %0, align 1, !range !564, !alias.scope !565
  %trunc.i = trunc i8 %1 to i2
  switch i2 %trunc.i, label %bb2.i [
    i2 0, label %bb3.i
    i2 1, label %bb4.i
    i2 -2, label %bb1.i
  ]

bb1.i:                                            ; preds = %start
  %2 = getelementptr inbounds %"num::flt2dec::Part", %"num::flt2dec::Part"* %self, i16 0, i32 2, i16 2
  %3 = bitcast i8* %2 to i16*
  %buf.1.i = load i16, i16* %3, align 1, !alias.scope !565
  br label %_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit

bb2.i:                                            ; preds = %start
  unreachable

bb3.i:                                            ; preds = %start
  %4 = getelementptr inbounds %"num::flt2dec::Part", %"num::flt2dec::Part"* %self, i16 0, i32 2
  %5 = bitcast [4 x i8]* %4 to i16*
  %nzeroes.i = load i16, i16* %5, align 1, !alias.scope !565
  br label %_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit

bb4.i:                                            ; preds = %start
  %6 = getelementptr inbounds %"num::flt2dec::Part", %"num::flt2dec::Part"* %self, i16 0, i32 2
  %7 = bitcast [4 x i8]* %6 to i16*
  %v.i = load i16, i16* %7, align 1, !alias.scope !565
  %_5.i = icmp ult i16 %v.i, 1000
  br i1 %_5.i, label %bb6.i, label %bb5.i

bb5.i:                                            ; preds = %bb4.i
  %_11.i = icmp ult i16 %v.i, 10000
  %..i = select i1 %_11.i, i16 4, i16 5
  br label %_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit

bb6.i:                                            ; preds = %bb4.i
  %_7.i = icmp ult i16 %v.i, 10
  br i1 %_7.i, label %_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit, label %bb7.i

bb7.i:                                            ; preds = %bb6.i
  %_9.i = icmp ult i16 %v.i, 100
  %.1.i = select i1 %_9.i, i16 2, i16 3
  br label %_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit

_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit: ; preds = %bb1.i, %bb3.i, %bb5.i, %bb6.i, %bb7.i
  %.0.i = phi i16 [ %buf.1.i, %bb1.i ], [ %nzeroes.i, %bb3.i ], [ %..i, %bb5.i ], [ %.1.i, %bb7.i ], [ 1, %bb6.i ]
  %_5 = icmp ugt i16 %.0.i, %out.1
  br i1 %_5, label %bb29, label %bb4

bb4:                                              ; preds = %_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit
  switch i2 %trunc.i, label %bb6 [
    i2 0, label %bb7
    i2 1, label %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit"
    i2 -2, label %bb5
  ]

bb5:                                              ; preds = %bb4
  %8 = getelementptr inbounds %"num::flt2dec::Part", %"num::flt2dec::Part"* %self, i16 0, i32 2, i16 2
  %9 = bitcast i8* %8 to i16*
  %buf.1 = load i16, i16* %9, align 1
  %_9.i.i.i21 = icmp ugt i16 %buf.1, %out.1
  br i1 %_9.i.i.i21, label %bb5.i.i.i22, label %"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$15copy_from_slice17hce726dbed6076504E.exit"

bb5.i.i.i22:                                      ; preds = %bb5
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %buf.1, i16 %out.1, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18295 to %"panic::Location"*))
  unreachable

"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$15copy_from_slice17hce726dbed6076504E.exit": ; preds = %bb5
  %10 = getelementptr inbounds %"num::flt2dec::Part", %"num::flt2dec::Part"* %self, i16 0, i32 2
  %11 = bitcast [4 x i8]* %10 to [0 x i8]**
  %buf.0 = load [0 x i8]*, [0 x i8]** %11, align 1, !nonnull !568
  %12 = getelementptr [0 x i8], [0 x i8]* %buf.0, i16 0, i16 0
  %13 = getelementptr [0 x i8], [0 x i8]* %out.0, i16 0, i16 0
  tail call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 %13, i8* nonnull align 1 %12, i16 %buf.1, i1 false) #20
  br label %bb29

bb6:                                              ; preds = %bb4
  unreachable

bb7:                                              ; preds = %bb4
  %14 = getelementptr inbounds %"num::flt2dec::Part", %"num::flt2dec::Part"* %self, i16 0, i32 2
  %15 = bitcast [4 x i8]* %14 to i16*
  %nzeroes = load i16, i16* %15, align 1
  %_9.i.i.i13 = icmp ugt i16 %nzeroes, %out.1
  br i1 %_9.i.i.i13, label %bb5.i.i.i14, label %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit15"

bb5.i.i.i14:                                      ; preds = %bb7
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %nzeroes, i16 %out.1, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18299 to %"panic::Location"*))
  unreachable

"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit15": ; preds = %bb7
  %_13.i33 = icmp eq i16 %nzeroes, 0
  br i1 %_13.i33, label %bb29, label %bb14.preheader

bb14.preheader:                                   ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit15"
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 %out.039, i8 48, i16 %nzeroes, i1 false)
  br label %bb29

"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit": ; preds = %bb4
  %16 = getelementptr [0 x i8], [0 x i8]* %out.0, i16 0, i16 0
  %_13.i.i35 = icmp eq i16 %.0.i, 0
  br i1 %_13.i.i35, label %bb29, label %bb24.preheader

bb24.preheader:                                   ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit"
  %17 = getelementptr inbounds [0 x i8], [0 x i8]* %out.0, i16 0, i16 %.0.i
  %18 = getelementptr inbounds %"num::flt2dec::Part", %"num::flt2dec::Part"* %self, i16 0, i32 2
  %19 = bitcast [4 x i8]* %18 to i16*
  %20 = load i16, i16* %19, align 1
  br label %bb24

bb24:                                             ; preds = %bb24.preheader, %bb24
  %v.037 = phi i16 [ %22, %bb24 ], [ %20, %bb24.preheader ]
  %iter1.sroa.4.036 = phi i8* [ %21, %bb24 ], [ %17, %bb24.preheader ]
  %21 = getelementptr inbounds i8, i8* %iter1.sroa.4.036, i16 -1
  %22 = udiv i16 %v.037, 10
  %23 = mul i16 %22, 10
  %_45.decomposed = sub i16 %v.037, %23
  %_44 = trunc i16 %_45.decomposed to i8
  %24 = or i8 %_44, 48
  store i8 %24, i8* %21, align 1
  %_13.i.i = icmp eq i8* %16, %21
  br i1 %_13.i.i, label %bb29, label %bb24

bb29:                                             ; preds = %bb24, %bb14.preheader, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit", %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit15", %"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$15copy_from_slice17hce726dbed6076504E.exit", %_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit
  %.sroa.0.0 = phi i8 [ 0, %_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit ], [ 1, %"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$15copy_from_slice17hce726dbed6076504E.exit" ], [ 1, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit15" ], [ 1, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit" ], [ 1, %bb14.preheader ], [ 1, %bb24 ]
  %25 = insertvalue { i8, i16 } undef, i8 %.sroa.0.0, 0
  %26 = insertvalue { i8, i16 } %25, i16 %.0.i, 1
  ret { i8, i16 } %26
}

; core::num::flt2dec::Formatted::len
; Function Attrs: nounwind readonly uwtable
define i16 @_ZN4core3num7flt2dec9Formatted3len17hc9331884bb628d22E(%"num::flt2dec::Formatted"* noalias nocapture readonly align 1 dereferenceable(8) %self) unnamed_addr addrspace(1) #6 {
start:
  %0 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %self, i16 0, i32 1, i32 1
  %_2.1 = load i16, i16* %0, align 1
  %1 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %self, i16 0, i32 3, i32 0
  %_4.0 = load [0 x %"num::flt2dec::Part"]*, [0 x %"num::flt2dec::Part"]** %1, align 1, !nonnull !568
  %2 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %self, i16 0, i32 3, i32 1
  %_4.1 = load i16, i16* %2, align 1
  %3 = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %_4.0, i16 0, i16 %_4.1, i32 0, i16 0
  %_13.i10 = icmp eq i16 %_4.1, 0
  br i1 %_13.i10, label %bb5, label %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit.preheader"

"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit.preheader": ; preds = %start
  %4 = getelementptr [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %_4.0, i16 0, i16 0, i32 0, i16 0
  br label %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit"

"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit": ; preds = %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit.preheader", %_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit
  %len.012 = phi i16 [ %13, %_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit ], [ %_2.1, %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit.preheader" ]
  %iter.sroa.0.011 = phi i8* [ %5, %_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit ], [ %4, %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit.preheader" ]
  %5 = getelementptr inbounds i8, i8* %iter.sroa.0.011, i16 5
  %6 = load i8, i8* %iter.sroa.0.011, align 1, !range !564, !alias.scope !569
  %trunc.i = trunc i8 %6 to i2
  switch i2 %trunc.i, label %bb2.i [
    i2 0, label %bb3.i
    i2 1, label %bb4.i
    i2 -2, label %bb1.i
  ]

bb5:                                              ; preds = %_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit, %start
  %len.0.lcssa = phi i16 [ %_2.1, %start ], [ %13, %_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit ]
  ret i16 %len.0.lcssa

bb1.i:                                            ; preds = %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit"
  %7 = getelementptr inbounds i8, i8* %iter.sroa.0.011, i16 3
  %8 = bitcast i8* %7 to i16*
  %buf.1.i = load i16, i16* %8, align 1, !alias.scope !569
  br label %_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit

bb2.i:                                            ; preds = %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit"
  unreachable

bb3.i:                                            ; preds = %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit"
  %9 = getelementptr inbounds i8, i8* %iter.sroa.0.011, i16 1
  %10 = bitcast i8* %9 to i16*
  %nzeroes.i = load i16, i16* %10, align 1, !alias.scope !569
  br label %_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit

bb4.i:                                            ; preds = %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit"
  %11 = getelementptr inbounds i8, i8* %iter.sroa.0.011, i16 1
  %12 = bitcast i8* %11 to i16*
  %v.i = load i16, i16* %12, align 1, !alias.scope !569
  %_5.i = icmp ult i16 %v.i, 1000
  br i1 %_5.i, label %bb6.i, label %bb5.i

bb5.i:                                            ; preds = %bb4.i
  %_11.i = icmp ult i16 %v.i, 10000
  %..i = select i1 %_11.i, i16 4, i16 5
  br label %_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit

bb6.i:                                            ; preds = %bb4.i
  %_7.i = icmp ult i16 %v.i, 10
  br i1 %_7.i, label %_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit, label %bb7.i

bb7.i:                                            ; preds = %bb6.i
  %_9.i = icmp ult i16 %v.i, 100
  %.1.i = select i1 %_9.i, i16 2, i16 3
  br label %_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit

_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit: ; preds = %bb1.i, %bb3.i, %bb5.i, %bb6.i, %bb7.i
  %.0.i = phi i16 [ %buf.1.i, %bb1.i ], [ %nzeroes.i, %bb3.i ], [ %..i, %bb5.i ], [ %.1.i, %bb7.i ], [ 1, %bb6.i ]
  %13 = add i16 %.0.i, %len.012
  %_13.i = icmp eq i8* %5, %3
  br i1 %_13.i, label %bb5, label %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit"
}

; core::num::flt2dec::Formatted::write
; Function Attrs: uwtable
define { i8, i16 } @_ZN4core3num7flt2dec9Formatted5write17he704a314ef4bfddaE(%"num::flt2dec::Formatted"* noalias nocapture readonly align 1 dereferenceable(8) %self, [0 x i8]* nonnull align 1 %out.0, i16 %out.1) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %self, i16 0, i32 1, i32 1
  %_7.1 = load i16, i16* %0, align 1
  %_3 = icmp ugt i16 %_7.1, %out.1
  br i1 %_3, label %bb5, label %"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$15copy_from_slice17hce726dbed6076504E.exit"

"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$15copy_from_slice17hce726dbed6076504E.exit": ; preds = %start
  %1 = bitcast %"num::flt2dec::Formatted"* %self to [0 x i8]**
  %_14.0 = load [0 x i8]*, [0 x i8]** %1, align 1, !nonnull !568
  %2 = getelementptr [0 x i8], [0 x i8]* %_14.0, i16 0, i16 0
  %3 = getelementptr [0 x i8], [0 x i8]* %out.0, i16 0, i16 0
  tail call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 %3, i8* nonnull align 1 %2, i16 %_7.1, i1 false) #20
  %4 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %self, i16 0, i32 3, i32 0
  %_21.0 = load [0 x %"num::flt2dec::Part"]*, [0 x %"num::flt2dec::Part"]** %4, align 1, !nonnull !568
  %5 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %self, i16 0, i32 3, i32 1
  %_21.1 = load i16, i16* %5, align 1
  %6 = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %_21.0, i16 0, i16 %_21.1, i32 0, i16 0
  %_13.i23 = icmp eq i16 %_21.1, 0
  br i1 %_13.i23, label %bb5, label %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit.preheader"

"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit.preheader": ; preds = %"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$15copy_from_slice17hce726dbed6076504E.exit"
  %7 = getelementptr [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %_21.0, i16 0, i16 0, i32 0, i16 0
  br label %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit"

bb5:                                              ; preds = %bb20, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h61b4b93c4bf0d0d3E.exit", %"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$15copy_from_slice17hce726dbed6076504E.exit", %start
  %.sroa.4.0 = phi i16 [ undef, %start ], [ %_7.1, %"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$15copy_from_slice17hce726dbed6076504E.exit" ], [ %16, %bb20 ], [ undef, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h61b4b93c4bf0d0d3E.exit" ]
  %.sroa.0.0 = phi i8 [ 0, %start ], [ 1, %"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$15copy_from_slice17hce726dbed6076504E.exit" ], [ 1, %bb20 ], [ 0, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h61b4b93c4bf0d0d3E.exit" ]
  %8 = insertvalue { i8, i16 } undef, i8 %.sroa.0.0, 0
  %9 = insertvalue { i8, i16 } %8, i16 %.sroa.4.0, 1
  ret { i8, i16 } %9

"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit": ; preds = %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit.preheader", %bb20
  %written.025 = phi i16 [ %16, %bb20 ], [ %_7.1, %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit.preheader" ]
  %iter.sroa.0.024 = phi i8* [ %10, %bb20 ], [ %7, %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit.preheader" ]
  %10 = getelementptr inbounds i8, i8* %iter.sroa.0.024, i16 5
  %_4.i.i.i = icmp ugt i16 %written.025, %out.1
  br i1 %_4.i.i.i, label %bb2.i.i.i, label %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h61b4b93c4bf0d0d3E.exit"

bb2.i.i.i:                                        ; preds = %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit"
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %written.025, i16 %out.1, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18303 to %"panic::Location"*))
  unreachable

"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h61b4b93c4bf0d0d3E.exit": ; preds = %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit"
  %11 = bitcast i8* %iter.sroa.0.024 to %"num::flt2dec::Part"*
  %12 = getelementptr inbounds [0 x i8], [0 x i8]* %out.0, i16 0, i16 %written.025
  %_9.i.i.i.i = sub i16 %out.1, %written.025
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i = bitcast i8* %12 to [0 x i8]*
; call core::num::flt2dec::Part::write
  %13 = tail call addrspace(1) { i8, i16 } @_ZN4core3num7flt2dec4Part5write17hce85fea4dc97684bE(%"num::flt2dec::Part"* noalias nonnull readonly align 1 dereferenceable(5) %11, [0 x i8]* nonnull align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i, i16 %_9.i.i.i.i)
  %14 = extractvalue { i8, i16 } %13, 0
  %15 = and i8 %14, 1
  %switch = icmp eq i8 %15, 0
  br i1 %switch, label %bb5, label %bb20

bb20:                                             ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h61b4b93c4bf0d0d3E.exit"
  %_33.1 = extractvalue { i8, i16 } %13, 1
  %16 = add i16 %_33.1, %written.025
  %_13.i = icmp eq i8* %10, %6
  br i1 %_13.i, label %bb5, label %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit"
}

; core::num::flt2dec::digits_to_dec_str
; Function Attrs: uwtable
define { [0 x %"num::flt2dec::Part"]*, i16 } @_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE([0 x i8]* noalias nonnull readonly align 1 %buf.0, i16 %buf.1, i16 %exp, i16 %frac_digits, [0 x %"num::flt2dec::Part"]* nonnull align 1 %parts.0, i16 %parts.1) unnamed_addr addrspace(1) #2 {
start:
  %0 = icmp eq i16 %buf.1, 0
  br i1 %0, label %bb3, label %bb4

bb3:                                              ; preds = %start
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [33 x i8] }>* @alloc18355 to [0 x i8]*), i16 33, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18306 to %"panic::Location"*))
  unreachable

bb4:                                              ; preds = %start
  %1 = getelementptr inbounds [0 x i8], [0 x i8]* %buf.0, i16 0, i16 0
  %_13 = load i8, i8* %1, align 1
  %_12 = icmp ult i8 %_13, 49
  br i1 %_12, label %bb6, label %bb5

bb5:                                              ; preds = %bb4
  %_20 = icmp ult i16 %parts.1, 4
  br i1 %_20, label %bb9, label %bb8

bb6:                                              ; preds = %bb4
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [31 x i8] }>* @alloc18360 to [0 x i8]*), i16 31, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18311 to %"panic::Location"*))
  unreachable

bb8:                                              ; preds = %bb5
  %_25 = icmp slt i16 %exp, 1
  br i1 %_25, label %bb14, label %bb10

bb9:                                              ; preds = %bb5
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [34 x i8] }>* @alloc18529 to [0 x i8]*), i16 34, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18314 to %"panic::Location"*))
  unreachable

bb10:                                             ; preds = %bb8
  %_79 = icmp ult i16 %exp, %buf.1
  %_83.sroa.0.0..sroa_raw_cast = getelementptr [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 0, i32 0, i16 0
  store i8 2, i8* %_83.sroa.0.0..sroa_raw_cast, align 1
  %_83.sroa.4.0..sroa_idx = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 0, i32 0, i16 1
  %_83.sroa.4.0..sroa_cast33 = bitcast i8* %_83.sroa.4.0..sroa_idx to [0 x i8]**
  store [0 x i8]* %buf.0, [0 x i8]** %_83.sroa.4.0..sroa_cast33, align 1
  %_83.sroa.5.0..sroa_idx = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 0, i32 0, i16 3
  %_83.sroa.5.0..sroa_cast35 = bitcast i8* %_83.sroa.5.0..sroa_idx to i16*
  br i1 %_79, label %bb35, label %bb46

bb14:                                             ; preds = %bb8
  %_28 = sub i16 0, %exp
  %_31.sroa.0.0..sroa_raw_cast = getelementptr [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 0, i32 0, i16 0
  store i8 2, i8* %_31.sroa.0.0..sroa_raw_cast, align 1
  %_31.sroa.4.0..sroa_idx = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 0, i32 0, i16 1
  %_31.sroa.4.0..sroa_cast13 = bitcast i8* %_31.sroa.4.0..sroa_idx to [0 x i8]**
  store [0 x i8]* bitcast (<{ [2 x i8] }>* @alloc239 to [0 x i8]*), [0 x i8]** %_31.sroa.4.0..sroa_cast13, align 1
  %_31.sroa.5.0..sroa_idx = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 0, i32 0, i16 3
  %_31.sroa.5.0..sroa_cast15 = bitcast i8* %_31.sroa.5.0..sroa_idx to i16*
  store i16 2, i16* %_31.sroa.5.0..sroa_cast15, align 1
  %_38.sroa.0.0..sroa_raw_idx = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 0, i32 0, i16 5
  store i8 0, i8* %_38.sroa.0.0..sroa_raw_idx, align 1
  %_38.sroa.4.0..sroa_idx = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 1, i32 0, i16 1
  %_38.sroa.4.0..sroa_cast17 = bitcast i8* %_38.sroa.4.0..sroa_idx to i16*
  store i16 %_28, i16* %_38.sroa.4.0..sroa_cast17, align 1
  %_43.sroa.0.0..sroa_raw_idx = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 0, i32 0, i16 10
  store i8 2, i8* %_43.sroa.0.0..sroa_raw_idx, align 1
  %_43.sroa.4.0..sroa_idx = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 2, i32 0, i16 1
  %_43.sroa.4.0..sroa_cast23 = bitcast i8* %_43.sroa.4.0..sroa_idx to [0 x i8]**
  store [0 x i8]* %buf.0, [0 x i8]** %_43.sroa.4.0..sroa_cast23, align 1
  %_43.sroa.5.0..sroa_idx = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 2, i32 0, i16 3
  %_43.sroa.5.0..sroa_cast25 = bitcast i8* %_43.sroa.5.0..sroa_idx to i16*
  store i16 %buf.1, i16* %_43.sroa.5.0..sroa_cast25, align 1
  %_49 = icmp ugt i16 %frac_digits, %buf.1
  br i1 %_49, label %bb17, label %bb55

bb17:                                             ; preds = %bb14
  %_54 = sub i16 %frac_digits, %buf.1
  %_53 = icmp ugt i16 %_54, %_28
  br i1 %_53, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit76", label %bb55

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit76": ; preds = %bb17
  %_60 = add i16 %_54, %exp
  %_59.sroa.0.0..sroa_raw_idx = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 0, i32 0, i16 15
  store i8 0, i8* %_59.sroa.0.0..sroa_raw_idx, align 1
  %_59.sroa.4.0..sroa_idx = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 3, i32 0, i16 1
  %_59.sroa.4.0..sroa_cast27 = bitcast i8* %_59.sroa.4.0..sroa_idx to i16*
  store i16 %_60, i16* %_59.sroa.4.0..sroa_cast27, align 1
  br label %bb55

bb35:                                             ; preds = %bb10
  store i16 %exp, i16* %_83.sroa.5.0..sroa_cast35, align 1
  %_93.sroa.0.0..sroa_raw_idx = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 0, i32 0, i16 5
  store i8 2, i8* %_93.sroa.0.0..sroa_raw_idx, align 1
  %_93.sroa.4.0..sroa_idx = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 1, i32 0, i16 1
  %_93.sroa.4.0..sroa_cast38 = bitcast i8* %_93.sroa.4.0..sroa_idx to [0 x i8]**
  store [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc16827 to [0 x i8]*), [0 x i8]** %_93.sroa.4.0..sroa_cast38, align 1
  %_93.sroa.5.0..sroa_idx = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 1, i32 0, i16 3
  %_93.sroa.5.0..sroa_cast40 = bitcast i8* %_93.sroa.5.0..sroa_idx to i16*
  store i16 1, i16* %_93.sroa.5.0..sroa_cast40, align 1
  %2 = getelementptr inbounds [0 x i8], [0 x i8]* %buf.0, i16 0, i16 %exp
  %_7.i.i.i.i = sub i16 %buf.1, %exp
  %_100.sroa.0.0..sroa_raw_idx = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 0, i32 0, i16 10
  store i8 2, i8* %_100.sroa.0.0..sroa_raw_idx, align 1
  %_100.sroa.4.0..sroa_idx = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 2, i32 0, i16 1
  %3 = bitcast i8* %_100.sroa.4.0..sroa_idx to i8**
  store i8* %2, i8** %3, align 1
  %_100.sroa.5.0..sroa_idx = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 2, i32 0, i16 3
  %_100.sroa.5.0..sroa_cast44 = bitcast i8* %_100.sroa.5.0..sroa_idx to i16*
  store i16 %_7.i.i.i.i, i16* %_100.sroa.5.0..sroa_cast44, align 1
  %_110 = icmp ult i16 %_7.i.i.i.i, %frac_digits
  br i1 %_110, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit84", label %bb55

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit84": ; preds = %bb35
  %_11973 = sub i16 %exp, %buf.1
  %_117 = add i16 %_11973, %frac_digits
  %_116.sroa.0.0..sroa_raw_idx = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 0, i32 0, i16 15
  store i8 0, i8* %_116.sroa.0.0..sroa_raw_idx, align 1
  %_116.sroa.4.0..sroa_idx = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 3, i32 0, i16 1
  %_116.sroa.4.0..sroa_cast47 = bitcast i8* %_116.sroa.4.0..sroa_idx to i16*
  store i16 %_117, i16* %_116.sroa.4.0..sroa_cast47, align 1
  br label %bb55

bb46:                                             ; preds = %bb10
  store i16 %buf.1, i16* %_83.sroa.5.0..sroa_cast35, align 1
  %_140 = sub i16 %exp, %buf.1
  %_139.sroa.0.0..sroa_raw_idx = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 0, i32 0, i16 5
  store i8 0, i8* %_139.sroa.0.0..sroa_raw_idx, align 1
  %_139.sroa.4.0..sroa_idx = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 1, i32 0, i16 1
  %_139.sroa.4.0..sroa_cast57 = bitcast i8* %_139.sroa.4.0..sroa_idx to i16*
  store i16 %_140, i16* %_139.sroa.4.0..sroa_cast57, align 1
  %_147 = icmp eq i16 %frac_digits, 0
  br i1 %_147, label %bb55, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit90"

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit90": ; preds = %bb46
  %_149.sroa.0.0..sroa_raw_idx = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 0, i32 0, i16 10
  store i8 2, i8* %_149.sroa.0.0..sroa_raw_idx, align 1
  %_149.sroa.4.0..sroa_idx = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 2, i32 0, i16 1
  %_149.sroa.4.0..sroa_cast63 = bitcast i8* %_149.sroa.4.0..sroa_idx to [0 x i8]**
  store [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc16827 to [0 x i8]*), [0 x i8]** %_149.sroa.4.0..sroa_cast63, align 1
  %_149.sroa.5.0..sroa_idx = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 2, i32 0, i16 3
  %_149.sroa.5.0..sroa_cast65 = bitcast i8* %_149.sroa.5.0..sroa_idx to i16*
  store i16 1, i16* %_149.sroa.5.0..sroa_cast65, align 1
  %_156.sroa.0.0..sroa_raw_idx = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 0, i32 0, i16 15
  store i8 0, i8* %_156.sroa.0.0..sroa_raw_idx, align 1
  %_156.sroa.4.0..sroa_idx = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 3, i32 0, i16 1
  %_156.sroa.4.0..sroa_cast67 = bitcast i8* %_156.sroa.4.0..sroa_idx to i16*
  store i16 %frac_digits, i16* %_156.sroa.4.0..sroa_cast67, align 1
  br label %bb55

bb55:                                             ; preds = %bb46, %bb35, %bb14, %bb17, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit76", %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit84", %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit90"
  %.sroa.7.1 = phi i16 [ 4, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit84" ], [ 4, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit90" ], [ 4, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit76" ], [ 3, %bb17 ], [ 3, %bb14 ], [ 3, %bb35 ], [ 2, %bb46 ]
  %4 = insertvalue { [0 x %"num::flt2dec::Part"]*, i16 } undef, [0 x %"num::flt2dec::Part"]* %parts.0, 0
  %5 = insertvalue { [0 x %"num::flt2dec::Part"]*, i16 } %4, i16 %.sroa.7.1, 1
  ret { [0 x %"num::flt2dec::Part"]*, i16 } %5
}

; core::num::flt2dec::digits_to_exp_str
; Function Attrs: uwtable
define { [0 x %"num::flt2dec::Part"]*, i16 } @_ZN4core3num7flt2dec17digits_to_exp_str17he546c1d8fc89e6f6E([0 x i8]* noalias nonnull readonly align 1 %buf.0, i16 %buf.1, i16 %exp, i16 %min_ndigits, i1 zeroext %upper, [0 x %"num::flt2dec::Part"]* nonnull align 1 %parts.0, i16 %parts.1) unnamed_addr addrspace(1) #2 {
start:
  %0 = icmp eq i16 %buf.1, 0
  br i1 %0, label %bb3, label %bb4

bb3:                                              ; preds = %start
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [33 x i8] }>* @alloc18355 to [0 x i8]*), i16 33, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18357 to %"panic::Location"*))
  unreachable

bb4:                                              ; preds = %start
  %1 = getelementptr inbounds [0 x i8], [0 x i8]* %buf.0, i16 0, i16 0
  %_14 = load i8, i8* %1, align 1
  %_13 = icmp ult i8 %_14, 49
  br i1 %_13, label %bb6, label %bb5

bb5:                                              ; preds = %bb4
  %_21 = icmp ult i16 %parts.1, 6
  br i1 %_21, label %bb9, label %bb11

bb6:                                              ; preds = %bb4
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [31 x i8] }>* @alloc18360 to [0 x i8]*), i16 31, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18362 to %"panic::Location"*))
  unreachable

bb9:                                              ; preds = %bb5
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [34 x i8] }>* @alloc18488 to [0 x i8]*), i16 34, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18365 to %"panic::Location"*))
  unreachable

bb11:                                             ; preds = %bb5
  %_27.sroa.0.0..sroa_idx = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 0, i32 0, i16 0
  store i8 2, i8* %_27.sroa.0.0..sroa_idx, align 1
  %_27.sroa.4.0..sroa_idx22 = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 0, i32 2
  %_27.sroa.4.0..sroa_cast23 = bitcast [4 x i8]* %_27.sroa.4.0..sroa_idx22 to [0 x i8]**
  store [0 x i8]* %buf.0, [0 x i8]** %_27.sroa.4.0..sroa_cast23, align 1
  %_27.sroa.5.0..sroa_idx25 = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 0, i32 2, i16 2
  %_27.sroa.5.0..sroa_cast26 = bitcast i8* %_27.sroa.5.0..sroa_idx25 to i16*
  store i16 1, i16* %_27.sroa.5.0..sroa_cast26, align 1
  %2 = or i16 %min_ndigits, %buf.1
  %3 = icmp ugt i16 %2, 1
  br i1 %3, label %bb21, label %bb28

bb21:                                             ; preds = %bb11
  %_42.sroa.0.0..sroa_idx = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 1, i32 0, i16 0
  store i8 2, i8* %_42.sroa.0.0..sroa_idx, align 1
  %_42.sroa.4.0..sroa_idx28 = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 1, i32 2
  %_42.sroa.4.0..sroa_cast29 = bitcast [4 x i8]* %_42.sroa.4.0..sroa_idx28 to [0 x i8]**
  store [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc16827 to [0 x i8]*), [0 x i8]** %_42.sroa.4.0..sroa_cast29, align 1
  %_42.sroa.5.0..sroa_idx31 = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 1, i32 2, i16 2
  %_42.sroa.5.0..sroa_cast32 = bitcast i8* %_42.sroa.5.0..sroa_idx31 to i16*
  store i16 1, i16* %_42.sroa.5.0..sroa_cast32, align 1
  %4 = getelementptr inbounds [0 x i8], [0 x i8]* %buf.0, i16 0, i16 1
  %_7.i.i.i.i = add i16 %buf.1, -1
  %_49.sroa.0.0..sroa_idx = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 2, i32 0, i16 0
  store i8 2, i8* %_49.sroa.0.0..sroa_idx, align 1
  %_49.sroa.4.0..sroa_idx34 = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 2, i32 2
  %5 = bitcast [4 x i8]* %_49.sroa.4.0..sroa_idx34 to i8**
  store i8* %4, i8** %5, align 1
  %_49.sroa.5.0..sroa_idx37 = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 2, i32 2, i16 2
  %_49.sroa.5.0..sroa_cast38 = bitcast i8* %_49.sroa.5.0..sroa_idx37 to i16*
  store i16 %_7.i.i.i.i, i16* %_49.sroa.5.0..sroa_cast38, align 1
  %_59 = icmp ugt i16 %min_ndigits, %buf.1
  br i1 %_59, label %bb26, label %bb28

bb26:                                             ; preds = %bb21
  %_64 = sub i16 %min_ndigits, %buf.1
  %_63.sroa.0.0..sroa_idx = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 3, i32 0, i16 0
  store i8 0, i8* %_63.sroa.0.0..sroa_idx, align 1
  %_63.sroa.4.0..sroa_idx40 = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 3, i32 2
  %_63.sroa.4.0..sroa_cast41 = bitcast [4 x i8]* %_63.sroa.4.0..sroa_idx40 to i16*
  store i16 %_64, i16* %_63.sroa.4.0..sroa_cast41, align 1
  br label %bb28

bb28:                                             ; preds = %bb26, %bb21, %bb11
  %n.0 = phi i16 [ 4, %bb26 ], [ 3, %bb21 ], [ 1, %bb11 ]
  %exp5 = add i16 %exp, -1
  %_74 = icmp slt i16 %exp, 1
  %_85 = icmp ult i16 %n.0, %parts.1
  br i1 %_74, label %bb30, label %bb29

bb29:                                             ; preds = %bb28
  br i1 %_85, label %bb39, label %panic8, !prof !4, !misexpect !5

bb30:                                             ; preds = %bb28
  br i1 %_85, label %bb34, label %panic6, !prof !4, !misexpect !5

bb34:                                             ; preds = %bb30
  %.82 = select i1 %upper, [0 x i8]* bitcast (<{ [2 x i8] }>* @alloc241 to [0 x i8]*), [0 x i8]* bitcast (<{ [2 x i8] }>* @alloc242 to [0 x i8]*)
  %_76.sroa.0.0..sroa_idx = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 %n.0, i32 0, i16 0
  store i8 2, i8* %_76.sroa.0.0..sroa_idx, align 1
  %_76.sroa.4.0..sroa_idx48 = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 %n.0, i32 2
  %_76.sroa.4.0..sroa_cast49 = bitcast [4 x i8]* %_76.sroa.4.0..sroa_idx48 to [0 x i8]**
  store [0 x i8]* %.82, [0 x i8]** %_76.sroa.4.0..sroa_cast49, align 1
  %_76.sroa.5.0..sroa_idx51 = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 %n.0, i32 2, i16 2
  %_76.sroa.5.0..sroa_cast52 = bitcast i8* %_76.sroa.5.0..sroa_idx51 to i16*
  store i16 2, i16* %_76.sroa.5.0..sroa_cast52, align 1
  %_90 = add nuw nsw i16 %n.0, 1
  %_93 = icmp ult i16 %_90, %parts.1
  br i1 %_93, label %bb35, label %panic7, !prof !4, !misexpect !5

bb35:                                             ; preds = %bb34
  %_88 = sub i16 1, %exp
  br label %bb41

bb39:                                             ; preds = %bb29
  %.81 = select i1 %upper, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc243 to [0 x i8]*), [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc18945 to [0 x i8]*)
  %_94.sroa.0.0..sroa_idx = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 %n.0, i32 0, i16 0
  store i8 2, i8* %_94.sroa.0.0..sroa_idx, align 1
  %_94.sroa.4.0..sroa_idx64 = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 %n.0, i32 2
  %_94.sroa.4.0..sroa_cast65 = bitcast [4 x i8]* %_94.sroa.4.0..sroa_idx64 to [0 x i8]**
  store [0 x i8]* %.81, [0 x i8]** %_94.sroa.4.0..sroa_cast65, align 1
  %_94.sroa.5.0..sroa_idx67 = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 %n.0, i32 2, i16 2
  %_94.sroa.5.0..sroa_cast68 = bitcast i8* %_94.sroa.5.0..sroa_idx67 to i16*
  store i16 1, i16* %_94.sroa.5.0..sroa_cast68, align 1
  %_107 = add nuw nsw i16 %n.0, 1
  %_110 = icmp ult i16 %_107, %parts.1
  br i1 %_110, label %bb41, label %panic9, !prof !4, !misexpect !5

bb41:                                             ; preds = %bb39, %bb35
  %_107.sink88 = phi i16 [ %_90, %bb35 ], [ %_107, %bb39 ]
  %exp5.sink = phi i16 [ %_88, %bb35 ], [ %exp5, %bb39 ]
  %_104.sroa.0.0..sroa_idx = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 %_107.sink88, i32 0, i16 0
  store i8 1, i8* %_104.sroa.0.0..sroa_idx, align 1
  %_104.sroa.4.0..sroa_idx72 = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %parts.0, i16 0, i16 %_107.sink88, i32 2
  %_104.sroa.4.0..sroa_cast73 = bitcast [4 x i8]* %_104.sroa.4.0..sroa_idx72 to i16*
  store i16 %exp5.sink, i16* %_104.sroa.4.0..sroa_cast73, align 1
  %_114 = add nuw nsw i16 %n.0, 2
  %_8.i.i.i83 = icmp ugt i16 %_114, %parts.1
  br i1 %_8.i.i.i83, label %bb5.i.i.i84, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit"

bb5.i.i.i84:                                      ; preds = %bb41
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %_114, i16 %parts.1, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18387 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit": ; preds = %bb41
  %6 = insertvalue { [0 x %"num::flt2dec::Part"]*, i16 } undef, [0 x %"num::flt2dec::Part"]* %parts.0, 0
  %7 = insertvalue { [0 x %"num::flt2dec::Part"]*, i16 } %6, i16 %_114, 1
  ret { [0 x %"num::flt2dec::Part"]*, i16 } %7

panic6:                                           ; preds = %bb30
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %n.0, i16 %parts.1, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18379 to %"panic::Location"*))
  unreachable

panic7:                                           ; preds = %bb34
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_90, i16 %parts.1, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18381 to %"panic::Location"*))
  unreachable

panic8:                                           ; preds = %bb29
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %n.0, i16 %parts.1, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18383 to %"panic::Location"*))
  unreachable

panic9:                                           ; preds = %bb39
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_107, i16 %parts.1, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18385 to %"panic::Location"*))
  unreachable
}

; core::num::flt2dec::determine_sign
; Function Attrs: norecurse nounwind readonly uwtable
define { [0 x i8]*, i16 } @_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE(i8 %sign, %"num::flt2dec::decoder::FullDecoded"* noalias nocapture readonly align 1 dereferenceable(27) %decoded, i1 zeroext %negative) unnamed_addr addrspace(1) #5 {
start:
  %_5.sroa.4.0..sroa_idx = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %decoded, i16 0, i32 1
  %_5.sroa.4.0.copyload = load i8, i8* %_5.sroa.4.0..sroa_idx, align 1
  %0 = add i8 %_5.sroa.4.0.copyload, -2
  %1 = icmp ult i8 %0, 3
  %narrow = select i1 %1, i8 %0, i8 3
  %trunc = trunc i8 %narrow to i2
  switch i2 %trunc, label %bb1 [
    i2 0, label %bb23
    i2 -2, label %bb2
  ]

bb110:                                            ; preds = %bb2
  unreachable

bb1:                                              ; preds = %start
  %switch = icmp ult i8 %sign, 2
  br i1 %switch, label %bb15, label %bb19

bb2:                                              ; preds = %start
  switch i8 %sign, label %bb110 [
    i8 0, label %bb23
    i8 1, label %bb6
    i8 2, label %bb10
    i8 3, label %bb11
  ]

bb6:                                              ; preds = %bb2
  %.25 = select i1 %negative, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0)
  br label %bb23

bb10:                                             ; preds = %bb2
  br label %bb23

bb11:                                             ; preds = %bb2
  %.26 = select i1 %negative, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19124 to [0 x i8]*)
  br label %bb23

bb15:                                             ; preds = %bb1
  %.28 = select i1 %negative, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0)
  br label %bb23

bb19:                                             ; preds = %bb1
  %.29 = select i1 %negative, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19124 to [0 x i8]*)
  br label %bb23

bb23:                                             ; preds = %bb19, %bb15, %bb11, %bb6, %bb2, %start, %bb10
  %.sroa.12.0.shrunk = phi i1 [ true, %bb10 ], [ false, %start ], [ false, %bb2 ], [ %negative, %bb6 ], [ true, %bb11 ], [ %negative, %bb15 ], [ true, %bb19 ]
  %.sroa.0.0 = phi [0 x i8]* [ bitcast (<{ [1 x i8] }>* @alloc19124 to [0 x i8]*), %bb10 ], [ getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), %start ], [ getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), %bb2 ], [ %.25, %bb6 ], [ %.26, %bb11 ], [ %.28, %bb15 ], [ %.29, %bb19 ]
  %.sroa.12.0 = zext i1 %.sroa.12.0.shrunk to i16
  %2 = insertvalue { [0 x i8]*, i16 } undef, [0 x i8]* %.sroa.0.0, 0
  %3 = insertvalue { [0 x i8]*, i16 } %2, i16 %.sroa.12.0, 1
  ret { [0 x i8]*, i16 } %3
}

; core::num::flt2dec::estimate_max_buf_len
; Function Attrs: norecurse nounwind readnone uwtable
define i16 @_ZN4core3num7flt2dec20estimate_max_buf_len17h307fad1e133fdbbaE(i16 %exp) unnamed_addr addrspace(1) #1 {
start:
  %_6 = icmp slt i16 %exp, 0
  %. = select i1 %_6, i16 -12, i16 5
  %_4 = mul i16 %., %exp
  %_2 = lshr i16 %_4, 4
  %0 = add nuw nsw i16 %_2, 21
  ret i16 %0
}

; core::num::TryFromIntError::__description
; Function Attrs: norecurse nounwind readnone uwtable
define { [0 x i8]*, i16 } @_ZN4core3num15TryFromIntError13__description17h6dee6bc93cab2da3E(%"num::TryFromIntError"* noalias nocapture nonnull readonly align 1 %self) unnamed_addr addrspace(1) #1 {
start:
  ret { [0 x i8]*, i16 } { [0 x i8]* bitcast (<{ [47 x i8] }>* @alloc18531 to [0 x i8]*), i16 47 }
}

; <core::num::TryFromIntError as core::fmt::Display>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..num..TryFromIntError$u20$as$u20$core..fmt..Display$GT$3fmt17hff4fd2392ceee04fE"(%"num::TryFromIntError"* noalias nocapture nonnull readonly align 1 %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %fmt) unnamed_addr addrspace(1) #2 {
start:
; call core::fmt::Formatter::pad
  %0 = tail call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter3pad17h307fb261f2dc8a5eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %fmt, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [47 x i8] }>* @alloc18531 to [0 x i8]*), i16 47)
  ret i1 %0
}

; core::num::from_str_radix
; Function Attrs: uwtable
define internal fastcc { i8, i8 } @_ZN4core3num14from_str_radix17h16198f62b04d08bbE([0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 %0) unnamed_addr addrspace(1) #2 {
start:
  %_16 = alloca [1 x { i8*, i8 addrspace(1)* }], align 1
  %_9 = alloca %"fmt::Arguments", align 1
  %radix = alloca i32, align 1
  store i32 %0, i32* %radix, align 1
  %.off = add i32 %0, -2
  %1 = icmp ugt i32 %.off, 34
  br i1 %1, label %bb6, label %bb5

bb5:                                              ; preds = %start
  %2 = icmp eq i16 %src.1, 0
  br i1 %2, label %bb12, label %bb17

bb6:                                              ; preds = %start
  %3 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %3)
  %4 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_16 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %4)
  %5 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_16 to i32**
  store i32* %radix, i32** %5, align 1
  %6 = getelementptr inbounds [1 x { i8*, i8 addrspace(1)* }], [1 x { i8*, i8 addrspace(1)* }]* %_16, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 (i32*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u32$GT$3fmt17h4fc4f96f0a2da0eaE" to i8 addrspace(1)*), i8 addrspace(1)** %6, align 1
  %7 = bitcast %"fmt::Arguments"* %_9 to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8] }>* @alloc16905 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %7, align 1, !alias.scope !572, !noalias !575
  %8 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 1, i32 1
  store i16 1, i16* %8, align 1, !alias.scope !572, !noalias !575
  %9 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 3, i32 0
  store i8* null, i8** %9, align 1, !alias.scope !572, !noalias !575
  %10 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 5, i32 0
  %11 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %10 to [1 x { i8*, i8 addrspace(1)* }]**
  store [1 x { i8*, i8 addrspace(1)* }]* %_16, [1 x { i8*, i8 addrspace(1)* }]** %11, align 1, !alias.scope !572, !noalias !575
  %12 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 5, i32 1
  store i16 1, i16* %12, align 1, !alias.scope !572, !noalias !575
; call core::panicking::panic_fmt
  call addrspace(1) void @_ZN4core9panicking9panic_fmt17hb7ee2cb815ea49cfE(%"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_9, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18533 to %"panic::Location"*))
  unreachable

bb12:                                             ; preds = %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit75", %bb13.i68, %bb34, %bb48, %bb42, %bb34.us113, %bb38.us117, %bb42.us133, %bb48.us134, %bb25, %bb5
  %.sroa.10.0 = phi i8 [ 0, %bb5 ], [ 0, %bb25 ], [ 1, %bb38.us117 ], [ %result.0.us114, %bb34.us113 ], [ 2, %bb48.us134 ], [ 2, %bb42.us133 ], [ 1, %bb13.i68 ], [ %result.0, %bb34 ], [ 2, %bb48 ], [ 2, %bb42 ], [ 1, %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit75" ]
  %.sroa.0.0 = phi i8 [ 1, %bb5 ], [ 1, %bb25 ], [ 1, %bb38.us117 ], [ 0, %bb34.us113 ], [ 1, %bb48.us134 ], [ 1, %bb42.us133 ], [ 1, %bb13.i68 ], [ 0, %bb34 ], [ 1, %bb48 ], [ 1, %bb42 ], [ 1, %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit75" ]
  %13 = insertvalue { i8, i8 } undef, i8 %.sroa.0.0, 0
  %14 = insertvalue { i8, i8 } %13, i8 %.sroa.10.0, 1
  ret { i8, i8 } %14

bb17:                                             ; preds = %bb5
  %15 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 0
  %16 = load i8, i8* %15, align 1
  %cond = icmp eq i8 %16, 43
  br i1 %cond, label %bb25, label %bb32.split

bb25:                                             ; preds = %bb17
  %17 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 1
  %_7.i.i.i.i84 = add i16 %src.1, -1
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i85 = bitcast i8* %17 to [0 x i8]*
  %18 = icmp eq i16 %_7.i.i.i.i84, 0
  br i1 %18, label %bb12, label %bb32.split

bb32.split:                                       ; preds = %bb25, %bb17
  %_35.sroa.10.0102 = phi i16 [ %_7.i.i.i.i84, %bb25 ], [ %src.1, %bb17 ]
  %_35.sroa.6.0101 = phi [0 x i8]* [ %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i85, %bb25 ], [ %src.0, %bb17 ]
  %19 = getelementptr [0 x i8], [0 x i8]* %_35.sroa.6.0101, i16 0, i16 0
  %20 = getelementptr inbounds [0 x i8], [0 x i8]* %_35.sroa.6.0101, i16 0, i16 %_35.sroa.10.0102
  %_4.i53 = trunc i32 %0 to i8
  %_9.i57 = icmp ult i32 %0, 11
  br i1 %_9.i57, label %bb34.us113, label %bb34

bb34.us113:                                       ; preds = %bb32.split, %bb48.us134
  %result.0.us114 = phi i8 [ %28, %bb48.us134 ], [ 0, %bb32.split ]
  %iter.sroa.0.0.us115 = phi i8* [ %22, %bb48.us134 ], [ %19, %bb32.split ]
  %21 = icmp ne i8* %iter.sroa.0.0.us115, null
  tail call addrspace(1) void @llvm.assume(i1 %21)
  %_13.i78.us116 = icmp eq i8* %iter.sroa.0.0.us115, %20
  br i1 %_13.i78.us116, label %bb12, label %bb38.us117

bb38.us117:                                       ; preds = %bb34.us113
  %22 = getelementptr inbounds i8, i8* %iter.sroa.0.0.us115, i16 1
  %c.us118 = load i8, i8* %iter.sroa.0.0.us115, align 1
  %_67.us119 = zext i8 %c.us118 to i32
  %self.off.i58.us121 = add nsw i32 %_67.us119, -48
  %23 = icmp ult i32 %self.off.i58.us121, 10
  %_33.i72.us132 = icmp ult i32 %self.off.i58.us121, %0
  %or.cond = and i1 %23, %_33.i72.us132
  br i1 %or.cond, label %bb42.us133, label %bb12

bb42.us133:                                       ; preds = %bb38.us117
  %24 = tail call addrspace(1) { i8, i1 } @llvm.umul.with.overflow.i8(i8 %result.0.us114, i8 %_4.i53) #20
  %25 = extractvalue { i8, i1 } %24, 1
  br i1 %25, label %bb12, label %bb48.us134

bb48.us134:                                       ; preds = %bb42.us133
  %26 = extractvalue { i8, i1 } %24, 0
  %_4.i50.us135 = trunc i32 %self.off.i58.us121 to i8
  %27 = tail call addrspace(1) { i8, i1 } @llvm.uadd.with.overflow.i8(i8 %26, i8 %_4.i50.us135) #20
  %28 = extractvalue { i8, i1 } %27, 0
  %29 = extractvalue { i8, i1 } %27, 1
  br i1 %29, label %bb12, label %bb34.us113

bb34:                                             ; preds = %bb32.split, %bb48
  %result.0 = phi i8 [ %41, %bb48 ], [ 0, %bb32.split ]
  %iter.sroa.0.0 = phi i8* [ %31, %bb48 ], [ %19, %bb32.split ]
  %30 = icmp ne i8* %iter.sroa.0.0, null
  tail call addrspace(1) void @llvm.assume(i1 %30)
  %_13.i78 = icmp eq i8* %iter.sroa.0.0, %20
  br i1 %_13.i78, label %bb12, label %bb38

bb38:                                             ; preds = %bb34
  %31 = getelementptr inbounds i8, i8* %iter.sroa.0.0, i16 1
  %c = load i8, i8* %iter.sroa.0.0, align 1
  %_67 = zext i8 %c to i32
  %self.off.i58 = add nsw i32 %_67, -48
  %32 = icmp ult i32 %self.off.i58, 10
  br i1 %32, label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit75", label %bb11.i66

bb11.i66:                                         ; preds = %bb38
  %self.off7.i65 = add nsw i32 %_67, -97
  %33 = icmp ult i32 %self.off7.i65, 26
  br i1 %33, label %bb17.i69, label %bb13.i68

bb13.i68:                                         ; preds = %bb11.i66
  %self.off8.i67 = add nsw i32 %_67, -65
  %34 = icmp ult i32 %self.off8.i67, 26
  br i1 %34, label %bb18.i70, label %bb12

bb17.i69:                                         ; preds = %bb11.i66
  %35 = add nsw i32 %_67, -87
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit75"

bb18.i70:                                         ; preds = %bb13.i68
  %36 = add nsw i32 %_67, -55
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit75"

"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit75": ; preds = %bb38, %bb17.i69, %bb18.i70
  %val.0.i71 = phi i32 [ %35, %bb17.i69 ], [ %36, %bb18.i70 ], [ %self.off.i58, %bb38 ]
  %_33.i72 = icmp ult i32 %val.0.i71, %0
  br i1 %_33.i72, label %bb42, label %bb12

bb42:                                             ; preds = %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit75"
  %37 = tail call addrspace(1) { i8, i1 } @llvm.umul.with.overflow.i8(i8 %result.0, i8 %_4.i53) #20
  %38 = extractvalue { i8, i1 } %37, 1
  br i1 %38, label %bb12, label %bb48

bb48:                                             ; preds = %bb42
  %39 = extractvalue { i8, i1 } %37, 0
  %_4.i50 = trunc i32 %val.0.i71 to i8
  %40 = tail call addrspace(1) { i8, i1 } @llvm.uadd.with.overflow.i8(i8 %39, i8 %_4.i50) #20
  %41 = extractvalue { i8, i1 } %40, 0
  %42 = extractvalue { i8, i1 } %40, 1
  br i1 %42, label %bb12, label %bb34
}

; core::num::from_str_radix
; Function Attrs: uwtable
define internal fastcc void @_ZN4core3num14from_str_radix17h1ac727572120a694E(%"result::Result<u64, num::ParseIntError>"* noalias nocapture dereferenceable(9) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 %1) unnamed_addr addrspace(1) #2 {
start:
  %_16 = alloca [1 x { i8*, i8 addrspace(1)* }], align 1
  %_9 = alloca %"fmt::Arguments", align 1
  %radix = alloca i32, align 1
  store i32 %1, i32* %radix, align 1
  %.off = add i32 %1, -2
  %2 = icmp ugt i32 %.off, 34
  br i1 %2, label %bb6, label %bb5

bb5:                                              ; preds = %start
  %3 = icmp eq i16 %src.1, 0
  br i1 %3, label %bb11, label %bb17

bb6:                                              ; preds = %start
  %4 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %4)
  %5 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_16 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %5)
  %6 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_16 to i32**
  store i32* %radix, i32** %6, align 1
  %7 = getelementptr inbounds [1 x { i8*, i8 addrspace(1)* }], [1 x { i8*, i8 addrspace(1)* }]* %_16, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 (i32*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u32$GT$3fmt17h4fc4f96f0a2da0eaE" to i8 addrspace(1)*), i8 addrspace(1)** %7, align 1
  %8 = bitcast %"fmt::Arguments"* %_9 to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8] }>* @alloc16905 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %8, align 1, !alias.scope !578, !noalias !581
  %9 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 1, i32 1
  store i16 1, i16* %9, align 1, !alias.scope !578, !noalias !581
  %10 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 3, i32 0
  store i8* null, i8** %10, align 1, !alias.scope !578, !noalias !581
  %11 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 5, i32 0
  %12 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %11 to [1 x { i8*, i8 addrspace(1)* }]**
  store [1 x { i8*, i8 addrspace(1)* }]* %_16, [1 x { i8*, i8 addrspace(1)* }]** %12, align 1, !alias.scope !578, !noalias !581
  %13 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 5, i32 1
  store i16 1, i16* %13, align 1, !alias.scope !578, !noalias !581
; call core::panicking::panic_fmt
  call addrspace(1) void @_ZN4core9panicking9panic_fmt17hb7ee2cb815ea49cfE(%"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_9, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18533 to %"panic::Location"*))
  unreachable

bb11:                                             ; preds = %bb5
  %14 = getelementptr inbounds %"result::Result<u64, num::ParseIntError>", %"result::Result<u64, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 0, i8* %14, align 1
  br label %bb12

bb12:                                             ; preds = %bb40, %bb46, %bb50, %bb28, %bb72, %bb11
  %.sink = phi i8 [ 1, %bb40 ], [ 1, %bb46 ], [ 1, %bb50 ], [ 1, %bb28 ], [ 0, %bb72 ], [ 1, %bb11 ]
  %15 = getelementptr inbounds %"result::Result<u64, num::ParseIntError>", %"result::Result<u64, num::ParseIntError>"* %0, i16 0, i32 0, i16 0
  store i8 %.sink, i8* %15, align 1
  ret void

bb17:                                             ; preds = %bb5
  %16 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 0
  %17 = load i8, i8* %16, align 1
  %cond = icmp eq i8 %17, 43
  br i1 %cond, label %bb25, label %bb32.split

bb25:                                             ; preds = %bb17
  %18 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 1
  %_7.i.i.i.i92 = add i16 %src.1, -1
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i93 = bitcast i8* %18 to [0 x i8]*
  %19 = icmp eq i16 %_7.i.i.i.i92, 0
  br i1 %19, label %bb28, label %bb32.split

bb28:                                             ; preds = %bb25
  %20 = getelementptr inbounds %"result::Result<u64, num::ParseIntError>", %"result::Result<u64, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 0, i8* %20, align 1
  br label %bb12

bb32.split:                                       ; preds = %bb25, %bb17
  %_35.sroa.10.0114 = phi i16 [ %_7.i.i.i.i92, %bb25 ], [ %src.1, %bb17 ]
  %_35.sroa.6.0113 = phi [0 x i8]* [ %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i93, %bb25 ], [ %src.0, %bb17 ]
  %21 = getelementptr [0 x i8], [0 x i8]* %_35.sroa.6.0113, i16 0, i16 0
  %22 = getelementptr inbounds [0 x i8], [0 x i8]* %_35.sroa.6.0113, i16 0, i16 %_35.sroa.10.0114
  %_4.i61 = zext i32 %1 to i64
  %_9.i65 = icmp ult i32 %1, 11
  br i1 %_9.i65, label %bb34.us129, label %bb34

bb34.us129:                                       ; preds = %bb32.split, %bb48.us150
  %result.0.us130 = phi i64 [ %30, %bb48.us150 ], [ 0, %bb32.split ]
  %iter.sroa.0.0.us131 = phi i8* [ %24, %bb48.us150 ], [ %21, %bb32.split ]
  %23 = icmp ne i8* %iter.sroa.0.0.us131, null
  tail call addrspace(1) void @llvm.assume(i1 %23)
  %_13.i86.us132 = icmp eq i8* %iter.sroa.0.0.us131, %22
  br i1 %_13.i86.us132, label %bb72, label %bb38.us133

bb38.us133:                                       ; preds = %bb34.us129
  %24 = getelementptr inbounds i8, i8* %iter.sroa.0.0.us131, i16 1
  %c.us134 = load i8, i8* %iter.sroa.0.0.us131, align 1
  %_67.us135 = zext i8 %c.us134 to i32
  %self.off.i66.us137 = add nsw i32 %_67.us135, -48
  %25 = icmp ult i32 %self.off.i66.us137, 10
  %_33.i80.us148 = icmp ult i32 %self.off.i66.us137, %1
  %or.cond = and i1 %25, %_33.i80.us148
  br i1 %or.cond, label %bb42.us149, label %bb40

bb42.us149:                                       ; preds = %bb38.us133
  %26 = tail call addrspace(1) { i64, i1 } @llvm.umul.with.overflow.i64(i64 %result.0.us130, i64 %_4.i61) #20
  %27 = extractvalue { i64, i1 } %26, 1
  br i1 %27, label %bb46, label %bb48.us150

bb48.us150:                                       ; preds = %bb42.us149
  %28 = extractvalue { i64, i1 } %26, 0
  %_4.i58.us151 = zext i32 %self.off.i66.us137 to i64
  %29 = tail call addrspace(1) { i64, i1 } @llvm.uadd.with.overflow.i64(i64 %28, i64 %_4.i58.us151) #20
  %30 = extractvalue { i64, i1 } %29, 0
  %31 = extractvalue { i64, i1 } %29, 1
  br i1 %31, label %bb50, label %bb34.us129

bb34:                                             ; preds = %bb32.split, %bb48
  %result.0 = phi i64 [ %45, %bb48 ], [ 0, %bb32.split ]
  %iter.sroa.0.0 = phi i8* [ %33, %bb48 ], [ %21, %bb32.split ]
  %32 = icmp ne i8* %iter.sroa.0.0, null
  tail call addrspace(1) void @llvm.assume(i1 %32)
  %_13.i86 = icmp eq i8* %iter.sroa.0.0, %22
  br i1 %_13.i86, label %bb72, label %bb38

bb38:                                             ; preds = %bb34
  %33 = getelementptr inbounds i8, i8* %iter.sroa.0.0, i16 1
  %c = load i8, i8* %iter.sroa.0.0, align 1
  %_67 = zext i8 %c to i32
  %self.off.i66 = add nsw i32 %_67, -48
  %34 = icmp ult i32 %self.off.i66, 10
  br i1 %34, label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83", label %bb11.i74

bb11.i74:                                         ; preds = %bb38
  %self.off7.i73 = add nsw i32 %_67, -97
  %35 = icmp ult i32 %self.off7.i73, 26
  br i1 %35, label %bb17.i77, label %bb13.i76

bb13.i76:                                         ; preds = %bb11.i74
  %self.off8.i75 = add nsw i32 %_67, -65
  %36 = icmp ult i32 %self.off8.i75, 26
  br i1 %36, label %bb18.i78, label %bb40

bb17.i77:                                         ; preds = %bb11.i74
  %37 = add nsw i32 %_67, -87
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83"

bb18.i78:                                         ; preds = %bb13.i76
  %38 = add nsw i32 %_67, -55
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83"

"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83": ; preds = %bb38, %bb17.i77, %bb18.i78
  %val.0.i79 = phi i32 [ %37, %bb17.i77 ], [ %38, %bb18.i78 ], [ %self.off.i66, %bb38 ]
  %_33.i80 = icmp ult i32 %val.0.i79, %1
  br i1 %_33.i80, label %bb42, label %bb40

bb40:                                             ; preds = %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83", %bb13.i76, %bb38.us133
  %39 = getelementptr inbounds %"result::Result<u64, num::ParseIntError>", %"result::Result<u64, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 1, i8* %39, align 1
  br label %bb12

bb42:                                             ; preds = %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83"
  %40 = tail call addrspace(1) { i64, i1 } @llvm.umul.with.overflow.i64(i64 %result.0, i64 %_4.i61) #20
  %41 = extractvalue { i64, i1 } %40, 1
  br i1 %41, label %bb46, label %bb48

bb46:                                             ; preds = %bb42, %bb42.us149
  %42 = getelementptr inbounds %"result::Result<u64, num::ParseIntError>", %"result::Result<u64, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 2, i8* %42, align 1
  br label %bb12

bb48:                                             ; preds = %bb42
  %43 = extractvalue { i64, i1 } %40, 0
  %_4.i58 = zext i32 %val.0.i79 to i64
  %44 = tail call addrspace(1) { i64, i1 } @llvm.uadd.with.overflow.i64(i64 %43, i64 %_4.i58) #20
  %45 = extractvalue { i64, i1 } %44, 0
  %46 = extractvalue { i64, i1 } %44, 1
  br i1 %46, label %bb50, label %bb34

bb50:                                             ; preds = %bb48, %bb48.us150
  %47 = getelementptr inbounds %"result::Result<u64, num::ParseIntError>", %"result::Result<u64, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 2, i8* %47, align 1
  br label %bb12

bb72:                                             ; preds = %bb34, %bb34.us129
  %result.0.lcssa = phi i64 [ %result.0.us130, %bb34.us129 ], [ %result.0, %bb34 ]
  %48 = getelementptr inbounds %"result::Result<u64, num::ParseIntError>", %"result::Result<u64, num::ParseIntError>"* %0, i16 0, i32 2
  %49 = bitcast [8 x i8]* %48 to i64*
  store i64 %result.0.lcssa, i64* %49, align 1
  br label %bb12
}

; core::num::from_str_radix
; Function Attrs: uwtable
define internal fastcc void @_ZN4core3num14from_str_radix17h24a850c5437e4172E(%"result::Result<i16, num::ParseIntError>"* noalias nocapture dereferenceable(3) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 %1) unnamed_addr addrspace(1) #2 {
start:
  %_16 = alloca [1 x { i8*, i8 addrspace(1)* }], align 1
  %_9 = alloca %"fmt::Arguments", align 1
  %radix = alloca i32, align 1
  store i32 %1, i32* %radix, align 1
  %.off = add i32 %1, -2
  %2 = icmp ugt i32 %.off, 34
  br i1 %2, label %bb6, label %bb5

bb5:                                              ; preds = %start
  %3 = icmp eq i16 %src.1, 0
  br i1 %3, label %bb11, label %bb17

bb6:                                              ; preds = %start
  %4 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %4)
  %5 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_16 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %5)
  %6 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_16 to i32**
  store i32* %radix, i32** %6, align 1
  %7 = getelementptr inbounds [1 x { i8*, i8 addrspace(1)* }], [1 x { i8*, i8 addrspace(1)* }]* %_16, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 (i32*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u32$GT$3fmt17h4fc4f96f0a2da0eaE" to i8 addrspace(1)*), i8 addrspace(1)** %7, align 1
  %8 = bitcast %"fmt::Arguments"* %_9 to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8] }>* @alloc16905 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %8, align 1, !alias.scope !584, !noalias !587
  %9 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 1, i32 1
  store i16 1, i16* %9, align 1, !alias.scope !584, !noalias !587
  %10 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 3, i32 0
  store i8* null, i8** %10, align 1, !alias.scope !584, !noalias !587
  %11 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 5, i32 0
  %12 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %11 to [1 x { i8*, i8 addrspace(1)* }]**
  store [1 x { i8*, i8 addrspace(1)* }]* %_16, [1 x { i8*, i8 addrspace(1)* }]** %12, align 1, !alias.scope !584, !noalias !587
  %13 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 5, i32 1
  store i16 1, i16* %13, align 1, !alias.scope !584, !noalias !587
; call core::panicking::panic_fmt
  call addrspace(1) void @_ZN4core9panicking9panic_fmt17hb7ee2cb815ea49cfE(%"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_9, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18533 to %"panic::Location"*))
  unreachable

bb11:                                             ; preds = %bb5
  %14 = getelementptr inbounds %"result::Result<i16, num::ParseIntError>", %"result::Result<i16, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 0, i8* %14, align 1
  br label %bb12

bb12:                                             ; preds = %bb69, %bb65, %bb60, %bb40, %bb46, %bb50, %bb28, %bb72, %bb11
  %.sink = phi i8 [ 1, %bb69 ], [ 1, %bb65 ], [ 1, %bb60 ], [ 1, %bb40 ], [ 1, %bb46 ], [ 1, %bb50 ], [ 1, %bb28 ], [ 0, %bb72 ], [ 1, %bb11 ]
  %15 = getelementptr inbounds %"result::Result<i16, num::ParseIntError>", %"result::Result<i16, num::ParseIntError>"* %0, i16 0, i32 0, i16 0
  store i8 %.sink, i8* %15, align 1
  ret void

bb17:                                             ; preds = %bb5
  %16 = getelementptr [0 x i8], [0 x i8]* %src.0, i16 0, i16 0
  %17 = load i8, i8* %16, align 1
  switch i8 %17, label %bb27.thread [
    i8 43, label %bb25
    i8 45, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit"
  ]

bb27.thread:                                      ; preds = %bb17
  %18 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 %src.1
  br label %bb32.split

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit": ; preds = %bb17
  br label %bb25

bb25:                                             ; preds = %bb17, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit"
  %_35.sroa.0.0 = phi i1 [ false, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit" ], [ true, %bb17 ]
  %_35.sroa.6.0.in = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 1
  %19 = icmp eq i16 %src.1, 1
  br i1 %19, label %bb28, label %bb27

bb27:                                             ; preds = %bb25
  %20 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 %src.1
  br i1 %_35.sroa.0.0, label %bb32.split, label %bb54.preheader.split

bb54.preheader.split:                             ; preds = %bb27
  %_4.i53 = trunc i32 %1 to i16
  %_9.i = icmp ult i32 %1, 11
  br i1 %_9.i, label %bb54.us162, label %bb54

bb54.us162:                                       ; preds = %bb54.preheader.split, %bb67.us183
  %result.1.us163 = phi i16 [ %27, %bb67.us183 ], [ 0, %bb54.preheader.split ]
  %iter1.sroa.0.0.us164 = phi i8* [ %21, %bb67.us183 ], [ %_35.sroa.6.0.in, %bb54.preheader.split ]
  %_13.i.us165 = icmp eq i8* %iter1.sroa.0.0.us164, %20
  br i1 %_13.i.us165, label %bb72, label %bb58.us166

bb58.us166:                                       ; preds = %bb54.us162
  %21 = getelementptr inbounds i8, i8* %iter1.sroa.0.0.us164, i16 1
  %c7.us167 = load i8, i8* %iter1.sroa.0.0.us164, align 1
  %_100.us168 = zext i8 %c7.us167 to i32
  %self.off.i.us170 = add nsw i32 %_100.us168, -48
  %22 = icmp ult i32 %self.off.i.us170, 10
  %_33.i.us181 = icmp ult i32 %self.off.i.us170, %1
  %or.cond = and i1 %22, %_33.i.us181
  br i1 %or.cond, label %bb62.us182, label %bb60

bb62.us182:                                       ; preds = %bb58.us166
  %23 = tail call addrspace(1) { i16, i1 } @llvm.smul.with.overflow.i16(i16 %result.1.us163, i16 %_4.i53) #20
  %24 = extractvalue { i16, i1 } %23, 1
  br i1 %24, label %bb65, label %bb67.us183

bb67.us183:                                       ; preds = %bb62.us182
  %25 = extractvalue { i16, i1 } %23, 0
  %_4.i.us184 = trunc i32 %self.off.i.us170 to i16
  %26 = tail call addrspace(1) { i16, i1 } @llvm.ssub.with.overflow.i16(i16 %25, i16 %_4.i.us184) #20
  %27 = extractvalue { i16, i1 } %26, 0
  %28 = extractvalue { i16, i1 } %26, 1
  br i1 %28, label %bb69, label %bb54.us162

bb28:                                             ; preds = %bb25
  %29 = getelementptr inbounds %"result::Result<i16, num::ParseIntError>", %"result::Result<i16, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 0, i8* %29, align 1
  br label %bb12

bb32.split:                                       ; preds = %bb27, %bb27.thread
  %30 = phi i8* [ %18, %bb27.thread ], [ %20, %bb27 ]
  %31 = phi i8* [ %16, %bb27.thread ], [ %_35.sroa.6.0.in, %bb27 ]
  %_4.i61 = trunc i32 %1 to i16
  %_9.i65 = icmp ult i32 %1, 11
  br i1 %_9.i65, label %bb34.us139, label %bb34

bb34.us139:                                       ; preds = %bb32.split, %bb48.us160
  %result.0.us140 = phi i16 [ %38, %bb48.us160 ], [ 0, %bb32.split ]
  %iter.sroa.0.0.us141 = phi i8* [ %32, %bb48.us160 ], [ %31, %bb32.split ]
  %_13.i86.us142 = icmp eq i8* %iter.sroa.0.0.us141, %30
  br i1 %_13.i86.us142, label %bb72, label %bb38.us143

bb38.us143:                                       ; preds = %bb34.us139
  %32 = getelementptr inbounds i8, i8* %iter.sroa.0.0.us141, i16 1
  %c.us144 = load i8, i8* %iter.sroa.0.0.us141, align 1
  %_67.us145 = zext i8 %c.us144 to i32
  %self.off.i66.us147 = add nsw i32 %_67.us145, -48
  %33 = icmp ult i32 %self.off.i66.us147, 10
  %_33.i80.us158 = icmp ult i32 %self.off.i66.us147, %1
  %or.cond185 = and i1 %33, %_33.i80.us158
  br i1 %or.cond185, label %bb42.us159, label %bb40

bb42.us159:                                       ; preds = %bb38.us143
  %34 = tail call addrspace(1) { i16, i1 } @llvm.smul.with.overflow.i16(i16 %result.0.us140, i16 %_4.i61) #20
  %35 = extractvalue { i16, i1 } %34, 1
  br i1 %35, label %bb46, label %bb48.us160

bb48.us160:                                       ; preds = %bb42.us159
  %36 = extractvalue { i16, i1 } %34, 0
  %_4.i58.us161 = trunc i32 %self.off.i66.us147 to i16
  %37 = tail call addrspace(1) { i16, i1 } @llvm.sadd.with.overflow.i16(i16 %36, i16 %_4.i58.us161) #20
  %38 = extractvalue { i16, i1 } %37, 0
  %39 = extractvalue { i16, i1 } %37, 1
  br i1 %39, label %bb50, label %bb34.us139

bb34:                                             ; preds = %bb32.split, %bb48
  %result.0 = phi i16 [ %52, %bb48 ], [ 0, %bb32.split ]
  %iter.sroa.0.0 = phi i8* [ %40, %bb48 ], [ %31, %bb32.split ]
  %_13.i86 = icmp eq i8* %iter.sroa.0.0, %30
  br i1 %_13.i86, label %bb72, label %bb38

bb38:                                             ; preds = %bb34
  %40 = getelementptr inbounds i8, i8* %iter.sroa.0.0, i16 1
  %c = load i8, i8* %iter.sroa.0.0, align 1
  %_67 = zext i8 %c to i32
  %self.off.i66 = add nsw i32 %_67, -48
  %41 = icmp ult i32 %self.off.i66, 10
  br i1 %41, label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83", label %bb11.i74

bb11.i74:                                         ; preds = %bb38
  %self.off7.i73 = add nsw i32 %_67, -97
  %42 = icmp ult i32 %self.off7.i73, 26
  br i1 %42, label %bb17.i77, label %bb13.i76

bb13.i76:                                         ; preds = %bb11.i74
  %self.off8.i75 = add nsw i32 %_67, -65
  %43 = icmp ult i32 %self.off8.i75, 26
  br i1 %43, label %bb18.i78, label %bb40

bb17.i77:                                         ; preds = %bb11.i74
  %44 = add nsw i32 %_67, -87
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83"

bb18.i78:                                         ; preds = %bb13.i76
  %45 = add nsw i32 %_67, -55
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83"

"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83": ; preds = %bb38, %bb17.i77, %bb18.i78
  %val.0.i79 = phi i32 [ %44, %bb17.i77 ], [ %45, %bb18.i78 ], [ %self.off.i66, %bb38 ]
  %_33.i80 = icmp ult i32 %val.0.i79, %1
  br i1 %_33.i80, label %bb42, label %bb40

bb40:                                             ; preds = %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83", %bb13.i76, %bb38.us143
  %46 = getelementptr inbounds %"result::Result<i16, num::ParseIntError>", %"result::Result<i16, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 1, i8* %46, align 1
  br label %bb12

bb42:                                             ; preds = %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83"
  %47 = tail call addrspace(1) { i16, i1 } @llvm.smul.with.overflow.i16(i16 %result.0, i16 %_4.i61) #20
  %48 = extractvalue { i16, i1 } %47, 1
  br i1 %48, label %bb46, label %bb48

bb46:                                             ; preds = %bb42, %bb42.us159
  %49 = getelementptr inbounds %"result::Result<i16, num::ParseIntError>", %"result::Result<i16, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 2, i8* %49, align 1
  br label %bb12

bb48:                                             ; preds = %bb42
  %50 = extractvalue { i16, i1 } %47, 0
  %_4.i58 = trunc i32 %val.0.i79 to i16
  %51 = tail call addrspace(1) { i16, i1 } @llvm.sadd.with.overflow.i16(i16 %50, i16 %_4.i58) #20
  %52 = extractvalue { i16, i1 } %51, 0
  %53 = extractvalue { i16, i1 } %51, 1
  br i1 %53, label %bb50, label %bb34

bb50:                                             ; preds = %bb48, %bb48.us160
  %54 = getelementptr inbounds %"result::Result<i16, num::ParseIntError>", %"result::Result<i16, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 2, i8* %54, align 1
  br label %bb12

bb54:                                             ; preds = %bb54.preheader.split, %bb67
  %result.1 = phi i16 [ %67, %bb67 ], [ 0, %bb54.preheader.split ]
  %iter1.sroa.0.0 = phi i8* [ %55, %bb67 ], [ %_35.sroa.6.0.in, %bb54.preheader.split ]
  %_13.i = icmp eq i8* %iter1.sroa.0.0, %20
  br i1 %_13.i, label %bb72, label %bb58

bb58:                                             ; preds = %bb54
  %55 = getelementptr inbounds i8, i8* %iter1.sroa.0.0, i16 1
  %c7 = load i8, i8* %iter1.sroa.0.0, align 1
  %_100 = zext i8 %c7 to i32
  %self.off.i = add nsw i32 %_100, -48
  %56 = icmp ult i32 %self.off.i, 10
  br i1 %56, label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit", label %bb11.i

bb11.i:                                           ; preds = %bb58
  %self.off7.i = add nsw i32 %_100, -97
  %57 = icmp ult i32 %self.off7.i, 26
  br i1 %57, label %bb17.i, label %bb13.i

bb13.i:                                           ; preds = %bb11.i
  %self.off8.i = add nsw i32 %_100, -65
  %58 = icmp ult i32 %self.off8.i, 26
  br i1 %58, label %bb18.i, label %bb60

bb17.i:                                           ; preds = %bb11.i
  %59 = add nsw i32 %_100, -87
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit"

bb18.i:                                           ; preds = %bb13.i
  %60 = add nsw i32 %_100, -55
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit"

"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit": ; preds = %bb58, %bb17.i, %bb18.i
  %val.0.i = phi i32 [ %59, %bb17.i ], [ %60, %bb18.i ], [ %self.off.i, %bb58 ]
  %_33.i = icmp ult i32 %val.0.i, %1
  br i1 %_33.i, label %bb62, label %bb60

bb60:                                             ; preds = %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit", %bb13.i, %bb58.us166
  %61 = getelementptr inbounds %"result::Result<i16, num::ParseIntError>", %"result::Result<i16, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 1, i8* %61, align 1
  br label %bb12

bb62:                                             ; preds = %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit"
  %62 = tail call addrspace(1) { i16, i1 } @llvm.smul.with.overflow.i16(i16 %result.1, i16 %_4.i53) #20
  %63 = extractvalue { i16, i1 } %62, 1
  br i1 %63, label %bb65, label %bb67

bb65:                                             ; preds = %bb62, %bb62.us182
  %64 = getelementptr inbounds %"result::Result<i16, num::ParseIntError>", %"result::Result<i16, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 3, i8* %64, align 1
  br label %bb12

bb67:                                             ; preds = %bb62
  %65 = extractvalue { i16, i1 } %62, 0
  %_4.i = trunc i32 %val.0.i to i16
  %66 = tail call addrspace(1) { i16, i1 } @llvm.ssub.with.overflow.i16(i16 %65, i16 %_4.i) #20
  %67 = extractvalue { i16, i1 } %66, 0
  %68 = extractvalue { i16, i1 } %66, 1
  br i1 %68, label %bb69, label %bb54

bb69:                                             ; preds = %bb67, %bb67.us183
  %69 = getelementptr inbounds %"result::Result<i16, num::ParseIntError>", %"result::Result<i16, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 3, i8* %69, align 1
  br label %bb12

bb72:                                             ; preds = %bb54, %bb54.us162, %bb34, %bb34.us139
  %result.2 = phi i16 [ %result.0.us140, %bb34.us139 ], [ %result.0, %bb34 ], [ %result.1.us163, %bb54.us162 ], [ %result.1, %bb54 ]
  %70 = getelementptr inbounds %"result::Result<i16, num::ParseIntError>", %"result::Result<i16, num::ParseIntError>"* %0, i16 0, i32 2
  %71 = bitcast [2 x i8]* %70 to i16*
  store i16 %result.2, i16* %71, align 1
  br label %bb12
}

; core::num::from_str_radix
; Function Attrs: uwtable
define internal fastcc void @_ZN4core3num14from_str_radix17h2e787a9060537f03E(%"result::Result<i128, num::ParseIntError>"* noalias nocapture dereferenceable(17) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 %1) unnamed_addr addrspace(1) #2 {
start:
  %_16 = alloca [1 x { i8*, i8 addrspace(1)* }], align 1
  %_9 = alloca %"fmt::Arguments", align 1
  %radix = alloca i32, align 1
  store i32 %1, i32* %radix, align 1
  %.off = add i32 %1, -2
  %2 = icmp ugt i32 %.off, 34
  br i1 %2, label %bb6, label %bb5

bb5:                                              ; preds = %start
  %3 = icmp eq i16 %src.1, 0
  br i1 %3, label %bb11, label %bb17

bb6:                                              ; preds = %start
  %4 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %4)
  %5 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_16 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %5)
  %6 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_16 to i32**
  store i32* %radix, i32** %6, align 1
  %7 = getelementptr inbounds [1 x { i8*, i8 addrspace(1)* }], [1 x { i8*, i8 addrspace(1)* }]* %_16, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 (i32*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u32$GT$3fmt17h4fc4f96f0a2da0eaE" to i8 addrspace(1)*), i8 addrspace(1)** %7, align 1
  %8 = bitcast %"fmt::Arguments"* %_9 to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8] }>* @alloc16905 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %8, align 1, !alias.scope !590, !noalias !593
  %9 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 1, i32 1
  store i16 1, i16* %9, align 1, !alias.scope !590, !noalias !593
  %10 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 3, i32 0
  store i8* null, i8** %10, align 1, !alias.scope !590, !noalias !593
  %11 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 5, i32 0
  %12 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %11 to [1 x { i8*, i8 addrspace(1)* }]**
  store [1 x { i8*, i8 addrspace(1)* }]* %_16, [1 x { i8*, i8 addrspace(1)* }]** %12, align 1, !alias.scope !590, !noalias !593
  %13 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 5, i32 1
  store i16 1, i16* %13, align 1, !alias.scope !590, !noalias !593
; call core::panicking::panic_fmt
  call addrspace(1) void @_ZN4core9panicking9panic_fmt17hb7ee2cb815ea49cfE(%"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_9, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18533 to %"panic::Location"*))
  unreachable

bb11:                                             ; preds = %bb5
  %14 = getelementptr inbounds %"result::Result<i128, num::ParseIntError>", %"result::Result<i128, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 0, i8* %14, align 1
  br label %bb12

bb12:                                             ; preds = %bb69, %bb65, %bb60, %bb40, %bb46, %bb50, %bb28, %bb72, %bb11
  %.sink = phi i8 [ 1, %bb69 ], [ 1, %bb65 ], [ 1, %bb60 ], [ 1, %bb40 ], [ 1, %bb46 ], [ 1, %bb50 ], [ 1, %bb28 ], [ 0, %bb72 ], [ 1, %bb11 ]
  %15 = getelementptr inbounds %"result::Result<i128, num::ParseIntError>", %"result::Result<i128, num::ParseIntError>"* %0, i16 0, i32 0, i16 0
  store i8 %.sink, i8* %15, align 1
  ret void

bb17:                                             ; preds = %bb5
  %16 = getelementptr [0 x i8], [0 x i8]* %src.0, i16 0, i16 0
  %17 = load i8, i8* %16, align 1
  switch i8 %17, label %bb27.thread [
    i8 43, label %bb25
    i8 45, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit"
  ]

bb27.thread:                                      ; preds = %bb17
  %18 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 %src.1
  br label %bb32.split

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit": ; preds = %bb17
  br label %bb25

bb25:                                             ; preds = %bb17, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit"
  %_35.sroa.0.0 = phi i1 [ false, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit" ], [ true, %bb17 ]
  %_35.sroa.6.0.in = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 1
  %19 = icmp eq i16 %src.1, 1
  br i1 %19, label %bb28, label %bb27

bb27:                                             ; preds = %bb25
  %20 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 %src.1
  br i1 %_35.sroa.0.0, label %bb32.split, label %bb54.preheader.split

bb54.preheader.split:                             ; preds = %bb27
  %_4.i53 = zext i32 %1 to i128
  %_9.i = icmp ult i32 %1, 11
  br i1 %_9.i, label %bb54.us162, label %bb54

bb54.us162:                                       ; preds = %bb54.preheader.split, %bb67.us183
  %result.1.us163 = phi i128 [ %27, %bb67.us183 ], [ 0, %bb54.preheader.split ]
  %iter1.sroa.0.0.us164 = phi i8* [ %21, %bb67.us183 ], [ %_35.sroa.6.0.in, %bb54.preheader.split ]
  %_13.i.us165 = icmp eq i8* %iter1.sroa.0.0.us164, %20
  br i1 %_13.i.us165, label %bb72, label %bb58.us166

bb58.us166:                                       ; preds = %bb54.us162
  %21 = getelementptr inbounds i8, i8* %iter1.sroa.0.0.us164, i16 1
  %c7.us167 = load i8, i8* %iter1.sroa.0.0.us164, align 1
  %_100.us168 = zext i8 %c7.us167 to i32
  %self.off.i.us170 = add nsw i32 %_100.us168, -48
  %22 = icmp ult i32 %self.off.i.us170, 10
  %_33.i.us181 = icmp ult i32 %self.off.i.us170, %1
  %or.cond = and i1 %22, %_33.i.us181
  br i1 %or.cond, label %bb62.us182, label %bb60

bb62.us182:                                       ; preds = %bb58.us166
  %23 = tail call addrspace(1) { i128, i1 } @llvm.smul.with.overflow.i128(i128 %result.1.us163, i128 %_4.i53) #20
  %24 = extractvalue { i128, i1 } %23, 1
  br i1 %24, label %bb65, label %bb67.us183

bb67.us183:                                       ; preds = %bb62.us182
  %25 = extractvalue { i128, i1 } %23, 0
  %_4.i.us184 = zext i32 %self.off.i.us170 to i128
  %26 = tail call addrspace(1) { i128, i1 } @llvm.ssub.with.overflow.i128(i128 %25, i128 %_4.i.us184) #20
  %27 = extractvalue { i128, i1 } %26, 0
  %28 = extractvalue { i128, i1 } %26, 1
  br i1 %28, label %bb69, label %bb54.us162

bb28:                                             ; preds = %bb25
  %29 = getelementptr inbounds %"result::Result<i128, num::ParseIntError>", %"result::Result<i128, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 0, i8* %29, align 1
  br label %bb12

bb32.split:                                       ; preds = %bb27, %bb27.thread
  %30 = phi i8* [ %18, %bb27.thread ], [ %20, %bb27 ]
  %31 = phi i8* [ %16, %bb27.thread ], [ %_35.sroa.6.0.in, %bb27 ]
  %_4.i61 = zext i32 %1 to i128
  %_9.i65 = icmp ult i32 %1, 11
  br i1 %_9.i65, label %bb34.us139, label %bb34

bb34.us139:                                       ; preds = %bb32.split, %bb48.us160
  %result.0.us140 = phi i128 [ %38, %bb48.us160 ], [ 0, %bb32.split ]
  %iter.sroa.0.0.us141 = phi i8* [ %32, %bb48.us160 ], [ %31, %bb32.split ]
  %_13.i86.us142 = icmp eq i8* %iter.sroa.0.0.us141, %30
  br i1 %_13.i86.us142, label %bb72, label %bb38.us143

bb38.us143:                                       ; preds = %bb34.us139
  %32 = getelementptr inbounds i8, i8* %iter.sroa.0.0.us141, i16 1
  %c.us144 = load i8, i8* %iter.sroa.0.0.us141, align 1
  %_67.us145 = zext i8 %c.us144 to i32
  %self.off.i66.us147 = add nsw i32 %_67.us145, -48
  %33 = icmp ult i32 %self.off.i66.us147, 10
  %_33.i80.us158 = icmp ult i32 %self.off.i66.us147, %1
  %or.cond185 = and i1 %33, %_33.i80.us158
  br i1 %or.cond185, label %bb42.us159, label %bb40

bb42.us159:                                       ; preds = %bb38.us143
  %34 = tail call addrspace(1) { i128, i1 } @llvm.smul.with.overflow.i128(i128 %result.0.us140, i128 %_4.i61) #20
  %35 = extractvalue { i128, i1 } %34, 1
  br i1 %35, label %bb46, label %bb48.us160

bb48.us160:                                       ; preds = %bb42.us159
  %36 = extractvalue { i128, i1 } %34, 0
  %_4.i58.us161 = zext i32 %self.off.i66.us147 to i128
  %37 = tail call addrspace(1) { i128, i1 } @llvm.sadd.with.overflow.i128(i128 %36, i128 %_4.i58.us161) #20
  %38 = extractvalue { i128, i1 } %37, 0
  %39 = extractvalue { i128, i1 } %37, 1
  br i1 %39, label %bb50, label %bb34.us139

bb34:                                             ; preds = %bb32.split, %bb48
  %result.0 = phi i128 [ %52, %bb48 ], [ 0, %bb32.split ]
  %iter.sroa.0.0 = phi i8* [ %40, %bb48 ], [ %31, %bb32.split ]
  %_13.i86 = icmp eq i8* %iter.sroa.0.0, %30
  br i1 %_13.i86, label %bb72, label %bb38

bb38:                                             ; preds = %bb34
  %40 = getelementptr inbounds i8, i8* %iter.sroa.0.0, i16 1
  %c = load i8, i8* %iter.sroa.0.0, align 1
  %_67 = zext i8 %c to i32
  %self.off.i66 = add nsw i32 %_67, -48
  %41 = icmp ult i32 %self.off.i66, 10
  br i1 %41, label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83", label %bb11.i74

bb11.i74:                                         ; preds = %bb38
  %self.off7.i73 = add nsw i32 %_67, -97
  %42 = icmp ult i32 %self.off7.i73, 26
  br i1 %42, label %bb17.i77, label %bb13.i76

bb13.i76:                                         ; preds = %bb11.i74
  %self.off8.i75 = add nsw i32 %_67, -65
  %43 = icmp ult i32 %self.off8.i75, 26
  br i1 %43, label %bb18.i78, label %bb40

bb17.i77:                                         ; preds = %bb11.i74
  %44 = add nsw i32 %_67, -87
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83"

bb18.i78:                                         ; preds = %bb13.i76
  %45 = add nsw i32 %_67, -55
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83"

"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83": ; preds = %bb38, %bb17.i77, %bb18.i78
  %val.0.i79 = phi i32 [ %44, %bb17.i77 ], [ %45, %bb18.i78 ], [ %self.off.i66, %bb38 ]
  %_33.i80 = icmp ult i32 %val.0.i79, %1
  br i1 %_33.i80, label %bb42, label %bb40

bb40:                                             ; preds = %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83", %bb13.i76, %bb38.us143
  %46 = getelementptr inbounds %"result::Result<i128, num::ParseIntError>", %"result::Result<i128, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 1, i8* %46, align 1
  br label %bb12

bb42:                                             ; preds = %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83"
  %47 = tail call addrspace(1) { i128, i1 } @llvm.smul.with.overflow.i128(i128 %result.0, i128 %_4.i61) #20
  %48 = extractvalue { i128, i1 } %47, 1
  br i1 %48, label %bb46, label %bb48

bb46:                                             ; preds = %bb42, %bb42.us159
  %49 = getelementptr inbounds %"result::Result<i128, num::ParseIntError>", %"result::Result<i128, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 2, i8* %49, align 1
  br label %bb12

bb48:                                             ; preds = %bb42
  %50 = extractvalue { i128, i1 } %47, 0
  %_4.i58 = zext i32 %val.0.i79 to i128
  %51 = tail call addrspace(1) { i128, i1 } @llvm.sadd.with.overflow.i128(i128 %50, i128 %_4.i58) #20
  %52 = extractvalue { i128, i1 } %51, 0
  %53 = extractvalue { i128, i1 } %51, 1
  br i1 %53, label %bb50, label %bb34

bb50:                                             ; preds = %bb48, %bb48.us160
  %54 = getelementptr inbounds %"result::Result<i128, num::ParseIntError>", %"result::Result<i128, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 2, i8* %54, align 1
  br label %bb12

bb54:                                             ; preds = %bb54.preheader.split, %bb67
  %result.1 = phi i128 [ %67, %bb67 ], [ 0, %bb54.preheader.split ]
  %iter1.sroa.0.0 = phi i8* [ %55, %bb67 ], [ %_35.sroa.6.0.in, %bb54.preheader.split ]
  %_13.i = icmp eq i8* %iter1.sroa.0.0, %20
  br i1 %_13.i, label %bb72, label %bb58

bb58:                                             ; preds = %bb54
  %55 = getelementptr inbounds i8, i8* %iter1.sroa.0.0, i16 1
  %c7 = load i8, i8* %iter1.sroa.0.0, align 1
  %_100 = zext i8 %c7 to i32
  %self.off.i = add nsw i32 %_100, -48
  %56 = icmp ult i32 %self.off.i, 10
  br i1 %56, label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit", label %bb11.i

bb11.i:                                           ; preds = %bb58
  %self.off7.i = add nsw i32 %_100, -97
  %57 = icmp ult i32 %self.off7.i, 26
  br i1 %57, label %bb17.i, label %bb13.i

bb13.i:                                           ; preds = %bb11.i
  %self.off8.i = add nsw i32 %_100, -65
  %58 = icmp ult i32 %self.off8.i, 26
  br i1 %58, label %bb18.i, label %bb60

bb17.i:                                           ; preds = %bb11.i
  %59 = add nsw i32 %_100, -87
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit"

bb18.i:                                           ; preds = %bb13.i
  %60 = add nsw i32 %_100, -55
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit"

"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit": ; preds = %bb58, %bb17.i, %bb18.i
  %val.0.i = phi i32 [ %59, %bb17.i ], [ %60, %bb18.i ], [ %self.off.i, %bb58 ]
  %_33.i = icmp ult i32 %val.0.i, %1
  br i1 %_33.i, label %bb62, label %bb60

bb60:                                             ; preds = %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit", %bb13.i, %bb58.us166
  %61 = getelementptr inbounds %"result::Result<i128, num::ParseIntError>", %"result::Result<i128, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 1, i8* %61, align 1
  br label %bb12

bb62:                                             ; preds = %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit"
  %62 = tail call addrspace(1) { i128, i1 } @llvm.smul.with.overflow.i128(i128 %result.1, i128 %_4.i53) #20
  %63 = extractvalue { i128, i1 } %62, 1
  br i1 %63, label %bb65, label %bb67

bb65:                                             ; preds = %bb62, %bb62.us182
  %64 = getelementptr inbounds %"result::Result<i128, num::ParseIntError>", %"result::Result<i128, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 3, i8* %64, align 1
  br label %bb12

bb67:                                             ; preds = %bb62
  %65 = extractvalue { i128, i1 } %62, 0
  %_4.i = zext i32 %val.0.i to i128
  %66 = tail call addrspace(1) { i128, i1 } @llvm.ssub.with.overflow.i128(i128 %65, i128 %_4.i) #20
  %67 = extractvalue { i128, i1 } %66, 0
  %68 = extractvalue { i128, i1 } %66, 1
  br i1 %68, label %bb69, label %bb54

bb69:                                             ; preds = %bb67, %bb67.us183
  %69 = getelementptr inbounds %"result::Result<i128, num::ParseIntError>", %"result::Result<i128, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 3, i8* %69, align 1
  br label %bb12

bb72:                                             ; preds = %bb54, %bb54.us162, %bb34, %bb34.us139
  %result.2 = phi i128 [ %result.0.us140, %bb34.us139 ], [ %result.0, %bb34 ], [ %result.1.us163, %bb54.us162 ], [ %result.1, %bb54 ]
  %70 = getelementptr inbounds %"result::Result<i128, num::ParseIntError>", %"result::Result<i128, num::ParseIntError>"* %0, i16 0, i32 2
  %71 = bitcast [16 x i8]* %70 to i128*
  store i128 %result.2, i128* %71, align 1
  br label %bb12
}

; core::num::from_str_radix
; Function Attrs: uwtable
define internal fastcc void @_ZN4core3num14from_str_radix17h39ab26794bfd72eaE(%"result::Result<u16, num::ParseIntError>"* noalias nocapture dereferenceable(3) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 %1) unnamed_addr addrspace(1) #2 {
start:
  %_16 = alloca [1 x { i8*, i8 addrspace(1)* }], align 1
  %_9 = alloca %"fmt::Arguments", align 1
  %radix = alloca i32, align 1
  store i32 %1, i32* %radix, align 1
  %.off = add i32 %1, -2
  %2 = icmp ugt i32 %.off, 34
  br i1 %2, label %bb6, label %bb5

bb5:                                              ; preds = %start
  %3 = icmp eq i16 %src.1, 0
  br i1 %3, label %bb11, label %bb17

bb6:                                              ; preds = %start
  %4 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %4)
  %5 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_16 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %5)
  %6 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_16 to i32**
  store i32* %radix, i32** %6, align 1
  %7 = getelementptr inbounds [1 x { i8*, i8 addrspace(1)* }], [1 x { i8*, i8 addrspace(1)* }]* %_16, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 (i32*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u32$GT$3fmt17h4fc4f96f0a2da0eaE" to i8 addrspace(1)*), i8 addrspace(1)** %7, align 1
  %8 = bitcast %"fmt::Arguments"* %_9 to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8] }>* @alloc16905 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %8, align 1, !alias.scope !596, !noalias !599
  %9 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 1, i32 1
  store i16 1, i16* %9, align 1, !alias.scope !596, !noalias !599
  %10 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 3, i32 0
  store i8* null, i8** %10, align 1, !alias.scope !596, !noalias !599
  %11 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 5, i32 0
  %12 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %11 to [1 x { i8*, i8 addrspace(1)* }]**
  store [1 x { i8*, i8 addrspace(1)* }]* %_16, [1 x { i8*, i8 addrspace(1)* }]** %12, align 1, !alias.scope !596, !noalias !599
  %13 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 5, i32 1
  store i16 1, i16* %13, align 1, !alias.scope !596, !noalias !599
; call core::panicking::panic_fmt
  call addrspace(1) void @_ZN4core9panicking9panic_fmt17hb7ee2cb815ea49cfE(%"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_9, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18533 to %"panic::Location"*))
  unreachable

bb11:                                             ; preds = %bb5
  %14 = getelementptr inbounds %"result::Result<u16, num::ParseIntError>", %"result::Result<u16, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 0, i8* %14, align 1
  br label %bb12

bb12:                                             ; preds = %bb40, %bb46, %bb50, %bb28, %bb72, %bb11
  %.sink = phi i8 [ 1, %bb40 ], [ 1, %bb46 ], [ 1, %bb50 ], [ 1, %bb28 ], [ 0, %bb72 ], [ 1, %bb11 ]
  %15 = getelementptr inbounds %"result::Result<u16, num::ParseIntError>", %"result::Result<u16, num::ParseIntError>"* %0, i16 0, i32 0, i16 0
  store i8 %.sink, i8* %15, align 1
  ret void

bb17:                                             ; preds = %bb5
  %16 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 0
  %17 = load i8, i8* %16, align 1
  %cond = icmp eq i8 %17, 43
  br i1 %cond, label %bb25, label %bb32.split

bb25:                                             ; preds = %bb17
  %18 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 1
  %_7.i.i.i.i92 = add i16 %src.1, -1
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i93 = bitcast i8* %18 to [0 x i8]*
  %19 = icmp eq i16 %_7.i.i.i.i92, 0
  br i1 %19, label %bb28, label %bb32.split

bb28:                                             ; preds = %bb25
  %20 = getelementptr inbounds %"result::Result<u16, num::ParseIntError>", %"result::Result<u16, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 0, i8* %20, align 1
  br label %bb12

bb32.split:                                       ; preds = %bb25, %bb17
  %_35.sroa.10.0114 = phi i16 [ %_7.i.i.i.i92, %bb25 ], [ %src.1, %bb17 ]
  %_35.sroa.6.0113 = phi [0 x i8]* [ %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i93, %bb25 ], [ %src.0, %bb17 ]
  %21 = getelementptr [0 x i8], [0 x i8]* %_35.sroa.6.0113, i16 0, i16 0
  %22 = getelementptr inbounds [0 x i8], [0 x i8]* %_35.sroa.6.0113, i16 0, i16 %_35.sroa.10.0114
  %_4.i61 = trunc i32 %1 to i16
  %_9.i65 = icmp ult i32 %1, 11
  br i1 %_9.i65, label %bb34.us129, label %bb34

bb34.us129:                                       ; preds = %bb32.split, %bb48.us150
  %result.0.us130 = phi i16 [ %30, %bb48.us150 ], [ 0, %bb32.split ]
  %iter.sroa.0.0.us131 = phi i8* [ %24, %bb48.us150 ], [ %21, %bb32.split ]
  %23 = icmp ne i8* %iter.sroa.0.0.us131, null
  tail call addrspace(1) void @llvm.assume(i1 %23)
  %_13.i86.us132 = icmp eq i8* %iter.sroa.0.0.us131, %22
  br i1 %_13.i86.us132, label %bb72, label %bb38.us133

bb38.us133:                                       ; preds = %bb34.us129
  %24 = getelementptr inbounds i8, i8* %iter.sroa.0.0.us131, i16 1
  %c.us134 = load i8, i8* %iter.sroa.0.0.us131, align 1
  %_67.us135 = zext i8 %c.us134 to i32
  %self.off.i66.us137 = add nsw i32 %_67.us135, -48
  %25 = icmp ult i32 %self.off.i66.us137, 10
  %_33.i80.us148 = icmp ult i32 %self.off.i66.us137, %1
  %or.cond = and i1 %25, %_33.i80.us148
  br i1 %or.cond, label %bb42.us149, label %bb40

bb42.us149:                                       ; preds = %bb38.us133
  %26 = tail call addrspace(1) { i16, i1 } @llvm.umul.with.overflow.i16(i16 %result.0.us130, i16 %_4.i61) #20
  %27 = extractvalue { i16, i1 } %26, 1
  br i1 %27, label %bb46, label %bb48.us150

bb48.us150:                                       ; preds = %bb42.us149
  %28 = extractvalue { i16, i1 } %26, 0
  %_4.i58.us151 = trunc i32 %self.off.i66.us137 to i16
  %29 = tail call addrspace(1) { i16, i1 } @llvm.uadd.with.overflow.i16(i16 %28, i16 %_4.i58.us151) #20
  %30 = extractvalue { i16, i1 } %29, 0
  %31 = extractvalue { i16, i1 } %29, 1
  br i1 %31, label %bb50, label %bb34.us129

bb34:                                             ; preds = %bb32.split, %bb48
  %result.0 = phi i16 [ %45, %bb48 ], [ 0, %bb32.split ]
  %iter.sroa.0.0 = phi i8* [ %33, %bb48 ], [ %21, %bb32.split ]
  %32 = icmp ne i8* %iter.sroa.0.0, null
  tail call addrspace(1) void @llvm.assume(i1 %32)
  %_13.i86 = icmp eq i8* %iter.sroa.0.0, %22
  br i1 %_13.i86, label %bb72, label %bb38

bb38:                                             ; preds = %bb34
  %33 = getelementptr inbounds i8, i8* %iter.sroa.0.0, i16 1
  %c = load i8, i8* %iter.sroa.0.0, align 1
  %_67 = zext i8 %c to i32
  %self.off.i66 = add nsw i32 %_67, -48
  %34 = icmp ult i32 %self.off.i66, 10
  br i1 %34, label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83", label %bb11.i74

bb11.i74:                                         ; preds = %bb38
  %self.off7.i73 = add nsw i32 %_67, -97
  %35 = icmp ult i32 %self.off7.i73, 26
  br i1 %35, label %bb17.i77, label %bb13.i76

bb13.i76:                                         ; preds = %bb11.i74
  %self.off8.i75 = add nsw i32 %_67, -65
  %36 = icmp ult i32 %self.off8.i75, 26
  br i1 %36, label %bb18.i78, label %bb40

bb17.i77:                                         ; preds = %bb11.i74
  %37 = add nsw i32 %_67, -87
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83"

bb18.i78:                                         ; preds = %bb13.i76
  %38 = add nsw i32 %_67, -55
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83"

"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83": ; preds = %bb38, %bb17.i77, %bb18.i78
  %val.0.i79 = phi i32 [ %37, %bb17.i77 ], [ %38, %bb18.i78 ], [ %self.off.i66, %bb38 ]
  %_33.i80 = icmp ult i32 %val.0.i79, %1
  br i1 %_33.i80, label %bb42, label %bb40

bb40:                                             ; preds = %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83", %bb13.i76, %bb38.us133
  %39 = getelementptr inbounds %"result::Result<u16, num::ParseIntError>", %"result::Result<u16, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 1, i8* %39, align 1
  br label %bb12

bb42:                                             ; preds = %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83"
  %40 = tail call addrspace(1) { i16, i1 } @llvm.umul.with.overflow.i16(i16 %result.0, i16 %_4.i61) #20
  %41 = extractvalue { i16, i1 } %40, 1
  br i1 %41, label %bb46, label %bb48

bb46:                                             ; preds = %bb42, %bb42.us149
  %42 = getelementptr inbounds %"result::Result<u16, num::ParseIntError>", %"result::Result<u16, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 2, i8* %42, align 1
  br label %bb12

bb48:                                             ; preds = %bb42
  %43 = extractvalue { i16, i1 } %40, 0
  %_4.i58 = trunc i32 %val.0.i79 to i16
  %44 = tail call addrspace(1) { i16, i1 } @llvm.uadd.with.overflow.i16(i16 %43, i16 %_4.i58) #20
  %45 = extractvalue { i16, i1 } %44, 0
  %46 = extractvalue { i16, i1 } %44, 1
  br i1 %46, label %bb50, label %bb34

bb50:                                             ; preds = %bb48, %bb48.us150
  %47 = getelementptr inbounds %"result::Result<u16, num::ParseIntError>", %"result::Result<u16, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 2, i8* %47, align 1
  br label %bb12

bb72:                                             ; preds = %bb34, %bb34.us129
  %result.0.lcssa = phi i16 [ %result.0.us130, %bb34.us129 ], [ %result.0, %bb34 ]
  %48 = getelementptr inbounds %"result::Result<u16, num::ParseIntError>", %"result::Result<u16, num::ParseIntError>"* %0, i16 0, i32 2
  %49 = bitcast [2 x i8]* %48 to i16*
  store i16 %result.0.lcssa, i16* %49, align 1
  br label %bb12
}

; core::num::from_str_radix
; Function Attrs: uwtable
define internal fastcc void @_ZN4core3num14from_str_radix17h46636899300cc69cE(%"result::Result<u32, num::ParseIntError>"* noalias nocapture dereferenceable(5) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 %1) unnamed_addr addrspace(1) #2 {
start:
  %_16 = alloca [1 x { i8*, i8 addrspace(1)* }], align 1
  %_9 = alloca %"fmt::Arguments", align 1
  %radix = alloca i32, align 1
  store i32 %1, i32* %radix, align 1
  %.off = add i32 %1, -2
  %2 = icmp ugt i32 %.off, 34
  br i1 %2, label %bb6, label %bb5

bb5:                                              ; preds = %start
  %3 = icmp eq i16 %src.1, 0
  br i1 %3, label %bb11, label %bb17

bb6:                                              ; preds = %start
  %4 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %4)
  %5 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_16 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %5)
  %6 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_16 to i32**
  store i32* %radix, i32** %6, align 1
  %7 = getelementptr inbounds [1 x { i8*, i8 addrspace(1)* }], [1 x { i8*, i8 addrspace(1)* }]* %_16, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 (i32*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u32$GT$3fmt17h4fc4f96f0a2da0eaE" to i8 addrspace(1)*), i8 addrspace(1)** %7, align 1
  %8 = bitcast %"fmt::Arguments"* %_9 to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8] }>* @alloc16905 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %8, align 1, !alias.scope !602, !noalias !605
  %9 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 1, i32 1
  store i16 1, i16* %9, align 1, !alias.scope !602, !noalias !605
  %10 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 3, i32 0
  store i8* null, i8** %10, align 1, !alias.scope !602, !noalias !605
  %11 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 5, i32 0
  %12 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %11 to [1 x { i8*, i8 addrspace(1)* }]**
  store [1 x { i8*, i8 addrspace(1)* }]* %_16, [1 x { i8*, i8 addrspace(1)* }]** %12, align 1, !alias.scope !602, !noalias !605
  %13 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 5, i32 1
  store i16 1, i16* %13, align 1, !alias.scope !602, !noalias !605
; call core::panicking::panic_fmt
  call addrspace(1) void @_ZN4core9panicking9panic_fmt17hb7ee2cb815ea49cfE(%"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_9, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18533 to %"panic::Location"*))
  unreachable

bb11:                                             ; preds = %bb5
  %14 = getelementptr inbounds %"result::Result<u32, num::ParseIntError>", %"result::Result<u32, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 0, i8* %14, align 1
  br label %bb12

bb12:                                             ; preds = %bb40, %bb46, %bb50, %bb28, %bb72, %bb11
  %.sink = phi i8 [ 1, %bb40 ], [ 1, %bb46 ], [ 1, %bb50 ], [ 1, %bb28 ], [ 0, %bb72 ], [ 1, %bb11 ]
  %15 = getelementptr inbounds %"result::Result<u32, num::ParseIntError>", %"result::Result<u32, num::ParseIntError>"* %0, i16 0, i32 0, i16 0
  store i8 %.sink, i8* %15, align 1
  ret void

bb17:                                             ; preds = %bb5
  %16 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 0
  %17 = load i8, i8* %16, align 1
  %cond = icmp eq i8 %17, 43
  br i1 %cond, label %bb25, label %bb32.split

bb25:                                             ; preds = %bb17
  %18 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 1
  %_7.i.i.i.i88 = add i16 %src.1, -1
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i89 = bitcast i8* %18 to [0 x i8]*
  %19 = icmp eq i16 %_7.i.i.i.i88, 0
  br i1 %19, label %bb28, label %bb32.split

bb28:                                             ; preds = %bb25
  %20 = getelementptr inbounds %"result::Result<u32, num::ParseIntError>", %"result::Result<u32, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 0, i8* %20, align 1
  br label %bb12

bb32.split:                                       ; preds = %bb25, %bb17
  %_35.sroa.10.0110 = phi i16 [ %_7.i.i.i.i88, %bb25 ], [ %src.1, %bb17 ]
  %_35.sroa.6.0109 = phi [0 x i8]* [ %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i89, %bb25 ], [ %src.0, %bb17 ]
  %21 = getelementptr [0 x i8], [0 x i8]* %_35.sroa.6.0109, i16 0, i16 0
  %22 = getelementptr inbounds [0 x i8], [0 x i8]* %_35.sroa.6.0109, i16 0, i16 %_35.sroa.10.0110
  %_9.i61 = icmp ult i32 %1, 11
  br i1 %_9.i61, label %bb34.us125, label %bb34

bb34.us125:                                       ; preds = %bb32.split, %bb48.us146
  %result.0.us126 = phi i32 [ %30, %bb48.us146 ], [ 0, %bb32.split ]
  %iter.sroa.0.0.us127 = phi i8* [ %24, %bb48.us146 ], [ %21, %bb32.split ]
  %23 = icmp ne i8* %iter.sroa.0.0.us127, null
  tail call addrspace(1) void @llvm.assume(i1 %23)
  %_13.i82.us128 = icmp eq i8* %iter.sroa.0.0.us127, %22
  br i1 %_13.i82.us128, label %bb72, label %bb38.us129

bb38.us129:                                       ; preds = %bb34.us125
  %24 = getelementptr inbounds i8, i8* %iter.sroa.0.0.us127, i16 1
  %c.us130 = load i8, i8* %iter.sroa.0.0.us127, align 1
  %_67.us131 = zext i8 %c.us130 to i32
  %self.off.i62.us133 = add nsw i32 %_67.us131, -48
  %25 = icmp ult i32 %self.off.i62.us133, 10
  %_33.i76.us144 = icmp ult i32 %self.off.i62.us133, %1
  %or.cond = and i1 %25, %_33.i76.us144
  br i1 %or.cond, label %bb42.us145, label %bb40

bb42.us145:                                       ; preds = %bb38.us129
  %26 = tail call addrspace(1) { i32, i1 } @llvm.umul.with.overflow.i32(i32 %result.0.us126, i32 %1) #20
  %27 = extractvalue { i32, i1 } %26, 1
  br i1 %27, label %bb46, label %bb48.us146

bb48.us146:                                       ; preds = %bb42.us145
  %28 = extractvalue { i32, i1 } %26, 0
  %29 = tail call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %28, i32 %self.off.i62.us133) #20
  %30 = extractvalue { i32, i1 } %29, 0
  %31 = extractvalue { i32, i1 } %29, 1
  br i1 %31, label %bb50, label %bb34.us125

bb34:                                             ; preds = %bb32.split, %bb48
  %result.0 = phi i32 [ %45, %bb48 ], [ 0, %bb32.split ]
  %iter.sroa.0.0 = phi i8* [ %33, %bb48 ], [ %21, %bb32.split ]
  %32 = icmp ne i8* %iter.sroa.0.0, null
  tail call addrspace(1) void @llvm.assume(i1 %32)
  %_13.i82 = icmp eq i8* %iter.sroa.0.0, %22
  br i1 %_13.i82, label %bb72, label %bb38

bb38:                                             ; preds = %bb34
  %33 = getelementptr inbounds i8, i8* %iter.sroa.0.0, i16 1
  %c = load i8, i8* %iter.sroa.0.0, align 1
  %_67 = zext i8 %c to i32
  %self.off.i62 = add nsw i32 %_67, -48
  %34 = icmp ult i32 %self.off.i62, 10
  br i1 %34, label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit79", label %bb11.i70

bb11.i70:                                         ; preds = %bb38
  %self.off7.i69 = add nsw i32 %_67, -97
  %35 = icmp ult i32 %self.off7.i69, 26
  br i1 %35, label %bb17.i73, label %bb13.i72

bb13.i72:                                         ; preds = %bb11.i70
  %self.off8.i71 = add nsw i32 %_67, -65
  %36 = icmp ult i32 %self.off8.i71, 26
  br i1 %36, label %bb18.i74, label %bb40

bb17.i73:                                         ; preds = %bb11.i70
  %37 = add nsw i32 %_67, -87
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit79"

bb18.i74:                                         ; preds = %bb13.i72
  %38 = add nsw i32 %_67, -55
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit79"

"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit79": ; preds = %bb38, %bb17.i73, %bb18.i74
  %val.0.i75 = phi i32 [ %37, %bb17.i73 ], [ %38, %bb18.i74 ], [ %self.off.i62, %bb38 ]
  %_33.i76 = icmp ult i32 %val.0.i75, %1
  br i1 %_33.i76, label %bb42, label %bb40

bb40:                                             ; preds = %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit79", %bb13.i72, %bb38.us129
  %39 = getelementptr inbounds %"result::Result<u32, num::ParseIntError>", %"result::Result<u32, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 1, i8* %39, align 1
  br label %bb12

bb42:                                             ; preds = %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit79"
  %40 = tail call addrspace(1) { i32, i1 } @llvm.umul.with.overflow.i32(i32 %result.0, i32 %1) #20
  %41 = extractvalue { i32, i1 } %40, 1
  br i1 %41, label %bb46, label %bb48

bb46:                                             ; preds = %bb42, %bb42.us145
  %42 = getelementptr inbounds %"result::Result<u32, num::ParseIntError>", %"result::Result<u32, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 2, i8* %42, align 1
  br label %bb12

bb48:                                             ; preds = %bb42
  %43 = extractvalue { i32, i1 } %40, 0
  %44 = tail call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %43, i32 %val.0.i75) #20
  %45 = extractvalue { i32, i1 } %44, 0
  %46 = extractvalue { i32, i1 } %44, 1
  br i1 %46, label %bb50, label %bb34

bb50:                                             ; preds = %bb48, %bb48.us146
  %47 = getelementptr inbounds %"result::Result<u32, num::ParseIntError>", %"result::Result<u32, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 2, i8* %47, align 1
  br label %bb12

bb72:                                             ; preds = %bb34, %bb34.us125
  %result.0.lcssa = phi i32 [ %result.0.us126, %bb34.us125 ], [ %result.0, %bb34 ]
  %48 = getelementptr inbounds %"result::Result<u32, num::ParseIntError>", %"result::Result<u32, num::ParseIntError>"* %0, i16 0, i32 2
  %49 = bitcast [4 x i8]* %48 to i32*
  store i32 %result.0.lcssa, i32* %49, align 1
  br label %bb12
}

; core::num::from_str_radix
; Function Attrs: uwtable
define internal fastcc void @_ZN4core3num14from_str_radix17h6aa373bc7c329928E(%"result::Result<i64, num::ParseIntError>"* noalias nocapture dereferenceable(9) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 %1) unnamed_addr addrspace(1) #2 {
start:
  %_16 = alloca [1 x { i8*, i8 addrspace(1)* }], align 1
  %_9 = alloca %"fmt::Arguments", align 1
  %radix = alloca i32, align 1
  store i32 %1, i32* %radix, align 1
  %.off = add i32 %1, -2
  %2 = icmp ugt i32 %.off, 34
  br i1 %2, label %bb6, label %bb5

bb5:                                              ; preds = %start
  %3 = icmp eq i16 %src.1, 0
  br i1 %3, label %bb11, label %bb17

bb6:                                              ; preds = %start
  %4 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %4)
  %5 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_16 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %5)
  %6 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_16 to i32**
  store i32* %radix, i32** %6, align 1
  %7 = getelementptr inbounds [1 x { i8*, i8 addrspace(1)* }], [1 x { i8*, i8 addrspace(1)* }]* %_16, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 (i32*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u32$GT$3fmt17h4fc4f96f0a2da0eaE" to i8 addrspace(1)*), i8 addrspace(1)** %7, align 1
  %8 = bitcast %"fmt::Arguments"* %_9 to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8] }>* @alloc16905 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %8, align 1, !alias.scope !608, !noalias !611
  %9 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 1, i32 1
  store i16 1, i16* %9, align 1, !alias.scope !608, !noalias !611
  %10 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 3, i32 0
  store i8* null, i8** %10, align 1, !alias.scope !608, !noalias !611
  %11 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 5, i32 0
  %12 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %11 to [1 x { i8*, i8 addrspace(1)* }]**
  store [1 x { i8*, i8 addrspace(1)* }]* %_16, [1 x { i8*, i8 addrspace(1)* }]** %12, align 1, !alias.scope !608, !noalias !611
  %13 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 5, i32 1
  store i16 1, i16* %13, align 1, !alias.scope !608, !noalias !611
; call core::panicking::panic_fmt
  call addrspace(1) void @_ZN4core9panicking9panic_fmt17hb7ee2cb815ea49cfE(%"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_9, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18533 to %"panic::Location"*))
  unreachable

bb11:                                             ; preds = %bb5
  %14 = getelementptr inbounds %"result::Result<i64, num::ParseIntError>", %"result::Result<i64, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 0, i8* %14, align 1
  br label %bb12

bb12:                                             ; preds = %bb69, %bb65, %bb60, %bb40, %bb46, %bb50, %bb28, %bb72, %bb11
  %.sink = phi i8 [ 1, %bb69 ], [ 1, %bb65 ], [ 1, %bb60 ], [ 1, %bb40 ], [ 1, %bb46 ], [ 1, %bb50 ], [ 1, %bb28 ], [ 0, %bb72 ], [ 1, %bb11 ]
  %15 = getelementptr inbounds %"result::Result<i64, num::ParseIntError>", %"result::Result<i64, num::ParseIntError>"* %0, i16 0, i32 0, i16 0
  store i8 %.sink, i8* %15, align 1
  ret void

bb17:                                             ; preds = %bb5
  %16 = getelementptr [0 x i8], [0 x i8]* %src.0, i16 0, i16 0
  %17 = load i8, i8* %16, align 1
  switch i8 %17, label %bb27.thread [
    i8 43, label %bb25
    i8 45, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit"
  ]

bb27.thread:                                      ; preds = %bb17
  %18 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 %src.1
  br label %bb32.split

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit": ; preds = %bb17
  br label %bb25

bb25:                                             ; preds = %bb17, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit"
  %_35.sroa.0.0 = phi i1 [ false, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit" ], [ true, %bb17 ]
  %_35.sroa.6.0.in = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 1
  %19 = icmp eq i16 %src.1, 1
  br i1 %19, label %bb28, label %bb27

bb27:                                             ; preds = %bb25
  %20 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 %src.1
  br i1 %_35.sroa.0.0, label %bb32.split, label %bb54.preheader.split

bb54.preheader.split:                             ; preds = %bb27
  %_4.i53 = zext i32 %1 to i64
  %_9.i = icmp ult i32 %1, 11
  br i1 %_9.i, label %bb54.us162, label %bb54

bb54.us162:                                       ; preds = %bb54.preheader.split, %bb67.us183
  %result.1.us163 = phi i64 [ %27, %bb67.us183 ], [ 0, %bb54.preheader.split ]
  %iter1.sroa.0.0.us164 = phi i8* [ %21, %bb67.us183 ], [ %_35.sroa.6.0.in, %bb54.preheader.split ]
  %_13.i.us165 = icmp eq i8* %iter1.sroa.0.0.us164, %20
  br i1 %_13.i.us165, label %bb72, label %bb58.us166

bb58.us166:                                       ; preds = %bb54.us162
  %21 = getelementptr inbounds i8, i8* %iter1.sroa.0.0.us164, i16 1
  %c7.us167 = load i8, i8* %iter1.sroa.0.0.us164, align 1
  %_100.us168 = zext i8 %c7.us167 to i32
  %self.off.i.us170 = add nsw i32 %_100.us168, -48
  %22 = icmp ult i32 %self.off.i.us170, 10
  %_33.i.us181 = icmp ult i32 %self.off.i.us170, %1
  %or.cond = and i1 %22, %_33.i.us181
  br i1 %or.cond, label %bb62.us182, label %bb60

bb62.us182:                                       ; preds = %bb58.us166
  %23 = tail call addrspace(1) { i64, i1 } @llvm.smul.with.overflow.i64(i64 %result.1.us163, i64 %_4.i53) #20
  %24 = extractvalue { i64, i1 } %23, 1
  br i1 %24, label %bb65, label %bb67.us183

bb67.us183:                                       ; preds = %bb62.us182
  %25 = extractvalue { i64, i1 } %23, 0
  %_4.i.us184 = zext i32 %self.off.i.us170 to i64
  %26 = tail call addrspace(1) { i64, i1 } @llvm.ssub.with.overflow.i64(i64 %25, i64 %_4.i.us184) #20
  %27 = extractvalue { i64, i1 } %26, 0
  %28 = extractvalue { i64, i1 } %26, 1
  br i1 %28, label %bb69, label %bb54.us162

bb28:                                             ; preds = %bb25
  %29 = getelementptr inbounds %"result::Result<i64, num::ParseIntError>", %"result::Result<i64, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 0, i8* %29, align 1
  br label %bb12

bb32.split:                                       ; preds = %bb27, %bb27.thread
  %30 = phi i8* [ %18, %bb27.thread ], [ %20, %bb27 ]
  %31 = phi i8* [ %16, %bb27.thread ], [ %_35.sroa.6.0.in, %bb27 ]
  %_4.i61 = zext i32 %1 to i64
  %_9.i65 = icmp ult i32 %1, 11
  br i1 %_9.i65, label %bb34.us139, label %bb34

bb34.us139:                                       ; preds = %bb32.split, %bb48.us160
  %result.0.us140 = phi i64 [ %38, %bb48.us160 ], [ 0, %bb32.split ]
  %iter.sroa.0.0.us141 = phi i8* [ %32, %bb48.us160 ], [ %31, %bb32.split ]
  %_13.i86.us142 = icmp eq i8* %iter.sroa.0.0.us141, %30
  br i1 %_13.i86.us142, label %bb72, label %bb38.us143

bb38.us143:                                       ; preds = %bb34.us139
  %32 = getelementptr inbounds i8, i8* %iter.sroa.0.0.us141, i16 1
  %c.us144 = load i8, i8* %iter.sroa.0.0.us141, align 1
  %_67.us145 = zext i8 %c.us144 to i32
  %self.off.i66.us147 = add nsw i32 %_67.us145, -48
  %33 = icmp ult i32 %self.off.i66.us147, 10
  %_33.i80.us158 = icmp ult i32 %self.off.i66.us147, %1
  %or.cond185 = and i1 %33, %_33.i80.us158
  br i1 %or.cond185, label %bb42.us159, label %bb40

bb42.us159:                                       ; preds = %bb38.us143
  %34 = tail call addrspace(1) { i64, i1 } @llvm.smul.with.overflow.i64(i64 %result.0.us140, i64 %_4.i61) #20
  %35 = extractvalue { i64, i1 } %34, 1
  br i1 %35, label %bb46, label %bb48.us160

bb48.us160:                                       ; preds = %bb42.us159
  %36 = extractvalue { i64, i1 } %34, 0
  %_4.i58.us161 = zext i32 %self.off.i66.us147 to i64
  %37 = tail call addrspace(1) { i64, i1 } @llvm.sadd.with.overflow.i64(i64 %36, i64 %_4.i58.us161) #20
  %38 = extractvalue { i64, i1 } %37, 0
  %39 = extractvalue { i64, i1 } %37, 1
  br i1 %39, label %bb50, label %bb34.us139

bb34:                                             ; preds = %bb32.split, %bb48
  %result.0 = phi i64 [ %52, %bb48 ], [ 0, %bb32.split ]
  %iter.sroa.0.0 = phi i8* [ %40, %bb48 ], [ %31, %bb32.split ]
  %_13.i86 = icmp eq i8* %iter.sroa.0.0, %30
  br i1 %_13.i86, label %bb72, label %bb38

bb38:                                             ; preds = %bb34
  %40 = getelementptr inbounds i8, i8* %iter.sroa.0.0, i16 1
  %c = load i8, i8* %iter.sroa.0.0, align 1
  %_67 = zext i8 %c to i32
  %self.off.i66 = add nsw i32 %_67, -48
  %41 = icmp ult i32 %self.off.i66, 10
  br i1 %41, label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83", label %bb11.i74

bb11.i74:                                         ; preds = %bb38
  %self.off7.i73 = add nsw i32 %_67, -97
  %42 = icmp ult i32 %self.off7.i73, 26
  br i1 %42, label %bb17.i77, label %bb13.i76

bb13.i76:                                         ; preds = %bb11.i74
  %self.off8.i75 = add nsw i32 %_67, -65
  %43 = icmp ult i32 %self.off8.i75, 26
  br i1 %43, label %bb18.i78, label %bb40

bb17.i77:                                         ; preds = %bb11.i74
  %44 = add nsw i32 %_67, -87
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83"

bb18.i78:                                         ; preds = %bb13.i76
  %45 = add nsw i32 %_67, -55
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83"

"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83": ; preds = %bb38, %bb17.i77, %bb18.i78
  %val.0.i79 = phi i32 [ %44, %bb17.i77 ], [ %45, %bb18.i78 ], [ %self.off.i66, %bb38 ]
  %_33.i80 = icmp ult i32 %val.0.i79, %1
  br i1 %_33.i80, label %bb42, label %bb40

bb40:                                             ; preds = %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83", %bb13.i76, %bb38.us143
  %46 = getelementptr inbounds %"result::Result<i64, num::ParseIntError>", %"result::Result<i64, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 1, i8* %46, align 1
  br label %bb12

bb42:                                             ; preds = %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83"
  %47 = tail call addrspace(1) { i64, i1 } @llvm.smul.with.overflow.i64(i64 %result.0, i64 %_4.i61) #20
  %48 = extractvalue { i64, i1 } %47, 1
  br i1 %48, label %bb46, label %bb48

bb46:                                             ; preds = %bb42, %bb42.us159
  %49 = getelementptr inbounds %"result::Result<i64, num::ParseIntError>", %"result::Result<i64, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 2, i8* %49, align 1
  br label %bb12

bb48:                                             ; preds = %bb42
  %50 = extractvalue { i64, i1 } %47, 0
  %_4.i58 = zext i32 %val.0.i79 to i64
  %51 = tail call addrspace(1) { i64, i1 } @llvm.sadd.with.overflow.i64(i64 %50, i64 %_4.i58) #20
  %52 = extractvalue { i64, i1 } %51, 0
  %53 = extractvalue { i64, i1 } %51, 1
  br i1 %53, label %bb50, label %bb34

bb50:                                             ; preds = %bb48, %bb48.us160
  %54 = getelementptr inbounds %"result::Result<i64, num::ParseIntError>", %"result::Result<i64, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 2, i8* %54, align 1
  br label %bb12

bb54:                                             ; preds = %bb54.preheader.split, %bb67
  %result.1 = phi i64 [ %67, %bb67 ], [ 0, %bb54.preheader.split ]
  %iter1.sroa.0.0 = phi i8* [ %55, %bb67 ], [ %_35.sroa.6.0.in, %bb54.preheader.split ]
  %_13.i = icmp eq i8* %iter1.sroa.0.0, %20
  br i1 %_13.i, label %bb72, label %bb58

bb58:                                             ; preds = %bb54
  %55 = getelementptr inbounds i8, i8* %iter1.sroa.0.0, i16 1
  %c7 = load i8, i8* %iter1.sroa.0.0, align 1
  %_100 = zext i8 %c7 to i32
  %self.off.i = add nsw i32 %_100, -48
  %56 = icmp ult i32 %self.off.i, 10
  br i1 %56, label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit", label %bb11.i

bb11.i:                                           ; preds = %bb58
  %self.off7.i = add nsw i32 %_100, -97
  %57 = icmp ult i32 %self.off7.i, 26
  br i1 %57, label %bb17.i, label %bb13.i

bb13.i:                                           ; preds = %bb11.i
  %self.off8.i = add nsw i32 %_100, -65
  %58 = icmp ult i32 %self.off8.i, 26
  br i1 %58, label %bb18.i, label %bb60

bb17.i:                                           ; preds = %bb11.i
  %59 = add nsw i32 %_100, -87
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit"

bb18.i:                                           ; preds = %bb13.i
  %60 = add nsw i32 %_100, -55
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit"

"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit": ; preds = %bb58, %bb17.i, %bb18.i
  %val.0.i = phi i32 [ %59, %bb17.i ], [ %60, %bb18.i ], [ %self.off.i, %bb58 ]
  %_33.i = icmp ult i32 %val.0.i, %1
  br i1 %_33.i, label %bb62, label %bb60

bb60:                                             ; preds = %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit", %bb13.i, %bb58.us166
  %61 = getelementptr inbounds %"result::Result<i64, num::ParseIntError>", %"result::Result<i64, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 1, i8* %61, align 1
  br label %bb12

bb62:                                             ; preds = %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit"
  %62 = tail call addrspace(1) { i64, i1 } @llvm.smul.with.overflow.i64(i64 %result.1, i64 %_4.i53) #20
  %63 = extractvalue { i64, i1 } %62, 1
  br i1 %63, label %bb65, label %bb67

bb65:                                             ; preds = %bb62, %bb62.us182
  %64 = getelementptr inbounds %"result::Result<i64, num::ParseIntError>", %"result::Result<i64, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 3, i8* %64, align 1
  br label %bb12

bb67:                                             ; preds = %bb62
  %65 = extractvalue { i64, i1 } %62, 0
  %_4.i = zext i32 %val.0.i to i64
  %66 = tail call addrspace(1) { i64, i1 } @llvm.ssub.with.overflow.i64(i64 %65, i64 %_4.i) #20
  %67 = extractvalue { i64, i1 } %66, 0
  %68 = extractvalue { i64, i1 } %66, 1
  br i1 %68, label %bb69, label %bb54

bb69:                                             ; preds = %bb67, %bb67.us183
  %69 = getelementptr inbounds %"result::Result<i64, num::ParseIntError>", %"result::Result<i64, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 3, i8* %69, align 1
  br label %bb12

bb72:                                             ; preds = %bb54, %bb54.us162, %bb34, %bb34.us139
  %result.2 = phi i64 [ %result.0.us140, %bb34.us139 ], [ %result.0, %bb34 ], [ %result.1.us163, %bb54.us162 ], [ %result.1, %bb54 ]
  %70 = getelementptr inbounds %"result::Result<i64, num::ParseIntError>", %"result::Result<i64, num::ParseIntError>"* %0, i16 0, i32 2
  %71 = bitcast [8 x i8]* %70 to i64*
  store i64 %result.2, i64* %71, align 1
  br label %bb12
}

; core::num::from_str_radix
; Function Attrs: uwtable
define internal fastcc void @_ZN4core3num14from_str_radix17h6c2fc9a7c8d51d38E(%"result::Result<i32, num::ParseIntError>"* noalias nocapture dereferenceable(5) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 %1) unnamed_addr addrspace(1) #2 {
start:
  %_16 = alloca [1 x { i8*, i8 addrspace(1)* }], align 1
  %_9 = alloca %"fmt::Arguments", align 1
  %radix = alloca i32, align 1
  store i32 %1, i32* %radix, align 1
  %.off = add i32 %1, -2
  %2 = icmp ugt i32 %.off, 34
  br i1 %2, label %bb6, label %bb5

bb5:                                              ; preds = %start
  %3 = icmp eq i16 %src.1, 0
  br i1 %3, label %bb11, label %bb17

bb6:                                              ; preds = %start
  %4 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %4)
  %5 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_16 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %5)
  %6 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_16 to i32**
  store i32* %radix, i32** %6, align 1
  %7 = getelementptr inbounds [1 x { i8*, i8 addrspace(1)* }], [1 x { i8*, i8 addrspace(1)* }]* %_16, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 (i32*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u32$GT$3fmt17h4fc4f96f0a2da0eaE" to i8 addrspace(1)*), i8 addrspace(1)** %7, align 1
  %8 = bitcast %"fmt::Arguments"* %_9 to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8] }>* @alloc16905 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %8, align 1, !alias.scope !614, !noalias !617
  %9 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 1, i32 1
  store i16 1, i16* %9, align 1, !alias.scope !614, !noalias !617
  %10 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 3, i32 0
  store i8* null, i8** %10, align 1, !alias.scope !614, !noalias !617
  %11 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 5, i32 0
  %12 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %11 to [1 x { i8*, i8 addrspace(1)* }]**
  store [1 x { i8*, i8 addrspace(1)* }]* %_16, [1 x { i8*, i8 addrspace(1)* }]** %12, align 1, !alias.scope !614, !noalias !617
  %13 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 5, i32 1
  store i16 1, i16* %13, align 1, !alias.scope !614, !noalias !617
; call core::panicking::panic_fmt
  call addrspace(1) void @_ZN4core9panicking9panic_fmt17hb7ee2cb815ea49cfE(%"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_9, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18533 to %"panic::Location"*))
  unreachable

bb11:                                             ; preds = %bb5
  %14 = getelementptr inbounds %"result::Result<i32, num::ParseIntError>", %"result::Result<i32, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 0, i8* %14, align 1
  br label %bb12

bb12:                                             ; preds = %bb69, %bb65, %bb60, %bb40, %bb46, %bb50, %bb28, %bb72, %bb11
  %.sink = phi i8 [ 1, %bb69 ], [ 1, %bb65 ], [ 1, %bb60 ], [ 1, %bb40 ], [ 1, %bb46 ], [ 1, %bb50 ], [ 1, %bb28 ], [ 0, %bb72 ], [ 1, %bb11 ]
  %15 = getelementptr inbounds %"result::Result<i32, num::ParseIntError>", %"result::Result<i32, num::ParseIntError>"* %0, i16 0, i32 0, i16 0
  store i8 %.sink, i8* %15, align 1
  ret void

bb17:                                             ; preds = %bb5
  %16 = getelementptr [0 x i8], [0 x i8]* %src.0, i16 0, i16 0
  %17 = load i8, i8* %16, align 1
  switch i8 %17, label %bb27.thread [
    i8 43, label %bb25
    i8 45, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit"
  ]

bb27.thread:                                      ; preds = %bb17
  %18 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 %src.1
  br label %bb32.split

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit": ; preds = %bb17
  br label %bb25

bb25:                                             ; preds = %bb17, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit"
  %_35.sroa.0.0 = phi i1 [ false, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit" ], [ true, %bb17 ]
  %_35.sroa.6.0.in = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 1
  %19 = icmp eq i16 %src.1, 1
  br i1 %19, label %bb28, label %bb27

bb27:                                             ; preds = %bb25
  %20 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 %src.1
  br i1 %_35.sroa.0.0, label %bb32.split, label %bb54.preheader.split

bb54.preheader.split:                             ; preds = %bb27
  %_9.i = icmp ult i32 %1, 11
  br i1 %_9.i, label %bb54.us157, label %bb54

bb54.us157:                                       ; preds = %bb54.preheader.split, %bb67.us178
  %result.1.us158 = phi i32 [ %27, %bb67.us178 ], [ 0, %bb54.preheader.split ]
  %iter1.sroa.0.0.us159 = phi i8* [ %21, %bb67.us178 ], [ %_35.sroa.6.0.in, %bb54.preheader.split ]
  %_13.i.us160 = icmp eq i8* %iter1.sroa.0.0.us159, %20
  br i1 %_13.i.us160, label %bb72, label %bb58.us161

bb58.us161:                                       ; preds = %bb54.us157
  %21 = getelementptr inbounds i8, i8* %iter1.sroa.0.0.us159, i16 1
  %c7.us162 = load i8, i8* %iter1.sroa.0.0.us159, align 1
  %_100.us163 = zext i8 %c7.us162 to i32
  %self.off.i.us165 = add nsw i32 %_100.us163, -48
  %22 = icmp ult i32 %self.off.i.us165, 10
  %_33.i.us176 = icmp ult i32 %self.off.i.us165, %1
  %or.cond = and i1 %22, %_33.i.us176
  br i1 %or.cond, label %bb62.us177, label %bb60

bb62.us177:                                       ; preds = %bb58.us161
  %23 = tail call addrspace(1) { i32, i1 } @llvm.smul.with.overflow.i32(i32 %result.1.us158, i32 %1) #20
  %24 = extractvalue { i32, i1 } %23, 1
  br i1 %24, label %bb65, label %bb67.us178

bb67.us178:                                       ; preds = %bb62.us177
  %25 = extractvalue { i32, i1 } %23, 0
  %26 = tail call addrspace(1) { i32, i1 } @llvm.ssub.with.overflow.i32(i32 %25, i32 %self.off.i.us165) #20
  %27 = extractvalue { i32, i1 } %26, 0
  %28 = extractvalue { i32, i1 } %26, 1
  br i1 %28, label %bb69, label %bb54.us157

bb28:                                             ; preds = %bb25
  %29 = getelementptr inbounds %"result::Result<i32, num::ParseIntError>", %"result::Result<i32, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 0, i8* %29, align 1
  br label %bb12

bb32.split:                                       ; preds = %bb27, %bb27.thread
  %30 = phi i8* [ %18, %bb27.thread ], [ %20, %bb27 ]
  %31 = phi i8* [ %16, %bb27.thread ], [ %_35.sroa.6.0.in, %bb27 ]
  %_9.i61 = icmp ult i32 %1, 11
  br i1 %_9.i61, label %bb34.us135, label %bb34

bb34.us135:                                       ; preds = %bb32.split, %bb48.us156
  %result.0.us136 = phi i32 [ %38, %bb48.us156 ], [ 0, %bb32.split ]
  %iter.sroa.0.0.us137 = phi i8* [ %32, %bb48.us156 ], [ %31, %bb32.split ]
  %_13.i82.us138 = icmp eq i8* %iter.sroa.0.0.us137, %30
  br i1 %_13.i82.us138, label %bb72, label %bb38.us139

bb38.us139:                                       ; preds = %bb34.us135
  %32 = getelementptr inbounds i8, i8* %iter.sroa.0.0.us137, i16 1
  %c.us140 = load i8, i8* %iter.sroa.0.0.us137, align 1
  %_67.us141 = zext i8 %c.us140 to i32
  %self.off.i62.us143 = add nsw i32 %_67.us141, -48
  %33 = icmp ult i32 %self.off.i62.us143, 10
  %_33.i76.us154 = icmp ult i32 %self.off.i62.us143, %1
  %or.cond179 = and i1 %33, %_33.i76.us154
  br i1 %or.cond179, label %bb42.us155, label %bb40

bb42.us155:                                       ; preds = %bb38.us139
  %34 = tail call addrspace(1) { i32, i1 } @llvm.smul.with.overflow.i32(i32 %result.0.us136, i32 %1) #20
  %35 = extractvalue { i32, i1 } %34, 1
  br i1 %35, label %bb46, label %bb48.us156

bb48.us156:                                       ; preds = %bb42.us155
  %36 = extractvalue { i32, i1 } %34, 0
  %37 = tail call addrspace(1) { i32, i1 } @llvm.sadd.with.overflow.i32(i32 %36, i32 %self.off.i62.us143) #20
  %38 = extractvalue { i32, i1 } %37, 0
  %39 = extractvalue { i32, i1 } %37, 1
  br i1 %39, label %bb50, label %bb34.us135

bb34:                                             ; preds = %bb32.split, %bb48
  %result.0 = phi i32 [ %52, %bb48 ], [ 0, %bb32.split ]
  %iter.sroa.0.0 = phi i8* [ %40, %bb48 ], [ %31, %bb32.split ]
  %_13.i82 = icmp eq i8* %iter.sroa.0.0, %30
  br i1 %_13.i82, label %bb72, label %bb38

bb38:                                             ; preds = %bb34
  %40 = getelementptr inbounds i8, i8* %iter.sroa.0.0, i16 1
  %c = load i8, i8* %iter.sroa.0.0, align 1
  %_67 = zext i8 %c to i32
  %self.off.i62 = add nsw i32 %_67, -48
  %41 = icmp ult i32 %self.off.i62, 10
  br i1 %41, label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit79", label %bb11.i70

bb11.i70:                                         ; preds = %bb38
  %self.off7.i69 = add nsw i32 %_67, -97
  %42 = icmp ult i32 %self.off7.i69, 26
  br i1 %42, label %bb17.i73, label %bb13.i72

bb13.i72:                                         ; preds = %bb11.i70
  %self.off8.i71 = add nsw i32 %_67, -65
  %43 = icmp ult i32 %self.off8.i71, 26
  br i1 %43, label %bb18.i74, label %bb40

bb17.i73:                                         ; preds = %bb11.i70
  %44 = add nsw i32 %_67, -87
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit79"

bb18.i74:                                         ; preds = %bb13.i72
  %45 = add nsw i32 %_67, -55
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit79"

"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit79": ; preds = %bb38, %bb17.i73, %bb18.i74
  %val.0.i75 = phi i32 [ %44, %bb17.i73 ], [ %45, %bb18.i74 ], [ %self.off.i62, %bb38 ]
  %_33.i76 = icmp ult i32 %val.0.i75, %1
  br i1 %_33.i76, label %bb42, label %bb40

bb40:                                             ; preds = %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit79", %bb13.i72, %bb38.us139
  %46 = getelementptr inbounds %"result::Result<i32, num::ParseIntError>", %"result::Result<i32, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 1, i8* %46, align 1
  br label %bb12

bb42:                                             ; preds = %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit79"
  %47 = tail call addrspace(1) { i32, i1 } @llvm.smul.with.overflow.i32(i32 %result.0, i32 %1) #20
  %48 = extractvalue { i32, i1 } %47, 1
  br i1 %48, label %bb46, label %bb48

bb46:                                             ; preds = %bb42, %bb42.us155
  %49 = getelementptr inbounds %"result::Result<i32, num::ParseIntError>", %"result::Result<i32, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 2, i8* %49, align 1
  br label %bb12

bb48:                                             ; preds = %bb42
  %50 = extractvalue { i32, i1 } %47, 0
  %51 = tail call addrspace(1) { i32, i1 } @llvm.sadd.with.overflow.i32(i32 %50, i32 %val.0.i75) #20
  %52 = extractvalue { i32, i1 } %51, 0
  %53 = extractvalue { i32, i1 } %51, 1
  br i1 %53, label %bb50, label %bb34

bb50:                                             ; preds = %bb48, %bb48.us156
  %54 = getelementptr inbounds %"result::Result<i32, num::ParseIntError>", %"result::Result<i32, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 2, i8* %54, align 1
  br label %bb12

bb54:                                             ; preds = %bb54.preheader.split, %bb67
  %result.1 = phi i32 [ %67, %bb67 ], [ 0, %bb54.preheader.split ]
  %iter1.sroa.0.0 = phi i8* [ %55, %bb67 ], [ %_35.sroa.6.0.in, %bb54.preheader.split ]
  %_13.i = icmp eq i8* %iter1.sroa.0.0, %20
  br i1 %_13.i, label %bb72, label %bb58

bb58:                                             ; preds = %bb54
  %55 = getelementptr inbounds i8, i8* %iter1.sroa.0.0, i16 1
  %c7 = load i8, i8* %iter1.sroa.0.0, align 1
  %_100 = zext i8 %c7 to i32
  %self.off.i = add nsw i32 %_100, -48
  %56 = icmp ult i32 %self.off.i, 10
  br i1 %56, label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit", label %bb11.i

bb11.i:                                           ; preds = %bb58
  %self.off7.i = add nsw i32 %_100, -97
  %57 = icmp ult i32 %self.off7.i, 26
  br i1 %57, label %bb17.i, label %bb13.i

bb13.i:                                           ; preds = %bb11.i
  %self.off8.i = add nsw i32 %_100, -65
  %58 = icmp ult i32 %self.off8.i, 26
  br i1 %58, label %bb18.i, label %bb60

bb17.i:                                           ; preds = %bb11.i
  %59 = add nsw i32 %_100, -87
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit"

bb18.i:                                           ; preds = %bb13.i
  %60 = add nsw i32 %_100, -55
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit"

"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit": ; preds = %bb58, %bb17.i, %bb18.i
  %val.0.i = phi i32 [ %59, %bb17.i ], [ %60, %bb18.i ], [ %self.off.i, %bb58 ]
  %_33.i = icmp ult i32 %val.0.i, %1
  br i1 %_33.i, label %bb62, label %bb60

bb60:                                             ; preds = %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit", %bb13.i, %bb58.us161
  %61 = getelementptr inbounds %"result::Result<i32, num::ParseIntError>", %"result::Result<i32, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 1, i8* %61, align 1
  br label %bb12

bb62:                                             ; preds = %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit"
  %62 = tail call addrspace(1) { i32, i1 } @llvm.smul.with.overflow.i32(i32 %result.1, i32 %1) #20
  %63 = extractvalue { i32, i1 } %62, 1
  br i1 %63, label %bb65, label %bb67

bb65:                                             ; preds = %bb62, %bb62.us177
  %64 = getelementptr inbounds %"result::Result<i32, num::ParseIntError>", %"result::Result<i32, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 3, i8* %64, align 1
  br label %bb12

bb67:                                             ; preds = %bb62
  %65 = extractvalue { i32, i1 } %62, 0
  %66 = tail call addrspace(1) { i32, i1 } @llvm.ssub.with.overflow.i32(i32 %65, i32 %val.0.i) #20
  %67 = extractvalue { i32, i1 } %66, 0
  %68 = extractvalue { i32, i1 } %66, 1
  br i1 %68, label %bb69, label %bb54

bb69:                                             ; preds = %bb67, %bb67.us178
  %69 = getelementptr inbounds %"result::Result<i32, num::ParseIntError>", %"result::Result<i32, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 3, i8* %69, align 1
  br label %bb12

bb72:                                             ; preds = %bb54, %bb54.us157, %bb34, %bb34.us135
  %result.2 = phi i32 [ %result.0.us136, %bb34.us135 ], [ %result.0, %bb34 ], [ %result.1.us158, %bb54.us157 ], [ %result.1, %bb54 ]
  %70 = getelementptr inbounds %"result::Result<i32, num::ParseIntError>", %"result::Result<i32, num::ParseIntError>"* %0, i16 0, i32 2
  %71 = bitcast [4 x i8]* %70 to i32*
  store i32 %result.2, i32* %71, align 1
  br label %bb12
}

; core::num::from_str_radix
; Function Attrs: uwtable
define internal fastcc i16 @_ZN4core3num14from_str_radix17hb5e96faa7057ae66E([0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 %0) unnamed_addr addrspace(1) #2 {
start:
  %_16 = alloca [1 x { i8*, i8 addrspace(1)* }], align 1
  %_9 = alloca %"fmt::Arguments", align 1
  %radix = alloca i32, align 1
  store i32 %0, i32* %radix, align 1
  %.off = add i32 %0, -2
  %1 = icmp ugt i32 %.off, 34
  br i1 %1, label %bb6, label %bb5

bb5:                                              ; preds = %start
  %2 = icmp eq i16 %src.1, 0
  br i1 %2, label %bb12, label %bb17

bb6:                                              ; preds = %start
  %3 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %3)
  %4 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_16 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %4)
  %5 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_16 to i32**
  store i32* %radix, i32** %5, align 1
  %6 = getelementptr inbounds [1 x { i8*, i8 addrspace(1)* }], [1 x { i8*, i8 addrspace(1)* }]* %_16, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 (i32*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u32$GT$3fmt17h4fc4f96f0a2da0eaE" to i8 addrspace(1)*), i8 addrspace(1)** %6, align 1
  %7 = bitcast %"fmt::Arguments"* %_9 to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8] }>* @alloc16905 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %7, align 1, !alias.scope !620, !noalias !623
  %8 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 1, i32 1
  store i16 1, i16* %8, align 1, !alias.scope !620, !noalias !623
  %9 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 3, i32 0
  store i8* null, i8** %9, align 1, !alias.scope !620, !noalias !623
  %10 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 5, i32 0
  %11 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %10 to [1 x { i8*, i8 addrspace(1)* }]**
  store [1 x { i8*, i8 addrspace(1)* }]* %_16, [1 x { i8*, i8 addrspace(1)* }]** %11, align 1, !alias.scope !620, !noalias !623
  %12 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 5, i32 1
  store i16 1, i16* %12, align 1, !alias.scope !620, !noalias !623
; call core::panicking::panic_fmt
  call addrspace(1) void @_ZN4core9panicking9panic_fmt17hb7ee2cb815ea49cfE(%"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_9, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18533 to %"panic::Location"*))
  unreachable

bb12:                                             ; preds = %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit", %bb13.i, %bb54, %bb62, %bb67, %bb54.us144, %bb58.us148, %bb62.us164, %bb67.us165, %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit75", %bb13.i68, %bb34, %bb48, %bb42, %bb34.us121, %bb38.us125, %bb42.us141, %bb48.us142, %bb25, %bb5
  %.sroa.10.0 = phi i8 [ 0, %bb5 ], [ 0, %bb25 ], [ 1, %bb38.us125 ], [ %result.0.us122, %bb34.us121 ], [ 2, %bb48.us142 ], [ 2, %bb42.us141 ], [ 1, %bb13.i68 ], [ %result.0, %bb34 ], [ 2, %bb48 ], [ 2, %bb42 ], [ 1, %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit75" ], [ 1, %bb58.us148 ], [ %result.1.us145, %bb54.us144 ], [ 3, %bb67.us165 ], [ 3, %bb62.us164 ], [ 1, %bb13.i ], [ %result.1, %bb54 ], [ 3, %bb67 ], [ 3, %bb62 ], [ 1, %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit" ]
  %.sroa.0.0 = phi i16 [ 1, %bb5 ], [ 1, %bb25 ], [ 1, %bb38.us125 ], [ 0, %bb34.us121 ], [ 1, %bb48.us142 ], [ 1, %bb42.us141 ], [ 1, %bb13.i68 ], [ 0, %bb34 ], [ 1, %bb48 ], [ 1, %bb42 ], [ 1, %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit75" ], [ 1, %bb58.us148 ], [ 0, %bb54.us144 ], [ 1, %bb67.us165 ], [ 1, %bb62.us164 ], [ 1, %bb13.i ], [ 0, %bb54 ], [ 1, %bb67 ], [ 1, %bb62 ], [ 1, %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit" ]
  %.sroa.10.0.insert.ext = zext i8 %.sroa.10.0 to i16
  %.sroa.10.0.insert.shift = shl nuw i16 %.sroa.10.0.insert.ext, 8
  %.sroa.0.0.insert.insert = or i16 %.sroa.10.0.insert.shift, %.sroa.0.0
  ret i16 %.sroa.0.0.insert.insert

bb17:                                             ; preds = %bb5
  %13 = getelementptr [0 x i8], [0 x i8]* %src.0, i16 0, i16 0
  %14 = load i8, i8* %13, align 1
  switch i8 %14, label %bb27.thread [
    i8 43, label %bb25
    i8 45, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit"
  ]

bb27.thread:                                      ; preds = %bb17
  %15 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 %src.1
  br label %bb32.split

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit": ; preds = %bb17
  br label %bb25

bb25:                                             ; preds = %bb17, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit"
  %_35.sroa.0.0 = phi i1 [ false, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit" ], [ true, %bb17 ]
  %_35.sroa.6.0.in = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 1
  %16 = icmp eq i16 %src.1, 1
  br i1 %16, label %bb12, label %bb27

bb27:                                             ; preds = %bb25
  %17 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 %src.1
  br i1 %_35.sroa.0.0, label %bb32.split, label %bb54.preheader.split

bb54.preheader.split:                             ; preds = %bb27
  %_4.i45 = trunc i32 %0 to i8
  %_9.i = icmp ult i32 %0, 11
  br i1 %_9.i, label %bb54.us144, label %bb54

bb54.us144:                                       ; preds = %bb54.preheader.split, %bb67.us165
  %result.1.us145 = phi i8 [ %24, %bb67.us165 ], [ 0, %bb54.preheader.split ]
  %iter1.sroa.0.0.us146 = phi i8* [ %18, %bb67.us165 ], [ %_35.sroa.6.0.in, %bb54.preheader.split ]
  %_13.i.us147 = icmp eq i8* %iter1.sroa.0.0.us146, %17
  br i1 %_13.i.us147, label %bb12, label %bb58.us148

bb58.us148:                                       ; preds = %bb54.us144
  %18 = getelementptr inbounds i8, i8* %iter1.sroa.0.0.us146, i16 1
  %c7.us149 = load i8, i8* %iter1.sroa.0.0.us146, align 1
  %_100.us150 = zext i8 %c7.us149 to i32
  %self.off.i.us152 = add nsw i32 %_100.us150, -48
  %19 = icmp ult i32 %self.off.i.us152, 10
  %_33.i.us163 = icmp ult i32 %self.off.i.us152, %0
  %or.cond = and i1 %19, %_33.i.us163
  br i1 %or.cond, label %bb62.us164, label %bb12

bb62.us164:                                       ; preds = %bb58.us148
  %20 = tail call addrspace(1) { i8, i1 } @llvm.smul.with.overflow.i8(i8 %result.1.us145, i8 %_4.i45) #20
  %21 = extractvalue { i8, i1 } %20, 1
  br i1 %21, label %bb12, label %bb67.us165

bb67.us165:                                       ; preds = %bb62.us164
  %22 = extractvalue { i8, i1 } %20, 0
  %_4.i.us166 = trunc i32 %self.off.i.us152 to i8
  %23 = tail call addrspace(1) { i8, i1 } @llvm.ssub.with.overflow.i8(i8 %22, i8 %_4.i.us166) #20
  %24 = extractvalue { i8, i1 } %23, 0
  %25 = extractvalue { i8, i1 } %23, 1
  br i1 %25, label %bb12, label %bb54.us144

bb32.split:                                       ; preds = %bb27, %bb27.thread
  %26 = phi i8* [ %15, %bb27.thread ], [ %17, %bb27 ]
  %27 = phi i8* [ %13, %bb27.thread ], [ %_35.sroa.6.0.in, %bb27 ]
  %_4.i53 = trunc i32 %0 to i8
  %_9.i57 = icmp ult i32 %0, 11
  br i1 %_9.i57, label %bb34.us121, label %bb34

bb34.us121:                                       ; preds = %bb32.split, %bb48.us142
  %result.0.us122 = phi i8 [ %34, %bb48.us142 ], [ 0, %bb32.split ]
  %iter.sroa.0.0.us123 = phi i8* [ %28, %bb48.us142 ], [ %27, %bb32.split ]
  %_13.i78.us124 = icmp eq i8* %iter.sroa.0.0.us123, %26
  br i1 %_13.i78.us124, label %bb12, label %bb38.us125

bb38.us125:                                       ; preds = %bb34.us121
  %28 = getelementptr inbounds i8, i8* %iter.sroa.0.0.us123, i16 1
  %c.us126 = load i8, i8* %iter.sroa.0.0.us123, align 1
  %_67.us127 = zext i8 %c.us126 to i32
  %self.off.i58.us129 = add nsw i32 %_67.us127, -48
  %29 = icmp ult i32 %self.off.i58.us129, 10
  %_33.i72.us140 = icmp ult i32 %self.off.i58.us129, %0
  %or.cond167 = and i1 %29, %_33.i72.us140
  br i1 %or.cond167, label %bb42.us141, label %bb12

bb42.us141:                                       ; preds = %bb38.us125
  %30 = tail call addrspace(1) { i8, i1 } @llvm.smul.with.overflow.i8(i8 %result.0.us122, i8 %_4.i53) #20
  %31 = extractvalue { i8, i1 } %30, 1
  br i1 %31, label %bb12, label %bb48.us142

bb48.us142:                                       ; preds = %bb42.us141
  %32 = extractvalue { i8, i1 } %30, 0
  %_4.i50.us143 = trunc i32 %self.off.i58.us129 to i8
  %33 = tail call addrspace(1) { i8, i1 } @llvm.sadd.with.overflow.i8(i8 %32, i8 %_4.i50.us143) #20
  %34 = extractvalue { i8, i1 } %33, 0
  %35 = extractvalue { i8, i1 } %33, 1
  br i1 %35, label %bb12, label %bb34.us121

bb34:                                             ; preds = %bb32.split, %bb48
  %result.0 = phi i8 [ %46, %bb48 ], [ 0, %bb32.split ]
  %iter.sroa.0.0 = phi i8* [ %36, %bb48 ], [ %27, %bb32.split ]
  %_13.i78 = icmp eq i8* %iter.sroa.0.0, %26
  br i1 %_13.i78, label %bb12, label %bb38

bb38:                                             ; preds = %bb34
  %36 = getelementptr inbounds i8, i8* %iter.sroa.0.0, i16 1
  %c = load i8, i8* %iter.sroa.0.0, align 1
  %_67 = zext i8 %c to i32
  %self.off.i58 = add nsw i32 %_67, -48
  %37 = icmp ult i32 %self.off.i58, 10
  br i1 %37, label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit75", label %bb11.i66

bb11.i66:                                         ; preds = %bb38
  %self.off7.i65 = add nsw i32 %_67, -97
  %38 = icmp ult i32 %self.off7.i65, 26
  br i1 %38, label %bb17.i69, label %bb13.i68

bb13.i68:                                         ; preds = %bb11.i66
  %self.off8.i67 = add nsw i32 %_67, -65
  %39 = icmp ult i32 %self.off8.i67, 26
  br i1 %39, label %bb18.i70, label %bb12

bb17.i69:                                         ; preds = %bb11.i66
  %40 = add nsw i32 %_67, -87
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit75"

bb18.i70:                                         ; preds = %bb13.i68
  %41 = add nsw i32 %_67, -55
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit75"

"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit75": ; preds = %bb38, %bb17.i69, %bb18.i70
  %val.0.i71 = phi i32 [ %40, %bb17.i69 ], [ %41, %bb18.i70 ], [ %self.off.i58, %bb38 ]
  %_33.i72 = icmp ult i32 %val.0.i71, %0
  br i1 %_33.i72, label %bb42, label %bb12

bb42:                                             ; preds = %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit75"
  %42 = tail call addrspace(1) { i8, i1 } @llvm.smul.with.overflow.i8(i8 %result.0, i8 %_4.i53) #20
  %43 = extractvalue { i8, i1 } %42, 1
  br i1 %43, label %bb12, label %bb48

bb48:                                             ; preds = %bb42
  %44 = extractvalue { i8, i1 } %42, 0
  %_4.i50 = trunc i32 %val.0.i71 to i8
  %45 = tail call addrspace(1) { i8, i1 } @llvm.sadd.with.overflow.i8(i8 %44, i8 %_4.i50) #20
  %46 = extractvalue { i8, i1 } %45, 0
  %47 = extractvalue { i8, i1 } %45, 1
  br i1 %47, label %bb12, label %bb34

bb54:                                             ; preds = %bb54.preheader.split, %bb67
  %result.1 = phi i8 [ %58, %bb67 ], [ 0, %bb54.preheader.split ]
  %iter1.sroa.0.0 = phi i8* [ %48, %bb67 ], [ %_35.sroa.6.0.in, %bb54.preheader.split ]
  %_13.i = icmp eq i8* %iter1.sroa.0.0, %17
  br i1 %_13.i, label %bb12, label %bb58

bb58:                                             ; preds = %bb54
  %48 = getelementptr inbounds i8, i8* %iter1.sroa.0.0, i16 1
  %c7 = load i8, i8* %iter1.sroa.0.0, align 1
  %_100 = zext i8 %c7 to i32
  %self.off.i = add nsw i32 %_100, -48
  %49 = icmp ult i32 %self.off.i, 10
  br i1 %49, label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit", label %bb11.i

bb11.i:                                           ; preds = %bb58
  %self.off7.i = add nsw i32 %_100, -97
  %50 = icmp ult i32 %self.off7.i, 26
  br i1 %50, label %bb17.i, label %bb13.i

bb13.i:                                           ; preds = %bb11.i
  %self.off8.i = add nsw i32 %_100, -65
  %51 = icmp ult i32 %self.off8.i, 26
  br i1 %51, label %bb18.i, label %bb12

bb17.i:                                           ; preds = %bb11.i
  %52 = add nsw i32 %_100, -87
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit"

bb18.i:                                           ; preds = %bb13.i
  %53 = add nsw i32 %_100, -55
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit"

"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit": ; preds = %bb58, %bb17.i, %bb18.i
  %val.0.i = phi i32 [ %52, %bb17.i ], [ %53, %bb18.i ], [ %self.off.i, %bb58 ]
  %_33.i = icmp ult i32 %val.0.i, %0
  br i1 %_33.i, label %bb62, label %bb12

bb62:                                             ; preds = %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit"
  %54 = tail call addrspace(1) { i8, i1 } @llvm.smul.with.overflow.i8(i8 %result.1, i8 %_4.i45) #20
  %55 = extractvalue { i8, i1 } %54, 1
  br i1 %55, label %bb12, label %bb67

bb67:                                             ; preds = %bb62
  %56 = extractvalue { i8, i1 } %54, 0
  %_4.i = trunc i32 %val.0.i to i8
  %57 = tail call addrspace(1) { i8, i1 } @llvm.ssub.with.overflow.i8(i8 %56, i8 %_4.i) #20
  %58 = extractvalue { i8, i1 } %57, 0
  %59 = extractvalue { i8, i1 } %57, 1
  br i1 %59, label %bb12, label %bb54
}

; core::num::from_str_radix
; Function Attrs: uwtable
define internal fastcc void @_ZN4core3num14from_str_radix17hf78483ff9501fe84E(%"result::Result<u128, num::ParseIntError>"* noalias nocapture dereferenceable(17) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 %1) unnamed_addr addrspace(1) #2 {
start:
  %_16 = alloca [1 x { i8*, i8 addrspace(1)* }], align 1
  %_9 = alloca %"fmt::Arguments", align 1
  %radix = alloca i32, align 1
  store i32 %1, i32* %radix, align 1
  %.off = add i32 %1, -2
  %2 = icmp ugt i32 %.off, 34
  br i1 %2, label %bb6, label %bb5

bb5:                                              ; preds = %start
  %3 = icmp eq i16 %src.1, 0
  br i1 %3, label %bb11, label %bb17

bb6:                                              ; preds = %start
  %4 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %4)
  %5 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_16 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %5)
  %6 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_16 to i32**
  store i32* %radix, i32** %6, align 1
  %7 = getelementptr inbounds [1 x { i8*, i8 addrspace(1)* }], [1 x { i8*, i8 addrspace(1)* }]* %_16, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 (i32*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u32$GT$3fmt17h4fc4f96f0a2da0eaE" to i8 addrspace(1)*), i8 addrspace(1)** %7, align 1
  %8 = bitcast %"fmt::Arguments"* %_9 to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8] }>* @alloc16905 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %8, align 1, !alias.scope !626, !noalias !629
  %9 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 1, i32 1
  store i16 1, i16* %9, align 1, !alias.scope !626, !noalias !629
  %10 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 3, i32 0
  store i8* null, i8** %10, align 1, !alias.scope !626, !noalias !629
  %11 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 5, i32 0
  %12 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %11 to [1 x { i8*, i8 addrspace(1)* }]**
  store [1 x { i8*, i8 addrspace(1)* }]* %_16, [1 x { i8*, i8 addrspace(1)* }]** %12, align 1, !alias.scope !626, !noalias !629
  %13 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_9, i16 0, i32 5, i32 1
  store i16 1, i16* %13, align 1, !alias.scope !626, !noalias !629
; call core::panicking::panic_fmt
  call addrspace(1) void @_ZN4core9panicking9panic_fmt17hb7ee2cb815ea49cfE(%"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_9, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18533 to %"panic::Location"*))
  unreachable

bb11:                                             ; preds = %bb5
  %14 = getelementptr inbounds %"result::Result<u128, num::ParseIntError>", %"result::Result<u128, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 0, i8* %14, align 1
  br label %bb12

bb12:                                             ; preds = %bb40, %bb46, %bb50, %bb28, %bb72, %bb11
  %.sink = phi i8 [ 1, %bb40 ], [ 1, %bb46 ], [ 1, %bb50 ], [ 1, %bb28 ], [ 0, %bb72 ], [ 1, %bb11 ]
  %15 = getelementptr inbounds %"result::Result<u128, num::ParseIntError>", %"result::Result<u128, num::ParseIntError>"* %0, i16 0, i32 0, i16 0
  store i8 %.sink, i8* %15, align 1
  ret void

bb17:                                             ; preds = %bb5
  %16 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 0
  %17 = load i8, i8* %16, align 1
  %cond = icmp eq i8 %17, 43
  br i1 %cond, label %bb25, label %bb32.split

bb25:                                             ; preds = %bb17
  %18 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 1
  %_7.i.i.i.i92 = add i16 %src.1, -1
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i93 = bitcast i8* %18 to [0 x i8]*
  %19 = icmp eq i16 %_7.i.i.i.i92, 0
  br i1 %19, label %bb28, label %bb32.split

bb28:                                             ; preds = %bb25
  %20 = getelementptr inbounds %"result::Result<u128, num::ParseIntError>", %"result::Result<u128, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 0, i8* %20, align 1
  br label %bb12

bb32.split:                                       ; preds = %bb25, %bb17
  %_35.sroa.10.0114 = phi i16 [ %_7.i.i.i.i92, %bb25 ], [ %src.1, %bb17 ]
  %_35.sroa.6.0113 = phi [0 x i8]* [ %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i93, %bb25 ], [ %src.0, %bb17 ]
  %21 = getelementptr [0 x i8], [0 x i8]* %_35.sroa.6.0113, i16 0, i16 0
  %22 = getelementptr inbounds [0 x i8], [0 x i8]* %_35.sroa.6.0113, i16 0, i16 %_35.sroa.10.0114
  %_4.i61 = zext i32 %1 to i128
  %_9.i65 = icmp ult i32 %1, 11
  br i1 %_9.i65, label %bb34.us129, label %bb34

bb34.us129:                                       ; preds = %bb32.split, %bb48.us150
  %result.0.us130 = phi i128 [ %30, %bb48.us150 ], [ 0, %bb32.split ]
  %iter.sroa.0.0.us131 = phi i8* [ %24, %bb48.us150 ], [ %21, %bb32.split ]
  %23 = icmp ne i8* %iter.sroa.0.0.us131, null
  tail call addrspace(1) void @llvm.assume(i1 %23)
  %_13.i86.us132 = icmp eq i8* %iter.sroa.0.0.us131, %22
  br i1 %_13.i86.us132, label %bb72, label %bb38.us133

bb38.us133:                                       ; preds = %bb34.us129
  %24 = getelementptr inbounds i8, i8* %iter.sroa.0.0.us131, i16 1
  %c.us134 = load i8, i8* %iter.sroa.0.0.us131, align 1
  %_67.us135 = zext i8 %c.us134 to i32
  %self.off.i66.us137 = add nsw i32 %_67.us135, -48
  %25 = icmp ult i32 %self.off.i66.us137, 10
  %_33.i80.us148 = icmp ult i32 %self.off.i66.us137, %1
  %or.cond = and i1 %25, %_33.i80.us148
  br i1 %or.cond, label %bb42.us149, label %bb40

bb42.us149:                                       ; preds = %bb38.us133
  %26 = tail call addrspace(1) { i128, i1 } @llvm.umul.with.overflow.i128(i128 %result.0.us130, i128 %_4.i61) #20
  %27 = extractvalue { i128, i1 } %26, 1
  br i1 %27, label %bb46, label %bb48.us150

bb48.us150:                                       ; preds = %bb42.us149
  %28 = extractvalue { i128, i1 } %26, 0
  %_4.i58.us151 = zext i32 %self.off.i66.us137 to i128
  %29 = tail call addrspace(1) { i128, i1 } @llvm.uadd.with.overflow.i128(i128 %28, i128 %_4.i58.us151) #20
  %30 = extractvalue { i128, i1 } %29, 0
  %31 = extractvalue { i128, i1 } %29, 1
  br i1 %31, label %bb50, label %bb34.us129

bb34:                                             ; preds = %bb32.split, %bb48
  %result.0 = phi i128 [ %45, %bb48 ], [ 0, %bb32.split ]
  %iter.sroa.0.0 = phi i8* [ %33, %bb48 ], [ %21, %bb32.split ]
  %32 = icmp ne i8* %iter.sroa.0.0, null
  tail call addrspace(1) void @llvm.assume(i1 %32)
  %_13.i86 = icmp eq i8* %iter.sroa.0.0, %22
  br i1 %_13.i86, label %bb72, label %bb38

bb38:                                             ; preds = %bb34
  %33 = getelementptr inbounds i8, i8* %iter.sroa.0.0, i16 1
  %c = load i8, i8* %iter.sroa.0.0, align 1
  %_67 = zext i8 %c to i32
  %self.off.i66 = add nsw i32 %_67, -48
  %34 = icmp ult i32 %self.off.i66, 10
  br i1 %34, label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83", label %bb11.i74

bb11.i74:                                         ; preds = %bb38
  %self.off7.i73 = add nsw i32 %_67, -97
  %35 = icmp ult i32 %self.off7.i73, 26
  br i1 %35, label %bb17.i77, label %bb13.i76

bb13.i76:                                         ; preds = %bb11.i74
  %self.off8.i75 = add nsw i32 %_67, -65
  %36 = icmp ult i32 %self.off8.i75, 26
  br i1 %36, label %bb18.i78, label %bb40

bb17.i77:                                         ; preds = %bb11.i74
  %37 = add nsw i32 %_67, -87
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83"

bb18.i78:                                         ; preds = %bb13.i76
  %38 = add nsw i32 %_67, -55
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83"

"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83": ; preds = %bb38, %bb17.i77, %bb18.i78
  %val.0.i79 = phi i32 [ %37, %bb17.i77 ], [ %38, %bb18.i78 ], [ %self.off.i66, %bb38 ]
  %_33.i80 = icmp ult i32 %val.0.i79, %1
  br i1 %_33.i80, label %bb42, label %bb40

bb40:                                             ; preds = %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83", %bb13.i76, %bb38.us133
  %39 = getelementptr inbounds %"result::Result<u128, num::ParseIntError>", %"result::Result<u128, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 1, i8* %39, align 1
  br label %bb12

bb42:                                             ; preds = %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8to_digit17h4c9b9b39dc30783fE.exit83"
  %40 = tail call addrspace(1) { i128, i1 } @llvm.umul.with.overflow.i128(i128 %result.0, i128 %_4.i61) #20
  %41 = extractvalue { i128, i1 } %40, 1
  br i1 %41, label %bb46, label %bb48

bb46:                                             ; preds = %bb42, %bb42.us149
  %42 = getelementptr inbounds %"result::Result<u128, num::ParseIntError>", %"result::Result<u128, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 2, i8* %42, align 1
  br label %bb12

bb48:                                             ; preds = %bb42
  %43 = extractvalue { i128, i1 } %40, 0
  %_4.i58 = zext i32 %val.0.i79 to i128
  %44 = tail call addrspace(1) { i128, i1 } @llvm.uadd.with.overflow.i128(i128 %43, i128 %_4.i58) #20
  %45 = extractvalue { i128, i1 } %44, 0
  %46 = extractvalue { i128, i1 } %44, 1
  br i1 %46, label %bb50, label %bb34

bb50:                                             ; preds = %bb48, %bb48.us150
  %47 = getelementptr inbounds %"result::Result<u128, num::ParseIntError>", %"result::Result<u128, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 2, i8* %47, align 1
  br label %bb12

bb72:                                             ; preds = %bb34, %bb34.us129
  %result.0.lcssa = phi i128 [ %result.0.us130, %bb34.us129 ], [ %result.0, %bb34 ]
  %48 = getelementptr inbounds %"result::Result<u128, num::ParseIntError>", %"result::Result<u128, num::ParseIntError>"* %0, i16 0, i32 2
  %49 = bitcast [16 x i8]* %48 to i128*
  store i128 %result.0.lcssa, i128* %49, align 1
  br label %bb12
}

; core::num::ParseIntError::kind
; Function Attrs: norecurse nounwind readnone uwtable
define nonnull align 1 dereferenceable(1) i8* @_ZN4core3num13ParseIntError4kind17h58874341550f907aE(i8* noalias readonly returned align 1 dereferenceable(1) %self) unnamed_addr addrspace(1) #1 {
start:
  ret i8* %self
}

; core::num::ParseIntError::__description
; Function Attrs: norecurse nounwind readonly uwtable
define { [0 x i8]*, i16 } @_ZN4core3num13ParseIntError13__description17h2442979957c72692E(i8* noalias nocapture readonly align 1 dereferenceable(1) %self) unnamed_addr addrspace(1) #5 {
start:
  %0 = load i8, i8* %self, align 1, !range !632
  %trunc = trunc i8 %0 to i3
  switch i3 %trunc, label %bb2 [
    i3 0, label %bb3
    i3 1, label %bb4
    i3 2, label %bb5
    i3 3, label %bb6
    i3 -4, label %bb7
  ]

bb2:                                              ; preds = %start
  unreachable

bb3:                                              ; preds = %start
  br label %bb7

bb4:                                              ; preds = %start
  br label %bb7

bb5:                                              ; preds = %start
  br label %bb7

bb6:                                              ; preds = %start
  br label %bb7

bb7:                                              ; preds = %start, %bb3, %bb4, %bb5, %bb6
  %.sroa.6.0 = phi i16 [ 38, %bb6 ], [ 38, %bb5 ], [ 29, %bb4 ], [ 38, %bb3 ], [ 38, %start ]
  %.sroa.0.0 = phi [0 x i8]* [ bitcast (<{ [38 x i8] }>* @alloc18541 to [0 x i8]*), %bb6 ], [ bitcast (<{ [38 x i8] }>* @alloc18542 to [0 x i8]*), %bb5 ], [ bitcast (<{ [29 x i8] }>* @alloc18543 to [0 x i8]*), %bb4 ], [ bitcast (<{ [38 x i8] }>* @alloc18544 to [0 x i8]*), %bb3 ], [ bitcast (<{ [38 x i8] }>* @alloc18540 to [0 x i8]*), %start ]
  %1 = insertvalue { [0 x i8]*, i16 } undef, [0 x i8]* %.sroa.0.0, 0
  %2 = insertvalue { [0 x i8]*, i16 } %1, i16 %.sroa.6.0, 1
  ret { [0 x i8]*, i16 } %2
}

; <core::num::ParseIntError as core::fmt::Display>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN63_$LT$core..num..ParseIntError$u20$as$u20$core..fmt..Display$GT$3fmt17h6e9610c5e35df404E"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %0 = load i8, i8* %self, align 1, !range !632, !alias.scope !633
  %trunc.i = trunc i8 %0 to i3
  switch i3 %trunc.i, label %bb2.i [
    i3 0, label %bb3.i
    i3 1, label %bb4.i
    i3 2, label %bb5.i
    i3 3, label %bb6.i
    i3 -4, label %_ZN4core3num13ParseIntError13__description17h2442979957c72692E.exit
  ]

bb2.i:                                            ; preds = %start
  unreachable

bb3.i:                                            ; preds = %start
  br label %_ZN4core3num13ParseIntError13__description17h2442979957c72692E.exit

bb4.i:                                            ; preds = %start
  br label %_ZN4core3num13ParseIntError13__description17h2442979957c72692E.exit

bb5.i:                                            ; preds = %start
  br label %_ZN4core3num13ParseIntError13__description17h2442979957c72692E.exit

bb6.i:                                            ; preds = %start
  br label %_ZN4core3num13ParseIntError13__description17h2442979957c72692E.exit

_ZN4core3num13ParseIntError13__description17h2442979957c72692E.exit: ; preds = %start, %bb3.i, %bb4.i, %bb5.i, %bb6.i
  %.sroa.6.0.i = phi i16 [ 38, %bb6.i ], [ 38, %bb5.i ], [ 29, %bb4.i ], [ 38, %bb3.i ], [ 38, %start ]
  %.sroa.0.0.i = phi [0 x i8]* [ bitcast (<{ [38 x i8] }>* @alloc18541 to [0 x i8]*), %bb6.i ], [ bitcast (<{ [38 x i8] }>* @alloc18542 to [0 x i8]*), %bb5.i ], [ bitcast (<{ [29 x i8] }>* @alloc18543 to [0 x i8]*), %bb4.i ], [ bitcast (<{ [38 x i8] }>* @alloc18544 to [0 x i8]*), %bb3.i ], [ bitcast (<{ [38 x i8] }>* @alloc18540 to [0 x i8]*), %start ]
; call core::fmt::Formatter::pad
  %1 = tail call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter3pad17h307fb261f2dc8a5eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, [0 x i8]* noalias nonnull readonly align 1 %.sroa.0.0.i, i16 %.sroa.6.0.i)
  ret i1 %1
}

; core::cmp::impls::<impl core::cmp::PartialEq for !>::eq
; Function Attrs: norecurse noreturn nounwind readnone uwtable
define zeroext i1 @"_ZN4core3cmp5impls56_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$$u21$$GT$2eq17h4809a88bca9d7284E"({ [0 x i8] }* noalias nocapture nonnull readonly align 1 %self, { [0 x i8] }* noalias nocapture nonnull readonly align 1 %_2) unnamed_addr addrspace(1) #7 {
start:
  unreachable
}

; core::cmp::impls::<impl core::cmp::Ord for !>::cmp
; Function Attrs: norecurse noreturn nounwind readnone uwtable
define i8 @"_ZN4core3cmp5impls50_$LT$impl$u20$core..cmp..Ord$u20$for$u20$$u21$$GT$3cmp17hb189e8ca59069ca7E"({ [0 x i8] }* noalias nocapture nonnull readonly align 1 %self, { [0 x i8] }* noalias nocapture nonnull readonly align 1 %_2) unnamed_addr addrspace(1) #7 {
start:
  unreachable
}

; <core::convert::Infallible as core::clone::Clone>::clone
; Function Attrs: norecurse noreturn nounwind readnone uwtable
define void @"_ZN64_$LT$core..convert..Infallible$u20$as$u20$core..clone..Clone$GT$5clone17h91c16679c77470d5E"(%"convert::Infallible"* noalias nocapture nonnull readonly align 1 %self) unnamed_addr addrspace(1) #7 {
start:
  unreachable
}

; <core::ops::range::RangeFull as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN64_$LT$core..ops..range..RangeFull$u20$as$u20$core..fmt..Debug$GT$3fmt17heb852ee05699d5a6E"(%"ops::range::RangeFull"* noalias nocapture nonnull readonly align 1 %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %fmt) unnamed_addr addrspace(1) #2 {
start:
  %_5.i = alloca %"fmt::Arguments", align 1
  %0 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %fmt, i16 0, i32 11, i32 0
  %_4.0.i = load {}*, {}** %0, align 1, !noalias !636, !nonnull !568
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %fmt, i16 0, i32 11, i32 1
  %_4.1.i = load [3 x i16]*, [3 x i16]** %1, align 1, !noalias !636, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %2), !noalias !636
  %_4.sroa.0.0..sroa_cast2 = bitcast %"fmt::Arguments"* %_5.i to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8] }>* @alloc15882 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %_4.sroa.0.0..sroa_cast2, align 1
  %_4.sroa.4.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 1, i32 1
  store i16 1, i16* %_4.sroa.4.0..sroa_idx, align 1
  %_4.sroa.5.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 3, i32 0
  store i8* null, i8** %_4.sroa.5.0..sroa_idx, align 1
  %_4.sroa.66.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 5, i32 0
  store [0 x { i8*, i8 addrspace(1)* }]* bitcast (<{ [0 x i8] }>* @alloc19125 to [0 x { i8*, i8 addrspace(1)* }]*), [0 x { i8*, i8 addrspace(1)* }]** %_4.sroa.66.0..sroa_idx, align 1
  %_4.sroa.7.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 5, i32 1
  store i16 0, i16* %_4.sroa.7.0..sroa_idx, align 1
; call core::fmt::write
  %3 = call zeroext addrspace(1) i1 @_ZN4core3fmt5write17hf4cd163abe69055cE({}* nonnull align 1 %_4.0.i, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) %_4.1.i, %"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_5.i), !noalias !636
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 12, i8* nonnull %2), !noalias !636
  ret i1 %3
}

; <core::ops::range::Range<Idx> as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN71_$LT$core..ops..range..Range$LT$Idx$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h484ecd95e4b8c5f0E"({ i16, i16 }* noalias nocapture readonly align 1 dereferenceable(4) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %fmt) unnamed_addr addrspace(1) #2 {
start:
  %_5.i = alloca %"fmt::Arguments", align 1
  %_5 = getelementptr inbounds { i16, i16 }, { i16, i16 }* %self, i16 0, i32 0
; call core::fmt::num::<impl core::fmt::Debug for usize>::fmt
  %_4 = tail call zeroext addrspace(1) i1 @"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..Debug$u20$for$u20$usize$GT$3fmt17h5b03f6e1e4826f97E"(i16* noalias nonnull readonly align 1 dereferenceable(2) %_5, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %fmt)
  br i1 %_4, label %bb6, label %bb3

bb3:                                              ; preds = %start
  %0 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %fmt, i16 0, i32 11, i32 0
  %_4.0.i = load {}*, {}** %0, align 1, !noalias !639, !nonnull !568
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %fmt, i16 0, i32 11, i32 1
  %_4.1.i = load [3 x i16]*, [3 x i16]** %1, align 1, !noalias !639, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %2), !noalias !639
  %_15.sroa.0.0..sroa_cast7 = bitcast %"fmt::Arguments"* %_5.i to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8] }>* @alloc15882 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %_15.sroa.0.0..sroa_cast7, align 1
  %_15.sroa.4.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 1, i32 1
  store i16 1, i16* %_15.sroa.4.0..sroa_idx, align 1
  %_15.sroa.5.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 3, i32 0
  store i8* null, i8** %_15.sroa.5.0..sroa_idx, align 1
  %_15.sroa.611.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 5, i32 0
  store [0 x { i8*, i8 addrspace(1)* }]* bitcast (<{ [0 x i8] }>* @alloc19125 to [0 x { i8*, i8 addrspace(1)* }]*), [0 x { i8*, i8 addrspace(1)* }]** %_15.sroa.611.0..sroa_idx, align 1
  %_15.sroa.7.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 5, i32 1
  store i16 0, i16* %_15.sroa.7.0..sroa_idx, align 1
; call core::fmt::write
  %3 = call zeroext addrspace(1) i1 @_ZN4core3fmt5write17hf4cd163abe69055cE({}* nonnull align 1 %_4.0.i, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) %_4.1.i, %"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_5.i), !noalias !639
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 12, i8* nonnull %2), !noalias !639
  br i1 %3, label %bb6, label %bb12

bb6:                                              ; preds = %bb3, %start
  ret i1 true

bb12:                                             ; preds = %bb3
  %_29 = getelementptr inbounds { i16, i16 }, { i16, i16 }* %self, i16 0, i32 1
; call core::fmt::num::<impl core::fmt::Debug for usize>::fmt
  %_28 = tail call zeroext addrspace(1) i1 @"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..Debug$u20$for$u20$usize$GT$3fmt17h5b03f6e1e4826f97E"(i16* noalias nonnull readonly align 1 dereferenceable(2) %_29, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %fmt)
  ret i1 %_28
}

; <T as core::any::Any>::type_id
; Function Attrs: norecurse nounwind readnone uwtable
define internal i64 @"_ZN36_$LT$T$u20$as$u20$core..any..Any$GT$7type_id17hb11c42a2f8f7f8beE"(%"panic::{{impl}}::internal_constructor::NoPayload"* noalias nocapture nonnull readonly align 1 %self) unnamed_addr addrspace(1) #1 {
start:
  ret i64 -5021490689245352557
}

; <dyn core::any::Any+core::marker::Send+core::marker::Sync as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN105_$LT$dyn$u20$core..any..Any$u2b$core..marker..Send$u2b$core..marker..Sync$u20$as$u20$core..fmt..Debug$GT$3fmt17ha6f95ce58d12c9a1E"({}* nocapture nonnull readnone align 1 %self.0, [3 x i16]* noalias nocapture readonly align 1 dereferenceable(6) %self.1, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
; call core::fmt::Formatter::pad
  %0 = tail call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter3pad17h307fb261f2dc8a5eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [3 x i8] }>* @alloc18552 to [0 x i8]*), i16 3)
  ret i1 %0
}

; <core::array::TryFromSliceError as core::convert::From<core::convert::Infallible>>::from
; Function Attrs: norecurse noreturn nounwind readnone uwtable
define void @"_ZN103_$LT$core..array..TryFromSliceError$u20$as$u20$core..convert..From$LT$core..convert..Infallible$GT$$GT$4from17hf3d6d7bc57846785E"() unnamed_addr addrspace(1) #7 {
start:
  unreachable
}

; core::ascii::escape_default
; Function Attrs: nofree norecurse nounwind uwtable writeonly
define void @_ZN4core5ascii14escape_default17h18898245f3656e4eE(%"ascii::EscapeDefault"* noalias nocapture sret dereferenceable(8) %0, i8 %c) unnamed_addr addrspace(1) #3 {
start:
  switch i8 %c, label %bb1 [
    i8 9, label %bb13
    i8 13, label %bb5
    i8 10, label %bb6
    i8 92, label %bb7
    i8 39, label %bb8
    i8 34, label %bb9
  ]

bb1:                                              ; preds = %start
  %c.off = add i8 %c, -32
  %1 = icmp ult i8 %c.off, 95
  br i1 %1, label %bb13, label %bb3

bb3:                                              ; preds = %bb1
  %_17 = lshr i8 %c, 4
  %_3.i = icmp ult i8 %c, -96
  %.0.v.i = select i1 %_3.i, i8 48, i8 87
  %.0.i = add nuw nsw i8 %.0.v.i, %_17
  %_20 = and i8 %c, 15
  %_3.i55 = icmp ult i8 %_20, 10
  %.0.v.i56 = select i1 %_3.i55, i8 48, i8 87
  %.0.i57 = add nuw nsw i8 %.0.v.i56, %_20
  br label %bb13

bb5:                                              ; preds = %start
  br label %bb13

bb6:                                              ; preds = %start
  br label %bb13

bb7:                                              ; preds = %start
  br label %bb13

bb8:                                              ; preds = %start
  br label %bb13

bb9:                                              ; preds = %start
  br label %bb13

bb13:                                             ; preds = %bb1, %start, %bb5, %bb6, %bb7, %bb8, %bb9, %bb3
  %_4.sroa.0.sroa.0.0 = phi i8 [ 92, %bb3 ], [ 92, %bb9 ], [ 92, %bb8 ], [ 92, %bb7 ], [ 92, %bb6 ], [ 92, %bb5 ], [ 92, %start ], [ %c, %bb1 ]
  %_4.sroa.0.sroa.11.0 = phi i8 [ 120, %bb3 ], [ %c, %bb9 ], [ %c, %bb8 ], [ 92, %bb7 ], [ 110, %bb6 ], [ 114, %bb5 ], [ 116, %start ], [ 0, %bb1 ]
  %_4.sroa.0.sroa.12.0 = phi i8 [ %.0.i, %bb3 ], [ 0, %bb9 ], [ 0, %bb8 ], [ 0, %bb7 ], [ 0, %bb6 ], [ 0, %bb5 ], [ 0, %start ], [ 0, %bb1 ]
  %_4.sroa.0.sroa.13.0 = phi i8 [ %.0.i57, %bb3 ], [ 0, %bb9 ], [ 0, %bb8 ], [ 0, %bb7 ], [ 0, %bb6 ], [ 0, %bb5 ], [ 0, %start ], [ 0, %bb1 ]
  %_4.sroa.11.0 = phi i16 [ 4, %bb3 ], [ 2, %bb9 ], [ 2, %bb8 ], [ 2, %bb7 ], [ 2, %bb6 ], [ 2, %bb5 ], [ 2, %start ], [ 1, %bb1 ]
  %2 = bitcast %"ascii::EscapeDefault"* %0 to i16*
  store i16 0, i16* %2, align 1
  %3 = getelementptr inbounds %"ascii::EscapeDefault", %"ascii::EscapeDefault"* %0, i16 0, i32 1, i32 1
  store i16 %_4.sroa.11.0, i16* %3, align 1
  %_24.sroa.0.0..sroa_idx = getelementptr inbounds %"ascii::EscapeDefault", %"ascii::EscapeDefault"* %0, i16 0, i32 3, i16 0
  store i8 %_4.sroa.0.sroa.0.0, i8* %_24.sroa.0.0..sroa_idx, align 1
  %_24.sroa.4.0..sroa_idx = getelementptr inbounds %"ascii::EscapeDefault", %"ascii::EscapeDefault"* %0, i16 0, i32 3, i16 1
  store i8 %_4.sroa.0.sroa.11.0, i8* %_24.sroa.4.0..sroa_idx, align 1
  %_24.sroa.5.0..sroa_idx = getelementptr inbounds %"ascii::EscapeDefault", %"ascii::EscapeDefault"* %0, i16 0, i32 3, i16 2
  store i8 %_4.sroa.0.sroa.12.0, i8* %_24.sroa.5.0..sroa_idx, align 1
  %_24.sroa.6.0..sroa_idx = getelementptr inbounds %"ascii::EscapeDefault", %"ascii::EscapeDefault"* %0, i16 0, i32 3, i16 3
  store i8 %_4.sroa.0.sroa.13.0, i8* %_24.sroa.6.0..sroa_idx, align 1
  ret void
}

; <core::ascii::EscapeDefault as core::iter::traits::iterator::Iterator>::next
; Function Attrs: uwtable
define { i8, i8 } @"_ZN85_$LT$core..ascii..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17ha99d7a62d15d8658E"(%"ascii::EscapeDefault"* align 1 dereferenceable(8) %0) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_3.i = bitcast %"ascii::EscapeDefault"* %0 to i16*
  %1 = getelementptr inbounds %"ascii::EscapeDefault", %"ascii::EscapeDefault"* %0, i16 0, i32 1, i32 1
  %_3.val.i = load i16, i16* %_3.i, align 1
  %_4.val.i = load i16, i16* %1, align 1
  %2 = icmp ult i16 %_3.val.i, %_4.val.i
  br i1 %2, label %bb3.i2, label %"_ZN4core6option15Option$LT$T$GT$3map17haa1431184bf6f3dfE.exit"

bb3.i2:                                           ; preds = %start
  %3 = add nuw i16 %_3.val.i, 1
  store i16 %3, i16* %_3.i, align 1
  %_5.i.i = icmp ult i16 %_3.val.i, 4
  br i1 %_5.i.i, label %"_ZN85_$LT$core..ascii..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next28_$u7b$$u7b$closure$u7d$$u7d$17hf16299d4c8800e2dE.exit.i", label %panic.i.i, !prof !4, !misexpect !5

panic.i.i:                                        ; preds = %bb3.i2
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_3.val.i, i16 4, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18556 to %"panic::Location"*)), !noalias !642
  unreachable

"_ZN85_$LT$core..ascii..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next28_$u7b$$u7b$closure$u7d$$u7d$17hf16299d4c8800e2dE.exit.i": ; preds = %bb3.i2
  %4 = getelementptr inbounds %"ascii::EscapeDefault", %"ascii::EscapeDefault"* %0, i16 0, i32 3, i16 %_3.val.i
  %5 = load i8, i8* %4, align 1, !noalias !642
  br label %"_ZN4core6option15Option$LT$T$GT$3map17haa1431184bf6f3dfE.exit"

"_ZN4core6option15Option$LT$T$GT$3map17haa1431184bf6f3dfE.exit": ; preds = %start, %"_ZN85_$LT$core..ascii..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next28_$u7b$$u7b$closure$u7d$$u7d$17hf16299d4c8800e2dE.exit.i"
  %.sroa.0.0.i3 = phi i8 [ 1, %"_ZN85_$LT$core..ascii..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next28_$u7b$$u7b$closure$u7d$$u7d$17hf16299d4c8800e2dE.exit.i" ], [ 0, %start ]
  %.sroa.3.0.i = phi i8 [ %5, %"_ZN85_$LT$core..ascii..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next28_$u7b$$u7b$closure$u7d$$u7d$17hf16299d4c8800e2dE.exit.i" ], [ undef, %start ]
  %6 = insertvalue { i8, i8 } undef, i8 %.sroa.0.0.i3, 0
  %7 = insertvalue { i8, i8 } %6, i8 %.sroa.3.0.i, 1
  ret { i8, i8 } %7
}

; <core::ascii::EscapeDefault as core::iter::traits::iterator::Iterator>::size_hint
; Function Attrs: nofree norecurse nounwind uwtable
define void @"_ZN85_$LT$core..ascii..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$9size_hint17h567988377bb8229eE"({ [0 x i8], i16, [0 x i8], { i8, i16 }, [0 x i8] }* noalias nocapture sret dereferenceable(5) %0, %"ascii::EscapeDefault"* noalias nocapture readonly align 1 dereferenceable(8) %self) unnamed_addr addrspace(1) #8 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_2.idx = bitcast %"ascii::EscapeDefault"* %self to i16*
  %_2.idx.val = load i16, i16* %_2.idx, align 1
  %1 = getelementptr %"ascii::EscapeDefault", %"ascii::EscapeDefault"* %self, i16 0, i32 1, i32 1
  %_2.idx1.val = load i16, i16* %1, align 1
  %2 = call addrspace(1) i16 @llvm.usub.sat.i16(i16 %_2.idx1.val, i16 %_2.idx.val)
  %3 = call addrspace(1) i16 @llvm.usub.sat.i16(i16 %_2.idx1.val, i16 %_2.idx.val)
  %4 = bitcast { [0 x i8], i16, [0 x i8], { i8, i16 }, [0 x i8] }* %0 to i16*
  store i16 %2, i16* %4, align 1, !alias.scope !647
  %5 = getelementptr inbounds { [0 x i8], i16, [0 x i8], { i8, i16 }, [0 x i8] }, { [0 x i8], i16, [0 x i8], { i8, i16 }, [0 x i8] }* %0, i16 0, i32 3, i32 0
  store i8 1, i8* %5, align 1, !alias.scope !647
  %6 = getelementptr inbounds { [0 x i8], i16, [0 x i8], { i8, i16 }, [0 x i8] }, { [0 x i8], i16, [0 x i8], { i8, i16 }, [0 x i8] }* %0, i16 0, i32 3, i32 1
  store i16 %3, i16* %6, align 1, !alias.scope !647
  ret void
}

; <core::ascii::EscapeDefault as core::iter::traits::iterator::Iterator>::last
; Function Attrs: uwtable
define { i8, i8 } @"_ZN85_$LT$core..ascii..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4last17ha74baf3709d16bc2E"(%"ascii::EscapeDefault"* noalias nocapture dereferenceable(8) %self) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_3.i.i = bitcast %"ascii::EscapeDefault"* %self to i16*
  %0 = getelementptr inbounds %"ascii::EscapeDefault", %"ascii::EscapeDefault"* %self, i16 0, i32 1, i32 1
  %_3.val.i.i = load i16, i16* %_3.i.i, align 1
  %_4.val.i.i = load i16, i16* %0, align 1
  %1 = icmp ult i16 %_3.val.i.i, %_4.val.i.i
  br i1 %1, label %bb3.i2.i, label %"_ZN100_$LT$core..ascii..EscapeDefault$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back17hef4e59e328a59d92E.exit"

bb3.i2.i:                                         ; preds = %start
  %2 = add i16 %_4.val.i.i, -1
  store i16 %2, i16* %0, align 1
  %_5.i.i.i = icmp ult i16 %2, 4
  br i1 %_5.i.i.i, label %"_ZN100_$LT$core..ascii..EscapeDefault$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back28_$u7b$$u7b$closure$u7d$$u7d$17h004e9f6635e99a1aE.exit.i.i", label %panic.i.i.i, !prof !4, !misexpect !5

panic.i.i.i:                                      ; preds = %bb3.i2.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %2, i16 4, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18558 to %"panic::Location"*)), !noalias !650
  unreachable

"_ZN100_$LT$core..ascii..EscapeDefault$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back28_$u7b$$u7b$closure$u7d$$u7d$17h004e9f6635e99a1aE.exit.i.i": ; preds = %bb3.i2.i
  %3 = getelementptr inbounds %"ascii::EscapeDefault", %"ascii::EscapeDefault"* %self, i16 0, i32 3, i16 %2
  %4 = load i8, i8* %3, align 1, !noalias !650
  br label %"_ZN100_$LT$core..ascii..EscapeDefault$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back17hef4e59e328a59d92E.exit"

"_ZN100_$LT$core..ascii..EscapeDefault$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back17hef4e59e328a59d92E.exit": ; preds = %start, %"_ZN100_$LT$core..ascii..EscapeDefault$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back28_$u7b$$u7b$closure$u7d$$u7d$17h004e9f6635e99a1aE.exit.i.i"
  %.sroa.0.0.i3.i = phi i8 [ 1, %"_ZN100_$LT$core..ascii..EscapeDefault$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back28_$u7b$$u7b$closure$u7d$$u7d$17h004e9f6635e99a1aE.exit.i.i" ], [ 0, %start ]
  %.sroa.3.0.i4.i = phi i8 [ %4, %"_ZN100_$LT$core..ascii..EscapeDefault$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back28_$u7b$$u7b$closure$u7d$$u7d$17h004e9f6635e99a1aE.exit.i.i" ], [ undef, %start ]
  %5 = insertvalue { i8, i8 } undef, i8 %.sroa.0.0.i3.i, 0
  %6 = insertvalue { i8, i8 } %5, i8 %.sroa.3.0.i4.i, 1
  ret { i8, i8 } %6
}

; <core::ascii::EscapeDefault as core::iter::traits::double_ended::DoubleEndedIterator>::next_back
; Function Attrs: uwtable
define { i8, i8 } @"_ZN100_$LT$core..ascii..EscapeDefault$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back17hef4e59e328a59d92E"(%"ascii::EscapeDefault"* align 1 dereferenceable(8) %0) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_3.i = bitcast %"ascii::EscapeDefault"* %0 to i16*
  %1 = getelementptr inbounds %"ascii::EscapeDefault", %"ascii::EscapeDefault"* %0, i16 0, i32 1, i32 1
  %_3.val.i = load i16, i16* %_3.i, align 1
  %_4.val.i = load i16, i16* %1, align 1
  %2 = icmp ult i16 %_3.val.i, %_4.val.i
  br i1 %2, label %bb3.i2, label %"_ZN4core6option15Option$LT$T$GT$3map17h96ae0c3786dd533cE.exit"

bb3.i2:                                           ; preds = %start
  %3 = add i16 %_4.val.i, -1
  store i16 %3, i16* %1, align 1
  %_5.i.i = icmp ult i16 %3, 4
  br i1 %_5.i.i, label %"_ZN100_$LT$core..ascii..EscapeDefault$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back28_$u7b$$u7b$closure$u7d$$u7d$17h004e9f6635e99a1aE.exit.i", label %panic.i.i, !prof !4, !misexpect !5

panic.i.i:                                        ; preds = %bb3.i2
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %3, i16 4, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18558 to %"panic::Location"*)), !noalias !655
  unreachable

"_ZN100_$LT$core..ascii..EscapeDefault$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back28_$u7b$$u7b$closure$u7d$$u7d$17h004e9f6635e99a1aE.exit.i": ; preds = %bb3.i2
  %4 = getelementptr inbounds %"ascii::EscapeDefault", %"ascii::EscapeDefault"* %0, i16 0, i32 3, i16 %3
  %5 = load i8, i8* %4, align 1, !noalias !655
  br label %"_ZN4core6option15Option$LT$T$GT$3map17h96ae0c3786dd533cE.exit"

"_ZN4core6option15Option$LT$T$GT$3map17h96ae0c3786dd533cE.exit": ; preds = %start, %"_ZN100_$LT$core..ascii..EscapeDefault$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back28_$u7b$$u7b$closure$u7d$$u7d$17h004e9f6635e99a1aE.exit.i"
  %.sroa.0.0.i3 = phi i8 [ 1, %"_ZN100_$LT$core..ascii..EscapeDefault$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back28_$u7b$$u7b$closure$u7d$$u7d$17h004e9f6635e99a1aE.exit.i" ], [ 0, %start ]
  %.sroa.3.0.i4 = phi i8 [ %5, %"_ZN100_$LT$core..ascii..EscapeDefault$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back28_$u7b$$u7b$closure$u7d$$u7d$17h004e9f6635e99a1aE.exit.i" ], [ undef, %start ]
  %6 = insertvalue { i8, i8 } undef, i8 %.sroa.0.0.i3, 0
  %7 = insertvalue { i8, i8 } %6, i8 %.sroa.3.0.i4, 1
  ret { i8, i8 } %7
}

; <core::ascii::EscapeDefault as core::fmt::Display>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..ascii..EscapeDefault$u20$as$u20$core..fmt..Display$GT$3fmt17h487fa3e15e2c54a2E"(%"ascii::EscapeDefault"* noalias readonly align 1 dereferenceable(8) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_12.idx = bitcast %"ascii::EscapeDefault"* %self to i16*
  %_12.idx.val = load i16, i16* %_12.idx, align 1
  %0 = getelementptr %"ascii::EscapeDefault", %"ascii::EscapeDefault"* %self, i16 0, i32 1, i32 1
  %_12.idx1.val = load i16, i16* %0, align 1
  %_3.i.i = icmp ult i16 %_12.idx1.val, %_12.idx.val
  br i1 %_3.i.i, label %bb2.i.i, label %bb1.i.i

bb1.i.i:                                          ; preds = %start
  %_8.i.i = icmp ugt i16 %_12.idx1.val, 4
  br i1 %_8.i.i, label %bb5.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h349d9c187345980eE.exit"

bb2.i.i:                                          ; preds = %start
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %_12.idx.val, i16 %_12.idx1.val, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18560 to %"panic::Location"*))
  unreachable

bb5.i.i:                                          ; preds = %bb1.i.i
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %_12.idx1.val, i16 4, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18560 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h349d9c187345980eE.exit": ; preds = %bb1.i.i
  %1 = getelementptr inbounds %"ascii::EscapeDefault", %"ascii::EscapeDefault"* %self, i16 0, i32 3, i16 %_12.idx.val
  %_7.i.i.i = sub i16 %_12.idx1.val, %_12.idx.val
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i = bitcast i8* %1 to [0 x i8]*
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i = load {}*, {}** %2, align 1, !noalias !660, !nonnull !568
  %3 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %4 = bitcast [3 x i16]** %3 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %4, align 1, !noalias !660, !nonnull !568
  %5 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i, i16 3
  %6 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %5, align 1, !invariant.load !568, !noalias !660, !nonnull !568
  %7 = tail call zeroext addrspace(1) i1 %6({}* nonnull align 1 %_3.0.i, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i, i16 %_7.i.i.i)
  ret i1 %7
}

; <core::ascii::EscapeDefault as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN63_$LT$core..ascii..EscapeDefault$u20$as$u20$core..fmt..Debug$GT$3fmt17h470c155695c8ea88E"(%"ascii::EscapeDefault"* noalias nocapture readonly align 1 dereferenceable(8) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
; call core::fmt::Formatter::pad
  %0 = tail call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter3pad17h307fb261f2dc8a5eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [20 x i8] }>* @alloc18561 to [0 x i8]*), i16 20)
  ret i1 %0
}

; <core::cell::BorrowError as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN60_$LT$core..cell..BorrowError$u20$as$u20$core..fmt..Debug$GT$3fmt17h7e826d6eefb28f07E"(%"cell::BorrowError"* noalias nocapture nonnull readonly align 1 %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit:
  %0 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %0, align 1, !noalias !663, !nonnull !568
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %2 = bitcast [3 x i16]** %1 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %2, align 1, !noalias !663, !nonnull !568
  %3 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %4 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %3, align 1, !invariant.load !568, !noalias !663, !nonnull !568
  %5 = tail call zeroext addrspace(1) i1 %4({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [11 x i8] }>* @alloc18562 to [0 x i8]*), i16 11), !noalias !672
  ret i1 %5
}

; <core::cell::BorrowError as core::fmt::Display>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN62_$LT$core..cell..BorrowError$u20$as$u20$core..fmt..Display$GT$3fmt17h37e760d1a3c17e5fE"(%"cell::BorrowError"* noalias nocapture nonnull readonly align 1 %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
; call core::fmt::Formatter::pad
  %0 = tail call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter3pad17h307fb261f2dc8a5eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [24 x i8] }>* @alloc18563 to [0 x i8]*), i16 24)
  ret i1 %0
}

; <core::cell::BorrowMutError as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN63_$LT$core..cell..BorrowMutError$u20$as$u20$core..fmt..Debug$GT$3fmt17h6e536ebedce8e972E"(%"cell::BorrowMutError"* noalias nocapture nonnull readonly align 1 %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit:
  %0 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %0, align 1, !noalias !673, !nonnull !568
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %2 = bitcast [3 x i16]** %1 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %2, align 1, !noalias !673, !nonnull !568
  %3 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %4 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %3, align 1, !invariant.load !568, !noalias !673, !nonnull !568
  %5 = tail call zeroext addrspace(1) i1 %4({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [14 x i8] }>* @alloc18564 to [0 x i8]*), i16 14), !noalias !682
  ret i1 %5
}

; <core::cell::BorrowMutError as core::fmt::Display>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..cell..BorrowMutError$u20$as$u20$core..fmt..Display$GT$3fmt17hcfc3b180ec2b50a7E"(%"cell::BorrowMutError"* noalias nocapture nonnull readonly align 1 %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
; call core::fmt::Formatter::pad
  %0 = tail call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter3pad17h307fb261f2dc8a5eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [16 x i8] }>* @alloc18565 to [0 x i8]*), i16 16)
  ret i1 %0
}

; core::char::convert::ParseCharError::__description
; Function Attrs: norecurse nounwind readonly uwtable
define { [0 x i8]*, i16 } @_ZN4core4char7convert14ParseCharError13__description17h8e67a5346e1a697eE(i8* noalias nocapture readonly align 1 dereferenceable(1) %self) unnamed_addr addrspace(1) #5 {
start:
  %0 = load i8, i8* %self, align 1, !range !87
  %switch = icmp eq i8 %0, 1
  %. = select i1 %switch, i16 29, i16 35
  %.2 = select i1 %switch, [0 x i8]* bitcast (<{ [29 x i8] }>* @alloc18566 to [0 x i8]*), [0 x i8]* bitcast (<{ [35 x i8] }>* @alloc18567 to [0 x i8]*)
  %1 = insertvalue { [0 x i8]*, i16 } undef, [0 x i8]* %.2, 0
  %2 = insertvalue { [0 x i8]*, i16 } %1, i16 %., 1
  ret { [0 x i8]*, i16 } %2
}

; <core::char::convert::ParseCharError as core::fmt::Display>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN74_$LT$core..char..convert..ParseCharError$u20$as$u20$core..fmt..Display$GT$3fmt17h985b2ca31194d736E"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %0 = load i8, i8* %self, align 1, !range !87, !alias.scope !683
  %switch.i = icmp eq i8 %0, 1
  %..i = select i1 %switch.i, i16 29, i16 35
  %.2.i = select i1 %switch.i, [0 x i8]* bitcast (<{ [29 x i8] }>* @alloc18566 to [0 x i8]*), [0 x i8]* bitcast (<{ [35 x i8] }>* @alloc18567 to [0 x i8]*)
; call core::fmt::Formatter::pad
  %1 = tail call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter3pad17h307fb261f2dc8a5eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, [0 x i8]* noalias nonnull readonly align 1 %.2.i, i16 %..i)
  ret i1 %1
}

; <core::char::convert::CharTryFromError as core::fmt::Display>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN76_$LT$core..char..convert..CharTryFromError$u20$as$u20$core..fmt..Display$GT$3fmt17hd4be561770c06fadE"(%"char::convert::CharTryFromError"* noalias nocapture nonnull readonly align 1 %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
; call core::fmt::Formatter::pad
  %0 = tail call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter3pad17h307fb261f2dc8a5eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [41 x i8] }>* @alloc18568 to [0 x i8]*), i16 41)
  ret i1 %0
}

; <core::char::decode::DecodeUtf16Error as core::fmt::Display>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN75_$LT$core..char..decode..DecodeUtf16Error$u20$as$u20$core..fmt..Display$GT$3fmt17h25ce77970f7ba0f3E"(i16* noalias readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_5.i = alloca %"fmt::Arguments", align 1
  %_11 = alloca [1 x { i8*, i8 addrspace(1)* }], align 1
  %0 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_11 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_11 to i16**
  store i16* %self, i16** %1, align 1
  %2 = getelementptr inbounds [1 x { i8*, i8 addrspace(1)* }], [1 x { i8*, i8 addrspace(1)* }]* %_11, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i16$GT$3fmt17hbe4318a26c58a6ceE" to i8 addrspace(1)*), i8 addrspace(1)** %2, align 1
  %3 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_4.0.i = load {}*, {}** %3, align 1, !noalias !686, !nonnull !568
  %4 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %_4.1.i = load [3 x i16]*, [3 x i16]** %4, align 1, !noalias !686, !nonnull !568
  %5 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %5), !noalias !686
  %_4.sroa.0.0..sroa_cast3 = bitcast %"fmt::Arguments"* %_5.i to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8] }>* @alloc16486 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %_4.sroa.0.0..sroa_cast3, align 1
  %_4.sroa.4.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 1, i32 1
  store i16 1, i16* %_4.sroa.4.0..sroa_idx, align 1
  %_4.sroa.5.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 3, i32 0
  store i8* null, i8** %_4.sroa.5.0..sroa_idx, align 1
  %_4.sroa.67.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 5, i32 0
  %6 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %_4.sroa.67.0..sroa_idx to [1 x { i8*, i8 addrspace(1)* }]**
  store [1 x { i8*, i8 addrspace(1)* }]* %_11, [1 x { i8*, i8 addrspace(1)* }]** %6, align 1
  %_4.sroa.7.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 5, i32 1
  store i16 1, i16* %_4.sroa.7.0..sroa_idx, align 1
; call core::fmt::write
  %7 = call zeroext addrspace(1) i1 @_ZN4core3fmt5write17hf4cd163abe69055cE({}* nonnull align 1 %_4.0.i, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) %_4.1.i, %"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_5.i), !noalias !686
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 12, i8* nonnull %5), !noalias !686
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %7
}

; <core::char::EscapeUnicode as core::iter::traits::iterator::Iterator>::next
; Function Attrs: nofree norecurse nounwind uwtable
define i32 @"_ZN84_$LT$core..char..EscapeUnicode$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hc3714d15c6c49edbE"(%"char::EscapeUnicode"* nocapture align 1 dereferenceable(7) %self) unnamed_addr addrspace(1) #8 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = getelementptr inbounds %"char::EscapeUnicode", %"char::EscapeUnicode"* %self, i16 0, i32 3
  %1 = load i8, i8* %0, align 1, !range !689
  %trunc = trunc i8 %1 to i3
  switch i3 %trunc, label %bb2 [
    i3 0, label %bb13
    i3 1, label %bb12
    i3 2, label %bb6
    i3 3, label %bb5
    i3 -4, label %bb4
    i3 -3, label %bb3
  ]

bb2:                                              ; preds = %start
  unreachable

bb3:                                              ; preds = %start
  store i8 4, i8* %0, align 1
  br label %bb13

bb4:                                              ; preds = %start
  store i8 3, i8* %0, align 1
  br label %bb13

bb5:                                              ; preds = %start
  store i8 2, i8* %0, align 1
  br label %bb13

bb6:                                              ; preds = %start
  %2 = bitcast %"char::EscapeUnicode"* %self to i32*
  %_9 = load i32, i32* %2, align 1, !range !690
  %3 = getelementptr inbounds %"char::EscapeUnicode", %"char::EscapeUnicode"* %self, i16 0, i32 5
  %_11 = load i16, i16* %3, align 1
  %_10 = shl i16 %_11, 2
  %4 = and i16 %_10, 28
  %5 = zext i16 %4 to i32
  %_7 = lshr i32 %_9, %5
  %6 = trunc i32 %_7 to i8
  %num1.i = and i8 %6, 15
  %_12.i = icmp ult i8 %num1.i, 10
  %_15.i = or i8 %num1.i, 48
  %_18.i = add nuw nsw i8 %num1.i, 87
  %.0.i.v = select i1 %_12.i, i8 %_15.i, i8 %_18.i
  %.0.i = zext i8 %.0.i.v to i32
  %_15 = icmp eq i16 %_11, 0
  br i1 %_15, label %bb10, label %bb9

bb9:                                              ; preds = %bb6
  %7 = add i16 %_11, -1
  store i16 %7, i16* %3, align 1
  br label %bb13

bb10:                                             ; preds = %bb6
  store i8 1, i8* %0, align 1
  br label %bb13

bb12:                                             ; preds = %start
  store i8 0, i8* %0, align 1
  br label %bb13

bb13:                                             ; preds = %bb10, %bb9, %start, %bb12, %bb5, %bb4, %bb3
  %.0 = phi i32 [ 92, %bb3 ], [ 117, %bb4 ], [ 123, %bb5 ], [ 125, %bb12 ], [ 1114112, %start ], [ %.0.i, %bb9 ], [ %.0.i, %bb10 ]
  ret i32 %.0
}

; <core::char::EscapeUnicode as core::iter::traits::iterator::Iterator>::last
; Function Attrs: norecurse nounwind readonly uwtable
define i32 @"_ZN84_$LT$core..char..EscapeUnicode$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4last17h92dc027f9e38d72eE"(%"char::EscapeUnicode"* noalias nocapture readonly dereferenceable(7) %self) unnamed_addr addrspace(1) #5 {
start:
  %0 = getelementptr inbounds %"char::EscapeUnicode", %"char::EscapeUnicode"* %self, i16 0, i32 3
  %1 = load i8, i8* %0, align 1, !range !689
  %switch = icmp eq i8 %1, 0
  %. = select i1 %switch, i32 1114112, i32 125
  ret i32 %.
}

; <core::char::EscapeUnicode as core::fmt::Display>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN64_$LT$core..char..EscapeUnicode$u20$as$u20$core..fmt..Display$GT$3fmt17h21b9f97bde72d046E"(%"char::EscapeUnicode"* noalias nocapture readonly align 1 dereferenceable(7) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %__self_0_0.i = bitcast %"char::EscapeUnicode"* %self to i32*
  %__self_0_1.i = getelementptr inbounds %"char::EscapeUnicode", %"char::EscapeUnicode"* %self, i16 0, i32 3
  %__self_0_2.i = getelementptr inbounds %"char::EscapeUnicode", %"char::EscapeUnicode"* %self, i16 0, i32 5
  %__self_0_0.val.i = load i32, i32* %__self_0_0.i, align 1, !alias.scope !691, !noalias !694
  %__self_0_1.val.i = load i8, i8* %__self_0_1.i, align 1, !alias.scope !691, !noalias !694
  %trunc.i.i = trunc i8 %__self_0_1.val.i to i3
  %switch.tableidx = xor i3 %trunc.i.i, -4
  %switch.maskindex = zext i3 %switch.tableidx to i8
  %switch.shifted = lshr i8 -13, %switch.maskindex
  %0 = and i8 %switch.shifted, 1
  %switch.lobit = icmp ne i8 %0, 0
  call addrspace(1) void @llvm.assume(i1 %switch.lobit)
  %1 = zext i3 %switch.tableidx to i16
  %switch.gep = getelementptr inbounds [8 x i8], [8 x i8]* @"switch.table._ZN63_$LT$core..str..EscapeUnicode$u20$as$u20$core..fmt..Display$GT$3fmt17hcefaf5179aadfe2dE.195", i16 0, i16 %1
  %switch.load = load i8, i8* %switch.gep, align 1
  %__self_0_2.val.i = load i16, i16* %__self_0_2.i, align 1, !alias.scope !691, !noalias !694
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %3 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %4 = bitcast [3 x i16]** %3 to i1 ({}*, i32) addrspace(1)***
  br label %bb3

bb3:                                              ; preds = %bb7, %start
  %iter.sroa.5.0 = phi i8 [ %switch.load, %start ], [ %iter.sroa.5.1.ph, %bb7 ]
  %iter.sroa.12.0 = phi i16 [ %__self_0_2.val.i, %start ], [ %iter.sroa.12.1.ph, %bb7 ]
  %trunc.i = trunc i8 %iter.sroa.5.0 to i3
  switch i3 %trunc.i, label %bb2.i [
    i3 0, label %bb13
    i3 1, label %bb12.i
    i3 2, label %bb6.i
    i3 3, label %bb5.i
    i3 -4, label %bb4.i
    i3 -3, label %bb7
  ]

bb2.i:                                            ; preds = %bb3
  unreachable

bb4.i:                                            ; preds = %bb3
  br label %bb7

bb5.i:                                            ; preds = %bb3
  br label %bb7

bb6.i:                                            ; preds = %bb3
  %_10.i = shl i16 %iter.sroa.12.0, 2
  %5 = and i16 %_10.i, 28
  %6 = zext i16 %5 to i32
  %_7.i = lshr i32 %__self_0_0.val.i, %6
  %7 = trunc i32 %_7.i to i8
  %num1.i.i = and i8 %7, 15
  %_12.i.i = icmp ult i8 %num1.i.i, 10
  %_15.i.i = or i8 %num1.i.i, 48
  %_18.i.i = add nuw nsw i8 %num1.i.i, 87
  %.0.i.v.i = select i1 %_12.i.i, i8 %_15.i.i, i8 %_18.i.i
  %.0.i.i5 = zext i8 %.0.i.v.i to i32
  %_15.i = icmp eq i16 %iter.sroa.12.0, 0
  %8 = add i16 %iter.sroa.12.0, -1
  %spec.select = select i1 %_15.i, i8 1, i8 %iter.sroa.5.0
  %spec.select25 = select i1 %_15.i, i16 0, i16 %8
  br label %bb7

bb12.i:                                           ; preds = %bb3
  br label %bb7

bb7:                                              ; preds = %bb6.i, %bb3, %bb4.i, %bb5.i, %bb12.i
  %iter.sroa.5.1.ph = phi i8 [ 0, %bb12.i ], [ 2, %bb5.i ], [ 3, %bb4.i ], [ 4, %bb3 ], [ %spec.select, %bb6.i ]
  %iter.sroa.12.1.ph = phi i16 [ %iter.sroa.12.0, %bb12.i ], [ %iter.sroa.12.0, %bb5.i ], [ %iter.sroa.12.0, %bb4.i ], [ %iter.sroa.12.0, %bb3 ], [ %spec.select25, %bb6.i ]
  %.0.i.ph = phi i32 [ 125, %bb12.i ], [ 123, %bb5.i ], [ 117, %bb4.i ], [ 92, %bb3 ], [ %.0.i.i5, %bb6.i ]
  %_3.0.i = load {}*, {}** %2, align 1, !nonnull !568
  %_3.11.i = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %4, align 1, !nonnull !568
  %9 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11.i, i16 4
  %10 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %9, align 1, !invariant.load !568, !nonnull !568
  %11 = tail call zeroext addrspace(1) i1 %10({}* nonnull align 1 %_3.0.i, i32 %.0.i.ph)
  br i1 %11, label %bb13, label %bb3

bb13:                                             ; preds = %bb7, %bb3
  %.0 = phi i1 [ false, %bb3 ], [ true, %bb7 ]
  ret i1 %.0
}

; <core::char::EscapeDefault as core::iter::traits::iterator::Iterator>::next
; Function Attrs: nounwind uwtable
define i32 @"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h96dd8241cf5bb4ccE"(%"char::EscapeDefault"* nocapture align 1 dereferenceable(8) %self) unnamed_addr addrspace(1) #9 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = getelementptr inbounds %"char::EscapeDefault", %"char::EscapeDefault"* %self, i16 0, i32 0, i16 0
  %1 = load i8, i8* %0, align 1, !range !696
  %trunc = trunc i8 %1 to i2
  switch i2 %trunc, label %bb2 [
    i2 0, label %bb7
    i2 1, label %bb4
    i2 -2, label %bb3
    i2 -1, label %bb1
  ]

bb1:                                              ; preds = %start
  %2 = getelementptr inbounds %"char::EscapeDefault", %"char::EscapeDefault"* %self, i16 0, i32 1, i32 2, i16 4
  %3 = load i8, i8* %2, align 1, !range !689
  %trunc.i = trunc i8 %3 to i3
  switch i3 %trunc.i, label %bb2.i [
    i3 0, label %bb7
    i3 1, label %bb12.i
    i3 2, label %bb6.i
    i3 3, label %bb5.i
    i3 -4, label %bb4.i
    i3 -3, label %bb3.i
  ]

bb2.i:                                            ; preds = %bb1
  unreachable

bb3.i:                                            ; preds = %bb1
  store i8 4, i8* %2, align 1
  br label %bb7

bb4.i:                                            ; preds = %bb1
  store i8 3, i8* %2, align 1
  br label %bb7

bb5.i:                                            ; preds = %bb1
  store i8 2, i8* %2, align 1
  br label %bb7

bb6.i:                                            ; preds = %bb1
  %iter = getelementptr inbounds %"char::EscapeDefault", %"char::EscapeDefault"* %self, i16 0, i32 1, i32 2
  %4 = bitcast [7 x i8]* %iter to i32*
  %_9.i = load i32, i32* %4, align 1, !range !690
  %5 = getelementptr inbounds %"char::EscapeDefault", %"char::EscapeDefault"* %self, i16 0, i32 1, i32 2, i16 5
  %6 = bitcast i8* %5 to i16*
  %_11.i = load i16, i16* %6, align 1
  %_10.i = shl i16 %_11.i, 2
  %7 = and i16 %_10.i, 28
  %8 = zext i16 %7 to i32
  %_7.i = lshr i32 %_9.i, %8
  %9 = trunc i32 %_7.i to i8
  %num1.i.i = and i8 %9, 15
  %_12.i.i = icmp ult i8 %num1.i.i, 10
  %_15.i.i = or i8 %num1.i.i, 48
  %_18.i.i = add nuw nsw i8 %num1.i.i, 87
  %.0.i.v.i = select i1 %_12.i.i, i8 %_15.i.i, i8 %_18.i.i
  %.0.i.i = zext i8 %.0.i.v.i to i32
  %_15.i = icmp eq i16 %_11.i, 0
  br i1 %_15.i, label %bb10.i, label %bb9.i

bb9.i:                                            ; preds = %bb6.i
  %10 = add i16 %_11.i, -1
  store i16 %10, i16* %6, align 1
  br label %bb7

bb10.i:                                           ; preds = %bb6.i
  store i8 1, i8* %2, align 1
  br label %bb7

bb12.i:                                           ; preds = %bb1
  store i8 0, i8* %2, align 1
  br label %bb7

bb2:                                              ; preds = %start
  unreachable

bb3:                                              ; preds = %start
  store i8 1, i8* %0, align 1
  br label %bb7

bb4:                                              ; preds = %start
  %11 = getelementptr inbounds %"char::EscapeDefault", %"char::EscapeDefault"* %self, i16 0, i32 1, i32 2
  %12 = bitcast [7 x i8]* %11 to i32*
  %c1 = load i32, i32* %12, align 1, !range !690
  store i8 0, i8* %0, align 1
  br label %bb7

bb7:                                              ; preds = %bb12.i, %bb10.i, %bb9.i, %bb5.i, %bb4.i, %bb3.i, %bb1, %start, %bb4, %bb3
  %.0 = phi i32 [ 92, %bb3 ], [ %c1, %bb4 ], [ 1114112, %start ], [ 92, %bb3.i ], [ 117, %bb4.i ], [ 123, %bb5.i ], [ 125, %bb12.i ], [ 1114112, %bb1 ], [ %.0.i.i, %bb9.i ], [ %.0.i.i, %bb10.i ]
  ret i32 %.0
}

; <core::char::EscapeDefault as core::iter::traits::iterator::Iterator>::nth
; Function Attrs: nounwind uwtable
define i32 @"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$3nth17h773a01da0dbe774eE"(%"char::EscapeDefault"* nocapture align 1 dereferenceable(8) %self, i16 %n) unnamed_addr addrspace(1) #9 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = getelementptr inbounds %"char::EscapeDefault", %"char::EscapeDefault"* %self, i16 0, i32 0, i16 0
  %1 = load i8, i8* %0, align 1, !range !696
  %trunc = trunc i8 %1 to i2
  switch i2 %trunc, label %bb2 [
    i2 0, label %bb14
    i2 1, label %bb8
    i2 -2, label %bb3
    i2 -1, label %bb1
  ]

bb1:                                              ; preds = %start
  %i = getelementptr inbounds %"char::EscapeDefault", %"char::EscapeDefault"* %self, i16 0, i32 1, i32 2
  %2 = getelementptr inbounds %"char::EscapeDefault", %"char::EscapeDefault"* %self, i16 0, i32 1, i32 2, i16 4
  %3 = bitcast [7 x i8]* %i to i32*
  %_9.i.i = load i32, i32* %3, align 1
  %4 = getelementptr inbounds %"char::EscapeDefault", %"char::EscapeDefault"* %self, i16 0, i32 1, i32 2, i16 5
  %5 = bitcast i8* %4 to i16*
  %.pre.i = load i8, i8* %2, align 1, !range !689
  br label %bb1.i

bb1.i:                                            ; preds = %bb4.i, %bb1
  %6 = phi i8 [ %.pre.i, %bb1 ], [ %11, %bb4.i ]
  %n.0.i = phi i16 [ %n, %bb1 ], [ %12, %bb4.i ]
  %trunc.i.i = trunc i8 %6 to i3
  switch i3 %trunc.i.i, label %bb2.i.i [
    i3 0, label %bb14
    i3 1, label %bb12.i.i
    i3 2, label %bb6.i.i
    i3 3, label %bb5.i.i
    i3 -4, label %bb4.i.i
    i3 -3, label %bb3.i.i
  ]

bb2.i.i:                                          ; preds = %bb1.i
  unreachable

bb3.i.i:                                          ; preds = %bb1.i
  store i8 4, i8* %2, align 1
  br label %bb4.i

bb4.i.i:                                          ; preds = %bb1.i
  store i8 3, i8* %2, align 1
  br label %bb4.i

bb5.i.i:                                          ; preds = %bb1.i
  store i8 2, i8* %2, align 1
  br label %bb4.i

bb6.i.i:                                          ; preds = %bb1.i
  %_11.i.i = load i16, i16* %5, align 1
  %_10.i.i = shl i16 %_11.i.i, 2
  %7 = and i16 %_10.i.i, 28
  %8 = zext i16 %7 to i32
  %_7.i.i = lshr i32 %_9.i.i, %8
  %9 = trunc i32 %_7.i.i to i8
  %num1.i.i.i = and i8 %9, 15
  %_12.i.i.i = icmp ult i8 %num1.i.i.i, 10
  %_15.i.i.i = or i8 %num1.i.i.i, 48
  %_18.i.i.i = add nuw nsw i8 %num1.i.i.i, 87
  %.0.i.v.i.i = select i1 %_12.i.i.i, i8 %_15.i.i.i, i8 %_18.i.i.i
  %.0.i.i.i = zext i8 %.0.i.v.i.i to i32
  %_15.i.i = icmp eq i16 %_11.i.i, 0
  br i1 %_15.i.i, label %bb10.i.i, label %bb9.i.i

bb9.i.i:                                          ; preds = %bb6.i.i
  %10 = add i16 %_11.i.i, -1
  store i16 %10, i16* %5, align 1
  br label %bb4.i

bb10.i.i:                                         ; preds = %bb6.i.i
  store i8 1, i8* %2, align 1
  br label %bb4.i

bb12.i.i:                                         ; preds = %bb1.i
  store i8 0, i8* %2, align 1
  br label %bb4.i

bb4.i:                                            ; preds = %bb12.i.i, %bb10.i.i, %bb9.i.i, %bb5.i.i, %bb4.i.i, %bb3.i.i
  %11 = phi i8 [ 1, %bb10.i.i ], [ %6, %bb9.i.i ], [ 0, %bb12.i.i ], [ 2, %bb5.i.i ], [ 3, %bb4.i.i ], [ 4, %bb3.i.i ]
  %.0.i.ph.i = phi i32 [ %.0.i.i.i, %bb10.i.i ], [ %.0.i.i.i, %bb9.i.i ], [ 125, %bb12.i.i ], [ 123, %bb5.i.i ], [ 117, %bb4.i.i ], [ 92, %bb3.i.i ]
  %_7.i = icmp eq i16 %n.0.i, 0
  %12 = add i16 %n.0.i, -1
  br i1 %_7.i, label %bb14, label %bb1.i

bb2:                                              ; preds = %start
  unreachable

bb3:                                              ; preds = %start
  switch i16 %n, label %bb7 [
    i16 0, label %bb4
    i16 1, label %bb6
  ]

bb4:                                              ; preds = %bb3
  store i8 1, i8* %0, align 1
  br label %bb14

bb6:                                              ; preds = %bb3
  %13 = getelementptr inbounds %"char::EscapeDefault", %"char::EscapeDefault"* %self, i16 0, i32 1, i32 2
  %14 = bitcast [7 x i8]* %13 to i32*
  %c3 = load i32, i32* %14, align 1, !range !690
  store i8 0, i8* %0, align 1
  br label %bb14

bb7:                                              ; preds = %bb3
  store i8 0, i8* %0, align 1
  br label %bb14

bb8:                                              ; preds = %start
  %15 = getelementptr inbounds %"char::EscapeDefault", %"char::EscapeDefault"* %self, i16 0, i32 1, i32 2
  %16 = bitcast [7 x i8]* %15 to i32*
  %c4 = load i32, i32* %16, align 1, !range !690
  store i8 0, i8* %0, align 1
  %_19 = icmp eq i16 %n, 0
  %c4. = select i1 %_19, i32 %c4, i32 1114112
  br label %bb14

bb14:                                             ; preds = %bb4.i, %bb1.i, %start, %bb8, %bb7, %bb6, %bb4
  %.0 = phi i32 [ 1114112, %bb7 ], [ %c3, %bb6 ], [ 92, %bb4 ], [ %c4., %bb8 ], [ 1114112, %start ], [ 1114112, %bb1.i ], [ %.0.i.ph.i, %bb4.i ]
  ret i32 %.0
}

; <core::char::EscapeDefault as core::iter::traits::iterator::Iterator>::last
; Function Attrs: nounwind uwtable
define i32 @"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4last17hbf1db77b0ac0cc6dE"(%"char::EscapeDefault"* noalias nocapture readonly dereferenceable(8) %self) unnamed_addr addrspace(1) #9 {
start:
  %0 = getelementptr inbounds %"char::EscapeDefault", %"char::EscapeDefault"* %self, i16 0, i32 0, i16 0
  %1 = load i8, i8* %0, align 1, !range !696
  %trunc = trunc i8 %1 to i2
  switch i2 %trunc, label %bb2 [
    i2 0, label %bb8
    i2 1, label %bb6
    i2 -2, label %bb6
    i2 -1, label %bb3
  ]

bb2:                                              ; preds = %start
  unreachable

bb3:                                              ; preds = %start
  %iter.sroa.4.0..sroa_idx = getelementptr inbounds %"char::EscapeDefault", %"char::EscapeDefault"* %self, i16 0, i32 1, i32 2, i16 4
  %iter.sroa.4.0.copyload = load i8, i8* %iter.sroa.4.0..sroa_idx, align 1
  %switch.i = icmp eq i8 %iter.sroa.4.0.copyload, 0
  %..i = select i1 %switch.i, i32 1114112, i32 125
  br label %bb8

bb6:                                              ; preds = %start, %start
  %c.0.in.in = getelementptr inbounds %"char::EscapeDefault", %"char::EscapeDefault"* %self, i16 0, i32 1, i32 2
  %c.0.in = bitcast [7 x i8]* %c.0.in.in to i32*
  %c.0 = load i32, i32* %c.0.in, align 1, !range !690
  br label %bb8

bb8:                                              ; preds = %start, %bb6, %bb3
  %.0 = phi i32 [ %..i, %bb3 ], [ %c.0, %bb6 ], [ 1114112, %start ]
  ret i32 %.0
}

; <core::char::EscapeDefault as core::iter::traits::exact_size::ExactSizeIterator>::len
; Function Attrs: norecurse nounwind readonly uwtable
define i16 @"_ZN95_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..exact_size..ExactSizeIterator$GT$3len17h3331507d60fc9774E"(%"char::EscapeDefault"* noalias nocapture readonly align 1 dereferenceable(8) %self) unnamed_addr addrspace(1) #5 {
start:
  %0 = getelementptr inbounds %"char::EscapeDefault", %"char::EscapeDefault"* %self, i16 0, i32 0, i16 0
  %1 = load i8, i8* %0, align 1, !range !696
  %trunc = trunc i8 %1 to i2
  switch i2 %trunc, label %bb2 [
    i2 0, label %bb7
    i2 1, label %bb4
    i2 -2, label %bb5
    i2 -1, label %bb1
  ]

bb1:                                              ; preds = %start
  %2 = getelementptr %"char::EscapeDefault", %"char::EscapeDefault"* %self, i16 0, i32 1, i32 2, i16 4
  %.idx.val = load i8, i8* %2, align 1
  %.idx1 = getelementptr %"char::EscapeDefault", %"char::EscapeDefault"* %self, i16 0, i32 1, i32 2, i16 5
  %3 = bitcast i8* %.idx1 to i16*
  %.idx1.val = load i16, i16* %3, align 1
  %trunc.i = trunc i8 %.idx.val to i3
  %switch.tableidx = xor i3 %trunc.i, -4
  %switch.maskindex = zext i3 %switch.tableidx to i8
  %switch.shifted = lshr i8 -13, %switch.maskindex
  %4 = and i8 %switch.shifted, 1
  %switch.lobit = icmp ne i8 %4, 0
  call addrspace(1) void @llvm.assume(i1 %switch.lobit)
  %5 = zext i3 %switch.tableidx to i16
  %switch.gep = getelementptr inbounds [8 x i16], [8 x i16]* @"switch.table._ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$9size_hint17h58612c0b5d28dfdaE", i16 0, i16 %5
  %switch.load = load i16, i16* %switch.gep, align 1
  %6 = add i16 %switch.load, %.idx1.val
  br label %bb7

bb2:                                              ; preds = %start
  unreachable

bb4:                                              ; preds = %start
  br label %bb7

bb5:                                              ; preds = %start
  br label %bb7

bb7:                                              ; preds = %start, %bb4, %bb5, %bb1
  %.0 = phi i16 [ %6, %bb1 ], [ 2, %bb5 ], [ 1, %bb4 ], [ 0, %start ]
  ret i16 %.0
}

; <core::char::EscapeDefault as core::fmt::Display>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..fmt..Display$GT$3fmt17hfb282519e08702baE"(%"char::EscapeDefault"* noalias nocapture readonly align 1 dereferenceable(8) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = getelementptr inbounds %"char::EscapeDefault", %"char::EscapeDefault"* %self, i16 0, i32 0, i16 0
  %1 = load i8, i8* %0, align 1, !range !696, !alias.scope !697, !noalias !702
  %trunc.i.i = trunc i8 %1 to i2
  switch i2 %trunc.i.i, label %bb2.i.i [
    i2 0, label %"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE.exit"
    i2 1, label %bb4.i.i
    i2 -2, label %bb6.i.i
    i2 -1, label %bb1.i.i
  ]

bb1.i.i:                                          ; preds = %start
  %2 = getelementptr inbounds %"char::EscapeDefault", %"char::EscapeDefault"* %self, i16 0, i32 1, i32 2
  %__self_0_0.i.i.i = bitcast [7 x i8]* %2 to i32*
  %3 = getelementptr inbounds %"char::EscapeDefault", %"char::EscapeDefault"* %self, i16 0, i32 1, i32 2, i16 4
  %4 = getelementptr inbounds %"char::EscapeDefault", %"char::EscapeDefault"* %self, i16 0, i32 1, i32 2, i16 5
  %5 = bitcast i8* %4 to i16*
  %__self_0_0.val.i.i.i = load i32, i32* %__self_0_0.i.i.i, align 1, !alias.scope !705, !noalias !708
  %__self_0_1.val.i.i.i = load i8, i8* %3, align 1, !alias.scope !705, !noalias !708
  %trunc.i.i.i.i = trunc i8 %__self_0_1.val.i.i.i to i3
  %switch.tableidx = xor i3 %trunc.i.i.i.i, -4
  %switch.maskindex = zext i3 %switch.tableidx to i8
  %switch.shifted = lshr i8 -13, %switch.maskindex
  %6 = and i8 %switch.shifted, 1
  %switch.lobit = icmp ne i8 %6, 0
  call addrspace(1) void @llvm.assume(i1 %switch.lobit)
  %7 = zext i3 %switch.tableidx to i16
  %switch.gep = getelementptr inbounds [8 x i8], [8 x i8]* @"switch.table._ZN63_$LT$core..str..EscapeUnicode$u20$as$u20$core..fmt..Display$GT$3fmt17hcefaf5179aadfe2dE.195", i16 0, i16 %7
  %switch.load = load i8, i8* %switch.gep, align 1
  %__self_0_2.val.i.i.i31 = load i16, i16* %5, align 1, !alias.scope !705, !noalias !708
  br label %"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE.exit"

bb2.i.i:                                          ; preds = %start
  unreachable

bb4.i.i:                                          ; preds = %start
  %8 = getelementptr inbounds %"char::EscapeDefault", %"char::EscapeDefault"* %self, i16 0, i32 1, i32 2
  %9 = bitcast [7 x i8]* %8 to i32*
  %.val.i.i = load i32, i32* %9, align 1, !alias.scope !697, !noalias !702
  br label %"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE.exit"

bb6.i.i:                                          ; preds = %start
  %10 = getelementptr inbounds %"char::EscapeDefault", %"char::EscapeDefault"* %self, i16 0, i32 1, i32 2
  %11 = bitcast [7 x i8]* %10 to i32*
  %.val7.i.i = load i32, i32* %11, align 1, !alias.scope !697, !noalias !702
  br label %"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE.exit"

"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE.exit": ; preds = %start, %bb1.i.i, %bb4.i.i, %bb6.i.i
  %_3.sroa.11.0.i.off48 = phi i16 [ %__self_0_2.val.i.i.i31, %bb1.i.i ], [ 0, %bb6.i.i ], [ 0, %bb4.i.i ], [ 0, %start ]
  %_3.sroa.10.0.i = phi i8 [ %switch.load, %bb1.i.i ], [ undef, %bb6.i.i ], [ undef, %bb4.i.i ], [ undef, %start ]
  %_3.sroa.7.0.i = phi i32 [ %__self_0_0.val.i.i.i, %bb1.i.i ], [ %.val7.i.i, %bb6.i.i ], [ %.val.i.i, %bb4.i.i ], [ undef, %start ]
  %_3.sroa.0.0.i.off0 = phi i8 [ 3, %bb1.i.i ], [ 2, %bb6.i.i ], [ 1, %bb4.i.i ], [ 0, %start ]
  %12 = icmp eq i32 %_3.sroa.7.0.i, 1114112
  %13 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %14 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %15 = bitcast [3 x i16]** %14 to i1 ({}*, i32) addrspace(1)***
  br label %bb3

bb3:                                              ; preds = %bb7, %"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE.exit"
  %iter.sroa.0.0 = phi i8 [ %_3.sroa.0.0.i.off0, %"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE.exit" ], [ %iter.sroa.0.120, %bb7 ]
  %iter.sroa.9.0 = phi i8 [ %_3.sroa.10.0.i, %"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE.exit" ], [ %iter.sroa.9.121, %bb7 ]
  %iter.sroa.15.0 = phi i16 [ %_3.sroa.11.0.i.off48, %"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE.exit" ], [ %iter.sroa.15.122, %bb7 ]
  %trunc.i = trunc i8 %iter.sroa.0.0 to i2
  switch i2 %trunc.i, label %bb2.i [
    i2 0, label %bb13
    i2 1, label %"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h96dd8241cf5bb4ccE.exit"
    i2 -2, label %bb7
    i2 -1, label %bb1.i
  ]

bb1.i:                                            ; preds = %bb3
  %trunc.i.i5 = trunc i8 %iter.sroa.9.0 to i3
  switch i3 %trunc.i.i5, label %bb2.i.i6 [
    i3 0, label %bb13
    i3 1, label %bb12.i.i
    i3 2, label %bb6.i.i8
    i3 3, label %bb5.i.i
    i3 -4, label %bb4.i.i7
    i3 -3, label %bb7
  ]

bb2.i.i6:                                         ; preds = %bb1.i
  unreachable

bb4.i.i7:                                         ; preds = %bb1.i
  br label %bb7

bb5.i.i:                                          ; preds = %bb1.i
  br label %bb7

bb6.i.i8:                                         ; preds = %bb1.i
  %_10.i.i = shl i16 %iter.sroa.15.0, 2
  %16 = and i16 %_10.i.i, 28
  %17 = zext i16 %16 to i32
  %_7.i.i = lshr i32 %_3.sroa.7.0.i, %17
  %18 = trunc i32 %_7.i.i to i8
  %num1.i.i.i = and i8 %18, 15
  %_12.i.i.i = icmp ult i8 %num1.i.i.i, 10
  %_15.i.i.i = or i8 %num1.i.i.i, 48
  %_18.i.i.i = add nuw nsw i8 %num1.i.i.i, 87
  %.0.i.v.i.i = select i1 %_12.i.i.i, i8 %_15.i.i.i, i8 %_18.i.i.i
  %.0.i.i.i = zext i8 %.0.i.v.i.i to i32
  %_15.i.i = icmp eq i16 %iter.sroa.15.0, 0
  %19 = add i16 %iter.sroa.15.0, -1
  %spec.select = select i1 %_15.i.i, i16 0, i16 %19
  %spec.select30 = select i1 %_15.i.i, i8 1, i8 %iter.sroa.9.0
  br label %bb7

bb12.i.i:                                         ; preds = %bb1.i
  br label %bb7

bb2.i:                                            ; preds = %bb3
  unreachable

"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h96dd8241cf5bb4ccE.exit": ; preds = %bb3
  br i1 %12, label %bb13, label %bb7

bb7:                                              ; preds = %bb6.i.i8, %bb3, %bb1.i, %bb12.i.i, %bb5.i.i, %bb4.i.i7, %"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h96dd8241cf5bb4ccE.exit"
  %.0.i23 = phi i32 [ %_3.sroa.7.0.i, %"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h96dd8241cf5bb4ccE.exit" ], [ 125, %bb12.i.i ], [ 123, %bb5.i.i ], [ 117, %bb4.i.i7 ], [ 92, %bb1.i ], [ 92, %bb3 ], [ %.0.i.i.i, %bb6.i.i8 ]
  %iter.sroa.15.122 = phi i16 [ %iter.sroa.15.0, %"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h96dd8241cf5bb4ccE.exit" ], [ %iter.sroa.15.0, %bb12.i.i ], [ %iter.sroa.15.0, %bb5.i.i ], [ %iter.sroa.15.0, %bb4.i.i7 ], [ %iter.sroa.15.0, %bb1.i ], [ %iter.sroa.15.0, %bb3 ], [ %spec.select, %bb6.i.i8 ]
  %iter.sroa.9.121 = phi i8 [ %iter.sroa.9.0, %"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h96dd8241cf5bb4ccE.exit" ], [ 0, %bb12.i.i ], [ 2, %bb5.i.i ], [ 3, %bb4.i.i7 ], [ 4, %bb1.i ], [ %iter.sroa.9.0, %bb3 ], [ %spec.select30, %bb6.i.i8 ]
  %iter.sroa.0.120 = phi i8 [ 0, %"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h96dd8241cf5bb4ccE.exit" ], [ %iter.sroa.0.0, %bb12.i.i ], [ %iter.sroa.0.0, %bb5.i.i ], [ %iter.sroa.0.0, %bb4.i.i7 ], [ %iter.sroa.0.0, %bb1.i ], [ 1, %bb3 ], [ %iter.sroa.0.0, %bb6.i.i8 ]
  %_3.0.i = load {}*, {}** %13, align 1, !nonnull !568
  %_3.11.i = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %15, align 1, !nonnull !568
  %20 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11.i, i16 4
  %21 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %20, align 1, !invariant.load !568, !nonnull !568
  %22 = tail call zeroext addrspace(1) i1 %21({}* nonnull align 1 %_3.0.i, i32 %.0.i23)
  br i1 %22, label %bb13, label %bb3

bb13:                                             ; preds = %bb1.i, %bb3, %bb7, %"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h96dd8241cf5bb4ccE.exit"
  %.0 = phi i1 [ false, %"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h96dd8241cf5bb4ccE.exit" ], [ true, %bb7 ], [ false, %bb3 ], [ false, %bb1.i ]
  ret i1 %.0
}

; <core::char::EscapeDebug as core::iter::traits::iterator::Iterator>::next
; Function Attrs: nofree norecurse nounwind uwtable
define i32 @"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E"(%"char::EscapeDebug"* nocapture align 1 dereferenceable(8) %self) unnamed_addr addrspace(1) #8 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = getelementptr inbounds %"char::EscapeDebug", %"char::EscapeDebug"* %self, i16 0, i32 0, i16 0
  %1 = load i8, i8* %0, align 1, !range !696
  %trunc.i = trunc i8 %1 to i2
  switch i2 %trunc.i, label %bb2.i [
    i2 0, label %"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h96dd8241cf5bb4ccE.exit"
    i2 1, label %bb4.i
    i2 -2, label %bb3.i
    i2 -1, label %bb1.i
  ]

bb1.i:                                            ; preds = %start
  %2 = getelementptr inbounds %"char::EscapeDebug", %"char::EscapeDebug"* %self, i16 0, i32 1, i32 1, i32 2, i16 4
  %3 = load i8, i8* %2, align 1, !range !689
  %trunc.i.i = trunc i8 %3 to i3
  switch i3 %trunc.i.i, label %bb2.i.i [
    i3 0, label %"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h96dd8241cf5bb4ccE.exit"
    i3 1, label %bb12.i.i
    i3 2, label %bb6.i.i
    i3 3, label %bb5.i.i
    i3 -4, label %bb4.i.i
    i3 -3, label %bb3.i.i
  ]

bb2.i.i:                                          ; preds = %bb1.i
  unreachable

bb3.i.i:                                          ; preds = %bb1.i
  store i8 4, i8* %2, align 1
  br label %"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h96dd8241cf5bb4ccE.exit"

bb4.i.i:                                          ; preds = %bb1.i
  store i8 3, i8* %2, align 1
  br label %"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h96dd8241cf5bb4ccE.exit"

bb5.i.i:                                          ; preds = %bb1.i
  store i8 2, i8* %2, align 1
  br label %"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h96dd8241cf5bb4ccE.exit"

bb6.i.i:                                          ; preds = %bb1.i
  %4 = getelementptr inbounds %"char::EscapeDebug", %"char::EscapeDebug"* %self, i16 0, i32 1, i32 1, i32 2
  %5 = bitcast [7 x i8]* %4 to i32*
  %_9.i.i = load i32, i32* %5, align 1, !range !690
  %6 = getelementptr inbounds %"char::EscapeDebug", %"char::EscapeDebug"* %self, i16 0, i32 1, i32 1, i32 2, i16 5
  %7 = bitcast i8* %6 to i16*
  %_11.i.i = load i16, i16* %7, align 1
  %_10.i.i = shl i16 %_11.i.i, 2
  %8 = and i16 %_10.i.i, 28
  %9 = zext i16 %8 to i32
  %_7.i.i = lshr i32 %_9.i.i, %9
  %10 = trunc i32 %_7.i.i to i8
  %num1.i.i.i = and i8 %10, 15
  %_12.i.i.i = icmp ult i8 %num1.i.i.i, 10
  %_15.i.i.i = or i8 %num1.i.i.i, 48
  %_18.i.i.i = add nuw nsw i8 %num1.i.i.i, 87
  %.0.i.v.i.i = select i1 %_12.i.i.i, i8 %_15.i.i.i, i8 %_18.i.i.i
  %.0.i.i.i = zext i8 %.0.i.v.i.i to i32
  %_15.i.i = icmp eq i16 %_11.i.i, 0
  br i1 %_15.i.i, label %bb10.i.i, label %bb9.i.i

bb9.i.i:                                          ; preds = %bb6.i.i
  %11 = add i16 %_11.i.i, -1
  store i16 %11, i16* %7, align 1
  br label %"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h96dd8241cf5bb4ccE.exit"

bb10.i.i:                                         ; preds = %bb6.i.i
  store i8 1, i8* %2, align 1
  br label %"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h96dd8241cf5bb4ccE.exit"

bb12.i.i:                                         ; preds = %bb1.i
  store i8 0, i8* %2, align 1
  br label %"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h96dd8241cf5bb4ccE.exit"

bb2.i:                                            ; preds = %start
  unreachable

bb3.i:                                            ; preds = %start
  store i8 1, i8* %0, align 1
  br label %"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h96dd8241cf5bb4ccE.exit"

bb4.i:                                            ; preds = %start
  %12 = getelementptr inbounds %"char::EscapeDebug", %"char::EscapeDebug"* %self, i16 0, i32 1, i32 1, i32 2
  %13 = bitcast [7 x i8]* %12 to i32*
  %c1.i = load i32, i32* %13, align 1, !range !690
  store i8 0, i8* %0, align 1
  br label %"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h96dd8241cf5bb4ccE.exit"

"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h96dd8241cf5bb4ccE.exit": ; preds = %start, %bb1.i, %bb3.i.i, %bb4.i.i, %bb5.i.i, %bb9.i.i, %bb10.i.i, %bb12.i.i, %bb3.i, %bb4.i
  %.0.i = phi i32 [ 92, %bb3.i ], [ %c1.i, %bb4.i ], [ 1114112, %start ], [ 92, %bb3.i.i ], [ 117, %bb4.i.i ], [ 123, %bb5.i.i ], [ 125, %bb12.i.i ], [ 1114112, %bb1.i ], [ %.0.i.i.i, %bb9.i.i ], [ %.0.i.i.i, %bb10.i.i ]
  ret i32 %.0.i
}

; <core::char::EscapeDebug as core::iter::traits::iterator::Iterator>::size_hint
; Function Attrs: nofree norecurse nounwind uwtable
define void @"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$9size_hint17h58612c0b5d28dfdaE"({ [0 x i8], i16, [0 x i8], { i8, i16 }, [0 x i8] }* noalias nocapture sret dereferenceable(5) %0, %"char::EscapeDebug"* noalias nocapture readonly align 1 dereferenceable(8) %self) unnamed_addr addrspace(1) #8 {
start:
  %1 = getelementptr inbounds %"char::EscapeDebug", %"char::EscapeDebug"* %self, i16 0, i32 0, i16 0
  %2 = load i8, i8* %1, align 1, !range !696, !alias.scope !710, !noalias !715
  %trunc.i.i = trunc i8 %2 to i2
  switch i2 %trunc.i.i, label %bb2.i.i [
    i2 0, label %"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$9size_hint17hc97d23e155c4bbb8E.exit"
    i2 1, label %bb4.i.i
    i2 -2, label %bb5.i.i
    i2 -1, label %bb1.i.i
  ]

bb1.i.i:                                          ; preds = %start
  %3 = getelementptr %"char::EscapeDebug", %"char::EscapeDebug"* %self, i16 0, i32 1, i32 1, i32 2, i16 4
  %.idx.val.i.i = load i8, i8* %3, align 1, !alias.scope !710, !noalias !715
  %4 = getelementptr %"char::EscapeDebug", %"char::EscapeDebug"* %self, i16 0, i32 1, i32 1, i32 2, i16 5
  %5 = bitcast i8* %4 to i16*
  %.idx1.val.i.i = load i16, i16* %5, align 1, !alias.scope !710, !noalias !715
  %trunc.i.i.i = trunc i8 %.idx.val.i.i to i3
  %switch.tableidx = xor i3 %trunc.i.i.i, -4
  %switch.maskindex = zext i3 %switch.tableidx to i8
  %switch.shifted = lshr i8 -13, %switch.maskindex
  %6 = and i8 %switch.shifted, 1
  %switch.lobit = icmp ne i8 %6, 0
  call addrspace(1) void @llvm.assume(i1 %switch.lobit)
  %7 = zext i3 %switch.tableidx to i16
  %switch.gep = getelementptr inbounds [8 x i16], [8 x i16]* @"switch.table._ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$9size_hint17h58612c0b5d28dfdaE", i16 0, i16 %7
  %switch.load = load i16, i16* %switch.gep, align 1
  %8 = add i16 %switch.load, %.idx1.val.i.i
  br label %"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$9size_hint17hc97d23e155c4bbb8E.exit"

bb2.i.i:                                          ; preds = %start
  unreachable

bb4.i.i:                                          ; preds = %start
  br label %"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$9size_hint17hc97d23e155c4bbb8E.exit"

bb5.i.i:                                          ; preds = %start
  br label %"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$9size_hint17hc97d23e155c4bbb8E.exit"

"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$9size_hint17hc97d23e155c4bbb8E.exit": ; preds = %start, %bb1.i.i, %bb4.i.i, %bb5.i.i
  %.0.i.i = phi i16 [ %8, %bb1.i.i ], [ 2, %bb5.i.i ], [ 1, %bb4.i.i ], [ 0, %start ]
  %9 = bitcast { [0 x i8], i16, [0 x i8], { i8, i16 }, [0 x i8] }* %0 to i16*
  store i16 %.0.i.i, i16* %9, align 1, !alias.scope !715, !noalias !717
  %10 = getelementptr inbounds { [0 x i8], i16, [0 x i8], { i8, i16 }, [0 x i8] }, { [0 x i8], i16, [0 x i8], { i8, i16 }, [0 x i8] }* %0, i16 0, i32 3, i32 0
  store i8 1, i8* %10, align 1, !alias.scope !715, !noalias !717
  %11 = getelementptr inbounds { [0 x i8], i16, [0 x i8], { i8, i16 }, [0 x i8] }, { [0 x i8], i16, [0 x i8], { i8, i16 }, [0 x i8] }* %0, i16 0, i32 3, i32 1
  store i16 %.0.i.i, i16* %11, align 1, !alias.scope !715, !noalias !717
  ret void
}

; <core::char::EscapeDebug as core::fmt::Display>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..fmt..Display$GT$3fmt17h8c5c83cd407857eeE"(%"char::EscapeDebug"* noalias nocapture readonly align 1 dereferenceable(8) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_4 = bitcast %"char::EscapeDebug"* %self to %"char::EscapeDefault"*
; call <core::char::EscapeDefault as core::fmt::Display>::fmt
  %0 = tail call zeroext addrspace(1) i1 @"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..fmt..Display$GT$3fmt17hfb282519e08702baE"(%"char::EscapeDefault"* noalias nonnull readonly align 1 dereferenceable(8) %_4, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %0
}

; <core::char::ToLowercase as core::iter::traits::iterator::Iterator>::next
; Function Attrs: nofree norecurse nounwind uwtable
define i32 @"_ZN82_$LT$core..char..ToLowercase$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hebe40ae0f7591db9E"(%"char::ToLowercase"* nocapture align 1 dereferenceable(13) %self) unnamed_addr addrspace(1) #8 {
start:
  %0 = getelementptr inbounds %"char::ToLowercase", %"char::ToLowercase"* %self, i16 0, i32 0, i16 0
  %1 = load i8, i8* %0, align 1, !range !696
  %trunc.i = trunc i8 %1 to i2
  switch i2 %trunc.i, label %bb2.i [
    i2 0, label %bb3.i
    i2 1, label %bb4.i
    i2 -2, label %bb5.i
    i2 -1, label %"_ZN86_$LT$core..char..CaseMappingIter$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hffebba5eb0feb701E.exit"
  ]

bb2.i:                                            ; preds = %start
  unreachable

bb3.i:                                            ; preds = %start
  %2 = getelementptr inbounds %"char::ToLowercase", %"char::ToLowercase"* %self, i16 0, i32 1, i32 2
  %3 = bitcast [12 x i8]* %2 to i32*
  %a.i = load i32, i32* %3, align 1, !range !690
  %4 = getelementptr inbounds %"char::ToLowercase", %"char::ToLowercase"* %self, i16 0, i32 1, i32 2, i16 4
  %5 = bitcast i8* %4 to i32*
  %b2.i = load i32, i32* %5, align 1, !range !690
  %6 = getelementptr inbounds %"char::ToLowercase", %"char::ToLowercase"* %self, i16 0, i32 1, i32 2, i16 8
  %7 = bitcast i8* %6 to i32*
  %c3.i = load i32, i32* %7, align 1, !range !690
  store i8 1, i8* %0, align 1
  store i32 %b2.i, i32* %3, align 1
  store i32 %c3.i, i32* %5, align 1
  br label %"_ZN86_$LT$core..char..CaseMappingIter$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hffebba5eb0feb701E.exit"

bb4.i:                                            ; preds = %start
  %8 = getelementptr inbounds %"char::ToLowercase", %"char::ToLowercase"* %self, i16 0, i32 1, i32 2
  %9 = bitcast [12 x i8]* %8 to i32*
  %b.i = load i32, i32* %9, align 1, !range !690
  %10 = getelementptr inbounds %"char::ToLowercase", %"char::ToLowercase"* %self, i16 0, i32 1, i32 2, i16 4
  %11 = bitcast i8* %10 to i32*
  %c1.i = load i32, i32* %11, align 1, !range !690
  store i8 2, i8* %0, align 1
  store i32 %c1.i, i32* %9, align 1
  br label %"_ZN86_$LT$core..char..CaseMappingIter$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hffebba5eb0feb701E.exit"

bb5.i:                                            ; preds = %start
  %12 = getelementptr inbounds %"char::ToLowercase", %"char::ToLowercase"* %self, i16 0, i32 1, i32 2
  %13 = bitcast [12 x i8]* %12 to i32*
  %c.i = load i32, i32* %13, align 1, !range !690
  store i8 3, i8* %0, align 1
  br label %"_ZN86_$LT$core..char..CaseMappingIter$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hffebba5eb0feb701E.exit"

"_ZN86_$LT$core..char..CaseMappingIter$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hffebba5eb0feb701E.exit": ; preds = %start, %bb3.i, %bb4.i, %bb5.i
  %.0.i = phi i32 [ %c.i, %bb5.i ], [ %b.i, %bb4.i ], [ %a.i, %bb3.i ], [ 1114112, %start ]
  ret i32 %.0.i
}

; <core::char::ToLowercase as core::iter::traits::iterator::Iterator>::size_hint
; Function Attrs: nofree norecurse nounwind uwtable
define void @"_ZN82_$LT$core..char..ToLowercase$u20$as$u20$core..iter..traits..iterator..Iterator$GT$9size_hint17hee9a7a042dce8712E"({ [0 x i8], i16, [0 x i8], { i8, i16 }, [0 x i8] }* noalias nocapture sret dereferenceable(5) %0, %"char::ToLowercase"* noalias nocapture readonly align 1 dereferenceable(13) %self) unnamed_addr addrspace(1) #8 {
start:
  %1 = getelementptr inbounds %"char::ToLowercase", %"char::ToLowercase"* %self, i16 0, i32 0, i16 0
  %2 = load i8, i8* %1, align 1, !range !696, !alias.scope !718, !noalias !721
  %trunc.i = trunc i8 %2 to i2
  %switch.tableidx = xor i2 %trunc.i, -2
  %3 = zext i2 %switch.tableidx to i16
  %switch.gep = getelementptr inbounds [4 x i16], [4 x i16]* @"switch.table._ZN86_$LT$core..char..CaseMappingIter$u20$as$u20$core..iter..traits..iterator..Iterator$GT$9size_hint17hf43ae4ae63901416E", i16 0, i16 %3
  %switch.load = load i16, i16* %switch.gep, align 1
  %4 = bitcast { [0 x i8], i16, [0 x i8], { i8, i16 }, [0 x i8] }* %0 to i16*
  store i16 %switch.load, i16* %4, align 1, !alias.scope !721, !noalias !718
  %5 = getelementptr inbounds { [0 x i8], i16, [0 x i8], { i8, i16 }, [0 x i8] }, { [0 x i8], i16, [0 x i8], { i8, i16 }, [0 x i8] }* %0, i16 0, i32 3, i32 0
  store i8 1, i8* %5, align 1, !alias.scope !721, !noalias !718
  %6 = getelementptr inbounds { [0 x i8], i16, [0 x i8], { i8, i16 }, [0 x i8] }, { [0 x i8], i16, [0 x i8], { i8, i16 }, [0 x i8] }* %0, i16 0, i32 3, i32 1
  store i16 %switch.load, i16* %6, align 1, !alias.scope !721, !noalias !718
  ret void
}

; core::char::CaseMappingIter::new
; Function Attrs: nofree norecurse nounwind uwtable
define void @_ZN4core4char15CaseMappingIter3new17h6cc5e3a8f5a9e3fcE(%"char::CaseMappingIter"* noalias nocapture sret dereferenceable(13) %0, [3 x i32]* noalias nocapture readonly dereferenceable(12) %chars) unnamed_addr addrspace(1) #8 {
start:
  %1 = getelementptr inbounds [3 x i32], [3 x i32]* %chars, i16 0, i16 2
  %_3 = load i32, i32* %1, align 1, !range !690
  %_2 = icmp eq i32 %_3, 0
  br i1 %_2, label %bb2, label %bb1

bb1:                                              ; preds = %start
  %2 = getelementptr inbounds [3 x i32], [3 x i32]* %chars, i16 0, i16 0
  %_14 = load i32, i32* %2, align 1, !range !690
  %3 = getelementptr inbounds [3 x i32], [3 x i32]* %chars, i16 0, i16 1
  %_16 = load i32, i32* %3, align 1, !range !690
  %4 = getelementptr inbounds %"char::CaseMappingIter", %"char::CaseMappingIter"* %0, i16 0, i32 2
  %5 = bitcast [12 x i8]* %4 to i32*
  store i32 %_14, i32* %5, align 1
  %6 = getelementptr inbounds %"char::CaseMappingIter", %"char::CaseMappingIter"* %0, i16 0, i32 2, i16 4
  %7 = bitcast i8* %6 to i32*
  store i32 %_16, i32* %7, align 1
  %8 = getelementptr inbounds %"char::CaseMappingIter", %"char::CaseMappingIter"* %0, i16 0, i32 2, i16 8
  br label %bb6.sink.split

bb2:                                              ; preds = %start
  %9 = getelementptr inbounds [3 x i32], [3 x i32]* %chars, i16 0, i16 1
  %_6 = load i32, i32* %9, align 1, !range !690
  %_5 = icmp eq i32 %_6, 0
  %10 = getelementptr inbounds [3 x i32], [3 x i32]* %chars, i16 0, i16 0
  %_8 = load i32, i32* %10, align 1, !range !690
  %11 = getelementptr inbounds %"char::CaseMappingIter", %"char::CaseMappingIter"* %0, i16 0, i32 2
  %12 = bitcast [12 x i8]* %11 to i32*
  store i32 %_8, i32* %12, align 1
  br i1 %_5, label %bb6, label %bb3

bb3:                                              ; preds = %bb2
  %13 = getelementptr inbounds %"char::CaseMappingIter", %"char::CaseMappingIter"* %0, i16 0, i32 2, i16 4
  br label %bb6.sink.split

bb6.sink.split:                                   ; preds = %bb1, %bb3
  %.sink3 = phi i8* [ %13, %bb3 ], [ %8, %bb1 ]
  %_6.sink = phi i32 [ %_6, %bb3 ], [ %_3, %bb1 ]
  %.sink.ph = phi i8 [ 1, %bb3 ], [ 0, %bb1 ]
  %14 = bitcast i8* %.sink3 to i32*
  store i32 %_6.sink, i32* %14, align 1
  br label %bb6

bb6:                                              ; preds = %bb6.sink.split, %bb2
  %.sink = phi i8 [ 2, %bb2 ], [ %.sink.ph, %bb6.sink.split ]
  %15 = getelementptr inbounds %"char::CaseMappingIter", %"char::CaseMappingIter"* %0, i16 0, i32 0, i16 0
  store i8 %.sink, i8* %15, align 1
  ret void
}

; <core::char::CaseMappingIter as core::iter::traits::iterator::Iterator>::next
; Function Attrs: nounwind uwtable
define i32 @"_ZN86_$LT$core..char..CaseMappingIter$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hffebba5eb0feb701E"(%"char::CaseMappingIter"* nocapture align 1 dereferenceable(13) %self) unnamed_addr addrspace(1) #9 {
start:
  %0 = getelementptr inbounds %"char::CaseMappingIter", %"char::CaseMappingIter"* %self, i16 0, i32 0, i16 0
  %1 = load i8, i8* %0, align 1, !range !696
  %trunc = trunc i8 %1 to i2
  switch i2 %trunc, label %bb2 [
    i2 0, label %bb3
    i2 1, label %bb4
    i2 -2, label %bb5
    i2 -1, label %bb6
  ]

bb2:                                              ; preds = %start
  unreachable

bb3:                                              ; preds = %start
  %2 = getelementptr inbounds %"char::CaseMappingIter", %"char::CaseMappingIter"* %self, i16 0, i32 2
  %3 = bitcast [12 x i8]* %2 to i32*
  %a = load i32, i32* %3, align 1, !range !690
  %4 = getelementptr inbounds %"char::CaseMappingIter", %"char::CaseMappingIter"* %self, i16 0, i32 2, i16 4
  %5 = bitcast i8* %4 to i32*
  %b2 = load i32, i32* %5, align 1, !range !690
  %6 = getelementptr inbounds %"char::CaseMappingIter", %"char::CaseMappingIter"* %self, i16 0, i32 2, i16 8
  %7 = bitcast i8* %6 to i32*
  %c3 = load i32, i32* %7, align 1, !range !690
  store i8 1, i8* %0, align 1
  store i32 %b2, i32* %3, align 1
  store i32 %c3, i32* %5, align 1
  br label %bb6

bb4:                                              ; preds = %start
  %8 = getelementptr inbounds %"char::CaseMappingIter", %"char::CaseMappingIter"* %self, i16 0, i32 2
  %9 = bitcast [12 x i8]* %8 to i32*
  %b = load i32, i32* %9, align 1, !range !690
  %10 = getelementptr inbounds %"char::CaseMappingIter", %"char::CaseMappingIter"* %self, i16 0, i32 2, i16 4
  %11 = bitcast i8* %10 to i32*
  %c1 = load i32, i32* %11, align 1, !range !690
  store i8 2, i8* %0, align 1
  store i32 %c1, i32* %9, align 1
  br label %bb6

bb5:                                              ; preds = %start
  %12 = getelementptr inbounds %"char::CaseMappingIter", %"char::CaseMappingIter"* %self, i16 0, i32 2
  %13 = bitcast [12 x i8]* %12 to i32*
  %c = load i32, i32* %13, align 1, !range !690
  store i8 3, i8* %0, align 1
  br label %bb6

bb6:                                              ; preds = %start, %bb3, %bb4, %bb5
  %.0 = phi i32 [ %c, %bb5 ], [ %b, %bb4 ], [ %a, %bb3 ], [ 1114112, %start ]
  ret i32 %.0
}

; <core::char::ToLowercase as core::fmt::Display>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN62_$LT$core..char..ToLowercase$u20$as$u20$core..fmt..Display$GT$3fmt17h49ab0f58c0b13896E"(%"char::ToLowercase"* noalias nocapture readonly align 1 dereferenceable(13) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %0 = getelementptr inbounds %"char::ToLowercase", %"char::ToLowercase"* %self, i16 0, i32 0, i16 0
  %1 = load i8, i8* %0, align 1, !range !696, !alias.scope !723
  %trunc.i = trunc i8 %1 to i2
  switch i2 %trunc.i, label %bb2.i [
    i2 0, label %bb3.i
    i2 1, label %bb21.i
    i2 -2, label %bb30.i
    i2 -1, label %"_ZN66_$LT$core..char..CaseMappingIter$u20$as$u20$core..fmt..Display$GT$3fmt17hdd20f507413af705E.exit"
  ]

bb2.i:                                            ; preds = %start
  unreachable

bb3.i:                                            ; preds = %start
  %2 = getelementptr inbounds %"char::ToLowercase", %"char::ToLowercase"* %self, i16 0, i32 1, i32 2
  %3 = bitcast [12 x i8]* %2 to i32*
  %a.i = load i32, i32* %3, align 1, !range !690, !alias.scope !723
  %4 = getelementptr inbounds %"char::ToLowercase", %"char::ToLowercase"* %self, i16 0, i32 1, i32 2, i16 4
  %5 = bitcast i8* %4 to i32*
  %b2.i = load i32, i32* %5, align 1, !range !690, !alias.scope !723
  %6 = getelementptr inbounds %"char::ToLowercase", %"char::ToLowercase"* %self, i16 0, i32 1, i32 2, i16 8
  %7 = bitcast i8* %6 to i32*
  %c3.i = load i32, i32* %7, align 1, !range !690, !alias.scope !723
  %8 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i = load {}*, {}** %8, align 1, !noalias !723, !nonnull !568
  %9 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %10 = bitcast [3 x i16]** %9 to i1 ({}*, i32) addrspace(1)***
  %_3.11.i.i = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %10, align 1, !noalias !723, !nonnull !568
  %11 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11.i.i, i16 4
  %12 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %11, align 1, !invariant.load !568, !noalias !723, !nonnull !568
  %13 = tail call zeroext addrspace(1) i1 %12({}* nonnull align 1 %_3.0.i.i, i32 %a.i), !noalias !723
  br i1 %13, label %"_ZN66_$LT$core..char..CaseMappingIter$u20$as$u20$core..fmt..Display$GT$3fmt17hdd20f507413af705E.exit", label %bb6.i

bb6.i:                                            ; preds = %bb3.i
  %_3.0.i11.i = load {}*, {}** %8, align 1, !noalias !723, !nonnull !568
  %_3.11.i12.i = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %10, align 1, !noalias !723, !nonnull !568
  %14 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11.i12.i, i16 4
  %15 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %14, align 1, !invariant.load !568, !noalias !723, !nonnull !568
  %16 = tail call zeroext addrspace(1) i1 %15({}* nonnull align 1 %_3.0.i11.i, i32 %b2.i), !noalias !723
  br i1 %16, label %"_ZN66_$LT$core..char..CaseMappingIter$u20$as$u20$core..fmt..Display$GT$3fmt17hdd20f507413af705E.exit", label %bb15.i

bb15.i:                                           ; preds = %bb6.i
  %_3.0.i17.i = load {}*, {}** %8, align 1, !noalias !723, !nonnull !568
  %_3.11.i18.i = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %10, align 1, !noalias !723, !nonnull !568
  %17 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11.i18.i, i16 4
  %18 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %17, align 1, !invariant.load !568, !noalias !723, !nonnull !568
  %19 = tail call zeroext addrspace(1) i1 %18({}* nonnull align 1 %_3.0.i17.i, i32 %c3.i), !noalias !723
  br label %"_ZN66_$LT$core..char..CaseMappingIter$u20$as$u20$core..fmt..Display$GT$3fmt17hdd20f507413af705E.exit"

bb21.i:                                           ; preds = %start
  %20 = getelementptr inbounds %"char::ToLowercase", %"char::ToLowercase"* %self, i16 0, i32 1, i32 2
  %21 = bitcast [12 x i8]* %20 to i32*
  %b.i = load i32, i32* %21, align 1, !range !690, !alias.scope !723
  %22 = getelementptr inbounds %"char::ToLowercase", %"char::ToLowercase"* %self, i16 0, i32 1, i32 2, i16 4
  %23 = bitcast i8* %22 to i32*
  %c1.i = load i32, i32* %23, align 1, !range !690, !alias.scope !723
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i15.i = load {}*, {}** %24, align 1, !noalias !723, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, i32) addrspace(1)***
  %_3.11.i16.i = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %26, align 1, !noalias !723, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11.i16.i, i16 4
  %28 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !723, !nonnull !568
  %29 = tail call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i15.i, i32 %b.i), !noalias !723
  br i1 %29, label %"_ZN66_$LT$core..char..CaseMappingIter$u20$as$u20$core..fmt..Display$GT$3fmt17hdd20f507413af705E.exit", label %bb24.i

bb24.i:                                           ; preds = %bb21.i
  %_3.0.i13.i = load {}*, {}** %24, align 1, !noalias !723, !nonnull !568
  %_3.11.i14.i = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %26, align 1, !noalias !723, !nonnull !568
  %30 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11.i14.i, i16 4
  %31 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %30, align 1, !invariant.load !568, !noalias !723, !nonnull !568
  %32 = tail call zeroext addrspace(1) i1 %31({}* nonnull align 1 %_3.0.i13.i, i32 %c1.i), !noalias !723
  br label %"_ZN66_$LT$core..char..CaseMappingIter$u20$as$u20$core..fmt..Display$GT$3fmt17hdd20f507413af705E.exit"

bb30.i:                                           ; preds = %start
  %33 = getelementptr inbounds %"char::ToLowercase", %"char::ToLowercase"* %self, i16 0, i32 1, i32 2
  %34 = bitcast [12 x i8]* %33 to i32*
  %c.i = load i32, i32* %34, align 1, !range !690, !alias.scope !723
  %35 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i9.i = load {}*, {}** %35, align 1, !noalias !723, !nonnull !568
  %36 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %37 = bitcast [3 x i16]** %36 to i1 ({}*, i32) addrspace(1)***
  %_3.11.i10.i = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %37, align 1, !noalias !723, !nonnull !568
  %38 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11.i10.i, i16 4
  %39 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %38, align 1, !invariant.load !568, !noalias !723, !nonnull !568
  %40 = tail call zeroext addrspace(1) i1 %39({}* nonnull align 1 %_3.0.i9.i, i32 %c.i), !noalias !723
  br label %"_ZN66_$LT$core..char..CaseMappingIter$u20$as$u20$core..fmt..Display$GT$3fmt17hdd20f507413af705E.exit"

"_ZN66_$LT$core..char..CaseMappingIter$u20$as$u20$core..fmt..Display$GT$3fmt17hdd20f507413af705E.exit": ; preds = %start, %bb3.i, %bb6.i, %bb15.i, %bb21.i, %bb24.i, %bb30.i
  %.0.shrunk.i = phi i1 [ %40, %bb30.i ], [ %32, %bb24.i ], [ %19, %bb15.i ], [ false, %start ], [ true, %bb3.i ], [ true, %bb6.i ], [ true, %bb21.i ]
  ret i1 %.0.shrunk.i
}

; <core::ffi::c_void as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN54_$LT$core..ffi..c_void$u20$as$u20$core..fmt..Debug$GT$3fmt17h406e5b61527466efE"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
; call core::fmt::Formatter::pad
  %0 = tail call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter3pad17h307fb261f2dc8a5eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc18583 to [0 x i8]*), i16 6)
  ret i1 %0
}

; <core::ffi::VaListImpl as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN58_$LT$core..ffi..VaListImpl$u20$as$u20$core..fmt..Debug$GT$3fmt17heeed607070847e12E"(i8** noalias readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_5.i = alloca %"fmt::Arguments", align 1
  %_11 = alloca [1 x { i8*, i8 addrspace(1)* }], align 1
  %0 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_11 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_11 to i8***
  store i8** %self, i8*** %1, align 1
  %2 = getelementptr inbounds [1 x { i8*, i8 addrspace(1)* }], [1 x { i8*, i8 addrspace(1)* }]* %_11, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 (i8**, %"fmt::Formatter"*) addrspace(1)* @"_ZN52_$LT$$BP$mut$u20$T$u20$as$u20$core..fmt..Pointer$GT$3fmt17he7e35628f78eac2bE" to i8 addrspace(1)*), i8 addrspace(1)** %2, align 1
  %3 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_4.0.i = load {}*, {}** %3, align 1, !noalias !726, !nonnull !568
  %4 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %_4.1.i = load [3 x i16]*, [3 x i16]** %4, align 1, !noalias !726, !nonnull !568
  %5 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %5), !noalias !726
  %_4.sroa.0.0..sroa_cast3 = bitcast %"fmt::Arguments"* %_5.i to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8] }>* @alloc16542 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %_4.sroa.0.0..sroa_cast3, align 1
  %_4.sroa.4.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 1, i32 1
  store i16 1, i16* %_4.sroa.4.0..sroa_idx, align 1
  %_4.sroa.5.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 3, i32 0
  store i8* null, i8** %_4.sroa.5.0..sroa_idx, align 1
  %_4.sroa.67.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 5, i32 0
  %6 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %_4.sroa.67.0..sroa_idx to [1 x { i8*, i8 addrspace(1)* }]**
  store [1 x { i8*, i8 addrspace(1)* }]* %_11, [1 x { i8*, i8 addrspace(1)* }]** %6, align 1
  %_4.sroa.7.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 5, i32 1
  store i16 1, i16* %_4.sroa.7.0..sroa_idx, align 1
; call core::fmt::write
  %7 = call zeroext addrspace(1) i1 @_ZN4core3fmt5write17hf4cd163abe69055cE({}* nonnull align 1 %_4.0.i, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) %_4.1.i, %"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_5.i), !noalias !726
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 12, i8* nonnull %5), !noalias !726
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %7
}

; <core::ffi::VaListImpl as core::ops::drop::Drop>::drop
; Function Attrs: norecurse nounwind readnone uwtable
define void @"_ZN63_$LT$core..ffi..VaListImpl$u20$as$u20$core..ops..drop..Drop$GT$4drop17h656925d7329d1a04E"(i8** nocapture align 1 dereferenceable(2) %self) unnamed_addr addrspace(1) #1 {
start:
  ret void
}

; <core::iter::adapters::Filter<I,P> as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN78_$LT$core..iter..adapters..Filter$LT$I$C$P$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h794a1574668cd3caE"(%"iter::adapters::Filter<slice::Split<u8, str::IsAsciiWhitespace>, str::BytesIsNotEmpty>"* noalias readonly align 1 dereferenceable(5) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_6 = alloca %"fmt::builders::DebugStruct", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_6, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !729, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !729, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !729, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc18604 to [0 x i8]*), i16 6), !noalias !738
  %7 = bitcast %"fmt::builders::DebugStruct"* %_6 to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !738, !noalias !739
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_6, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !738, !noalias !739
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_6, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !738, !noalias !739
  %_12.0 = bitcast %"iter::adapters::Filter<slice::Split<u8, str::IsAsciiWhitespace>, str::BytesIsNotEmpty>"* %self to {}*
; call core::fmt::builders::DebugStruct::field
  %_4 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %_6, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19203 to [0 x i8]*), i16 4, {}* nonnull align 1 %_12.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"slice::Split<u8, str::IsAsciiWhitespace>"*) addrspace(1)*, i16, i16, i1 (%"slice::Split<u8, str::IsAsciiWhitespace>"*, %"fmt::Formatter"*) addrspace(1)* }* @vtable.a to [3 x i16]*))
  %11 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_4, i16 0, i32 5
  %12 = load i8, i8* %11, align 1, !range !87
  %_2.i = icmp eq i8 %12, 0
  %.phi.trans.insert.i = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_4, i16 0, i32 3
  %.pre.i = load i8, i8* %.phi.trans.insert.i, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %13 = bitcast %"fmt::builders::DebugStruct"* %_4 to i32**
  %_21.i.i.i.i = load i32*, i32** %13, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !740, !noalias !743
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %14 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %15 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %15, align 1, !nonnull !568
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %17 = bitcast [3 x i16]** %16 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %17, align 1, !nonnull !568
  %18 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %19 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %18, align 1, !invariant.load !568, !nonnull !568
  br i1 %14, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %20 = call zeroext addrspace(1) i1 %19({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %21 = call zeroext addrspace(1) i1 %19({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %21, %bb3.i.i.i ], [ %20, %bb2.i.i.i ]
  %22 = zext i1 %.0.i.i to i8
  store i8 %22, i8* %.phi.trans.insert.i, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %23 = phi i8 [ %22, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %24 = icmp ne i8 %23, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %24
}

; <() as core::iter::traits::collect::Extend<()>>::extend_one
; Function Attrs: norecurse nounwind readnone uwtable
define void @"_ZN80_$LT$$LP$$RP$$u20$as$u20$core..iter..traits..collect..Extend$LT$$LP$$RP$$GT$$GT$10extend_one17hb9d70c2bcd849cbfE"({}* nocapture nonnull align 1 %self) unnamed_addr addrspace(1) #1 {
start:
  ret void
}

; core::option::expect_failed
; Function Attrs: cold noinline noreturn uwtable
define void @_ZN4core6option13expect_failed17h801d7499d7350cb5E([0 x i8]* noalias nonnull readonly align 1 %0, i16 %1, %"panic::Location"* noalias readonly align 1 dereferenceable(12) %2) unnamed_addr addrspace(1) #10 {
start:
  %_9 = alloca [1 x { i8*, i8 addrspace(1)* }], align 1
  %_2 = alloca %"fmt::Arguments", align 1
  %msg = alloca { [0 x i8]*, i16 }, align 1
  %3 = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %msg, i16 0, i32 0
  store [0 x i8]* %0, [0 x i8]** %3, align 1
  %4 = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %msg, i16 0, i32 1
  store i16 %1, i16* %4, align 1
  %5 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_2, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %5)
  %6 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_9 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %6)
  %7 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_9 to { [0 x i8]*, i16 }**
  store { [0 x i8]*, i16 }* %msg, { [0 x i8]*, i16 }** %7, align 1
  %8 = getelementptr inbounds [1 x { i8*, i8 addrspace(1)* }], [1 x { i8*, i8 addrspace(1)* }]* %_9, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 ({ [0 x i8]*, i16 }*, %"fmt::Formatter"*) addrspace(1)* @"_ZN44_$LT$$RF$T$u20$as$u20$core..fmt..Display$GT$3fmt17h4c33253c245fb34cE" to i8 addrspace(1)*), i8 addrspace(1)** %8, align 1
  %9 = bitcast %"fmt::Arguments"* %_2 to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8] }>* @alloc17054 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %9, align 1, !alias.scope !746, !noalias !749
  %10 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_2, i16 0, i32 1, i32 1
  store i16 1, i16* %10, align 1, !alias.scope !746, !noalias !749
  %11 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_2, i16 0, i32 3, i32 0
  store i8* null, i8** %11, align 1, !alias.scope !746, !noalias !749
  %12 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_2, i16 0, i32 5, i32 0
  %13 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %12 to [1 x { i8*, i8 addrspace(1)* }]**
  store [1 x { i8*, i8 addrspace(1)* }]* %_9, [1 x { i8*, i8 addrspace(1)* }]** %13, align 1, !alias.scope !746, !noalias !749
  %14 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_2, i16 0, i32 5, i32 1
  store i16 1, i16* %14, align 1, !alias.scope !746, !noalias !749
; call core::panicking::panic_fmt
  call addrspace(1) void @_ZN4core9panicking9panic_fmt17hb7ee2cb815ea49cfE(%"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_2, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) %2)
  unreachable
}

; core::option::expect_none_failed
; Function Attrs: cold noinline noreturn uwtable
define void @_ZN4core6option18expect_none_failed17h25a13f9c35365ea1E([0 x i8]* noalias nonnull readonly align 1 %0, i16 %1, {}* nonnull align 1 %2, [3 x i16]* noalias readonly align 1 dereferenceable(6) %3, %"panic::Location"* noalias readonly align 1 dereferenceable(12) %4) unnamed_addr addrspace(1) #10 {
start:
  %_10 = alloca [2 x { i8*, i8 addrspace(1)* }], align 1
  %_3 = alloca %"fmt::Arguments", align 1
  %value = alloca { {}*, [3 x i16]* }, align 1
  %msg = alloca { [0 x i8]*, i16 }, align 1
  %5 = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %msg, i16 0, i32 0
  store [0 x i8]* %0, [0 x i8]** %5, align 1
  %6 = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %msg, i16 0, i32 1
  store i16 %1, i16* %6, align 1
  %7 = getelementptr inbounds { {}*, [3 x i16]* }, { {}*, [3 x i16]* }* %value, i16 0, i32 0
  store {}* %2, {}** %7, align 1
  %8 = getelementptr inbounds { {}*, [3 x i16]* }, { {}*, [3 x i16]* }* %value, i16 0, i32 1
  store [3 x i16]* %3, [3 x i16]** %8, align 1
  %9 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_3, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %9)
  %10 = bitcast [2 x { i8*, i8 addrspace(1)* }]* %_10 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %10)
  %11 = bitcast [2 x { i8*, i8 addrspace(1)* }]* %_10 to { [0 x i8]*, i16 }**
  store { [0 x i8]*, i16 }* %msg, { [0 x i8]*, i16 }** %11, align 1
  %12 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_10, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 ({ [0 x i8]*, i16 }*, %"fmt::Formatter"*) addrspace(1)* @"_ZN44_$LT$$RF$T$u20$as$u20$core..fmt..Display$GT$3fmt17h4c33253c245fb34cE" to i8 addrspace(1)*), i8 addrspace(1)** %12, align 1
  %13 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_10, i16 0, i16 1, i32 0
  %14 = bitcast i8** %13 to { {}*, [3 x i16]* }**
  store { {}*, [3 x i16]* }* %value, { {}*, [3 x i16]* }** %14, align 1
  %15 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_10, i16 0, i16 1, i32 1
  store i8 addrspace(1)* bitcast (i1 ({ {}*, [3 x i16]* }*, %"fmt::Formatter"*) addrspace(1)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h4d498b79b8a21c3cE" to i8 addrspace(1)*), i8 addrspace(1)** %15, align 1
  %16 = bitcast %"fmt::Arguments"* %_3 to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8], i8*, [2 x i8] }>* @alloc15745 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %16, align 1, !alias.scope !752, !noalias !755
  %17 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_3, i16 0, i32 1, i32 1
  store i16 2, i16* %17, align 1, !alias.scope !752, !noalias !755
  %18 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_3, i16 0, i32 3, i32 0
  store i8* null, i8** %18, align 1, !alias.scope !752, !noalias !755
  %19 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_3, i16 0, i32 5, i32 0
  %20 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %19 to [2 x { i8*, i8 addrspace(1)* }]**
  store [2 x { i8*, i8 addrspace(1)* }]* %_10, [2 x { i8*, i8 addrspace(1)* }]** %20, align 1, !alias.scope !752, !noalias !755
  %21 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_3, i16 0, i32 5, i32 1
  store i16 2, i16* %21, align 1, !alias.scope !752, !noalias !755
; call core::panicking::panic_fmt
  call addrspace(1) void @_ZN4core9panicking9panic_fmt17hb7ee2cb815ea49cfE(%"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_3, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) %4)
  unreachable
}

; core::panic::PanicInfo::payload
; Function Attrs: norecurse nounwind readonly uwtable
define { {}*, [3 x i16]* } @_ZN4core5panic9PanicInfo7payload17h6b3bcf870803c8a8E(%"panic::PanicInfo"* noalias nocapture readonly align 1 dereferenceable(8) %self) unnamed_addr addrspace(1) #5 {
start:
  %0 = bitcast %"panic::PanicInfo"* %self to {}**
  %_4.0 = load {}*, {}** %0, align 1, !nonnull !568
  %1 = getelementptr inbounds %"panic::PanicInfo", %"panic::PanicInfo"* %self, i16 0, i32 1, i32 1
  %_4.1 = load [3 x i16]*, [3 x i16]** %1, align 1, !nonnull !568
  %2 = insertvalue { {}*, [3 x i16]* } undef, {}* %_4.0, 0
  %3 = insertvalue { {}*, [3 x i16]* } %2, [3 x i16]* %_4.1, 1
  ret { {}*, [3 x i16]* } %3
}

; core::panic::PanicInfo::message
; Function Attrs: norecurse nounwind readonly uwtable
define align 1 dereferenceable_or_null(12) i8* @_ZN4core5panic9PanicInfo7message17h887c4f14718651b3E(%"panic::PanicInfo"* noalias nocapture readonly align 1 dereferenceable(8) %self) unnamed_addr addrspace(1) #5 {
start:
  %0 = getelementptr inbounds %"panic::PanicInfo", %"panic::PanicInfo"* %self, i16 0, i32 3
  %1 = load i8*, i8** %0, align 1
  ret i8* %1
}

; core::panic::PanicInfo::location
; Function Attrs: norecurse nounwind readonly uwtable
define nonnull align 1 dereferenceable_or_null(12) i8* @_ZN4core5panic9PanicInfo8location17h8b080f2984e68ec0E(%"panic::PanicInfo"* noalias nocapture readonly align 1 dereferenceable(8) %self) unnamed_addr addrspace(1) #5 {
start:
  %_3 = getelementptr inbounds %"panic::PanicInfo", %"panic::PanicInfo"* %self, i16 0, i32 5
  %0 = bitcast %"panic::Location"** %_3 to i8**
  %_21 = load i8*, i8** %0, align 1, !nonnull !568
  ret i8* %_21
}

; <core::panic::PanicInfo as core::fmt::Display>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN61_$LT$core..panic..PanicInfo$u20$as$u20$core..fmt..Display$GT$3fmt17h255d71911999dfc2E"(%"panic::PanicInfo"* noalias nocapture readonly align 1 dereferenceable(8) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %formatter) unnamed_addr addrspace(1) #2 {
start:
  %_5.i15 = alloca %"fmt::Arguments", align 1
  %_5.i = alloca %"fmt::Arguments", align 1
  %_5.i.i = alloca %"fmt::Arguments", align 1
  %_11.i = alloca [3 x { i8*, i8 addrspace(1)* }], align 1
  %_51 = alloca [1 x { i8*, i8 addrspace(1)* }], align 1
  %payload = alloca { [0 x i8]*, i16 }*, align 1
  %_25 = alloca [1 x { i8*, i8 addrspace(1)* }], align 1
  %message = alloca %"fmt::Arguments"*, align 1
  %0 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %formatter, i16 0, i32 11, i32 0
  %_3.0.i = load {}*, {}** %0, align 1, !noalias !758, !nonnull !568
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %formatter, i16 0, i32 11, i32 1
  %2 = bitcast [3 x i16]** %1 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %2, align 1, !noalias !758, !nonnull !568
  %3 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i, i16 3
  %4 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %3, align 1, !invariant.load !568, !noalias !758, !nonnull !568
  %5 = tail call zeroext addrspace(1) i1 %4({}* nonnull align 1 %_3.0.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [12 x i8] }>* @alloc18614 to [0 x i8]*), i16 12)
  br i1 %5, label %bb6, label %bb3

bb3:                                              ; preds = %start
  %6 = getelementptr inbounds %"panic::PanicInfo", %"panic::PanicInfo"* %self, i16 0, i32 3
  %7 = bitcast i8** %6 to {}**
  %8 = load {}*, {}** %7, align 1
  %9 = icmp eq {}* %8, null
  br i1 %9, label %bb9, label %bb10

bb6:                                              ; preds = %bb23, %bb10, %start, %bb34
  %.0 = phi i1 [ %46, %bb34 ], [ true, %start ], [ true, %bb10 ], [ true, %bb23 ]
  ret i1 %.0

bb9:                                              ; preds = %bb3
  %10 = bitcast %"panic::PanicInfo"* %self to {}**
  %_38.0 = load {}*, {}** %10, align 1, !nonnull !568
  %11 = getelementptr inbounds %"panic::PanicInfo", %"panic::PanicInfo"* %self, i16 0, i32 1, i32 1
  %_38.1 = load [3 x i16]*, [3 x i16]** %11, align 1, !nonnull !568
  %12 = getelementptr inbounds [3 x i16], [3 x i16]* %_38.1, i16 0, i16 3
  %13 = bitcast i16* %12 to i64 ({}*) addrspace(1)**
  %14 = load i64 ({}*) addrspace(1)*, i64 ({}*) addrspace(1)** %13, align 1, !invariant.load !568, !alias.scope !761, !nonnull !568
  %15 = tail call addrspace(1) i64 %14({}* nonnull align 1 %_38.0), !noalias !761
  %16 = icmp eq i64 %15, 9147559743429524724
  br i1 %16, label %bb23, label %bb34

bb10:                                             ; preds = %bb3
  %17 = bitcast %"fmt::Arguments"** %message to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %17)
  %18 = bitcast %"fmt::Arguments"** %message to {}**
  store {}* %8, {}** %18, align 1
  %19 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_25 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %19)
  %20 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_25 to %"fmt::Arguments"***
  store %"fmt::Arguments"** %message, %"fmt::Arguments"*** %20, align 1
  %21 = getelementptr inbounds [1 x { i8*, i8 addrspace(1)* }], [1 x { i8*, i8 addrspace(1)* }]* %_25, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 (%"fmt::Arguments"**, %"fmt::Formatter"*) addrspace(1)* @"_ZN44_$LT$$RF$T$u20$as$u20$core..fmt..Display$GT$3fmt17ha24db1cca617029fE" to i8 addrspace(1)*), i8 addrspace(1)** %21, align 1
  %_4.0.i16 = load {}*, {}** %0, align 1, !noalias !768, !nonnull !568
  %_4.1.i17 = load [3 x i16]*, [3 x i16]** %1, align 1, !noalias !768, !nonnull !568
  %22 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i15, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %22), !noalias !768
  %_18.sroa.0.0..sroa_cast19 = bitcast %"fmt::Arguments"* %_5.i15 to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8], i8*, [2 x i8] }>* @alloc16555 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %_18.sroa.0.0..sroa_cast19, align 1
  %_18.sroa.4.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i15, i16 0, i32 1, i32 1
  store i16 2, i16* %_18.sroa.4.0..sroa_idx, align 1
  %_18.sroa.5.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i15, i16 0, i32 3, i32 0
  store i8* null, i8** %_18.sroa.5.0..sroa_idx, align 1
  %_18.sroa.623.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i15, i16 0, i32 5, i32 0
  %23 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %_18.sroa.623.0..sroa_idx to [1 x { i8*, i8 addrspace(1)* }]**
  store [1 x { i8*, i8 addrspace(1)* }]* %_25, [1 x { i8*, i8 addrspace(1)* }]** %23, align 1
  %_18.sroa.7.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i15, i16 0, i32 5, i32 1
  store i16 1, i16* %_18.sroa.7.0..sroa_idx, align 1
; call core::fmt::write
  %24 = call zeroext addrspace(1) i1 @_ZN4core3fmt5write17hf4cd163abe69055cE({}* nonnull align 1 %_4.0.i16, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) %_4.1.i17, %"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_5.i15), !noalias !768
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 12, i8* nonnull %22), !noalias !768
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %19)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %17)
  br i1 %24, label %bb6, label %bb34

bb23:                                             ; preds = %bb9
  %25 = bitcast { [0 x i8]*, i16 }** %payload to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %25)
  %26 = bitcast { [0 x i8]*, i16 }** %payload to {}**
  store {}* %_38.0, {}** %26, align 1
  %27 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_51 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %27)
  %28 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_51 to { [0 x i8]*, i16 }***
  store { [0 x i8]*, i16 }** %payload, { [0 x i8]*, i16 }*** %28, align 1
  %29 = getelementptr inbounds [1 x { i8*, i8 addrspace(1)* }], [1 x { i8*, i8 addrspace(1)* }]* %_51, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 ({ [0 x i8]*, i16 }**, %"fmt::Formatter"*) addrspace(1)* @"_ZN44_$LT$$RF$T$u20$as$u20$core..fmt..Display$GT$3fmt17hdf4e195864e26bc9E" to i8 addrspace(1)*), i8 addrspace(1)** %29, align 1
  %_4.0.i = load {}*, {}** %0, align 1, !noalias !771, !nonnull !568
  %_4.1.i = load [3 x i16]*, [3 x i16]** %1, align 1, !noalias !771, !nonnull !568
  %30 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %30), !noalias !771
  %_44.sroa.0.0..sroa_cast27 = bitcast %"fmt::Arguments"* %_5.i to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8], i8*, [2 x i8] }>* @alloc16555 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %_44.sroa.0.0..sroa_cast27, align 1
  %_44.sroa.4.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 1, i32 1
  store i16 2, i16* %_44.sroa.4.0..sroa_idx, align 1
  %_44.sroa.5.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 3, i32 0
  store i8* null, i8** %_44.sroa.5.0..sroa_idx, align 1
  %_44.sroa.631.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 5, i32 0
  %31 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %_44.sroa.631.0..sroa_idx to [1 x { i8*, i8 addrspace(1)* }]**
  store [1 x { i8*, i8 addrspace(1)* }]* %_51, [1 x { i8*, i8 addrspace(1)* }]** %31, align 1
  %_44.sroa.7.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 5, i32 1
  store i16 1, i16* %_44.sroa.7.0..sroa_idx, align 1
; call core::fmt::write
  %32 = call zeroext addrspace(1) i1 @_ZN4core3fmt5write17hf4cd163abe69055cE({}* nonnull align 1 %_4.0.i, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) %_4.1.i, %"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_5.i), !noalias !771
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 12, i8* nonnull %30), !noalias !771
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %27)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %25)
  br i1 %32, label %bb6, label %bb34

bb34:                                             ; preds = %bb9, %bb23, %bb10
  %33 = getelementptr inbounds %"panic::PanicInfo", %"panic::PanicInfo"* %self, i16 0, i32 5
  %_63 = load %"panic::Location"*, %"panic::Location"** %33, align 1, !nonnull !568
  %34 = bitcast [3 x { i8*, i8 addrspace(1)* }]* %_11.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %34), !noalias !774
  %_14.i = getelementptr inbounds %"panic::Location", %"panic::Location"* %_63, i16 0, i32 3
  %_15.i = getelementptr inbounds %"panic::Location", %"panic::Location"* %_63, i16 0, i32 5
  %35 = getelementptr inbounds %"panic::Location", %"panic::Location"* %_63, i16 0, i32 0, i16 0
  %36 = getelementptr inbounds [3 x { i8*, i8 addrspace(1)* }], [3 x { i8*, i8 addrspace(1)* }]* %_11.i, i16 0, i16 0, i32 0
  store i8* %35, i8** %36, align 1, !noalias !774
  %37 = getelementptr inbounds [3 x { i8*, i8 addrspace(1)* }], [3 x { i8*, i8 addrspace(1)* }]* %_11.i, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 ({ [0 x i8]*, i16 }*, %"fmt::Formatter"*) addrspace(1)* @"_ZN44_$LT$$RF$T$u20$as$u20$core..fmt..Display$GT$3fmt17h4c33253c245fb34cE" to i8 addrspace(1)*), i8 addrspace(1)** %37, align 1, !noalias !774
  %38 = getelementptr inbounds [3 x { i8*, i8 addrspace(1)* }], [3 x { i8*, i8 addrspace(1)* }]* %_11.i, i16 0, i16 1, i32 0
  %39 = bitcast i8** %38 to i32**
  store i32* %_14.i, i32** %39, align 1, !noalias !774
  %40 = getelementptr inbounds [3 x { i8*, i8 addrspace(1)* }], [3 x { i8*, i8 addrspace(1)* }]* %_11.i, i16 0, i16 1, i32 1
  store i8 addrspace(1)* bitcast (i1 (i32*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u32$GT$3fmt17h4fc4f96f0a2da0eaE" to i8 addrspace(1)*), i8 addrspace(1)** %40, align 1, !noalias !774
  %41 = getelementptr inbounds [3 x { i8*, i8 addrspace(1)* }], [3 x { i8*, i8 addrspace(1)* }]* %_11.i, i16 0, i16 2, i32 0
  %42 = bitcast i8** %41 to i32**
  store i32* %_15.i, i32** %42, align 1, !noalias !774
  %43 = getelementptr inbounds [3 x { i8*, i8 addrspace(1)* }], [3 x { i8*, i8 addrspace(1)* }]* %_11.i, i16 0, i16 2, i32 1
  store i8 addrspace(1)* bitcast (i1 (i32*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u32$GT$3fmt17h4fc4f96f0a2da0eaE" to i8 addrspace(1)*), i8 addrspace(1)** %43, align 1, !noalias !774
  %_4.0.i.i = load {}*, {}** %0, align 1, !noalias !777, !nonnull !568
  %_4.1.i.i = load [3 x i16]*, [3 x i16]** %1, align 1, !noalias !777, !nonnull !568
  %44 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %44), !noalias !777
  %_4.sroa.0.0..sroa_cast5.i = bitcast %"fmt::Arguments"* %_5.i.i to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8], i8*, [2 x i8], i8*, [2 x i8] }>* @alloc16571 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %_4.sroa.0.0..sroa_cast5.i, align 1, !noalias !774
  %_4.sroa.4.0..sroa_idx.i = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i.i, i16 0, i32 1, i32 1
  store i16 3, i16* %_4.sroa.4.0..sroa_idx.i, align 1, !noalias !774
  %_4.sroa.5.0..sroa_idx.i = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i.i, i16 0, i32 3, i32 0
  store i8* null, i8** %_4.sroa.5.0..sroa_idx.i, align 1, !noalias !774
  %_4.sroa.69.0..sroa_idx.i = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i.i, i16 0, i32 5, i32 0
  %45 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %_4.sroa.69.0..sroa_idx.i to [3 x { i8*, i8 addrspace(1)* }]**
  store [3 x { i8*, i8 addrspace(1)* }]* %_11.i, [3 x { i8*, i8 addrspace(1)* }]** %45, align 1, !noalias !774
  %_4.sroa.7.0..sroa_idx.i = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i.i, i16 0, i32 5, i32 1
  store i16 3, i16* %_4.sroa.7.0..sroa_idx.i, align 1, !noalias !774
; call core::fmt::write
  %46 = call zeroext addrspace(1) i1 @_ZN4core3fmt5write17hf4cd163abe69055cE({}* nonnull align 1 %_4.0.i.i, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) %_4.1.i.i, %"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_5.i.i), !noalias !780
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 12, i8* nonnull %44), !noalias !777
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 12, i8* nonnull %34), !noalias !774
  br label %bb6
}

; core::panic::Location::caller
; Function Attrs: norecurse nounwind readnone uwtable
define nonnull align 1 dereferenceable(12) %"panic::Location"* @_ZN4core5panic8Location6caller17h85a9a85af89a2f8dE(%"panic::Location"* noalias readonly returned align 1 dereferenceable(12) %0) unnamed_addr addrspace(1) #1 {
start:
  ret %"panic::Location"* %0
}

; core::panic::Location::internal_constructor
; Function Attrs: nofree norecurse nounwind uwtable writeonly
define void @_ZN4core5panic8Location20internal_constructor17h32937dcd796f8337E(%"panic::Location"* noalias nocapture sret dereferenceable(12) %0, [0 x i8]* noalias nonnull readonly align 1 %file.0, i16 %file.1, i32 %line, i32 %col) unnamed_addr addrspace(1) #3 {
start:
  %1 = bitcast %"panic::Location"* %0 to [0 x i8]**
  store [0 x i8]* %file.0, [0 x i8]** %1, align 1
  %2 = getelementptr inbounds %"panic::Location", %"panic::Location"* %0, i16 0, i32 1, i32 1
  store i16 %file.1, i16* %2, align 1
  %3 = getelementptr inbounds %"panic::Location", %"panic::Location"* %0, i16 0, i32 3
  store i32 %line, i32* %3, align 1
  %4 = getelementptr inbounds %"panic::Location", %"panic::Location"* %0, i16 0, i32 5
  store i32 %col, i32* %4, align 1
  ret void
}

; core::panic::Location::file
; Function Attrs: norecurse nounwind readonly uwtable
define { [0 x i8]*, i16 } @_ZN4core5panic8Location4file17h82e915e56ad058b0E(%"panic::Location"* noalias nocapture readonly align 1 dereferenceable(12) %self) unnamed_addr addrspace(1) #5 {
start:
  %0 = bitcast %"panic::Location"* %self to [0 x i8]**
  %1 = load [0 x i8]*, [0 x i8]** %0, align 1, !nonnull !568
  %2 = getelementptr inbounds %"panic::Location", %"panic::Location"* %self, i16 0, i32 1, i32 1
  %3 = load i16, i16* %2, align 1
  %4 = insertvalue { [0 x i8]*, i16 } undef, [0 x i8]* %1, 0
  %5 = insertvalue { [0 x i8]*, i16 } %4, i16 %3, 1
  ret { [0 x i8]*, i16 } %5
}

; core::panic::Location::line
; Function Attrs: norecurse nounwind readonly uwtable
define i32 @_ZN4core5panic8Location4line17h51d59d3f7bbf24a4E(%"panic::Location"* noalias nocapture readonly align 1 dereferenceable(12) %self) unnamed_addr addrspace(1) #5 {
start:
  %0 = getelementptr inbounds %"panic::Location", %"panic::Location"* %self, i16 0, i32 3
  %1 = load i32, i32* %0, align 1
  ret i32 %1
}

; core::panic::Location::column
; Function Attrs: norecurse nounwind readonly uwtable
define i32 @_ZN4core5panic8Location6column17hd2fc99740879bac8E(%"panic::Location"* noalias nocapture readonly align 1 dereferenceable(12) %self) unnamed_addr addrspace(1) #5 {
start:
  %0 = getelementptr inbounds %"panic::Location", %"panic::Location"* %self, i16 0, i32 5
  %1 = load i32, i32* %0, align 1
  ret i32 %1
}

; <core::panic::Location as core::fmt::Display>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN60_$LT$core..panic..Location$u20$as$u20$core..fmt..Display$GT$3fmt17hf913874e0082b0f0E"(%"panic::Location"* noalias readonly align 1 dereferenceable(12) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %formatter) unnamed_addr addrspace(1) #2 {
start:
  %_5.i = alloca %"fmt::Arguments", align 1
  %_11 = alloca [3 x { i8*, i8 addrspace(1)* }], align 1
  %0 = bitcast [3 x { i8*, i8 addrspace(1)* }]* %_11 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %0)
  %_14 = getelementptr inbounds %"panic::Location", %"panic::Location"* %self, i16 0, i32 3
  %_15 = getelementptr inbounds %"panic::Location", %"panic::Location"* %self, i16 0, i32 5
  %1 = getelementptr inbounds %"panic::Location", %"panic::Location"* %self, i16 0, i32 0, i16 0
  %2 = getelementptr inbounds [3 x { i8*, i8 addrspace(1)* }], [3 x { i8*, i8 addrspace(1)* }]* %_11, i16 0, i16 0, i32 0
  store i8* %1, i8** %2, align 1
  %3 = getelementptr inbounds [3 x { i8*, i8 addrspace(1)* }], [3 x { i8*, i8 addrspace(1)* }]* %_11, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 ({ [0 x i8]*, i16 }*, %"fmt::Formatter"*) addrspace(1)* @"_ZN44_$LT$$RF$T$u20$as$u20$core..fmt..Display$GT$3fmt17h4c33253c245fb34cE" to i8 addrspace(1)*), i8 addrspace(1)** %3, align 1
  %4 = getelementptr inbounds [3 x { i8*, i8 addrspace(1)* }], [3 x { i8*, i8 addrspace(1)* }]* %_11, i16 0, i16 1, i32 0
  %5 = bitcast i8** %4 to i32**
  store i32* %_14, i32** %5, align 1
  %6 = getelementptr inbounds [3 x { i8*, i8 addrspace(1)* }], [3 x { i8*, i8 addrspace(1)* }]* %_11, i16 0, i16 1, i32 1
  store i8 addrspace(1)* bitcast (i1 (i32*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u32$GT$3fmt17h4fc4f96f0a2da0eaE" to i8 addrspace(1)*), i8 addrspace(1)** %6, align 1
  %7 = getelementptr inbounds [3 x { i8*, i8 addrspace(1)* }], [3 x { i8*, i8 addrspace(1)* }]* %_11, i16 0, i16 2, i32 0
  %8 = bitcast i8** %7 to i32**
  store i32* %_15, i32** %8, align 1
  %9 = getelementptr inbounds [3 x { i8*, i8 addrspace(1)* }], [3 x { i8*, i8 addrspace(1)* }]* %_11, i16 0, i16 2, i32 1
  store i8 addrspace(1)* bitcast (i1 (i32*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u32$GT$3fmt17h4fc4f96f0a2da0eaE" to i8 addrspace(1)*), i8 addrspace(1)** %9, align 1
  %10 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %formatter, i16 0, i32 11, i32 0
  %_4.0.i = load {}*, {}** %10, align 1, !noalias !781, !nonnull !568
  %11 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %formatter, i16 0, i32 11, i32 1
  %_4.1.i = load [3 x i16]*, [3 x i16]** %11, align 1, !noalias !781, !nonnull !568
  %12 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %12), !noalias !781
  %_4.sroa.0.0..sroa_cast5 = bitcast %"fmt::Arguments"* %_5.i to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8], i8*, [2 x i8], i8*, [2 x i8] }>* @alloc16571 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %_4.sroa.0.0..sroa_cast5, align 1
  %_4.sroa.4.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 1, i32 1
  store i16 3, i16* %_4.sroa.4.0..sroa_idx, align 1
  %_4.sroa.5.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 3, i32 0
  store i8* null, i8** %_4.sroa.5.0..sroa_idx, align 1
  %_4.sroa.69.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 5, i32 0
  %13 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %_4.sroa.69.0..sroa_idx to [3 x { i8*, i8 addrspace(1)* }]**
  store [3 x { i8*, i8 addrspace(1)* }]* %_11, [3 x { i8*, i8 addrspace(1)* }]** %13, align 1
  %_4.sroa.7.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 5, i32 1
  store i16 3, i16* %_4.sroa.7.0..sroa_idx, align 1
; call core::fmt::write
  %14 = call zeroext addrspace(1) i1 @_ZN4core3fmt5write17hf4cd163abe69055cE({}* nonnull align 1 %_4.0.i, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) %_4.1.i, %"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_5.i), !noalias !781
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 12, i8* nonnull %12), !noalias !781
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 12, i8* nonnull %0)
  ret i1 %14
}

; core::panicking::panic
; Function Attrs: cold noinline noreturn uwtable
define void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 %expr.0, i16 %expr.1, %"panic::Location"* noalias readonly align 1 dereferenceable(12) %0) unnamed_addr addrspace(1) #10 {
start:
  %_6 = alloca [1 x { [0 x i8]*, i16 }], align 1
  %_2 = alloca %"fmt::Arguments", align 1
  %1 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_2, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %1)
  %2 = bitcast [1 x { [0 x i8]*, i16 }]* %_6 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %2)
  %3 = getelementptr inbounds [1 x { [0 x i8]*, i16 }], [1 x { [0 x i8]*, i16 }]* %_6, i16 0, i16 0, i32 0
  store [0 x i8]* %expr.0, [0 x i8]** %3, align 1
  %4 = getelementptr inbounds [1 x { [0 x i8]*, i16 }], [1 x { [0 x i8]*, i16 }]* %_6, i16 0, i16 0, i32 1
  store i16 %expr.1, i16* %4, align 1
  %5 = bitcast %"fmt::Arguments"* %_2 to [1 x { [0 x i8]*, i16 }]**
  store [1 x { [0 x i8]*, i16 }]* %_6, [1 x { [0 x i8]*, i16 }]** %5, align 1, !alias.scope !784, !noalias !787
  %6 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_2, i16 0, i32 1, i32 1
  store i16 1, i16* %6, align 1, !alias.scope !784, !noalias !787
  %7 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_2, i16 0, i32 3, i32 0
  store i8* null, i8** %7, align 1, !alias.scope !784, !noalias !787
  %8 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_2, i16 0, i32 5, i32 0
  store [0 x { i8*, i8 addrspace(1)* }]* bitcast (<{ [0 x i8] }>* @alloc19125 to [0 x { i8*, i8 addrspace(1)* }]*), [0 x { i8*, i8 addrspace(1)* }]** %8, align 1, !alias.scope !784, !noalias !787
  %9 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_2, i16 0, i32 5, i32 1
  store i16 0, i16* %9, align 1, !alias.scope !784, !noalias !787
; call core::panicking::panic_fmt
  call addrspace(1) void @_ZN4core9panicking9panic_fmt17hb7ee2cb815ea49cfE(%"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_2, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) %0)
  unreachable
}

; core::panicking::panic_bounds_check
; Function Attrs: cold noinline noreturn uwtable
define void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %0, i16 %1, %"panic::Location"* noalias readonly align 1 dereferenceable(12) %2) unnamed_addr addrspace(1) #10 {
start:
  %_10 = alloca [2 x { i8*, i8 addrspace(1)* }], align 1
  %_3 = alloca %"fmt::Arguments", align 1
  %len = alloca i16, align 1
  %index = alloca i16, align 1
  store i16 %0, i16* %index, align 1
  store i16 %1, i16* %len, align 1
  %3 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_3, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %3)
  %4 = bitcast [2 x { i8*, i8 addrspace(1)* }]* %_10 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %4)
  %5 = bitcast [2 x { i8*, i8 addrspace(1)* }]* %_10 to i16**
  store i16* %len, i16** %5, align 1
  %6 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_10, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u16$GT$3fmt17ha65397985f1509e1E" to i8 addrspace(1)*), i8 addrspace(1)** %6, align 1
  %7 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_10, i16 0, i16 1, i32 0
  %8 = bitcast i8** %7 to i16**
  store i16* %index, i16** %8, align 1
  %9 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_10, i16 0, i16 1, i32 1
  store i8 addrspace(1)* bitcast (i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u16$GT$3fmt17ha65397985f1509e1E" to i8 addrspace(1)*), i8 addrspace(1)** %9, align 1
  %10 = bitcast %"fmt::Arguments"* %_3 to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8], i8*, [2 x i8] }>* @alloc16274 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %10, align 1, !alias.scope !790, !noalias !793
  %11 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_3, i16 0, i32 1, i32 1
  store i16 2, i16* %11, align 1, !alias.scope !790, !noalias !793
  %12 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_3, i16 0, i32 3, i32 0
  store i8* null, i8** %12, align 1, !alias.scope !790, !noalias !793
  %13 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_3, i16 0, i32 5, i32 0
  %14 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %13 to [2 x { i8*, i8 addrspace(1)* }]**
  store [2 x { i8*, i8 addrspace(1)* }]* %_10, [2 x { i8*, i8 addrspace(1)* }]** %14, align 1, !alias.scope !790, !noalias !793
  %15 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_3, i16 0, i32 5, i32 1
  store i16 2, i16* %15, align 1, !alias.scope !790, !noalias !793
; call core::panicking::panic_fmt
  call addrspace(1) void @_ZN4core9panicking9panic_fmt17hb7ee2cb815ea49cfE(%"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_3, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) %2)
  unreachable
}

; core::panicking::panic_fmt
; Function Attrs: cold noinline noreturn uwtable
define void @_ZN4core9panicking9panic_fmt17hb7ee2cb815ea49cfE(%"fmt::Arguments"* noalias nocapture dereferenceable(12) %fmt, %"panic::Location"* noalias readonly align 1 dereferenceable(12) %0) unnamed_addr addrspace(1) #10 {
start:
  %pi = alloca %"panic::PanicInfo", align 1
  %1 = getelementptr inbounds %"panic::PanicInfo", %"panic::PanicInfo"* %pi, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %1)
  %2 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %fmt, i16 0, i32 0, i16 0
  %3 = bitcast %"panic::PanicInfo"* %pi to {}**
  store {}* bitcast (<{ [0 x i8] }>* @alloc19125 to {}*), {}** %3, align 1, !alias.scope !796, !noalias !799
  %4 = getelementptr inbounds %"panic::PanicInfo", %"panic::PanicInfo"* %pi, i16 0, i32 1, i32 1
  store [3 x i16]* bitcast ({ void (%"panic::{{impl}}::internal_constructor::NoPayload"*) addrspace(1)*, i16, i16, i64 (%"panic::{{impl}}::internal_constructor::NoPayload"*) addrspace(1)* }* @vtable.c to [3 x i16]*), [3 x i16]** %4, align 1, !alias.scope !796, !noalias !799
  %5 = getelementptr inbounds %"panic::PanicInfo", %"panic::PanicInfo"* %pi, i16 0, i32 3
  store i8* %2, i8** %5, align 1, !alias.scope !796, !noalias !799
  %6 = getelementptr inbounds %"panic::PanicInfo", %"panic::PanicInfo"* %pi, i16 0, i32 5
  store %"panic::Location"* %0, %"panic::Location"** %6, align 1, !alias.scope !796, !noalias !799
  call addrspace(1) void @rust_begin_unwind(%"panic::PanicInfo"* noalias nonnull readonly align 1 dereferenceable(8) %pi)
  unreachable
}

; <core::sync::atomic::AtomicBool as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN67_$LT$core..sync..atomic..AtomicBool$u20$as$u20$core..fmt..Debug$GT$3fmt17hc57105eec88d022aE"(%"sync::atomic::AtomicBool"* nocapture readonly align 1 dereferenceable(1) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_6.i = getelementptr inbounds %"sync::atomic::AtomicBool", %"sync::atomic::AtomicBool"* %self, i16 0, i32 0, i16 0
  %0 = load atomic i8, i8* %_6.i seq_cst, align 1
  %1 = icmp eq i8 %0, 0
  br i1 %1, label %bb1.split.i.i, label %bb2.split.i.i

bb1.split.i.i:                                    ; preds = %start
; call core::fmt::Formatter::pad
  %2 = tail call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter3pad17h307fb261f2dc8a5eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc18725 to [0 x i8]*), i16 5), !noalias !802
  br label %"_ZN41_$LT$bool$u20$as$u20$core..fmt..Debug$GT$3fmt17hac99d466b6ddfefdE.exit"

bb2.split.i.i:                                    ; preds = %start
; call core::fmt::Formatter::pad
  %3 = tail call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter3pad17h307fb261f2dc8a5eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc18724 to [0 x i8]*), i16 4), !noalias !802
  br label %"_ZN41_$LT$bool$u20$as$u20$core..fmt..Debug$GT$3fmt17hac99d466b6ddfefdE.exit"

"_ZN41_$LT$bool$u20$as$u20$core..fmt..Debug$GT$3fmt17hac99d466b6ddfefdE.exit": ; preds = %bb1.split.i.i, %bb2.split.i.i
  %phi.call.i.i = phi i1 [ %2, %bb1.split.i.i ], [ %3, %bb2.split.i.i ]
  ret i1 %phi.call.i.i
}

; <core::fmt::builders::PadAdapter as core::fmt::Write>::write_str
; Function Attrs: uwtable
define zeroext i1 @"_ZN68_$LT$core..fmt..builders..PadAdapter$u20$as$u20$core..fmt..Write$GT$9write_str17he9c5f1e2d628a56cE"(%"fmt::builders::PadAdapter"* nocapture readonly align 1 dereferenceable(6) %self, [0 x i8]* noalias nonnull readonly align 1 %0, i16 %1) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_5.i = alloca %"str::pattern::CharSearcher", align 1
  %2 = icmp eq i16 %1, 0
  br i1 %2, label %bb12, label %bb4.lr.ph

bb4.lr.ph:                                        ; preds = %start
  %3 = getelementptr inbounds %"fmt::builders::PadAdapter", %"fmt::builders::PadAdapter"* %self, i16 0, i32 3
  %4 = bitcast %"fmt::builders::PadAdapter"* %self to {}**
  %5 = getelementptr inbounds %"fmt::builders::PadAdapter", %"fmt::builders::PadAdapter"* %self, i16 0, i32 1, i32 1
  %6 = bitcast [3 x i16]** %5 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %7 = getelementptr inbounds %"str::pattern::CharSearcher", %"str::pattern::CharSearcher"* %_5.i, i16 0, i32 0, i16 0
  %8 = bitcast %"str::pattern::CharSearcher"* %_5.i to [0 x i8]**
  %9 = getelementptr inbounds %"str::pattern::CharSearcher", %"str::pattern::CharSearcher"* %_5.i, i16 0, i32 1, i32 1
  %10 = getelementptr inbounds %"str::pattern::CharSearcher", %"str::pattern::CharSearcher"* %_5.i, i16 0, i32 3
  %11 = getelementptr inbounds %"str::pattern::CharSearcher", %"str::pattern::CharSearcher"* %_5.i, i16 0, i32 5
  %12 = getelementptr inbounds %"str::pattern::CharSearcher", %"str::pattern::CharSearcher"* %_5.i, i16 0, i32 7
  %13 = getelementptr inbounds %"str::pattern::CharSearcher", %"str::pattern::CharSearcher"* %_5.i, i16 0, i32 9
  %14 = getelementptr inbounds %"str::pattern::CharSearcher", %"str::pattern::CharSearcher"* %_5.i, i16 0, i32 11, i16 0
  %15 = bitcast i8* %14 to i32*
  br label %bb4

bb4:                                              ; preds = %bb4.lr.ph, %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E.exit"
  %s.sroa.0.045 = phi [0 x i8]* [ %0, %bb4.lr.ph ], [ %44, %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E.exit" ]
  %s.sroa.7.043 = phi i16 [ %1, %bb4.lr.ph ], [ %len.i.i.i.i, %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E.exit" ]
  %16 = load i8*, i8** %3, align 1, !nonnull !568
  %17 = load i8, i8* %16, align 1, !range !87
  %_6 = icmp eq i8 %17, 0
  br i1 %_6, label %bb16, label %bb6

bb6:                                              ; preds = %bb4
  %_9.0 = load {}*, {}** %4, align 1, !nonnull !568
  %_9.117 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %6, align 1, !nonnull !568
  %18 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_9.117, i16 3
  %19 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %18, align 1, !invariant.load !568, !nonnull !568
  %_8 = call zeroext addrspace(1) i1 %19({}* nonnull align 1 %_9.0, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc18634 to [0 x i8]*), i16 4)
  br i1 %_8, label %bb12, label %bb16

bb12:                                             ; preds = %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E.exit", %bb6, %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17he6b928d46e35b1dfE.exit", %start
  %.0 = phi i1 [ false, %start ], [ true, %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17he6b928d46e35b1dfE.exit" ], [ true, %bb6 ], [ false, %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E.exit" ]
  ret i1 %.0

bb16:                                             ; preds = %bb6, %bb4
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 18, i8* nonnull %7), !noalias !807
  store [0 x i8]* %s.sroa.0.045, [0 x i8]** %8, align 1, !alias.scope !810, !noalias !813
  store i16 %s.sroa.7.043, i16* %9, align 1, !alias.scope !810, !noalias !813
  store i16 0, i16* %10, align 1, !alias.scope !810, !noalias !813
  store i16 %s.sroa.7.043, i16* %11, align 1, !alias.scope !810, !noalias !813
  store i32 10, i32* %12, align 1, !alias.scope !810, !noalias !813
  store i16 1, i16* %13, align 1, !alias.scope !810, !noalias !813
  store i32 10, i32* %15, align 1, !alias.scope !810, !noalias !813
; call core::slice::memchr::memchr
  %20 = call addrspace(1) { i8, i16 } @_ZN4core5slice6memchr6memchr17he405907f4f903a64E(i8 10, [0 x i8]* noalias nonnull readonly align 1 %s.sroa.0.045, i16 %s.sroa.7.043), !noalias !815
  %.fca.0.extract7.i.i42 = extractvalue { i8, i16 } %20, 0
  %21 = and i8 %.fca.0.extract7.i.i42, 1
  %22 = icmp eq i8 %21, 0
  br i1 %22, label %bb13.i.i, label %bb14.i.i

bb13.i.i:                                         ; preds = %bb27.i.bb5.i_crit_edge.i, %bb16
  %_56.i.i = load i16, i16* %11, align 1, !noalias !818
  store i16 %_56.i.i, i16* %10, align 1, !noalias !818
  br label %bb18

bb14.i.i:                                         ; preds = %bb16, %bb27.i.bb5.i_crit_edge.i
  %23 = phi { i8, i16 } [ %31, %bb27.i.bb5.i_crit_edge.i ], [ %20, %bb16 ]
  %.fca.1.extract8.i.i = extractvalue { i8, i16 } %23, 1
  %_27.i.i = add i16 %.fca.1.extract8.i.i, 1
  %24 = load i16, i16* %10, align 1, !noalias !818
  %25 = add i16 %_27.i.i, %24
  store i16 %25, i16* %10, align 1, !noalias !818
  %_31.i.i = load i16, i16* %13, align 1, !noalias !818
  %_29.i.i = icmp ult i16 %25, %_31.i.i
  br i1 %_29.i.i, label %bb14.bb27_crit_edge.i.i, label %bb16.i.i

bb14.bb27_crit_edge.i.i:                          ; preds = %bb14.i.i
  %_7.1.pre.i.i = load i16, i16* %9, align 1, !noalias !818
  br label %bb27.i.i

bb16.i.i:                                         ; preds = %bb14.i.i
  %found_char.i.i = sub i16 %25, %_31.i.i
  %_38.1.i.i = load i16, i16* %9, align 1, !noalias !818
  %_7.i.i27.i.i = icmp ult i16 %_38.1.i.i, %25
  br i1 %_7.i.i27.i.i, label %bb27.i.i, label %bb20.i.i

bb20.i.i:                                         ; preds = %bb16.i.i
  %_38.0.i.i = load [0 x i8]*, [0 x i8]** %8, align 1, !noalias !818, !nonnull !568
  %26 = getelementptr inbounds [0 x i8], [0 x i8]* %_38.0.i.i, i16 0, i16 %found_char.i.i
  %_8.i.i.i.i = icmp ugt i16 %_31.i.i, 4
  br i1 %_8.i.i.i.i, label %bb5.i.i.i.i, label %bb3.i.i.i.i.i

bb5.i.i.i.i:                                      ; preds = %bb20.i.i
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %_31.i.i, i16 4, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18763 to %"panic::Location"*)), !noalias !815
  unreachable

bb3.i.i.i.i.i:                                    ; preds = %bb20.i.i
  %_8.i.i.i.i.i = icmp eq i8* %26, %14
  br i1 %_8.i.i.i.i.i, label %bb20, label %"_ZN4core3cmp5impls69_$LT$impl$u20$core..cmp..PartialEq$LT$$RF$B$GT$$u20$for$u20$$RF$A$GT$2eq17he6a3a03f5f3bc6b7E.exit.i.i"

"_ZN4core3cmp5impls69_$LT$impl$u20$core..cmp..PartialEq$LT$$RF$B$GT$$u20$for$u20$$RF$A$GT$2eq17he6a3a03f5f3bc6b7E.exit.i.i": ; preds = %bb3.i.i.i.i.i
  %_15.i.i.i.i.i = call addrspace(1) i32 @memcmp(i8* nonnull %26, i8* nonnull %14, i16 %_31.i.i) #20, !noalias !815
  %27 = icmp eq i32 %_15.i.i.i.i.i, 0
  br i1 %27, label %bb20, label %bb27.i.i

bb27.i.i:                                         ; preds = %"_ZN4core3cmp5impls69_$LT$impl$u20$core..cmp..PartialEq$LT$$RF$B$GT$$u20$for$u20$$RF$A$GT$2eq17he6a3a03f5f3bc6b7E.exit.i.i", %bb16.i.i, %bb14.bb27_crit_edge.i.i
  %_7.1.i.i = phi i16 [ %_7.1.pre.i.i, %bb14.bb27_crit_edge.i.i ], [ %_38.1.i.i, %"_ZN4core3cmp5impls69_$LT$impl$u20$core..cmp..PartialEq$LT$$RF$B$GT$$u20$for$u20$$RF$A$GT$2eq17he6a3a03f5f3bc6b7E.exit.i.i" ], [ %_38.1.i.i, %bb16.i.i ]
  %_10.i.i = load i16, i16* %11, align 1, !noalias !818
  %_4.i.i.i.i25 = icmp ult i16 %_10.i.i, %25
  %_7.i.i.i.i = icmp ult i16 %_7.1.i.i, %_10.i.i
  %or.cond.i.i.i.i26 = or i1 %_4.i.i.i.i25, %_7.i.i.i.i
  br i1 %or.cond.i.i.i.i26, label %bb18, label %bb27.i.bb5.i_crit_edge.i

bb27.i.bb5.i_crit_edge.i:                         ; preds = %bb27.i.i
  %_7.0.i.pre.i = load [0 x i8]*, [0 x i8]** %8, align 1, !noalias !818
  %28 = getelementptr inbounds [0 x i8], [0 x i8]* %_7.0.i.pre.i, i16 0, i16 %25
  %_7.i.i.i.i.i = sub i16 %_10.i.i, %25
  %29 = bitcast i8* %28 to [0 x i8]*
  %_20.i.i = add i16 %_31.i.i, -1
  %30 = getelementptr inbounds %"str::pattern::CharSearcher", %"str::pattern::CharSearcher"* %_5.i, i16 0, i32 11, i16 %_20.i.i
  %last_byte.i.i = load i8, i8* %30, align 1, !noalias !818
; call core::slice::memchr::memchr
  %31 = call addrspace(1) { i8, i16 } @_ZN4core5slice6memchr6memchr17he405907f4f903a64E(i8 %last_byte.i.i, [0 x i8]* noalias nonnull readonly align 1 %29, i16 %_7.i.i.i.i.i), !noalias !815
  %.fca.0.extract7.i.i = extractvalue { i8, i16 } %31, 0
  %32 = and i8 %.fca.0.extract7.i.i, 1
  %33 = icmp eq i8 %32, 0
  br i1 %33, label %bb13.i.i, label %bb14.i.i

bb18:                                             ; preds = %bb27.i.i, %bb13.i.i
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 18, i8* nonnull %7), !noalias !807
  %34 = load i8*, i8** %3, align 1, !nonnull !568
  store i8 0, i8* %34, align 1
  br label %bb22

bb20:                                             ; preds = %"_ZN4core3cmp5impls69_$LT$impl$u20$core..cmp..PartialEq$LT$$RF$B$GT$$u20$for$u20$$RF$A$GT$2eq17he6a3a03f5f3bc6b7E.exit.i.i", %bb3.i.i.i.i.i
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 18, i8* nonnull %7), !noalias !807
  %35 = load i8*, i8** %3, align 1, !nonnull !568
  store i8 1, i8* %35, align 1
  %36 = add i16 %found_char.i.i, 1
  br label %bb22

bb22:                                             ; preds = %bb18, %bb20
  %split.0 = phi i16 [ %s.sroa.7.043, %bb18 ], [ %36, %bb20 ]
  %_26.0 = load {}*, {}** %4, align 1, !nonnull !568
  %_26.116 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %6, align 1, !nonnull !568
  %_4.i.i.i.i18 = icmp eq i16 %split.0, 0
  %_6.i.i.i.i19 = icmp eq i16 %s.sroa.7.043, %split.0
  %or.cond.i.i.i.i20 = or i1 %_4.i.i.i.i18, %_6.i.i.i.i19
  br i1 %or.cond.i.i.i.i20, label %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17he6b928d46e35b1dfE.exit", label %bb6.i.i.i.i22

bb6.i.i.i.i22:                                    ; preds = %bb22
  %_3.i.i.i.i.i.i21 = icmp ugt i16 %s.sroa.7.043, %split.0
  br i1 %_3.i.i.i.i.i.i21, label %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i24", label %bb1.i.i

"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i24": ; preds = %bb6.i.i.i.i22
  %37 = getelementptr inbounds [0 x i8], [0 x i8]* %s.sroa.0.045, i16 0, i16 %split.0
  %b.i.i.i.i23 = load i8, i8* %37, align 1, !alias.scope !819
  %38 = icmp sgt i8 %b.i.i.i.i23, -65
  br i1 %38, label %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17he6b928d46e35b1dfE.exit", label %bb1.i.i

bb1.i.i:                                          ; preds = %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i24", %bb6.i.i.i.i22
; call core::str::slice_error_fail
  call addrspace(1) void @_ZN4core3str16slice_error_fail17h31442c6f648259d9E([0 x i8]* noalias nonnull readonly align 1 %s.sroa.0.045, i16 %s.sroa.7.043, i16 0, i16 %split.0, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18840 to %"panic::Location"*)), !noalias !828
  unreachable

"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17he6b928d46e35b1dfE.exit": ; preds = %bb22, %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i24"
  %39 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_26.116, i16 3
  %40 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %39, align 1, !invariant.load !568, !nonnull !568
  %_25 = call zeroext addrspace(1) i1 %40({}* nonnull align 1 %_26.0, [0 x i8]* noalias nonnull readonly align 1 %s.sroa.0.045, i16 %split.0)
  br i1 %_25, label %bb12, label %bb26

bb26:                                             ; preds = %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17he6b928d46e35b1dfE.exit"
  br i1 %or.cond.i.i.i.i20, label %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E.exit", label %bb6.i.i.i.i

bb6.i.i.i.i:                                      ; preds = %bb26
  %_3.i.i.i.i.i.i = icmp ugt i16 %s.sroa.7.043, %split.0
  br i1 %_3.i.i.i.i.i.i, label %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i", label %bb1.i.i.i

"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i": ; preds = %bb6.i.i.i.i
  %41 = getelementptr inbounds [0 x i8], [0 x i8]* %s.sroa.0.045, i16 0, i16 %split.0
  %b.i.i.i.i = load i8, i8* %41, align 1, !alias.scope !835
  %42 = icmp sgt i8 %b.i.i.i.i, -65
  br i1 %42, label %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E.exit", label %bb1.i.i.i

bb1.i.i.i:                                        ; preds = %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i", %bb6.i.i.i.i
; call core::str::slice_error_fail
  call addrspace(1) void @_ZN4core3str16slice_error_fail17h31442c6f648259d9E([0 x i8]* noalias nonnull readonly align 1 %s.sroa.0.045, i16 %s.sroa.7.043, i16 %split.0, i16 %s.sroa.7.043, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18842 to %"panic::Location"*)), !noalias !842
  unreachable

"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E.exit": ; preds = %bb26, %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i"
  %43 = getelementptr inbounds [0 x i8], [0 x i8]* %s.sroa.0.045, i16 0, i16 %split.0
  %len.i.i.i.i = sub i16 %s.sroa.7.043, %split.0
  %44 = bitcast i8* %43 to [0 x i8]*
  %45 = icmp eq i16 %len.i.i.i.i, 0
  br i1 %45, label %bb12, label %bb4
}

; core::fmt::builders::DebugStruct::field
; Function Attrs: uwtable
define nonnull align 1 dereferenceable(4) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* align 1 dereferenceable(4) %0, [0 x i8]* noalias nonnull readonly align 1 %1, i16 %2, {}* nonnull align 1 %3, [3 x i16]* noalias readonly align 1 dereferenceable(6) %4) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %writer.i.i = alloca %"fmt::Formatter", align 1
  %state.i.i = alloca i8, align 1
  %slot.i.i = alloca %"option::Option<fmt::builders::PadAdapter>", align 1
  %5 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %0, i16 0, i32 3
  %6 = load i8, i8* %5, align 1, !range !87
  %_6 = icmp eq i8 %6, 0
  br i1 %_6, label %bb3.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h739d3488f2119409E.exit"

bb3.i:                                            ; preds = %start
  %7 = bitcast %"fmt::builders::DebugStruct"* %0 to i32**
  %_21.i.i.i = load i32*, i32** %7, align 1, !alias.scope !847, !noalias !850, !nonnull !568
  %_3.i.i.i.i = load i32, i32* %_21.i.i.i, align 1, !alias.scope !855, !noalias !858
  %_2.i.i.i.i = and i32 %_3.i.i.i.i, 4
  %8 = icmp eq i32 %_2.i.i.i.i, 0
  %9 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %0, i16 0, i32 5
  %10 = load i8, i8* %9, align 1, !range !87, !noalias !850
  %_6.i.i = icmp eq i8 %10, 0
  %11 = bitcast i32* %_21.i.i.i to %"fmt::Formatter"*
  br i1 %8, label %bb2.i.i, label %bb3.i.i

bb2.i.i:                                          ; preds = %bb3.i
  %..i.i = select i1 %_6.i.i, [0 x i8]* bitcast (<{ [3 x i8] }>* @alloc18643 to [0 x i8]*), [0 x i8]* bitcast (<{ [2 x i8] }>* @alloc18672 to [0 x i8]*)
  %.20.i.i = select i1 %_6.i.i, i16 3, i16 2
  %12 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %11, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %12, align 1, !noalias !859, !nonnull !568
  %13 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %11, i16 0, i32 11, i32 1
  %14 = bitcast [3 x i16]** %13 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %14, align 1, !noalias !859, !nonnull !568
  %15 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %16 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %15, align 1, !invariant.load !568, !noalias !859, !nonnull !568
  %17 = tail call zeroext addrspace(1) i1 %16({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 %..i.i, i16 %.20.i.i), !noalias !850
  br i1 %17, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h739d3488f2119409E.exit", label %bb46.i.i

bb3.i.i:                                          ; preds = %bb3.i
  br i1 %_6.i.i, label %bb5.i.i, label %bb15.i.i

bb5.i.i:                                          ; preds = %bb3.i.i
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %11, i16 0, i32 11, i32 0
  %_3.0.i23.i.i = load {}*, {}** %18, align 1, !noalias !862, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %11, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i24.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !noalias !862, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i24.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !noalias !862, !nonnull !568
  %23 = tail call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i23.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [3 x i8] }>* @alloc18645 to [0 x i8]*), i16 3), !noalias !850
  br i1 %23, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h739d3488f2119409E.exit", label %bb5.i.i.bb15.i.i_crit_edge

bb5.i.i.bb15.i.i_crit_edge:                       ; preds = %bb5.i.i
  %.phi.trans.insert = bitcast %"fmt::builders::DebugStruct"* %0 to %"fmt::Formatter"**
  %_20.i.i.pre = load %"fmt::Formatter"*, %"fmt::Formatter"** %.phi.trans.insert, align 1, !noalias !850
  br label %bb15.i.i

bb15.i.i:                                         ; preds = %bb3.i.i, %bb5.i.i.bb15.i.i_crit_edge
  %_20.i.i = phi %"fmt::Formatter"* [ %_20.i.i.pre, %bb5.i.i.bb15.i.i_crit_edge ], [ %11, %bb3.i.i ]
  %24 = getelementptr inbounds %"option::Option<fmt::builders::PadAdapter>", %"option::Option<fmt::builders::PadAdapter>"* %slot.i.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %24), !noalias !850
  %25 = bitcast %"option::Option<fmt::builders::PadAdapter>"* %slot.i.i to {}**
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 1, i8* nonnull %state.i.i), !noalias !850
  store i8 1, i8* %state.i.i, align 1, !noalias !850
  %26 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 19, i8* nonnull %26), !noalias !850
  %27 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_20.i.i, i16 0, i32 11, i32 0
  %_9.0.i.i.i.i = load {}*, {}** %27, align 1, !noalias !865, !nonnull !568
  %28 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_20.i.i, i16 0, i32 11, i32 1
  %_9.1.i.i.i.i = load [3 x i16]*, [3 x i16]** %28, align 1, !noalias !865, !nonnull !568
  store {}* %_9.0.i.i.i.i, {}** %25, align 1, !noalias !870
  %_5.sroa.4.0..sroa_idx.i.i.i.i.i = getelementptr inbounds %"option::Option<fmt::builders::PadAdapter>", %"option::Option<fmt::builders::PadAdapter>"* %slot.i.i, i16 0, i32 0, i16 2
  %_5.sroa.4.0..sroa_cast.i.i.i.i.i = bitcast i8* %_5.sroa.4.0..sroa_idx.i.i.i.i.i to [3 x i16]**
  store [3 x i16]* %_9.1.i.i.i.i, [3 x i16]** %_5.sroa.4.0..sroa_cast.i.i.i.i.i, align 1, !noalias !870
  %_5.sroa.5.0..sroa_idx.i.i.i.i.i = getelementptr inbounds %"option::Option<fmt::builders::PadAdapter>", %"option::Option<fmt::builders::PadAdapter>"* %slot.i.i, i16 0, i32 0, i16 4
  %_5.sroa.5.0..sroa_cast.i.i.i.i.i = bitcast i8* %_5.sroa.5.0..sroa_idx.i.i.i.i.i to i8**
  store i8* %state.i.i, i8** %_5.sroa.5.0..sroa_cast.i.i.i.i.i, align 1, !noalias !870
  %29 = bitcast %"fmt::Formatter"* %_20.i.i to i32*
  %_10.i.i.i.i = load i32, i32* %29, align 1, !noalias !865
  %30 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_20.i.i, i16 0, i32 3
  %_11.i.i.i.i = load i32, i32* %30, align 1, !range !690, !noalias !865
  %31 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_20.i.i, i16 0, i32 5
  %_12.i.i.i.i = load i8, i8* %31, align 1, !range !696, !noalias !865
  %32 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_20.i.i, i16 0, i32 7, i32 0
  %33 = load i8, i8* %32, align 1, !range !87, !noalias !865
  %34 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_20.i.i, i16 0, i32 7, i32 1
  %_13.1.i.i.i.i = load i16, i16* %34, align 1, !noalias !865
  %35 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_20.i.i, i16 0, i32 9, i32 0
  %36 = load i8, i8* %35, align 1, !range !87, !noalias !865
  %37 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_20.i.i, i16 0, i32 9, i32 1
  %_14.1.i.i.i.i = load i16, i16* %37, align 1, !noalias !865
  %38 = bitcast %"fmt::Formatter"* %writer.i.i to i32*
  store i32 %_10.i.i.i.i, i32* %38, align 1, !alias.scope !873, !noalias !850
  %39 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 3
  store i32 %_11.i.i.i.i, i32* %39, align 1, !alias.scope !873, !noalias !850
  %40 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 5
  store i8 %_12.i.i.i.i, i8* %40, align 1, !alias.scope !873, !noalias !850
  %41 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 7, i32 0
  store i8 %33, i8* %41, align 1, !alias.scope !873, !noalias !850
  %42 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 7, i32 1
  store i16 %_13.1.i.i.i.i, i16* %42, align 1, !alias.scope !873, !noalias !850
  %43 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 9, i32 0
  store i8 %36, i8* %43, align 1, !alias.scope !873, !noalias !850
  %44 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 9, i32 1
  store i16 %_14.1.i.i.i.i, i16* %44, align 1, !alias.scope !873, !noalias !850
  %45 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 11, i32 0
  %46 = bitcast {}** %45 to i8**
  store i8* %24, i8** %46, align 1, !alias.scope !873, !noalias !850
  %47 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 11, i32 1
  store [3 x i16]* bitcast ({ void (%"fmt::builders::PadAdapter"*) addrspace(1)*, i16, i16, i1 (%"fmt::builders::PadAdapter"*, [0 x i8]*, i16) addrspace(1)*, i1 (%"fmt::builders::PadAdapter"*, i32) addrspace(1)*, i1 (%"fmt::builders::PadAdapter"*, %"fmt::Arguments"*) addrspace(1)* }* @vtable.e to [3 x i16]*), [3 x i16]** %47, align 1, !alias.scope !873, !noalias !850
  %48 = bitcast [3 x i16]** %47 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %49 = bitcast %"option::Option<fmt::builders::PadAdapter>"* %slot.i.i to %"fmt::builders::PadAdapter"*
; call <core::fmt::builders::PadAdapter as core::fmt::Write>::write_str
  %50 = call zeroext addrspace(1) i1 @"_ZN68_$LT$core..fmt..builders..PadAdapter$u20$as$u20$core..fmt..Write$GT$9write_str17he9c5f1e2d628a56cE"(%"fmt::builders::PadAdapter"* nonnull align 1 %49, [0 x i8]* noalias nonnull readonly align 1 %1, i16 %2), !noalias !850
  br i1 %50, label %bb25.i.i, label %bb20.i.i

bb20.i.i:                                         ; preds = %bb15.i.i
; call <core::fmt::builders::PadAdapter as core::fmt::Write>::write_str
  %51 = call zeroext addrspace(1) i1 @"_ZN68_$LT$core..fmt..builders..PadAdapter$u20$as$u20$core..fmt..Write$GT$9write_str17he9c5f1e2d628a56cE"(%"fmt::builders::PadAdapter"* nonnull align 1 %49, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc15924 to [0 x i8]*), i16 2), !noalias !850
  br i1 %51, label %bb25.i.i, label %bb28.i.i

bb25.i.i:                                         ; preds = %bb28.i.i, %bb20.i.i, %bb15.i.i
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 19, i8* nonnull %26), !noalias !850
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 1, i8* nonnull %state.i.i), !noalias !850
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %24), !noalias !850
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h739d3488f2119409E.exit"

bb28.i.i:                                         ; preds = %bb20.i.i
  %52 = getelementptr inbounds [3 x i16], [3 x i16]* %4, i16 0, i16 3
  %53 = bitcast i16* %52 to i1 ({}*, %"fmt::Formatter"*) addrspace(1)**
  %54 = load i1 ({}*, %"fmt::Formatter"*) addrspace(1)*, i1 ({}*, %"fmt::Formatter"*) addrspace(1)** %53, align 1, !invariant.load !568, !noalias !850, !nonnull !568
  %_46.i.i = call zeroext addrspace(1) i1 %54({}* nonnull align 1 %3, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %writer.i.i), !noalias !850
  br i1 %_46.i.i, label %bb25.i.i, label %bb35.i.i

bb35.i.i:                                         ; preds = %bb28.i.i
  %_3.0.i27.i.i = load {}*, {}** %45, align 1, !noalias !874, !nonnull !568
  %_3.11.i28.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %48, align 1, !noalias !874, !nonnull !568
  %55 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i28.i.i, i16 3
  %56 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %55, align 1, !invariant.load !568, !noalias !874, !nonnull !568
  %57 = call zeroext addrspace(1) i1 %56({}* nonnull align 1 %_3.0.i27.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18677 to [0 x i8]*), i16 2), !noalias !850
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 19, i8* nonnull %26), !noalias !850
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 1, i8* nonnull %state.i.i), !noalias !850
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %24), !noalias !850
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h739d3488f2119409E.exit"

bb46.i.i:                                         ; preds = %bb2.i.i
  %58 = bitcast %"fmt::builders::DebugStruct"* %0 to %"fmt::Formatter"**
  %_72.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %58, align 1, !noalias !850, !nonnull !568
  %59 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_72.i.i, i16 0, i32 11, i32 0
  %_3.0.i25.i.i = load {}*, {}** %59, align 1, !noalias !877, !nonnull !568
  %60 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_72.i.i, i16 0, i32 11, i32 1
  %61 = bitcast [3 x i16]** %60 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i26.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %61, align 1, !noalias !877, !nonnull !568
  %62 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i26.i.i, i16 3
  %63 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %62, align 1, !invariant.load !568, !noalias !877, !nonnull !568
  %64 = tail call zeroext addrspace(1) i1 %63({}* nonnull align 1 %_3.0.i25.i.i, [0 x i8]* noalias nonnull readonly align 1 %1, i16 %2), !noalias !850
  br i1 %64, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h739d3488f2119409E.exit", label %bb54.i.i

bb54.i.i:                                         ; preds = %bb46.i.i
  %_81.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %58, align 1, !noalias !850, !nonnull !568
  %65 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_81.i.i, i16 0, i32 11, i32 0
  %_3.0.i21.i.i = load {}*, {}** %65, align 1, !noalias !880, !nonnull !568
  %66 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_81.i.i, i16 0, i32 11, i32 1
  %67 = bitcast [3 x i16]** %66 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i22.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %67, align 1, !noalias !880, !nonnull !568
  %68 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i22.i.i, i16 3
  %69 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %68, align 1, !invariant.load !568, !noalias !880, !nonnull !568
  %70 = tail call zeroext addrspace(1) i1 %69({}* nonnull align 1 %_3.0.i21.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc15924 to [0 x i8]*), i16 2), !noalias !850
  br i1 %70, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h739d3488f2119409E.exit", label %bb61.i.i

bb61.i.i:                                         ; preds = %bb54.i.i
  %_90.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %58, align 1, !noalias !850, !nonnull !568
  %71 = getelementptr inbounds [3 x i16], [3 x i16]* %4, i16 0, i16 3
  %72 = bitcast i16* %71 to i1 ({}*, %"fmt::Formatter"*) addrspace(1)**
  %73 = load i1 ({}*, %"fmt::Formatter"*) addrspace(1)*, i1 ({}*, %"fmt::Formatter"*) addrspace(1)** %72, align 1, !invariant.load !568, !noalias !850, !nonnull !568
  %74 = tail call zeroext addrspace(1) i1 %73({}* nonnull align 1 %3, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %_90.i.i), !noalias !850
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h739d3488f2119409E.exit"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h739d3488f2119409E.exit": ; preds = %start, %bb2.i.i, %bb5.i.i, %bb25.i.i, %bb35.i.i, %bb46.i.i, %bb54.i.i, %bb61.i.i
  %.0.i = phi i1 [ true, %start ], [ %57, %bb35.i.i ], [ true, %bb25.i.i ], [ %74, %bb61.i.i ], [ true, %bb5.i.i ], [ true, %bb2.i.i ], [ true, %bb46.i.i ], [ true, %bb54.i.i ]
  %75 = zext i1 %.0.i to i8
  store i8 %75, i8* %5, align 1
  %76 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %0, i16 0, i32 5
  store i8 1, i8* %76, align 1
  ret %"fmt::builders::DebugStruct"* %0
}

; core::fmt::builders::DebugStruct::finish_non_exhaustive
; Function Attrs: uwtable
define zeroext i1 @_ZN4core3fmt8builders11DebugStruct21finish_non_exhaustive17haf6eb62d9a7f1a5fE(%"fmt::builders::DebugStruct"* align 1 dereferenceable(4) %0) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %state.i.i = alloca i8, align 1
  %slot.i.i = alloca %"option::Option<fmt::builders::PadAdapter>", align 1
  %1 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %0, i16 0, i32 3
  %2 = load i8, i8* %1, align 1, !range !87
  %_3 = icmp eq i8 %2, 0
  br i1 %_3, label %bb3.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hd86622b263c9a75bE.exit"

bb3.i:                                            ; preds = %start
  %3 = bitcast %"fmt::builders::DebugStruct"* %0 to i32**
  %_21.i.i.i = load i32*, i32** %3, align 1, !alias.scope !883, !nonnull !568
  %_3.i.i.i.i = load i32, i32* %_21.i.i.i, align 1, !alias.scope !886, !noalias !883
  %_2.i.i.i.i = and i32 %_3.i.i.i.i, 4
  %4 = icmp eq i32 %_2.i.i.i.i, 0
  %5 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %0, i16 0, i32 5
  %6 = load i8, i8* %5, align 1, !range !87
  %_6.i.i = icmp ne i8 %6, 0
  %7 = bitcast i32* %_21.i.i.i to %"fmt::Formatter"*
  br i1 %4, label %bb2.i.i, label %bb3.i.i

bb2.i.i:                                          ; preds = %bb3.i
  %8 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %7, i16 0, i32 11, i32 0
  %_3.0.i19.i.i = load {}*, {}** %8, align 1, !nonnull !568
  %9 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %7, i16 0, i32 11, i32 1
  %10 = bitcast [3 x i16]** %9 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i20.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %10, align 1, !nonnull !568
  %11 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i20.i.i, i16 3
  %12 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %11, align 1, !invariant.load !568, !nonnull !568
  br i1 %_6.i.i, label %bb26.i.i, label %bb25.i.i

bb3.i.i:                                          ; preds = %bb3.i
  br i1 %_6.i.i, label %bb15.i.i, label %bb5.i.i

bb5.i.i:                                          ; preds = %bb3.i.i
  %13 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %7, i16 0, i32 11, i32 0
  %_3.0.i12.i.i = load {}*, {}** %13, align 1, !noalias !889, !nonnull !568
  %14 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %7, i16 0, i32 11, i32 1
  %15 = bitcast [3 x i16]** %14 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i13.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %15, align 1, !noalias !889, !nonnull !568
  %16 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i13.i.i, i16 3
  %17 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %16, align 1, !invariant.load !568, !noalias !889, !nonnull !568
  %18 = tail call zeroext addrspace(1) i1 %17({}* nonnull align 1 %_3.0.i12.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [3 x i8] }>* @alloc18645 to [0 x i8]*), i16 3)
  br i1 %18, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hd86622b263c9a75bE.exit", label %bb5.bb15_crit_edge.i.i

bb5.bb15_crit_edge.i.i:                           ; preds = %bb5.i.i
  %19 = bitcast %"fmt::builders::DebugStruct"* %0 to %"fmt::Formatter"**
  %_20.pre.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %19, align 1
  br label %bb15.i.i

bb15.i.i:                                         ; preds = %bb5.bb15_crit_edge.i.i, %bb3.i.i
  %_20.i.i = phi %"fmt::Formatter"* [ %_20.pre.i.i, %bb5.bb15_crit_edge.i.i ], [ %7, %bb3.i.i ]
  %20 = getelementptr inbounds %"option::Option<fmt::builders::PadAdapter>", %"option::Option<fmt::builders::PadAdapter>"* %slot.i.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %20)
  %21 = bitcast %"option::Option<fmt::builders::PadAdapter>"* %slot.i.i to {}**
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 1, i8* nonnull %state.i.i)
  store i8 1, i8* %state.i.i, align 1
  %22 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_20.i.i, i16 0, i32 11, i32 0
  %_9.0.i.i.i.i = load {}*, {}** %22, align 1, !noalias !892, !nonnull !568
  %23 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_20.i.i, i16 0, i32 11, i32 1
  %_9.1.i.i.i.i = load [3 x i16]*, [3 x i16]** %23, align 1, !noalias !892, !nonnull !568
  store {}* %_9.0.i.i.i.i, {}** %21, align 1, !noalias !897
  %_5.sroa.4.0..sroa_idx.i.i.i.i.i = getelementptr inbounds %"option::Option<fmt::builders::PadAdapter>", %"option::Option<fmt::builders::PadAdapter>"* %slot.i.i, i16 0, i32 0, i16 2
  %_5.sroa.4.0..sroa_cast.i.i.i.i.i = bitcast i8* %_5.sroa.4.0..sroa_idx.i.i.i.i.i to [3 x i16]**
  store [3 x i16]* %_9.1.i.i.i.i, [3 x i16]** %_5.sroa.4.0..sroa_cast.i.i.i.i.i, align 1, !noalias !897
  %_5.sroa.5.0..sroa_idx.i.i.i.i.i = getelementptr inbounds %"option::Option<fmt::builders::PadAdapter>", %"option::Option<fmt::builders::PadAdapter>"* %slot.i.i, i16 0, i32 0, i16 4
  %_5.sroa.5.0..sroa_cast.i.i.i.i.i = bitcast i8* %_5.sroa.5.0..sroa_idx.i.i.i.i.i to i8**
  store i8* %state.i.i, i8** %_5.sroa.5.0..sroa_cast.i.i.i.i.i, align 1, !noalias !897
  %24 = bitcast %"option::Option<fmt::builders::PadAdapter>"* %slot.i.i to %"fmt::builders::PadAdapter"*
; call <core::fmt::builders::PadAdapter as core::fmt::Write>::write_str
  %25 = call zeroext addrspace(1) i1 @"_ZN68_$LT$core..fmt..builders..PadAdapter$u20$as$u20$core..fmt..Write$GT$9write_str17he9c5f1e2d628a56cE"(%"fmt::builders::PadAdapter"* nonnull align 1 %24, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [3 x i8] }>* @alloc18646 to [0 x i8]*), i16 3)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 1, i8* nonnull %state.i.i)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %20)
  br i1 %25, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hd86622b263c9a75bE.exit", label %bb43.i.i

bb25.i.i:                                         ; preds = %bb2.i.i
  %26 = tail call zeroext addrspace(1) i1 %12({}* nonnull align 1 %_3.0.i19.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc18648 to [0 x i8]*), i16 5)
  br i1 %26, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hd86622b263c9a75bE.exit", label %bb43.i.i

bb26.i.i:                                         ; preds = %bb2.i.i
  %27 = tail call zeroext addrspace(1) i1 %12({}* nonnull align 1 %_3.0.i19.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc18647 to [0 x i8]*), i16 4)
  br i1 %27, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hd86622b263c9a75bE.exit", label %bb43.i.i

bb43.i.i:                                         ; preds = %bb26.i.i, %bb25.i.i, %bb15.i.i
  %_21.i16.i.i = load i32*, i32** %3, align 1, !nonnull !568
  %_3.i.i17.i.i = load i32, i32* %_21.i16.i.i, align 1, !alias.scope !900, !noalias !903
  %_2.i.i18.i.i = and i32 %_3.i.i17.i.i, 4
  %28 = icmp eq i32 %_2.i.i18.i.i, 0
  %_61.cast.i.i = bitcast i32* %_21.i16.i.i to %"fmt::Formatter"*
  %29 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_61.cast.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %29, align 1, !nonnull !568
  %30 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_61.cast.i.i, i16 0, i32 11, i32 1
  %31 = bitcast [3 x i16]** %30 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %31, align 1, !nonnull !568
  %32 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %33 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %32, align 1, !invariant.load !568, !nonnull !568
  br i1 %28, label %bb45.i.i, label %bb46.i.i

bb45.i.i:                                         ; preds = %bb43.i.i
  %34 = call zeroext addrspace(1) i1 %33({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hd86622b263c9a75bE.exit"

bb46.i.i:                                         ; preds = %bb43.i.i
  %35 = call zeroext addrspace(1) i1 %33({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hd86622b263c9a75bE.exit"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hd86622b263c9a75bE.exit": ; preds = %start, %bb5.i.i, %bb15.i.i, %bb25.i.i, %bb26.i.i, %bb45.i.i, %bb46.i.i
  %.0.i = phi i1 [ true, %start ], [ %34, %bb45.i.i ], [ true, %bb5.i.i ], [ true, %bb26.i.i ], [ true, %bb25.i.i ], [ true, %bb15.i.i ], [ %35, %bb46.i.i ]
  %36 = zext i1 %.0.i to i8
  store i8 %36, i8* %1, align 1
  ret i1 %.0.i
}

; core::fmt::builders::DebugStruct::finish
; Function Attrs: uwtable
define zeroext i1 @_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E(%"fmt::builders::DebugStruct"* align 1 dereferenceable(4) %0) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %1 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %0, i16 0, i32 5
  %2 = load i8, i8* %1, align 1, !range !87
  %_2 = icmp eq i8 %2, 0
  %.phi.trans.insert = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %0, i16 0, i32 3
  %.pre = load i8, i8* %.phi.trans.insert, align 1, !range !87
  br i1 %_2, label %bb4, label %bb2

bb2:                                              ; preds = %start
  %_4 = icmp eq i8 %.pre, 0
  br i1 %_4, label %bb3.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit"

bb3.i:                                            ; preds = %bb2
  %3 = bitcast %"fmt::builders::DebugStruct"* %0 to i32**
  %_21.i.i.i = load i32*, i32** %3, align 1, !nonnull !568
  %_3.i.i.i.i = load i32, i32* %_21.i.i.i, align 1, !alias.scope !906, !noalias !909
  %_2.i.i.i.i = and i32 %_3.i.i.i.i, 4
  %4 = icmp eq i32 %_2.i.i.i.i, 0
  %_5.cast.i.i = bitcast i32* %_21.i.i.i to %"fmt::Formatter"*
  %5 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %5, align 1, !nonnull !568
  %6 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i, i16 0, i32 11, i32 1
  %7 = bitcast [3 x i16]** %6 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %7, align 1, !nonnull !568
  %8 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %9 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %8, align 1, !invariant.load !568, !nonnull !568
  br i1 %4, label %bb2.i.i, label %bb3.i.i

bb2.i.i:                                          ; preds = %bb3.i
  %10 = tail call zeroext addrspace(1) i1 %9({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit"

bb3.i.i:                                          ; preds = %bb3.i
  %11 = tail call zeroext addrspace(1) i1 %9({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit": ; preds = %bb2, %bb2.i.i, %bb3.i.i
  %.0.i = phi i1 [ true, %bb2 ], [ %11, %bb3.i.i ], [ %10, %bb2.i.i ]
  %12 = zext i1 %.0.i to i8
  store i8 %12, i8* %.phi.trans.insert, align 1
  br label %bb4

bb4:                                              ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit"
  %13 = phi i8 [ %12, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit" ], [ %.pre, %start ]
  %14 = icmp ne i8 %13, 0
  ret i1 %14
}

; core::fmt::builders::DebugTuple::field
; Function Attrs: uwtable
define nonnull align 1 dereferenceable(6) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* align 1 dereferenceable(6) %0, {}* nonnull align 1 %1, [3 x i16]* noalias readonly align 1 dereferenceable(6) %2) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %writer.i.i = alloca %"fmt::Formatter", align 1
  %state.i.i = alloca i8, align 1
  %slot.i.i = alloca %"option::Option<fmt::builders::PadAdapter>", align 1
  %3 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %0, i16 0, i32 3
  %4 = load i8, i8* %3, align 1, !range !87
  %_5 = icmp eq i8 %4, 0
  br i1 %_5, label %bb3.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17ha7e1752d8a6849e9E.exit"

bb3.i:                                            ; preds = %start
  %5 = bitcast %"fmt::builders::DebugTuple"* %0 to i32**
  %_21.i.i.i = load i32*, i32** %5, align 1, !alias.scope !912, !noalias !915, !nonnull !568
  %_3.i.i.i.i = load i32, i32* %_21.i.i.i, align 1, !alias.scope !920, !noalias !923
  %_2.i.i.i.i = and i32 %_3.i.i.i.i, 4
  %6 = icmp eq i32 %_2.i.i.i.i, 0
  %7 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %0, i16 0, i32 5
  %_6.i.i = load i16, i16* %7, align 1, !noalias !915
  %_5.i.i = icmp eq i16 %_6.i.i, 0
  %8 = bitcast i32* %_21.i.i.i to %"fmt::Formatter"*
  br i1 %6, label %bb2.i.i, label %bb3.i.i

bb2.i.i:                                          ; preds = %bb3.i
  %..i.i = select i1 %_5.i.i, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc18655 to [0 x i8]*), [0 x i8]* bitcast (<{ [2 x i8] }>* @alloc18672 to [0 x i8]*)
  %.12.i.i = select i1 %_5.i.i, i16 1, i16 2
  %9 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %8, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %9, align 1, !noalias !924, !nonnull !568
  %10 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %8, i16 0, i32 11, i32 1
  %11 = bitcast [3 x i16]** %10 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %11, align 1, !noalias !924, !nonnull !568
  %12 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %13 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %12, align 1, !invariant.load !568, !noalias !924, !nonnull !568
  %14 = tail call zeroext addrspace(1) i1 %13({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 %..i.i, i16 %.12.i.i), !noalias !915
  br i1 %14, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17ha7e1752d8a6849e9E.exit", label %bb31.i.i

bb3.i.i:                                          ; preds = %bb3.i
  %15 = bitcast %"fmt::builders::DebugTuple"* %0 to %"fmt::Formatter"**
  br i1 %_5.i.i, label %bb5.i.i, label %bb15.i.i

bb5.i.i:                                          ; preds = %bb3.i.i
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %8, i16 0, i32 11, i32 0
  %_3.0.i15.i.i = load {}*, {}** %16, align 1, !noalias !927, !nonnull !568
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %8, i16 0, i32 11, i32 1
  %18 = bitcast [3 x i16]** %17 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i16.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %18, align 1, !noalias !927, !nonnull !568
  %19 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i16.i.i, i16 3
  %20 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %19, align 1, !invariant.load !568, !noalias !927, !nonnull !568
  %21 = tail call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i15.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18653 to [0 x i8]*), i16 2), !noalias !915
  br i1 %21, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17ha7e1752d8a6849e9E.exit", label %bb5.i.i.bb15.i.i_crit_edge

bb5.i.i.bb15.i.i_crit_edge:                       ; preds = %bb5.i.i
  %_20.i.i.pre = load %"fmt::Formatter"*, %"fmt::Formatter"** %15, align 1, !noalias !915
  br label %bb15.i.i

bb15.i.i:                                         ; preds = %bb5.i.i.bb15.i.i_crit_edge, %bb3.i.i
  %_20.i.i = phi %"fmt::Formatter"* [ %_20.i.i.pre, %bb5.i.i.bb15.i.i_crit_edge ], [ %8, %bb3.i.i ]
  %22 = getelementptr inbounds %"option::Option<fmt::builders::PadAdapter>", %"option::Option<fmt::builders::PadAdapter>"* %slot.i.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %22), !noalias !915
  %23 = bitcast %"option::Option<fmt::builders::PadAdapter>"* %slot.i.i to {}**
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 1, i8* nonnull %state.i.i), !noalias !915
  store i8 1, i8* %state.i.i, align 1, !noalias !915
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 19, i8* nonnull %24), !noalias !915
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_20.i.i, i16 0, i32 11, i32 0
  %_9.0.i.i.i.i = load {}*, {}** %25, align 1, !noalias !930, !nonnull !568
  %26 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_20.i.i, i16 0, i32 11, i32 1
  %_9.1.i.i.i.i = load [3 x i16]*, [3 x i16]** %26, align 1, !noalias !930, !nonnull !568
  store {}* %_9.0.i.i.i.i, {}** %23, align 1, !noalias !935
  %_5.sroa.4.0..sroa_idx.i.i.i.i.i = getelementptr inbounds %"option::Option<fmt::builders::PadAdapter>", %"option::Option<fmt::builders::PadAdapter>"* %slot.i.i, i16 0, i32 0, i16 2
  %_5.sroa.4.0..sroa_cast.i.i.i.i.i = bitcast i8* %_5.sroa.4.0..sroa_idx.i.i.i.i.i to [3 x i16]**
  store [3 x i16]* %_9.1.i.i.i.i, [3 x i16]** %_5.sroa.4.0..sroa_cast.i.i.i.i.i, align 1, !noalias !935
  %_5.sroa.5.0..sroa_idx.i.i.i.i.i = getelementptr inbounds %"option::Option<fmt::builders::PadAdapter>", %"option::Option<fmt::builders::PadAdapter>"* %slot.i.i, i16 0, i32 0, i16 4
  %_5.sroa.5.0..sroa_cast.i.i.i.i.i = bitcast i8* %_5.sroa.5.0..sroa_idx.i.i.i.i.i to i8**
  store i8* %state.i.i, i8** %_5.sroa.5.0..sroa_cast.i.i.i.i.i, align 1, !noalias !935
  %27 = bitcast %"fmt::Formatter"* %_20.i.i to i32*
  %_10.i.i.i.i = load i32, i32* %27, align 1, !noalias !930
  %28 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_20.i.i, i16 0, i32 3
  %_11.i.i.i.i = load i32, i32* %28, align 1, !range !690, !noalias !930
  %29 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_20.i.i, i16 0, i32 5
  %_12.i.i.i.i = load i8, i8* %29, align 1, !range !696, !noalias !930
  %30 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_20.i.i, i16 0, i32 7, i32 0
  %31 = load i8, i8* %30, align 1, !range !87, !noalias !930
  %32 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_20.i.i, i16 0, i32 7, i32 1
  %_13.1.i.i.i.i = load i16, i16* %32, align 1, !noalias !930
  %33 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_20.i.i, i16 0, i32 9, i32 0
  %34 = load i8, i8* %33, align 1, !range !87, !noalias !930
  %35 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_20.i.i, i16 0, i32 9, i32 1
  %_14.1.i.i.i.i = load i16, i16* %35, align 1, !noalias !930
  %36 = bitcast %"fmt::Formatter"* %writer.i.i to i32*
  store i32 %_10.i.i.i.i, i32* %36, align 1, !alias.scope !938, !noalias !915
  %37 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 3
  store i32 %_11.i.i.i.i, i32* %37, align 1, !alias.scope !938, !noalias !915
  %38 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 5
  store i8 %_12.i.i.i.i, i8* %38, align 1, !alias.scope !938, !noalias !915
  %39 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 7, i32 0
  store i8 %31, i8* %39, align 1, !alias.scope !938, !noalias !915
  %40 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 7, i32 1
  store i16 %_13.1.i.i.i.i, i16* %40, align 1, !alias.scope !938, !noalias !915
  %41 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 9, i32 0
  store i8 %34, i8* %41, align 1, !alias.scope !938, !noalias !915
  %42 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 9, i32 1
  store i16 %_14.1.i.i.i.i, i16* %42, align 1, !alias.scope !938, !noalias !915
  %43 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 11, i32 0
  %44 = bitcast {}** %43 to i8**
  store i8* %22, i8** %44, align 1, !alias.scope !938, !noalias !915
  %45 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 11, i32 1
  store [3 x i16]* bitcast ({ void (%"fmt::builders::PadAdapter"*) addrspace(1)*, i16, i16, i1 (%"fmt::builders::PadAdapter"*, [0 x i8]*, i16) addrspace(1)*, i1 (%"fmt::builders::PadAdapter"*, i32) addrspace(1)*, i1 (%"fmt::builders::PadAdapter"*, %"fmt::Arguments"*) addrspace(1)* }* @vtable.e to [3 x i16]*), [3 x i16]** %45, align 1, !alias.scope !938, !noalias !915
  %46 = getelementptr inbounds [3 x i16], [3 x i16]* %2, i16 0, i16 3
  %47 = bitcast i16* %46 to i1 ({}*, %"fmt::Formatter"*) addrspace(1)**
  %48 = load i1 ({}*, %"fmt::Formatter"*) addrspace(1)*, i1 ({}*, %"fmt::Formatter"*) addrspace(1)** %47, align 1, !invariant.load !568, !noalias !915, !nonnull !568
  %_27.i.i = call zeroext addrspace(1) i1 %48({}* nonnull align 1 %1, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %writer.i.i), !noalias !915
  br i1 %_27.i.i, label %bb22.i.i, label %bb20.i.i

bb20.i.i:                                         ; preds = %bb15.i.i
  %_3.0.i13.i.i = load {}*, {}** %43, align 1, !noalias !939, !nonnull !568
  %49 = bitcast [3 x i16]** %45 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i14.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %49, align 1, !noalias !939, !nonnull !568
  %50 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i14.i.i, i16 3
  %51 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %50, align 1, !invariant.load !568, !noalias !939, !nonnull !568
  %52 = call zeroext addrspace(1) i1 %51({}* nonnull align 1 %_3.0.i13.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18677 to [0 x i8]*), i16 2), !noalias !915
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 19, i8* nonnull %24), !noalias !915
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 1, i8* nonnull %state.i.i), !noalias !915
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %22), !noalias !915
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17ha7e1752d8a6849e9E.exit"

bb22.i.i:                                         ; preds = %bb15.i.i
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 19, i8* nonnull %24), !noalias !915
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 1, i8* nonnull %state.i.i), !noalias !915
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %22), !noalias !915
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17ha7e1752d8a6849e9E.exit"

bb31.i.i:                                         ; preds = %bb2.i.i
  %53 = bitcast %"fmt::builders::DebugTuple"* %0 to %"fmt::Formatter"**
  %_53.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %53, align 1, !noalias !915, !nonnull !568
  %54 = getelementptr inbounds [3 x i16], [3 x i16]* %2, i16 0, i16 3
  %55 = bitcast i16* %54 to i1 ({}*, %"fmt::Formatter"*) addrspace(1)**
  %56 = load i1 ({}*, %"fmt::Formatter"*) addrspace(1)*, i1 ({}*, %"fmt::Formatter"*) addrspace(1)** %55, align 1, !invariant.load !568, !noalias !915, !nonnull !568
  %57 = tail call zeroext addrspace(1) i1 %56({}* nonnull align 1 %1, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %_53.i.i), !noalias !915
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17ha7e1752d8a6849e9E.exit"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17ha7e1752d8a6849e9E.exit": ; preds = %start, %bb2.i.i, %bb5.i.i, %bb20.i.i, %bb22.i.i, %bb31.i.i
  %.0.i = phi i1 [ true, %start ], [ %52, %bb20.i.i ], [ true, %bb22.i.i ], [ %57, %bb31.i.i ], [ true, %bb5.i.i ], [ true, %bb2.i.i ]
  %58 = zext i1 %.0.i to i8
  store i8 %58, i8* %3, align 1
  %59 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %0, i16 0, i32 5
  %60 = load i16, i16* %59, align 1
  %61 = add i16 %60, 1
  store i16 %61, i16* %59, align 1
  ret %"fmt::builders::DebugTuple"* %0
}

; core::fmt::builders::DebugTuple::finish
; Function Attrs: uwtable
define zeroext i1 @_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E(%"fmt::builders::DebugTuple"* align 1 dereferenceable(6) %0) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %1 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %0, i16 0, i32 5
  %_3 = load i16, i16* %1, align 1
  %_2 = icmp eq i16 %_3, 0
  %.phi.trans.insert = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %0, i16 0, i32 3
  %.pre = load i8, i8* %.phi.trans.insert, align 1, !range !87
  br i1 %_2, label %bb4, label %bb2

bb2:                                              ; preds = %start
  %_5 = icmp eq i8 %.pre, 0
  br i1 %_5, label %bb3.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit"

bb3.i:                                            ; preds = %bb2
  %_5.i.i = icmp eq i16 %_3, 1
  %2 = bitcast %"fmt::builders::DebugTuple"* %0 to %"fmt::Formatter"**
  br i1 %_5.i.i, label %bb7.i.i, label %bb20.i.i

bb3.i.i:                                          ; preds = %bb7.i.i
  %3 = bitcast %"fmt::builders::DebugTuple"* %0 to i32**
  %_21.i.i.i = load i32*, i32** %3, align 1, !alias.scope !942, !nonnull !568
  %_3.i.i.i.i = load i32, i32* %_21.i.i.i, align 1, !alias.scope !945, !noalias !942
  %_2.i.i.i.i = and i32 %_3.i.i.i.i, 4
  %4 = icmp eq i32 %_2.i.i.i.i, 0
  %5 = bitcast i32* %_21.i.i.i to %"fmt::Formatter"*
  br i1 %4, label %bb11.i.i, label %bb20.i.i

bb7.i.i:                                          ; preds = %bb3.i
  %6 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %0, i16 0, i32 7
  %7 = load i8, i8* %6, align 1, !range !87
  %_7.i.i = icmp eq i8 %7, 0
  br i1 %_7.i.i, label %bb20.i.i, label %bb3.i.i

bb11.i.i:                                         ; preds = %bb3.i.i
  %8 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %5, i16 0, i32 11, i32 0
  %_3.0.i2.i.i = load {}*, {}** %8, align 1, !noalias !948, !nonnull !568
  %9 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %5, i16 0, i32 11, i32 1
  %10 = bitcast [3 x i16]** %9 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %10, align 1, !noalias !948, !nonnull !568
  %11 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i, i16 3
  %12 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %11, align 1, !invariant.load !568, !noalias !948, !nonnull !568
  %13 = tail call zeroext addrspace(1) i1 %12({}* nonnull align 1 %_3.0.i2.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %13, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit", label %bb20.i.i

bb20.i.i:                                         ; preds = %bb11.i.i, %bb7.i.i, %bb3.i.i, %bb3.i
  %_21.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %2, align 1, !nonnull !568
  %14 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %14, align 1, !noalias !951, !nonnull !568
  %15 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i, i16 0, i32 11, i32 1
  %16 = bitcast [3 x i16]** %15 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %16, align 1, !noalias !951, !nonnull !568
  %17 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %18 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %17, align 1, !invariant.load !568, !noalias !951, !nonnull !568
  %19 = tail call zeroext addrspace(1) i1 %18({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp = zext i1 %19 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit": ; preds = %bb2, %bb11.i.i, %bb20.i.i
  %.0.i = phi i8 [ 1, %bb2 ], [ %phitmp, %bb20.i.i ], [ 1, %bb11.i.i ]
  store i8 %.0.i, i8* %.phi.trans.insert, align 1
  br label %bb4

bb4:                                              ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit"
  %20 = phi i8 [ %.0.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit" ], [ %.pre, %start ]
  %21 = icmp ne i8 %20, 0
  ret i1 %21
}

; core::fmt::builders::DebugInner::entry
; Function Attrs: uwtable
define internal fastcc void @_ZN4core3fmt8builders10DebugInner5entry17h8e131ef85fccf0c6E(%"fmt::builders::DebugInner"* align 1 dereferenceable(4) %0, {}* nonnull align 1 %1, [3 x i16]* noalias readonly align 1 dereferenceable(6) %2) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %writer.i.i = alloca %"fmt::Formatter", align 1
  %state.i.i = alloca i8, align 1
  %slot.i.i = alloca %"option::Option<fmt::builders::PadAdapter>", align 1
  %3 = getelementptr inbounds %"fmt::builders::DebugInner", %"fmt::builders::DebugInner"* %0, i16 0, i32 3
  %4 = load i8, i8* %3, align 1, !range !87
  %_4 = icmp eq i8 %4, 0
  br i1 %_4, label %bb3.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hc6467a80af52a8e3E.exit"

bb3.i:                                            ; preds = %start
  %5 = bitcast %"fmt::builders::DebugInner"* %0 to i32**
  %_21.i.i.i = load i32*, i32** %5, align 1, !alias.scope !954, !noalias !957, !nonnull !568
  %_3.i.i.i.i = load i32, i32* %_21.i.i.i, align 1, !alias.scope !962, !noalias !965
  %_2.i.i.i.i = and i32 %_3.i.i.i.i, 4
  %6 = icmp eq i32 %_2.i.i.i.i, 0
  %7 = getelementptr inbounds %"fmt::builders::DebugInner", %"fmt::builders::DebugInner"* %0, i16 0, i32 5
  %8 = load i8, i8* %7, align 1, !range !87, !noalias !957
  %_6.i.i = icmp ne i8 %8, 0
  %9 = bitcast i32* %_21.i.i.i to %"fmt::Formatter"*
  br i1 %6, label %bb2.i.i, label %bb3.i.i

bb2.i.i:                                          ; preds = %bb3.i
  br i1 %_6.i.i, label %bb27.i.i, label %bb35.i.i

bb3.i.i:                                          ; preds = %bb3.i
  %10 = bitcast %"fmt::builders::DebugInner"* %0 to %"fmt::Formatter"**
  br i1 %_6.i.i, label %bb15.i.i, label %bb5.i.i

bb5.i.i:                                          ; preds = %bb3.i.i
  %11 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %9, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %11, align 1, !noalias !966, !nonnull !568
  %12 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %9, i16 0, i32 11, i32 1
  %13 = bitcast [3 x i16]** %12 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %13, align 1, !noalias !966, !nonnull !568
  %14 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %15 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %14, align 1, !invariant.load !568, !noalias !966, !nonnull !568
  %16 = tail call zeroext addrspace(1) i1 %15({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18670 to [0 x i8]*), i16 1), !noalias !957
  br i1 %16, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hc6467a80af52a8e3E.exit", label %bb5.i.i.bb15.i.i_crit_edge

bb5.i.i.bb15.i.i_crit_edge:                       ; preds = %bb5.i.i
  %_20.i.i.pre = load %"fmt::Formatter"*, %"fmt::Formatter"** %10, align 1, !noalias !957
  br label %bb15.i.i

bb15.i.i:                                         ; preds = %bb5.i.i.bb15.i.i_crit_edge, %bb3.i.i
  %_20.i.i = phi %"fmt::Formatter"* [ %_20.i.i.pre, %bb5.i.i.bb15.i.i_crit_edge ], [ %9, %bb3.i.i ]
  %17 = getelementptr inbounds %"option::Option<fmt::builders::PadAdapter>", %"option::Option<fmt::builders::PadAdapter>"* %slot.i.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %17), !noalias !957
  %18 = bitcast %"option::Option<fmt::builders::PadAdapter>"* %slot.i.i to {}**
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 1, i8* nonnull %state.i.i), !noalias !957
  store i8 1, i8* %state.i.i, align 1, !noalias !957
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 19, i8* nonnull %19), !noalias !957
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_20.i.i, i16 0, i32 11, i32 0
  %_9.0.i.i.i.i = load {}*, {}** %20, align 1, !noalias !969, !nonnull !568
  %21 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_20.i.i, i16 0, i32 11, i32 1
  %_9.1.i.i.i.i = load [3 x i16]*, [3 x i16]** %21, align 1, !noalias !969, !nonnull !568
  store {}* %_9.0.i.i.i.i, {}** %18, align 1, !noalias !974
  %_5.sroa.4.0..sroa_idx.i.i.i.i.i = getelementptr inbounds %"option::Option<fmt::builders::PadAdapter>", %"option::Option<fmt::builders::PadAdapter>"* %slot.i.i, i16 0, i32 0, i16 2
  %_5.sroa.4.0..sroa_cast.i.i.i.i.i = bitcast i8* %_5.sroa.4.0..sroa_idx.i.i.i.i.i to [3 x i16]**
  store [3 x i16]* %_9.1.i.i.i.i, [3 x i16]** %_5.sroa.4.0..sroa_cast.i.i.i.i.i, align 1, !noalias !974
  %_5.sroa.5.0..sroa_idx.i.i.i.i.i = getelementptr inbounds %"option::Option<fmt::builders::PadAdapter>", %"option::Option<fmt::builders::PadAdapter>"* %slot.i.i, i16 0, i32 0, i16 4
  %_5.sroa.5.0..sroa_cast.i.i.i.i.i = bitcast i8* %_5.sroa.5.0..sroa_idx.i.i.i.i.i to i8**
  store i8* %state.i.i, i8** %_5.sroa.5.0..sroa_cast.i.i.i.i.i, align 1, !noalias !974
  %22 = bitcast %"fmt::Formatter"* %_20.i.i to i32*
  %_10.i.i.i.i = load i32, i32* %22, align 1, !noalias !969
  %23 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_20.i.i, i16 0, i32 3
  %_11.i.i.i.i = load i32, i32* %23, align 1, !range !690, !noalias !969
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_20.i.i, i16 0, i32 5
  %_12.i.i.i.i = load i8, i8* %24, align 1, !range !696, !noalias !969
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_20.i.i, i16 0, i32 7, i32 0
  %26 = load i8, i8* %25, align 1, !range !87, !noalias !969
  %27 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_20.i.i, i16 0, i32 7, i32 1
  %_13.1.i.i.i.i = load i16, i16* %27, align 1, !noalias !969
  %28 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_20.i.i, i16 0, i32 9, i32 0
  %29 = load i8, i8* %28, align 1, !range !87, !noalias !969
  %30 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_20.i.i, i16 0, i32 9, i32 1
  %_14.1.i.i.i.i = load i16, i16* %30, align 1, !noalias !969
  %31 = bitcast %"fmt::Formatter"* %writer.i.i to i32*
  store i32 %_10.i.i.i.i, i32* %31, align 1, !alias.scope !977, !noalias !957
  %32 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 3
  store i32 %_11.i.i.i.i, i32* %32, align 1, !alias.scope !977, !noalias !957
  %33 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 5
  store i8 %_12.i.i.i.i, i8* %33, align 1, !alias.scope !977, !noalias !957
  %34 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 7, i32 0
  store i8 %26, i8* %34, align 1, !alias.scope !977, !noalias !957
  %35 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 7, i32 1
  store i16 %_13.1.i.i.i.i, i16* %35, align 1, !alias.scope !977, !noalias !957
  %36 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 9, i32 0
  store i8 %29, i8* %36, align 1, !alias.scope !977, !noalias !957
  %37 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 9, i32 1
  store i16 %_14.1.i.i.i.i, i16* %37, align 1, !alias.scope !977, !noalias !957
  %38 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 11, i32 0
  %39 = bitcast {}** %38 to i8**
  store i8* %17, i8** %39, align 1, !alias.scope !977, !noalias !957
  %40 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 11, i32 1
  store [3 x i16]* bitcast ({ void (%"fmt::builders::PadAdapter"*) addrspace(1)*, i16, i16, i1 (%"fmt::builders::PadAdapter"*, [0 x i8]*, i16) addrspace(1)*, i1 (%"fmt::builders::PadAdapter"*, i32) addrspace(1)*, i1 (%"fmt::builders::PadAdapter"*, %"fmt::Arguments"*) addrspace(1)* }* @vtable.e to [3 x i16]*), [3 x i16]** %40, align 1, !alias.scope !977, !noalias !957
  %41 = getelementptr inbounds [3 x i16], [3 x i16]* %2, i16 0, i16 3
  %42 = bitcast i16* %41 to i1 ({}*, %"fmt::Formatter"*) addrspace(1)**
  %43 = load i1 ({}*, %"fmt::Formatter"*) addrspace(1)*, i1 ({}*, %"fmt::Formatter"*) addrspace(1)** %42, align 1, !invariant.load !568, !noalias !957, !nonnull !568
  %_27.i.i = call zeroext addrspace(1) i1 %43({}* nonnull align 1 %1, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %writer.i.i), !noalias !957
  br i1 %_27.i.i, label %bb22.i.i, label %bb20.i.i

bb20.i.i:                                         ; preds = %bb15.i.i
  %_3.0.i10.i.i = load {}*, {}** %38, align 1, !noalias !978, !nonnull !568
  %44 = bitcast [3 x i16]** %40 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i11.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %44, align 1, !noalias !978, !nonnull !568
  %45 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i11.i.i, i16 3
  %46 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %45, align 1, !invariant.load !568, !noalias !978, !nonnull !568
  %47 = call zeroext addrspace(1) i1 %46({}* nonnull align 1 %_3.0.i10.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18677 to [0 x i8]*), i16 2), !noalias !957
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 19, i8* nonnull %19), !noalias !957
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 1, i8* nonnull %state.i.i), !noalias !957
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %17), !noalias !957
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hc6467a80af52a8e3E.exit"

bb22.i.i:                                         ; preds = %bb15.i.i
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 19, i8* nonnull %19), !noalias !957
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 1, i8* nonnull %state.i.i), !noalias !957
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %17), !noalias !957
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hc6467a80af52a8e3E.exit"

bb27.i.i:                                         ; preds = %bb2.i.i
  %48 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %9, i16 0, i32 11, i32 0
  %_3.0.i8.i.i = load {}*, {}** %48, align 1, !noalias !981, !nonnull !568
  %49 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %9, i16 0, i32 11, i32 1
  %50 = bitcast [3 x i16]** %49 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i9.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %50, align 1, !noalias !981, !nonnull !568
  %51 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i9.i.i, i16 3
  %52 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %51, align 1, !invariant.load !568, !noalias !981, !nonnull !568
  %53 = tail call zeroext addrspace(1) i1 %52({}* nonnull align 1 %_3.0.i8.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18672 to [0 x i8]*), i16 2), !noalias !957
  br i1 %53, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hc6467a80af52a8e3E.exit", label %bb27.bb35_crit_edge.i.i

bb27.bb35_crit_edge.i.i:                          ; preds = %bb27.i.i
  %54 = bitcast %"fmt::builders::DebugInner"* %0 to %"fmt::Formatter"**
  %_51.pre.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %54, align 1, !noalias !957
  br label %bb35.i.i

bb35.i.i:                                         ; preds = %bb27.bb35_crit_edge.i.i, %bb2.i.i
  %_51.i.i = phi %"fmt::Formatter"* [ %_51.pre.i.i, %bb27.bb35_crit_edge.i.i ], [ %9, %bb2.i.i ]
  %55 = getelementptr inbounds [3 x i16], [3 x i16]* %2, i16 0, i16 3
  %56 = bitcast i16* %55 to i1 ({}*, %"fmt::Formatter"*) addrspace(1)**
  %57 = load i1 ({}*, %"fmt::Formatter"*) addrspace(1)*, i1 ({}*, %"fmt::Formatter"*) addrspace(1)** %56, align 1, !invariant.load !568, !noalias !957, !nonnull !568
  %58 = tail call zeroext addrspace(1) i1 %57({}* nonnull align 1 %1, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %_51.i.i), !noalias !957
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hc6467a80af52a8e3E.exit"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hc6467a80af52a8e3E.exit": ; preds = %start, %bb5.i.i, %bb20.i.i, %bb22.i.i, %bb27.i.i, %bb35.i.i
  %.0.i = phi i1 [ true, %start ], [ %47, %bb20.i.i ], [ true, %bb22.i.i ], [ %58, %bb35.i.i ], [ true, %bb5.i.i ], [ true, %bb27.i.i ]
  %59 = zext i1 %.0.i to i8
  store i8 %59, i8* %3, align 1
  %60 = getelementptr inbounds %"fmt::builders::DebugInner", %"fmt::builders::DebugInner"* %0, i16 0, i32 5
  store i8 1, i8* %60, align 1
  ret void
}

; core::fmt::builders::DebugSet::entry
; Function Attrs: uwtable
define nonnull align 1 dereferenceable(4) %"fmt::builders::DebugSet"* @_ZN4core3fmt8builders8DebugSet5entry17hab71764ecc2a5a61E(%"fmt::builders::DebugSet"* returned align 1 dereferenceable(4) %self, {}* nonnull align 1 %entry.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) %entry.1) unnamed_addr addrspace(1) #2 {
start:
  %_5 = bitcast %"fmt::builders::DebugSet"* %self to %"fmt::builders::DebugInner"*
; call core::fmt::builders::DebugInner::entry
  tail call fastcc addrspace(1) void @_ZN4core3fmt8builders10DebugInner5entry17h8e131ef85fccf0c6E(%"fmt::builders::DebugInner"* nonnull align 1 dereferenceable(4) %_5, {}* nonnull align 1 %entry.0, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) %entry.1)
  ret %"fmt::builders::DebugSet"* %self
}

; core::fmt::builders::DebugSet::finish
; Function Attrs: uwtable
define zeroext i1 @_ZN4core3fmt8builders8DebugSet6finish17hfead2c712594745dE(%"fmt::builders::DebugSet"* align 1 dereferenceable(4) %0) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %1 = getelementptr inbounds %"fmt::builders::DebugSet", %"fmt::builders::DebugSet"* %0, i16 0, i32 1, i32 3
  %2 = load i8, i8* %1, align 1, !range !87
  %_2 = icmp eq i8 %2, 0
  br i1 %_2, label %bb3.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hdacee3bee5a01b5bE.exit"

bb3.i:                                            ; preds = %start
  %3 = bitcast %"fmt::builders::DebugSet"* %0 to %"fmt::Formatter"**
  %_3.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %3, align 1, !nonnull !568
  %4 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_3.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %4, align 1, !noalias !984, !nonnull !568
  %5 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_3.i.i, i16 0, i32 11, i32 1
  %6 = bitcast [3 x i16]** %5 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %6, align 1, !noalias !984, !nonnull !568
  %7 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %8 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %7, align 1, !invariant.load !568, !noalias !984, !nonnull !568
  %9 = tail call zeroext addrspace(1) i1 %8({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hdacee3bee5a01b5bE.exit"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hdacee3bee5a01b5bE.exit": ; preds = %start, %bb3.i
  %.0.i = phi i1 [ true, %start ], [ %9, %bb3.i ]
  ret i1 %.0.i
}

; core::fmt::builders::DebugList::finish
; Function Attrs: uwtable
define zeroext i1 @_ZN4core3fmt8builders9DebugList6finish17h07689b215ce36709E(%"fmt::builders::DebugList"* align 1 dereferenceable(4) %0) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %1 = getelementptr inbounds %"fmt::builders::DebugList", %"fmt::builders::DebugList"* %0, i16 0, i32 1, i32 3
  %2 = load i8, i8* %1, align 1, !range !87
  %_2 = icmp eq i8 %2, 0
  br i1 %_2, label %bb3.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h331a634bb4e39a10E.exit"

bb3.i:                                            ; preds = %start
  %3 = bitcast %"fmt::builders::DebugList"* %0 to %"fmt::Formatter"**
  %_3.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %3, align 1, !nonnull !568
  %4 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_3.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %4, align 1, !noalias !987, !nonnull !568
  %5 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_3.i.i, i16 0, i32 11, i32 1
  %6 = bitcast [3 x i16]** %5 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %6, align 1, !noalias !987, !nonnull !568
  %7 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %8 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %7, align 1, !invariant.load !568, !noalias !987, !nonnull !568
  %9 = tail call zeroext addrspace(1) i1 %8({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18665 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h331a634bb4e39a10E.exit"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h331a634bb4e39a10E.exit": ; preds = %start, %bb3.i
  %.0.i = phi i1 [ true, %start ], [ %9, %bb3.i ]
  ret i1 %.0.i
}

; core::fmt::builders::DebugMap::entry
; Function Attrs: uwtable
define nonnull align 1 dereferenceable(6) %"fmt::builders::DebugMap"* @_ZN4core3fmt8builders8DebugMap5entry17hba1a2673a71b03caE(%"fmt::builders::DebugMap"* align 1 dereferenceable(6) %self, {}* nonnull align 1 %key.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) %key.1, {}* nonnull align 1 %value.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) %value.1) unnamed_addr addrspace(1) #2 {
start:
; call core::fmt::builders::DebugMap::key
  %_7 = tail call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugMap"* @_ZN4core3fmt8builders8DebugMap3key17h15485c45e9ad0a61E(%"fmt::builders::DebugMap"* nonnull align 1 dereferenceable(6) %self, {}* nonnull align 1 %key.0, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) %key.1)
; call core::fmt::builders::DebugMap::value
  %_5 = tail call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugMap"* @_ZN4core3fmt8builders8DebugMap5value17hbc1e6e2e9fb816b5E(%"fmt::builders::DebugMap"* nonnull align 1 dereferenceable(6) %_7, {}* nonnull align 1 %value.0, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) %value.1)
  ret %"fmt::builders::DebugMap"* %_5
}

; core::fmt::builders::DebugMap::key
; Function Attrs: uwtable
define nonnull align 1 dereferenceable(6) %"fmt::builders::DebugMap"* @_ZN4core3fmt8builders8DebugMap3key17h15485c45e9ad0a61E(%"fmt::builders::DebugMap"* align 1 dereferenceable(6) %0, {}* nonnull align 1 %1, [3 x i16]* noalias readonly align 1 dereferenceable(6) %2) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %writer.i.i = alloca %"fmt::Formatter", align 1
  %slot.i.i = alloca %"option::Option<fmt::builders::PadAdapter>", align 1
  %3 = getelementptr inbounds %"fmt::builders::DebugMap", %"fmt::builders::DebugMap"* %0, i16 0, i32 3
  %4 = load i8, i8* %3, align 1, !range !87
  %_5 = icmp eq i8 %4, 0
  %5 = bitcast %"fmt::builders::DebugMap"* %0 to %"fmt::Formatter"**
  br i1 %_5, label %bb3.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17ha9847185357f15dbE.exit"

bb3.i:                                            ; preds = %start
  %6 = getelementptr inbounds %"fmt::builders::DebugMap", %"fmt::builders::DebugMap"* %0, i16 0, i32 7
  %7 = load i8, i8* %6, align 1, !range !87, !noalias !990
  %_5.i.i = icmp eq i8 %7, 0
  br i1 %_5.i.i, label %bb1.i.i, label %bb2.i.i

bb1.i.i:                                          ; preds = %bb3.i
  %8 = bitcast %"fmt::builders::DebugMap"* %0 to i32**
  %_21.i.i.i = load i32*, i32** %8, align 1, !alias.scope !995, !noalias !990, !nonnull !568
  %_3.i.i.i.i = load i32, i32* %_21.i.i.i, align 1, !alias.scope !998, !noalias !1001
  %_2.i.i.i.i = and i32 %_3.i.i.i.i, 4
  %9 = icmp eq i32 %_2.i.i.i.i, 0
  %10 = getelementptr inbounds %"fmt::builders::DebugMap", %"fmt::builders::DebugMap"* %0, i16 0, i32 5
  %11 = load i8, i8* %10, align 1, !range !87, !noalias !990
  %_11.i.i = icmp ne i8 %11, 0
  %12 = bitcast i32* %_21.i.i.i to %"fmt::Formatter"*
  br i1 %9, label %bb4.i.i, label %bb5.i.i

bb2.i.i:                                          ; preds = %bb3.i
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [70 x i8] }>* @alloc18667 to [0 x i8]*), i16 70, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18669 to %"panic::Location"*)), !noalias !990
  unreachable

bb4.i.i:                                          ; preds = %bb1.i.i
  br i1 %_11.i.i, label %bb36.i.i, label %bb44.i.i

bb5.i.i:                                          ; preds = %bb1.i.i
  br i1 %_11.i.i, label %bb17.i.i, label %bb7.i.i

bb7.i.i:                                          ; preds = %bb5.i.i
  %13 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %12, i16 0, i32 11, i32 0
  %_3.0.i14.i.i = load {}*, {}** %13, align 1, !noalias !1002, !nonnull !568
  %14 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %12, i16 0, i32 11, i32 1
  %15 = bitcast [3 x i16]** %14 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i15.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %15, align 1, !noalias !1002, !nonnull !568
  %16 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i15.i.i, i16 3
  %17 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %16, align 1, !invariant.load !568, !noalias !1002, !nonnull !568
  %18 = tail call zeroext addrspace(1) i1 %17({}* nonnull align 1 %_3.0.i14.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18670 to [0 x i8]*), i16 1), !noalias !990
  br i1 %18, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17ha9847185357f15dbE.exit", label %bb7.i.i.bb17.i.i_crit_edge

bb7.i.i.bb17.i.i_crit_edge:                       ; preds = %bb7.i.i
  %_25.i.i.pre = load %"fmt::Formatter"*, %"fmt::Formatter"** %5, align 1, !noalias !990
  br label %bb17.i.i

bb17.i.i:                                         ; preds = %bb7.i.i.bb17.i.i_crit_edge, %bb5.i.i
  %_25.i.i = phi %"fmt::Formatter"* [ %_25.i.i.pre, %bb7.i.i.bb17.i.i_crit_edge ], [ %12, %bb5.i.i ]
  %19 = getelementptr inbounds %"option::Option<fmt::builders::PadAdapter>", %"option::Option<fmt::builders::PadAdapter>"* %slot.i.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %19), !noalias !990
  %20 = bitcast %"option::Option<fmt::builders::PadAdapter>"* %slot.i.i to {}**
  %21 = getelementptr inbounds %"fmt::builders::DebugMap", %"fmt::builders::DebugMap"* %0, i16 0, i32 9
  store i8 1, i8* %21, align 1, !noalias !990
  %22 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 19, i8* nonnull %22), !noalias !990
  %23 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_25.i.i, i16 0, i32 11, i32 0
  %_9.0.i.i.i.i = load {}*, {}** %23, align 1, !noalias !1005, !nonnull !568
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_25.i.i, i16 0, i32 11, i32 1
  %_9.1.i.i.i.i = load [3 x i16]*, [3 x i16]** %24, align 1, !noalias !1005, !nonnull !568
  store {}* %_9.0.i.i.i.i, {}** %20, align 1, !noalias !1010
  %_5.sroa.4.0..sroa_idx.i.i.i.i.i = getelementptr inbounds %"option::Option<fmt::builders::PadAdapter>", %"option::Option<fmt::builders::PadAdapter>"* %slot.i.i, i16 0, i32 0, i16 2
  %_5.sroa.4.0..sroa_cast.i.i.i.i.i = bitcast i8* %_5.sroa.4.0..sroa_idx.i.i.i.i.i to [3 x i16]**
  store [3 x i16]* %_9.1.i.i.i.i, [3 x i16]** %_5.sroa.4.0..sroa_cast.i.i.i.i.i, align 1, !noalias !1010
  %_5.sroa.5.0..sroa_idx.i.i.i.i.i = getelementptr inbounds %"option::Option<fmt::builders::PadAdapter>", %"option::Option<fmt::builders::PadAdapter>"* %slot.i.i, i16 0, i32 0, i16 4
  %_5.sroa.5.0..sroa_cast.i.i.i.i.i = bitcast i8* %_5.sroa.5.0..sroa_idx.i.i.i.i.i to i8**
  store i8* %21, i8** %_5.sroa.5.0..sroa_cast.i.i.i.i.i, align 1, !noalias !1010
  %25 = bitcast %"fmt::Formatter"* %_25.i.i to i32*
  %_10.i.i.i.i = load i32, i32* %25, align 1, !noalias !1005
  %26 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_25.i.i, i16 0, i32 3
  %_11.i.i.i.i = load i32, i32* %26, align 1, !range !690, !noalias !1005
  %27 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_25.i.i, i16 0, i32 5
  %_12.i.i.i.i = load i8, i8* %27, align 1, !range !696, !noalias !1005
  %28 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_25.i.i, i16 0, i32 7, i32 0
  %29 = load i8, i8* %28, align 1, !range !87, !noalias !1005
  %30 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_25.i.i, i16 0, i32 7, i32 1
  %_13.1.i.i.i.i = load i16, i16* %30, align 1, !noalias !1005
  %31 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_25.i.i, i16 0, i32 9, i32 0
  %32 = load i8, i8* %31, align 1, !range !87, !noalias !1005
  %33 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_25.i.i, i16 0, i32 9, i32 1
  %_14.1.i.i.i.i = load i16, i16* %33, align 1, !noalias !1005
  %34 = bitcast %"fmt::Formatter"* %writer.i.i to i32*
  store i32 %_10.i.i.i.i, i32* %34, align 1, !alias.scope !1013, !noalias !990
  %35 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 3
  store i32 %_11.i.i.i.i, i32* %35, align 1, !alias.scope !1013, !noalias !990
  %36 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 5
  store i8 %_12.i.i.i.i, i8* %36, align 1, !alias.scope !1013, !noalias !990
  %37 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 7, i32 0
  store i8 %29, i8* %37, align 1, !alias.scope !1013, !noalias !990
  %38 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 7, i32 1
  store i16 %_13.1.i.i.i.i, i16* %38, align 1, !alias.scope !1013, !noalias !990
  %39 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 9, i32 0
  store i8 %32, i8* %39, align 1, !alias.scope !1013, !noalias !990
  %40 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 9, i32 1
  store i16 %_14.1.i.i.i.i, i16* %40, align 1, !alias.scope !1013, !noalias !990
  %41 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 11, i32 0
  %42 = bitcast {}** %41 to i8**
  store i8* %19, i8** %42, align 1, !alias.scope !1013, !noalias !990
  %43 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 11, i32 1
  store [3 x i16]* bitcast ({ void (%"fmt::builders::PadAdapter"*) addrspace(1)*, i16, i16, i1 (%"fmt::builders::PadAdapter"*, [0 x i8]*, i16) addrspace(1)*, i1 (%"fmt::builders::PadAdapter"*, i32) addrspace(1)*, i1 (%"fmt::builders::PadAdapter"*, %"fmt::Arguments"*) addrspace(1)* }* @vtable.e to [3 x i16]*), [3 x i16]** %43, align 1, !alias.scope !1013, !noalias !990
  %44 = getelementptr inbounds [3 x i16], [3 x i16]* %2, i16 0, i16 3
  %45 = bitcast i16* %44 to i1 ({}*, %"fmt::Formatter"*) addrspace(1)**
  %46 = load i1 ({}*, %"fmt::Formatter"*) addrspace(1)*, i1 ({}*, %"fmt::Formatter"*) addrspace(1)** %45, align 1, !invariant.load !568, !noalias !990, !nonnull !568
  %_32.i.i = call zeroext addrspace(1) i1 %46({}* nonnull align 1 %1, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %writer.i.i), !noalias !990
  br i1 %_32.i.i, label %bb27.i.i, label %bb22.i.i

bb22.i.i:                                         ; preds = %bb17.i.i
  %_3.0.i18.i.i = load {}*, {}** %41, align 1, !noalias !1014, !nonnull !568
  %47 = bitcast [3 x i16]** %43 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i19.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %47, align 1, !noalias !1014, !nonnull !568
  %48 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i19.i.i, i16 3
  %49 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %48, align 1, !invariant.load !568, !noalias !1014, !nonnull !568
  %50 = call zeroext addrspace(1) i1 %49({}* nonnull align 1 %_3.0.i18.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc15924 to [0 x i8]*), i16 2), !noalias !990
  br i1 %50, label %bb27.i.i, label %bb30.i.i

bb27.i.i:                                         ; preds = %bb22.i.i, %bb17.i.i
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 19, i8* nonnull %22), !noalias !990
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %19), !noalias !990
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17ha9847185357f15dbE.exit"

bb30.i.i:                                         ; preds = %bb22.i.i
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 19, i8* nonnull %22), !noalias !990
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %19), !noalias !990
  br label %bb59.i.i

bb36.i.i:                                         ; preds = %bb4.i.i
  %51 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %12, i16 0, i32 11, i32 0
  %_3.0.i16.i.i = load {}*, {}** %51, align 1, !noalias !1017, !nonnull !568
  %52 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %12, i16 0, i32 11, i32 1
  %53 = bitcast [3 x i16]** %52 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i17.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %53, align 1, !noalias !1017, !nonnull !568
  %54 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i17.i.i, i16 3
  %55 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %54, align 1, !invariant.load !568, !noalias !1017, !nonnull !568
  %56 = tail call zeroext addrspace(1) i1 %55({}* nonnull align 1 %_3.0.i16.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18672 to [0 x i8]*), i16 2), !noalias !990
  br i1 %56, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17ha9847185357f15dbE.exit", label %bb36.bb44_crit_edge.i.i

bb36.bb44_crit_edge.i.i:                          ; preds = %bb36.i.i
  %_65.pre.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %5, align 1, !noalias !990
  br label %bb44.i.i

bb44.i.i:                                         ; preds = %bb4.i.i, %bb36.bb44_crit_edge.i.i
  %_65.i.i = phi %"fmt::Formatter"* [ %_65.pre.i.i, %bb36.bb44_crit_edge.i.i ], [ %12, %bb4.i.i ]
  %57 = getelementptr inbounds [3 x i16], [3 x i16]* %2, i16 0, i16 3
  %58 = bitcast i16* %57 to i1 ({}*, %"fmt::Formatter"*) addrspace(1)**
  %59 = load i1 ({}*, %"fmt::Formatter"*) addrspace(1)*, i1 ({}*, %"fmt::Formatter"*) addrspace(1)** %58, align 1, !invariant.load !568, !noalias !990, !nonnull !568
  %_63.i.i = tail call zeroext addrspace(1) i1 %59({}* nonnull align 1 %1, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %_65.i.i), !noalias !990
  br i1 %_63.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17ha9847185357f15dbE.exit", label %bb47.i.i

bb47.i.i:                                         ; preds = %bb44.i.i
  %_73.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %5, align 1, !noalias !990, !nonnull !568
  %60 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_73.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %60, align 1, !noalias !1020, !nonnull !568
  %61 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_73.i.i, i16 0, i32 11, i32 1
  %62 = bitcast [3 x i16]** %61 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %62, align 1, !noalias !1020, !nonnull !568
  %63 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %64 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %63, align 1, !invariant.load !568, !noalias !1020, !nonnull !568
  %65 = tail call zeroext addrspace(1) i1 %64({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc15924 to [0 x i8]*), i16 2), !noalias !990
  br i1 %65, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17ha9847185357f15dbE.exit", label %bb59.i.i

bb59.i.i:                                         ; preds = %bb47.i.i, %bb30.i.i
  store i8 1, i8* %6, align 1, !noalias !990
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17ha9847185357f15dbE.exit"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17ha9847185357f15dbE.exit": ; preds = %start, %bb7.i.i, %bb27.i.i, %bb36.i.i, %bb44.i.i, %bb47.i.i, %bb59.i.i
  %.0.i = phi i8 [ 1, %start ], [ 0, %bb59.i.i ], [ 1, %bb27.i.i ], [ 1, %bb7.i.i ], [ 1, %bb36.i.i ], [ 1, %bb44.i.i ], [ 1, %bb47.i.i ]
  store i8 %.0.i, i8* %3, align 1
  ret %"fmt::builders::DebugMap"* %0
}

; core::fmt::builders::DebugMap::value
; Function Attrs: uwtable
define nonnull align 1 dereferenceable(6) %"fmt::builders::DebugMap"* @_ZN4core3fmt8builders8DebugMap5value17hbc1e6e2e9fb816b5E(%"fmt::builders::DebugMap"* align 1 dereferenceable(6) %0, {}* nonnull align 1 %1, [3 x i16]* noalias readonly align 1 dereferenceable(6) %2) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %writer.i.i = alloca %"fmt::Formatter", align 1
  %slot.i.i = alloca %"option::Option<fmt::builders::PadAdapter>", align 1
  %3 = getelementptr inbounds %"fmt::builders::DebugMap", %"fmt::builders::DebugMap"* %0, i16 0, i32 3
  %4 = load i8, i8* %3, align 1, !range !87
  %_5 = icmp eq i8 %4, 0
  br i1 %_5, label %bb3.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h6c49f9488290e374E.exit"

bb3.i:                                            ; preds = %start
  %5 = getelementptr inbounds %"fmt::builders::DebugMap", %"fmt::builders::DebugMap"* %0, i16 0, i32 7
  %6 = load i8, i8* %5, align 1, !range !87, !noalias !1023
  %_4.i.i = icmp eq i8 %6, 0
  br i1 %_4.i.i, label %bb2.i.i, label %bb1.i.i

bb1.i.i:                                          ; preds = %bb3.i
  %7 = bitcast %"fmt::builders::DebugMap"* %0 to i32**
  %_21.i.i.i = load i32*, i32** %7, align 1, !alias.scope !1028, !noalias !1023, !nonnull !568
  %_3.i.i.i.i = load i32, i32* %_21.i.i.i, align 1, !alias.scope !1031, !noalias !1034
  %_2.i.i.i.i = and i32 %_3.i.i.i.i, 4
  %8 = icmp eq i32 %_2.i.i.i.i, 0
  %9 = bitcast i32* %_21.i.i.i to %"fmt::Formatter"*
  br i1 %8, label %bb4.i.i, label %bb5.i.i

bb2.i.i:                                          ; preds = %bb3.i
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [46 x i8] }>* @alloc18674 to [0 x i8]*), i16 46, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18676 to %"panic::Location"*)), !noalias !1023
  unreachable

bb4.i.i:                                          ; preds = %bb1.i.i
  %10 = getelementptr inbounds [3 x i16], [3 x i16]* %2, i16 0, i16 3
  %11 = bitcast i16* %10 to i1 ({}*, %"fmt::Formatter"*) addrspace(1)**
  %12 = load i1 ({}*, %"fmt::Formatter"*) addrspace(1)*, i1 ({}*, %"fmt::Formatter"*) addrspace(1)** %11, align 1, !invariant.load !568, !noalias !1023, !nonnull !568
  %_38.i.i = tail call zeroext addrspace(1) i1 %12({}* nonnull align 1 %1, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %9), !noalias !1023
  br i1 %_38.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h6c49f9488290e374E.exit", label %bb31.i.i

bb5.i.i:                                          ; preds = %bb1.i.i
  %13 = getelementptr inbounds %"option::Option<fmt::builders::PadAdapter>", %"option::Option<fmt::builders::PadAdapter>"* %slot.i.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %13), !noalias !1023
  %14 = bitcast %"option::Option<fmt::builders::PadAdapter>"* %slot.i.i to {}**
  %15 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 19, i8* nonnull %15), !noalias !1023
  %_16.i.i = getelementptr inbounds %"fmt::builders::DebugMap", %"fmt::builders::DebugMap"* %0, i16 0, i32 9
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %9, i16 0, i32 11, i32 0
  %_9.0.i.i.i.i = load {}*, {}** %16, align 1, !noalias !1035, !nonnull !568
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %9, i16 0, i32 11, i32 1
  %_9.1.i.i.i.i = load [3 x i16]*, [3 x i16]** %17, align 1, !noalias !1035, !nonnull !568
  store {}* %_9.0.i.i.i.i, {}** %14, align 1, !noalias !1040
  %_5.sroa.4.0..sroa_idx.i.i.i.i.i = getelementptr inbounds %"option::Option<fmt::builders::PadAdapter>", %"option::Option<fmt::builders::PadAdapter>"* %slot.i.i, i16 0, i32 0, i16 2
  %_5.sroa.4.0..sroa_cast.i.i.i.i.i = bitcast i8* %_5.sroa.4.0..sroa_idx.i.i.i.i.i to [3 x i16]**
  store [3 x i16]* %_9.1.i.i.i.i, [3 x i16]** %_5.sroa.4.0..sroa_cast.i.i.i.i.i, align 1, !noalias !1040
  %_5.sroa.5.0..sroa_idx.i.i.i.i.i = getelementptr inbounds %"option::Option<fmt::builders::PadAdapter>", %"option::Option<fmt::builders::PadAdapter>"* %slot.i.i, i16 0, i32 0, i16 4
  %_5.sroa.5.0..sroa_cast.i.i.i.i.i = bitcast i8* %_5.sroa.5.0..sroa_idx.i.i.i.i.i to i8**
  store i8* %_16.i.i, i8** %_5.sroa.5.0..sroa_cast.i.i.i.i.i, align 1, !noalias !1040
  %_10.i.i.i.i = load i32, i32* %_21.i.i.i, align 1, !noalias !1035
  %18 = getelementptr inbounds i32, i32* %_21.i.i.i, i16 1
  %_11.i.i.i.i = load i32, i32* %18, align 1, !range !690, !noalias !1035
  %19 = getelementptr inbounds i32, i32* %_21.i.i.i, i16 2
  %20 = bitcast i32* %19 to i8*
  %_12.i.i.i.i = load i8, i8* %20, align 1, !range !696, !noalias !1035
  %21 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %9, i16 0, i32 7, i32 0
  %22 = load i8, i8* %21, align 1, !range !87, !noalias !1035
  %23 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %9, i16 0, i32 7, i32 1
  %_13.1.i.i.i.i = load i16, i16* %23, align 1, !noalias !1035
  %24 = getelementptr inbounds i32, i32* %_21.i.i.i, i16 3
  %25 = bitcast i32* %24 to i8*
  %26 = load i8, i8* %25, align 1, !range !87, !noalias !1035
  %27 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %9, i16 0, i32 9, i32 1
  %_14.1.i.i.i.i = load i16, i16* %27, align 1, !noalias !1035
  %28 = bitcast %"fmt::Formatter"* %writer.i.i to i32*
  store i32 %_10.i.i.i.i, i32* %28, align 1, !alias.scope !1043, !noalias !1023
  %29 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 3
  store i32 %_11.i.i.i.i, i32* %29, align 1, !alias.scope !1043, !noalias !1023
  %30 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 5
  store i8 %_12.i.i.i.i, i8* %30, align 1, !alias.scope !1043, !noalias !1023
  %31 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 7, i32 0
  store i8 %22, i8* %31, align 1, !alias.scope !1043, !noalias !1023
  %32 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 7, i32 1
  store i16 %_13.1.i.i.i.i, i16* %32, align 1, !alias.scope !1043, !noalias !1023
  %33 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 9, i32 0
  store i8 %26, i8* %33, align 1, !alias.scope !1043, !noalias !1023
  %34 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 9, i32 1
  store i16 %_14.1.i.i.i.i, i16* %34, align 1, !alias.scope !1043, !noalias !1023
  %35 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 11, i32 0
  %36 = bitcast {}** %35 to i8**
  store i8* %13, i8** %36, align 1, !alias.scope !1043, !noalias !1023
  %37 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %writer.i.i, i16 0, i32 11, i32 1
  store [3 x i16]* bitcast ({ void (%"fmt::builders::PadAdapter"*) addrspace(1)*, i16, i16, i1 (%"fmt::builders::PadAdapter"*, [0 x i8]*, i16) addrspace(1)*, i1 (%"fmt::builders::PadAdapter"*, i32) addrspace(1)*, i1 (%"fmt::builders::PadAdapter"*, %"fmt::Arguments"*) addrspace(1)* }* @vtable.e to [3 x i16]*), [3 x i16]** %37, align 1, !alias.scope !1043, !noalias !1023
  %38 = getelementptr inbounds [3 x i16], [3 x i16]* %2, i16 0, i16 3
  %39 = bitcast i16* %38 to i1 ({}*, %"fmt::Formatter"*) addrspace(1)**
  %40 = load i1 ({}*, %"fmt::Formatter"*) addrspace(1)*, i1 ({}*, %"fmt::Formatter"*) addrspace(1)** %39, align 1, !invariant.load !568, !noalias !1023, !nonnull !568
  %_18.i.i = call zeroext addrspace(1) i1 %40({}* nonnull align 1 %1, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %writer.i.i), !noalias !1023
  br i1 %_18.i.i, label %bb15.i.i, label %bb9.i.i

bb9.i.i:                                          ; preds = %bb5.i.i
  %_3.0.i.i.i = load {}*, {}** %35, align 1, !noalias !1044, !nonnull !568
  %41 = bitcast [3 x i16]** %37 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %41, align 1, !noalias !1044, !nonnull !568
  %42 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %43 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %42, align 1, !invariant.load !568, !noalias !1044, !nonnull !568
  %44 = call zeroext addrspace(1) i1 %43({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18677 to [0 x i8]*), i16 2), !noalias !1023
  br i1 %44, label %bb15.i.i, label %bb19.i.i

bb15.i.i:                                         ; preds = %bb9.i.i, %bb5.i.i
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 19, i8* nonnull %15), !noalias !1023
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %13), !noalias !1023
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h6c49f9488290e374E.exit"

bb19.i.i:                                         ; preds = %bb9.i.i
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 19, i8* nonnull %15), !noalias !1023
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %13), !noalias !1023
  br label %bb31.i.i

bb31.i.i:                                         ; preds = %bb19.i.i, %bb4.i.i
  store i8 0, i8* %5, align 1, !noalias !1023
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h6c49f9488290e374E.exit"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h6c49f9488290e374E.exit": ; preds = %start, %bb4.i.i, %bb15.i.i, %bb31.i.i
  %.0.i = phi i8 [ 1, %start ], [ 0, %bb31.i.i ], [ 1, %bb15.i.i ], [ 1, %bb4.i.i ]
  store i8 %.0.i, i8* %3, align 1
  %45 = getelementptr inbounds %"fmt::builders::DebugMap", %"fmt::builders::DebugMap"* %0, i16 0, i32 5
  store i8 1, i8* %45, align 1
  ret %"fmt::builders::DebugMap"* %0
}

; core::fmt::builders::DebugMap::finish
; Function Attrs: uwtable
define zeroext i1 @_ZN4core3fmt8builders8DebugMap6finish17h8ae41f5fd648ebb9E(%"fmt::builders::DebugMap"* align 1 dereferenceable(6) %0) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %1 = getelementptr inbounds %"fmt::builders::DebugMap", %"fmt::builders::DebugMap"* %0, i16 0, i32 3
  %2 = load i8, i8* %1, align 1, !range !87
  %_2 = icmp eq i8 %2, 0
  br i1 %_2, label %bb3.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h8104936a2b3130aaE.exit"

bb3.i:                                            ; preds = %start
  %3 = getelementptr inbounds %"fmt::builders::DebugMap", %"fmt::builders::DebugMap"* %0, i16 0, i32 7
  %4 = load i8, i8* %3, align 1, !range !87
  %_5.i.i = icmp eq i8 %4, 0
  br i1 %_5.i.i, label %"_ZN4core3fmt8builders8DebugMap6finish28_$u7b$$u7b$closure$u7d$$u7d$17h6c4ab86a815cd597E.exit.i", label %bb2.i.i

bb2.i.i:                                          ; preds = %bb3.i
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [46 x i8] }>* @alloc18678 to [0 x i8]*), i16 46, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18680 to %"panic::Location"*))
  unreachable

"_ZN4core3fmt8builders8DebugMap6finish28_$u7b$$u7b$closure$u7d$$u7d$17h6c4ab86a815cd597E.exit.i": ; preds = %bb3.i
  %5 = bitcast %"fmt::builders::DebugMap"* %0 to %"fmt::Formatter"**
  %_8.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %5, align 1, !nonnull !568
  %6 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_8.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %6, align 1, !noalias !1047, !nonnull !568
  %7 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_8.i.i, i16 0, i32 11, i32 1
  %8 = bitcast [3 x i16]** %7 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %8, align 1, !noalias !1047, !nonnull !568
  %9 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %10 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %9, align 1, !invariant.load !568, !noalias !1047, !nonnull !568
  %11 = tail call zeroext addrspace(1) i1 %10({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h8104936a2b3130aaE.exit"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h8104936a2b3130aaE.exit": ; preds = %start, %"_ZN4core3fmt8builders8DebugMap6finish28_$u7b$$u7b$closure$u7d$$u7d$17h6c4ab86a815cd597E.exit.i"
  %.0.i = phi i1 [ true, %start ], [ %11, %"_ZN4core3fmt8builders8DebugMap6finish28_$u7b$$u7b$closure$u7d$$u7d$17h6c4ab86a815cd597E.exit.i" ]
  ret i1 %.0.i
}

; core::fmt::float::float_to_decimal_common_exact
; Function Attrs: noinline uwtable
define internal fastcc zeroext i1 @_ZN4core3fmt5float29float_to_decimal_common_exact17h2d293e0c1d02ed88E(%"fmt::Formatter"* nocapture align 1 dereferenceable(19) %fmt, float %num.val, i8 %sign, i16 %precision) unnamed_addr addrspace(1) #11 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_4.i.i.i = alloca %"option::Option<(usize, i16)>", align 1
  %full_decoded.i = alloca %"num::flt2dec::decoder::FullDecoded", align 1
  %formatted = alloca %"num::flt2dec::Formatted", align 1
  %parts = alloca %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", align 1
  %buf = alloca %"mem::maybe_uninit::MaybeUninit<[u8; 1024]>", align 1
  %0 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[u8; 1024]>", %"mem::maybe_uninit::MaybeUninit<[u8; 1024]>"* %buf, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 1024, i8* nonnull %0)
  %1 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 20, i8* nonnull %1)
  %2 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %2)
  %_11.0 = bitcast %"mem::maybe_uninit::MaybeUninit<[u8; 1024]>"* %buf to [0 x i8]*
  %3 = bitcast float %num.val to i32
  %_10.i.i.i = lshr i32 %3, 23
  %4 = trunc i32 %_10.i.i.i to i16
  %5 = and i16 %4, 255
  %_13.i.i.i = icmp eq i16 %5, 0
  %_15.i.i.i = and i32 %3, 8388607
  %6 = shl nuw nsw i32 %_15.i.i.i, 1
  %7 = or i32 %_15.i.i.i, 8388608
  %mantissa.0.i.i.i = select i1 %_13.i.i.i, i32 %6, i32 %7
  %_20.i.i.i = zext i32 %mantissa.0.i.i.i to i64
  %_8.i.i = and i64 %_20.i.i.i, 1
  %8 = icmp eq i32 %_15.i.i.i, 0
  %9 = and i32 %3, 2147483647
  %10 = icmp eq i32 %9, 0
  br i1 %10, label %_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %start
  %11 = trunc i32 %3 to i31
  %trunc.i.i.i = and i31 %11, -8388608
  switch i31 %trunc.i.i.i, label %bb3.i.i [
    i31 0, label %bb8.i.i
    i31 -8388608, label %"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17hfe9954e5c26e2ab2E.exit.i"
  ]

"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17hfe9954e5c26e2ab2E.exit.i": ; preds = %bb3.i.i.i
  %spec.select.i = select i1 %8, i8 3, i8 2
  br label %_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i

bb3.i.i:                                          ; preds = %bb3.i.i.i
  %_20.i.i = icmp eq i32 %mantissa.0.i.i.i, 8388608
  br i1 %_20.i.i, label %bb12.i.i, label %bb11.i.i

bb8.i.i:                                          ; preds = %bb3.i.i.i
  %12 = add nsw i16 %5, -150
  %13 = trunc i64 %_8.i.i to i8
  %14 = xor i8 %13, 1
  br label %_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i

bb11.i.i:                                         ; preds = %bb3.i.i
  %_30.i.i = shl nuw nsw i64 %_20.i.i.i, 1
  %_32.i.i = add nsw i16 %5, -151
  %15 = trunc i64 %_8.i.i to i8
  %phitmp.i.i = xor i8 %15, 1
  br label %_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i

bb12.i.i:                                         ; preds = %bb3.i.i
  %_26.i.i = add nsw i16 %5, -152
  br label %_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i

_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i: ; preds = %bb12.i.i, %bb11.i.i, %bb8.i.i, %"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17hfe9954e5c26e2ab2E.exit.i", %start
  %decoded.sroa.0.sroa.0.1.i.i = phi i64 [ %_20.i.i.i, %bb8.i.i ], [ 33554432, %bb12.i.i ], [ %_30.i.i, %bb11.i.i ], [ undef, %"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17hfe9954e5c26e2ab2E.exit.i" ], [ undef, %start ]
  %decoded.sroa.0.sroa.7.1.i.i = phi i64 [ 1, %bb8.i.i ], [ 2, %bb12.i.i ], [ 1, %bb11.i.i ], [ undef, %"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17hfe9954e5c26e2ab2E.exit.i" ], [ undef, %start ]
  %decoded.sroa.0.sroa.8.1.i.i = phi i16 [ %12, %bb8.i.i ], [ %_26.i.i, %bb12.i.i ], [ %_32.i.i, %bb11.i.i ], [ undef, %"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17hfe9954e5c26e2ab2E.exit.i" ], [ undef, %start ]
  %decoded.sroa.6.1.i.i = phi i8 [ %14, %bb8.i.i ], [ 1, %bb12.i.i ], [ %phitmp.i.i, %bb11.i.i ], [ %spec.select.i, %"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17hfe9954e5c26e2ab2E.exit.i" ], [ 4, %start ]
  %negative.i = icmp slt i32 %3, 0
  %16 = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 27, i8* nonnull %16), !noalias !1050
  %_15.sroa.4.1..sroa_cast.i = bitcast %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i to i64*
  store i64 %decoded.sroa.0.sroa.0.1.i.i, i64* %_15.sroa.4.1..sroa_cast.i, align 1, !noalias !1050
  %_15.sroa.6.1..sroa_idx.i = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 0, i16 8
  %_15.sroa.6.1..sroa_cast.i = bitcast i8* %_15.sroa.6.1..sroa_idx.i to i64*
  store i64 1, i64* %_15.sroa.6.1..sroa_cast.i, align 1, !noalias !1050
  %_15.sroa.7.1..sroa_idx.i = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 0, i16 16
  %_15.sroa.7.1..sroa_cast.i = bitcast i8* %_15.sroa.7.1..sroa_idx.i to i64*
  store i64 %decoded.sroa.0.sroa.7.1.i.i, i64* %_15.sroa.7.1..sroa_cast.i, align 1, !noalias !1050
  %_15.sroa.8.1..sroa_idx.i = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 0, i16 24
  %_15.sroa.8.1..sroa_cast.i = bitcast i8* %_15.sroa.8.1..sroa_idx.i to i16*
  store i16 %decoded.sroa.0.sroa.8.1.i.i, i16* %_15.sroa.8.1..sroa_cast.i, align 1, !noalias !1050
  %_15.sroa.9.1..sroa_idx.i = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 1
  store i8 %decoded.sroa.6.1.i.i, i8* %_15.sroa.9.1..sroa_idx.i, align 1, !noalias !1050
  %17 = add i8 %decoded.sroa.6.1.i.i, -2
  %18 = icmp ult i8 %17, 3
  %narrow.i.i = select i1 %18, i8 %17, i8 3
  %trunc.i1.i = trunc i8 %narrow.i.i to i2
  switch i2 %trunc.i1.i, label %bb1.i.i [
    i2 0, label %bb11.i
    i2 -2, label %bb2.i.i
  ]

bb110.i.i:                                        ; preds = %bb2.i.i
  unreachable

bb1.i.i:                                          ; preds = %_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i
  %switch.i.i = icmp ult i8 %sign, 2
  %.28.i.i = select i1 %negative.i, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0)
  %.29.i.i = select i1 %negative.i, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19124 to [0 x i8]*)
  %not.switch.i.i = xor i1 %switch.i.i, true
  %.sroa.12.0.shrunk.i.i = or i1 %negative.i, %not.switch.i.i
  %.sroa.0.0.i.i = select i1 %switch.i.i, [0 x i8]* %.28.i.i, [0 x i8]* %.29.i.i
  %.sroa.12.0.i.i = zext i1 %.sroa.12.0.shrunk.i.i to i16
  %switch32.i = icmp eq i2 %trunc.i1.i, -1
  br i1 %switch32.i, label %bb8.i, label %bb14.i

bb2.i.i:                                          ; preds = %_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i
  switch i8 %sign, label %bb110.i.i [
    i8 0, label %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i
    i8 1, label %bb6.i2.i
    i8 2, label %bb10.i.i
    i8 3, label %bb11.i3.i
  ]

bb6.i2.i:                                         ; preds = %bb2.i.i
  %.25.i.i = select i1 %negative.i, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0)
  %.lobit.i = lshr i32 %3, 31
  %19 = trunc i32 %.lobit.i to i16
  br label %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i

bb10.i.i:                                         ; preds = %bb2.i.i
  br label %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i

bb11.i3.i:                                        ; preds = %bb2.i.i
  %.26.i.i = select i1 %negative.i, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19124 to [0 x i8]*)
  br label %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i

_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i: ; preds = %bb11.i3.i, %bb10.i.i, %bb6.i2.i, %bb2.i.i
  %.sroa.12.0.shrunk.i.ph.i = phi i16 [ 1, %bb11.i3.i ], [ %19, %bb6.i2.i ], [ 0, %bb2.i.i ], [ 1, %bb10.i.i ]
  %.sroa.0.0.i.ph.i = phi [0 x i8]* [ %.26.i.i, %bb11.i3.i ], [ %.25.i.i, %bb6.i2.i ], [ getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), %bb2.i.i ], [ bitcast (<{ [1 x i8] }>* @alloc19124 to [0 x i8]*), %bb10.i.i ]
  %_49.i = icmp eq i16 %precision, 0
  store i8 2, i8* %1, align 1, !noalias !1050
  %20 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 1
  %_69.sroa.4.0..sroa_cast26.i = bitcast i8* %20 to [0 x i8]**
  br i1 %_49.i, label %bb22.i, label %bb19.i

bb8.i:                                            ; preds = %bb1.i.i
  %decoded.i = bitcast %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i to %"num::flt2dec::decoder::Decoded"*
  %_6.i.i = icmp slt i16 %decoded.sroa.0.sroa.8.1.i.i, 0
  %..i.i = select i1 %_6.i.i, i16 -12, i16 5
  %_4.i.i = mul i16 %..i.i, %decoded.sroa.0.sroa.8.1.i.i
  %_2.i.i = lshr i16 %_4.i.i, 4
  %21 = add nuw nsw i16 %_2.i.i, 21
  %_86.i = icmp ugt i16 %_4.i.i, 16063
  br i1 %_86.i, label %bb28.i, label %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit.i"

bb11.i:                                           ; preds = %_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i
  store i8 2, i8* %1, align 1, !noalias !1050
  %22 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 1
  %_23.sroa.4.0..sroa_cast8.i = bitcast i8* %22 to [0 x i8]**
  store [0 x i8]* bitcast (<{ [3 x i8] }>* @alloc245 to [0 x i8]*), [0 x i8]** %_23.sroa.4.0..sroa_cast8.i, align 1, !noalias !1050
  %23 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 3
  %_23.sroa.5.0..sroa_cast10.i = bitcast i8* %23 to i16*
  store i16 3, i16* %_23.sroa.5.0..sroa_cast10.i, align 1, !noalias !1050
  %24 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), [0 x i8]** %24, align 1, !alias.scope !1050
  br label %_ZN4core3num7flt2dec18to_exact_fixed_str17hdda2f2d55f57491cE.exit

bb14.i:                                           ; preds = %bb1.i.i
  store i8 2, i8* %1, align 1, !noalias !1050
  %25 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 1
  %_36.sroa.4.0..sroa_cast12.i = bitcast i8* %25 to [0 x i8]**
  store [0 x i8]* bitcast (<{ [3 x i8] }>* @alloc246 to [0 x i8]*), [0 x i8]** %_36.sroa.4.0..sroa_cast12.i, align 1, !noalias !1050
  %26 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 3
  %_36.sroa.5.0..sroa_cast14.i = bitcast i8* %26 to i16*
  store i16 3, i16* %_36.sroa.5.0..sroa_cast14.i, align 1, !noalias !1050
  %27 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %.sroa.0.0.i.i, [0 x i8]** %27, align 1, !alias.scope !1050
  br label %_ZN4core3num7flt2dec18to_exact_fixed_str17hdda2f2d55f57491cE.exit

bb19.i:                                           ; preds = %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i
  store [0 x i8]* bitcast (<{ [2 x i8] }>* @alloc239 to [0 x i8]*), [0 x i8]** %_69.sroa.4.0..sroa_cast26.i, align 1, !noalias !1050
  %28 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 3
  %_51.sroa.5.0..sroa_cast18.i = bitcast i8* %28 to i16*
  store i16 2, i16* %_51.sroa.5.0..sroa_cast18.i, align 1, !noalias !1050
  %29 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 5
  store i8 0, i8* %29, align 1, !noalias !1050
  %30 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 6
  %_58.sroa.4.0..sroa_cast20.i = bitcast i8* %30 to i16*
  store i16 %precision, i16* %_58.sroa.4.0..sroa_cast20.i, align 1, !noalias !1050
  %31 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %.sroa.0.0.i.ph.i, [0 x i8]** %31, align 1, !alias.scope !1050
  br label %_ZN4core3num7flt2dec18to_exact_fixed_str17hdda2f2d55f57491cE.exit

bb22.i:                                           ; preds = %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i
  store [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc247 to [0 x i8]*), [0 x i8]** %_69.sroa.4.0..sroa_cast26.i, align 1, !noalias !1050
  %32 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 3
  %_69.sroa.5.0..sroa_cast28.i = bitcast i8* %32 to i16*
  store i16 1, i16* %_69.sroa.5.0..sroa_cast28.i, align 1, !noalias !1050
  %33 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %.sroa.0.0.i.ph.i, [0 x i8]** %33, align 1, !alias.scope !1050
  br label %_ZN4core3num7flt2dec18to_exact_fixed_str17hdda2f2d55f57491cE.exit

"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit.i": ; preds = %bb8.i
  %_93.i = icmp sgt i16 %precision, -1
  %34 = sub i16 0, %precision
  %limit.0.i = select i1 %_93.i, i16 %34, i16 -32768
  %35 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %_4.i.i.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 5, i8* nonnull %35), !noalias !1053
; call core::num::flt2dec::strategy::grisu::format_exact_opt
  call addrspace(1) void @_ZN4core3num7flt2dec8strategy5grisu16format_exact_opt17he193f633dc4a3d8fE(%"option::Option<(usize, i16)>"* noalias nocapture nonnull sret dereferenceable(5) %_4.i.i.i, %"num::flt2dec::decoder::Decoded"* noalias nonnull readonly align 1 dereferenceable(27) %decoded.i, [0 x i8]* nonnull align 1 %_11.0, i16 %21, i16 %limit.0.i)
  %36 = load i8, i8* %35, align 1, !range !87, !noalias !1053
  %switch.i.i.i = icmp eq i8 %36, 1
  br i1 %switch.i.i.i, label %bb4.i.i4.i, label %bb2.i.i.i

bb2.i.i.i:                                        ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit.i"
; call core::num::flt2dec::strategy::dragon::format_exact
  %37 = call addrspace(1) { i16, i16 } @_ZN4core3num7flt2dec8strategy6dragon12format_exact17h8254a82163510597E(%"num::flt2dec::decoder::Decoded"* noalias nonnull readonly align 1 dereferenceable(27) %decoded.i, [0 x i8]* nonnull align 1 %_11.0, i16 %21, i16 %limit.0.i)
  %.fca.0.extract.i.i.i = extractvalue { i16, i16 } %37, 0
  %.fca.1.extract.i.i.i = extractvalue { i16, i16 } %37, 1
  br label %_ZN4core3ops8function5FnMut8call_mut17ha8ecc7f04fdaafcaE.exit.i

bb4.i.i4.i:                                       ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit.i"
  %38 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %_4.i.i.i, i16 0, i32 2
  %39 = bitcast [4 x i8]* %38 to i16*
  %ret.0.i.i.i = load i16, i16* %39, align 1, !noalias !1053
  %40 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %_4.i.i.i, i16 0, i32 2, i16 2
  %41 = bitcast i8* %40 to i16*
  %ret.1.i.i.i = load i16, i16* %41, align 1, !noalias !1053
  br label %_ZN4core3ops8function5FnMut8call_mut17ha8ecc7f04fdaafcaE.exit.i

_ZN4core3ops8function5FnMut8call_mut17ha8ecc7f04fdaafcaE.exit.i: ; preds = %bb4.i.i4.i, %bb2.i.i.i
  %.sroa.3.0.i.i.i = phi i16 [ %.fca.1.extract.i.i.i, %bb2.i.i.i ], [ %ret.1.i.i.i, %bb4.i.i4.i ]
  %.sroa.0.0.i.i.i = phi i16 [ %.fca.0.extract.i.i.i, %bb2.i.i.i ], [ %ret.0.i.i.i, %bb4.i.i4.i ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 5, i8* nonnull %35), !noalias !1053
  %_110.i = icmp sgt i16 %.sroa.3.0.i.i.i, %limit.0.i
  br i1 %_110.i, label %bb34.i, label %bb35.i

bb28.i:                                           ; preds = %bb8.i
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [37 x i8] }>* @alloc18530 to [0 x i8]*), i16 37, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18496 to %"panic::Location"*))
  unreachable

bb34.i:                                           ; preds = %_ZN4core3ops8function5FnMut8call_mut17ha8ecc7f04fdaafcaE.exit.i
  %_8.i.i.i.i = icmp ugt i16 %.sroa.0.0.i.i.i, 1024
  br i1 %_8.i.i.i.i, label %bb5.i.i.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i"

bb5.i.i.i.i:                                      ; preds = %bb34.i
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.sroa.0.0.i.i.i, i16 1024, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18510 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i": ; preds = %bb34.i
  %42 = icmp eq i16 %.sroa.0.0.i.i.i, 0
  br i1 %42, label %bb3.i, label %bb4.i

bb3.i:                                            ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i"
; call core::panicking::panic
  call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [33 x i8] }>* @alloc18355 to [0 x i8]*), i16 33, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18306 to %"panic::Location"*))
  unreachable

bb4.i:                                            ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i"
  %_13.i = load i8, i8* %0, align 1, !alias.scope !1058
  %_12.i = icmp ult i8 %_13.i, 49
  br i1 %_12.i, label %bb6.i, label %bb5.i

bb5.i:                                            ; preds = %bb4.i
  %_25.i = icmp slt i16 %.sroa.3.0.i.i.i, 1
  br i1 %_25.i, label %bb14.i4, label %bb10.i

bb6.i:                                            ; preds = %bb4.i
; call core::panicking::panic
  call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [31 x i8] }>* @alloc18360 to [0 x i8]*), i16 31, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18311 to %"panic::Location"*))
  unreachable

bb10.i:                                           ; preds = %bb5.i
  %_79.i = icmp ult i16 %.sroa.3.0.i.i.i, %.sroa.0.0.i.i.i
  store i8 2, i8* %1, align 1, !noalias !1058
  %43 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 1
  %44 = bitcast i8* %43 to %"mem::maybe_uninit::MaybeUninit<[u8; 1024]>"**
  store %"mem::maybe_uninit::MaybeUninit<[u8; 1024]>"* %buf, %"mem::maybe_uninit::MaybeUninit<[u8; 1024]>"** %44, align 1, !noalias !1058
  %45 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 3
  %_83.sroa.5.0..sroa_cast35.i = bitcast i8* %45 to i16*
  br i1 %_79.i, label %bb35.i6, label %bb46.i

bb14.i4:                                          ; preds = %bb5.i
  %_28.i = sub nsw i16 0, %.sroa.3.0.i.i.i
  store i8 2, i8* %1, align 1, !noalias !1058
  %46 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 1
  %_31.sroa.4.0..sroa_cast13.i = bitcast i8* %46 to [0 x i8]**
  store [0 x i8]* bitcast (<{ [2 x i8] }>* @alloc239 to [0 x i8]*), [0 x i8]** %_31.sroa.4.0..sroa_cast13.i, align 1, !noalias !1058
  %47 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 3
  %_31.sroa.5.0..sroa_cast15.i = bitcast i8* %47 to i16*
  store i16 2, i16* %_31.sroa.5.0..sroa_cast15.i, align 1, !noalias !1058
  %48 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 5
  store i8 0, i8* %48, align 1, !noalias !1058
  %49 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 6
  %_38.sroa.4.0..sroa_cast17.i = bitcast i8* %49 to i16*
  store i16 %_28.i, i16* %_38.sroa.4.0..sroa_cast17.i, align 1, !noalias !1058
  %50 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 10
  store i8 2, i8* %50, align 1, !noalias !1058
  %51 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 11
  %52 = bitcast i8* %51 to %"mem::maybe_uninit::MaybeUninit<[u8; 1024]>"**
  store %"mem::maybe_uninit::MaybeUninit<[u8; 1024]>"* %buf, %"mem::maybe_uninit::MaybeUninit<[u8; 1024]>"** %52, align 1, !noalias !1058
  %53 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 13
  %_43.sroa.5.0..sroa_cast25.i = bitcast i8* %53 to i16*
  store i16 %.sroa.0.0.i.i.i, i16* %_43.sroa.5.0..sroa_cast25.i, align 1, !noalias !1058
  %_49.i3 = icmp ult i16 %.sroa.0.0.i.i.i, %precision
  br i1 %_49.i3, label %bb17.i, label %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit

bb17.i:                                           ; preds = %bb14.i4
  %_54.i = sub i16 %precision, %.sroa.0.0.i.i.i
  %_53.i = icmp ugt i16 %_54.i, %_28.i
  br i1 %_53.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit76.i", label %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit76.i": ; preds = %bb17.i
  %_60.i = add i16 %_54.i, %.sroa.3.0.i.i.i
  %54 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 15
  store i8 0, i8* %54, align 1, !noalias !1058
  %55 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 16
  %_59.sroa.4.0..sroa_cast27.i = bitcast i8* %55 to i16*
  store i16 %_60.i, i16* %_59.sroa.4.0..sroa_cast27.i, align 1, !noalias !1058
  br label %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit

bb35.i6:                                          ; preds = %bb10.i
  store i16 %.sroa.3.0.i.i.i, i16* %_83.sroa.5.0..sroa_cast35.i, align 1, !noalias !1058
  %56 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 5
  store i8 2, i8* %56, align 1, !noalias !1058
  %57 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 6
  %_93.sroa.4.0..sroa_cast38.i = bitcast i8* %57 to [0 x i8]**
  store [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc16827 to [0 x i8]*), [0 x i8]** %_93.sroa.4.0..sroa_cast38.i, align 1, !noalias !1058
  %58 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 8
  %_93.sroa.5.0..sroa_cast40.i = bitcast i8* %58 to i16*
  store i16 1, i16* %_93.sroa.5.0..sroa_cast40.i, align 1, !noalias !1058
  %59 = getelementptr inbounds [0 x i8], [0 x i8]* %_11.0, i16 0, i16 %.sroa.3.0.i.i.i
  %_7.i.i.i.i.i = sub nsw i16 %.sroa.0.0.i.i.i, %.sroa.3.0.i.i.i
  %60 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 10
  store i8 2, i8* %60, align 1, !noalias !1058
  %61 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 11
  %62 = bitcast i8* %61 to i8**
  store i8* %59, i8** %62, align 1, !noalias !1058
  %63 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 13
  %_100.sroa.5.0..sroa_cast44.i = bitcast i8* %63 to i16*
  store i16 %_7.i.i.i.i.i, i16* %_100.sroa.5.0..sroa_cast44.i, align 1, !noalias !1058
  %_110.i5 = icmp ult i16 %_7.i.i.i.i.i, %precision
  br i1 %_110.i5, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit84.i", label %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit84.i": ; preds = %bb35.i6
  %_11973.i = add i16 %.sroa.3.0.i.i.i, %precision
  %_117.i7 = sub i16 %_11973.i, %.sroa.0.0.i.i.i
  %64 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 15
  store i8 0, i8* %64, align 1, !noalias !1058
  %65 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 16
  %_116.sroa.4.0..sroa_cast47.i = bitcast i8* %65 to i16*
  store i16 %_117.i7, i16* %_116.sroa.4.0..sroa_cast47.i, align 1, !noalias !1058
  br label %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit

bb46.i:                                           ; preds = %bb10.i
  store i16 %.sroa.0.0.i.i.i, i16* %_83.sroa.5.0..sroa_cast35.i, align 1, !noalias !1058
  %_140.i = sub nsw i16 %.sroa.3.0.i.i.i, %.sroa.0.0.i.i.i
  %66 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 5
  store i8 0, i8* %66, align 1, !noalias !1058
  %67 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 6
  %_139.sroa.4.0..sroa_cast57.i = bitcast i8* %67 to i16*
  store i16 %_140.i, i16* %_139.sroa.4.0..sroa_cast57.i, align 1, !noalias !1058
  %_147.i = icmp eq i16 %precision, 0
  br i1 %_147.i, label %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit90.i"

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit90.i": ; preds = %bb46.i
  %68 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 10
  store i8 2, i8* %68, align 1, !noalias !1058
  %69 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 11
  %_149.sroa.4.0..sroa_cast63.i = bitcast i8* %69 to [0 x i8]**
  store [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc16827 to [0 x i8]*), [0 x i8]** %_149.sroa.4.0..sroa_cast63.i, align 1, !noalias !1058
  %70 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 13
  %_149.sroa.5.0..sroa_cast65.i = bitcast i8* %70 to i16*
  store i16 1, i16* %_149.sroa.5.0..sroa_cast65.i, align 1, !noalias !1058
  %71 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 15
  store i8 0, i8* %71, align 1, !noalias !1058
  %72 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 16
  %_156.sroa.4.0..sroa_cast67.i = bitcast i8* %72 to i16*
  store i16 %precision, i16* %_156.sroa.4.0..sroa_cast67.i, align 1, !noalias !1058
  br label %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit

_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit: ; preds = %bb14.i4, %bb17.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit76.i", %bb35.i6, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit84.i", %bb46.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit90.i"
  %.sroa.7.1.i = phi i16 [ 4, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit84.i" ], [ 4, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit90.i" ], [ 4, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit76.i" ], [ 3, %bb17.i ], [ 3, %bb14.i4 ], [ 3, %bb35.i6 ], [ 2, %bb46.i ]
  %73 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %.sroa.0.0.i.i, [0 x i8]** %73, align 1, !alias.scope !1050
  br label %_ZN4core3num7flt2dec18to_exact_fixed_str17hdda2f2d55f57491cE.exit

bb35.i:                                           ; preds = %_ZN4core3ops8function5FnMut8call_mut17ha8ecc7f04fdaafcaE.exit.i
  %_117.i = icmp eq i16 %precision, 0
  store i8 2, i8* %1, align 1, !noalias !1050
  %74 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 1
  %_137.sroa.4.0..sroa_cast47.i = bitcast i8* %74 to [0 x i8]**
  br i1 %_117.i, label %bb41.i, label %bb38.i

bb38.i:                                           ; preds = %bb35.i
  store [0 x i8]* bitcast (<{ [2 x i8] }>* @alloc239 to [0 x i8]*), [0 x i8]** %_137.sroa.4.0..sroa_cast47.i, align 1, !noalias !1050
  %75 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 3
  %_119.sroa.5.0..sroa_cast39.i = bitcast i8* %75 to i16*
  store i16 2, i16* %_119.sroa.5.0..sroa_cast39.i, align 1, !noalias !1050
  %76 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 5
  store i8 0, i8* %76, align 1, !noalias !1050
  %77 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 6
  %_126.sroa.4.0..sroa_cast41.i = bitcast i8* %77 to i16*
  store i16 %precision, i16* %_126.sroa.4.0..sroa_cast41.i, align 1, !noalias !1050
  %78 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %.sroa.0.0.i.i, [0 x i8]** %78, align 1, !alias.scope !1050
  br label %_ZN4core3num7flt2dec18to_exact_fixed_str17hdda2f2d55f57491cE.exit

bb41.i:                                           ; preds = %bb35.i
  store [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc247 to [0 x i8]*), [0 x i8]** %_137.sroa.4.0..sroa_cast47.i, align 1, !noalias !1050
  %79 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 3
  %_137.sroa.5.0..sroa_cast49.i = bitcast i8* %79 to i16*
  store i16 1, i16* %_137.sroa.5.0..sroa_cast49.i, align 1, !noalias !1050
  %80 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %.sroa.0.0.i.i, [0 x i8]** %80, align 1, !alias.scope !1050
  br label %_ZN4core3num7flt2dec18to_exact_fixed_str17hdda2f2d55f57491cE.exit

_ZN4core3num7flt2dec18to_exact_fixed_str17hdda2f2d55f57491cE.exit: ; preds = %bb11.i, %bb14.i, %bb19.i, %bb22.i, %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit, %bb38.i, %bb41.i
  %.sink4 = phi i16 [ 0, %bb11.i ], [ %.sroa.12.0.i.i, %bb14.i ], [ %.sroa.12.0.shrunk.i.ph.i, %bb19.i ], [ %.sroa.12.0.shrunk.i.ph.i, %bb22.i ], [ %.sroa.12.0.i.i, %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit ], [ %.sroa.12.0.i.i, %bb38.i ], [ %.sroa.12.0.i.i, %bb41.i ]
  %.sink = phi i16 [ 1, %bb11.i ], [ 1, %bb14.i ], [ 2, %bb19.i ], [ 1, %bb22.i ], [ %.sroa.7.1.i, %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit ], [ 2, %bb38.i ], [ 1, %bb41.i ]
  %81 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 1, i32 1
  store i16 %.sink4, i16* %81, align 1, !alias.scope !1050
  %82 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 0
  %83 = bitcast [0 x %"num::flt2dec::Part"]** %82 to %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"**
  store %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"** %83, align 1, !alias.scope !1050
  %84 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 1
  store i16 %.sink, i16* %84, align 1, !alias.scope !1050
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 27, i8* nonnull %16), !noalias !1050
; call core::fmt::Formatter::pad_formatted_parts
  %85 = call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter19pad_formatted_parts17hd831476560d54163E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %fmt, %"num::flt2dec::Formatted"* noalias nonnull readonly align 1 dereferenceable(8) %formatted)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 8, i8* nonnull %2)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 20, i8* nonnull %1)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 1024, i8* nonnull %0)
  ret i1 %85
}

; core::fmt::float::float_to_decimal_common_exact
; Function Attrs: noinline uwtable
define internal fastcc zeroext i1 @_ZN4core3fmt5float29float_to_decimal_common_exact17h7149c4019af45629E(%"fmt::Formatter"* nocapture align 1 dereferenceable(19) %fmt, double %num.val, i8 %sign, i16 %precision) unnamed_addr addrspace(1) #11 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_4.i.i.i = alloca %"option::Option<(usize, i16)>", align 1
  %full_decoded.i = alloca %"num::flt2dec::decoder::FullDecoded", align 1
  %formatted = alloca %"num::flt2dec::Formatted", align 1
  %parts = alloca %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", align 1
  %buf = alloca %"mem::maybe_uninit::MaybeUninit<[u8; 1024]>", align 1
  %0 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[u8; 1024]>", %"mem::maybe_uninit::MaybeUninit<[u8; 1024]>"* %buf, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 1024, i8* nonnull %0)
  %1 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 20, i8* nonnull %1)
  %2 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %2)
  %_11.0 = bitcast %"mem::maybe_uninit::MaybeUninit<[u8; 1024]>"* %buf to [0 x i8]*
  %3 = bitcast double %num.val to i64
  %_10.i.i.i = lshr i64 %3, 52
  %4 = trunc i64 %_10.i.i.i to i16
  %5 = and i16 %4, 2047
  %_13.i.i.i = icmp eq i16 %5, 0
  %_15.i.i.i = and i64 %3, 4503599627370495
  %6 = shl nuw nsw i64 %_15.i.i.i, 1
  %7 = or i64 %_15.i.i.i, 4503599627370496
  %mantissa.0.i.i.i = select i1 %_13.i.i.i, i64 %6, i64 %7
  %8 = add nsw i16 %5, -1075
  %_8.i.i = and i64 %mantissa.0.i.i.i, 1
  %9 = icmp eq i64 %_15.i.i.i, 0
  %10 = and i64 %3, 9223372036854775807
  %11 = icmp eq i64 %10, 0
  br i1 %11, label %_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i, label %bb3.i.i.i.i

bb3.i.i.i.i:                                      ; preds = %start
  %12 = trunc i64 %3 to i63
  %trunc.i.i.i.i = and i63 %12, -4503599627370496
  switch i63 %trunc.i.i.i.i, label %bb3.i.i [
    i63 0, label %bb8.i.i
    i63 -4503599627370496, label %"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17ha6dce715db4a91a6E.exit.i.i"
  ]

"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17ha6dce715db4a91a6E.exit.i.i": ; preds = %bb3.i.i.i.i
  %spec.select.i.i = select i1 %9, i8 3, i8 2
  br label %_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i

bb3.i.i:                                          ; preds = %bb3.i.i.i.i
  %_20.i.i = icmp eq i64 %mantissa.0.i.i.i, 4503599627370496
  br i1 %_20.i.i, label %bb12.i.i, label %bb11.i.i

bb8.i.i:                                          ; preds = %bb3.i.i.i.i
  %13 = trunc i64 %_8.i.i to i8
  %14 = xor i8 %13, 1
  br label %_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i

bb11.i.i:                                         ; preds = %bb3.i.i
  %_30.i.i = shl nuw nsw i64 %mantissa.0.i.i.i, 1
  %_32.i.i = add nsw i16 %5, -1076
  %15 = trunc i64 %_8.i.i to i8
  %phitmp.i.i = xor i8 %15, 1
  br label %_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i

bb12.i.i:                                         ; preds = %bb3.i.i
  %_26.i.i = add nsw i16 %5, -1077
  br label %_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i

_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i: ; preds = %bb12.i.i, %bb11.i.i, %bb8.i.i, %"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17ha6dce715db4a91a6E.exit.i.i", %start
  %decoded.sroa.0.sroa.0.1.i.i = phi i64 [ %mantissa.0.i.i.i, %bb8.i.i ], [ undef, %"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17ha6dce715db4a91a6E.exit.i.i" ], [ undef, %start ], [ 18014398509481984, %bb12.i.i ], [ %_30.i.i, %bb11.i.i ]
  %decoded.sroa.0.sroa.7.1.i.i = phi i64 [ 1, %bb8.i.i ], [ undef, %"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17ha6dce715db4a91a6E.exit.i.i" ], [ undef, %start ], [ 2, %bb12.i.i ], [ 1, %bb11.i.i ]
  %decoded.sroa.0.sroa.8.1.i.i = phi i16 [ %8, %bb8.i.i ], [ undef, %"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17ha6dce715db4a91a6E.exit.i.i" ], [ undef, %start ], [ %_26.i.i, %bb12.i.i ], [ %_32.i.i, %bb11.i.i ]
  %decoded.sroa.6.1.i.i = phi i8 [ %14, %bb8.i.i ], [ %spec.select.i.i, %"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17ha6dce715db4a91a6E.exit.i.i" ], [ 4, %start ], [ 1, %bb12.i.i ], [ %phitmp.i.i, %bb11.i.i ]
  %negative.i = icmp slt i64 %3, 0
  %16 = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 27, i8* nonnull %16), !noalias !1061
  %_15.sroa.4.1..sroa_cast.i = bitcast %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i to i64*
  store i64 %decoded.sroa.0.sroa.0.1.i.i, i64* %_15.sroa.4.1..sroa_cast.i, align 1, !noalias !1061
  %_15.sroa.6.1..sroa_idx.i = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 0, i16 8
  %_15.sroa.6.1..sroa_cast.i = bitcast i8* %_15.sroa.6.1..sroa_idx.i to i64*
  store i64 1, i64* %_15.sroa.6.1..sroa_cast.i, align 1, !noalias !1061
  %_15.sroa.7.1..sroa_idx.i = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 0, i16 16
  %_15.sroa.7.1..sroa_cast.i = bitcast i8* %_15.sroa.7.1..sroa_idx.i to i64*
  store i64 %decoded.sroa.0.sroa.7.1.i.i, i64* %_15.sroa.7.1..sroa_cast.i, align 1, !noalias !1061
  %_15.sroa.8.1..sroa_idx.i = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 0, i16 24
  %_15.sroa.8.1..sroa_cast.i = bitcast i8* %_15.sroa.8.1..sroa_idx.i to i16*
  store i16 %decoded.sroa.0.sroa.8.1.i.i, i16* %_15.sroa.8.1..sroa_cast.i, align 1, !noalias !1061
  %_15.sroa.9.1..sroa_idx.i = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 1
  store i8 %decoded.sroa.6.1.i.i, i8* %_15.sroa.9.1..sroa_idx.i, align 1, !noalias !1061
  %17 = add i8 %decoded.sroa.6.1.i.i, -2
  %18 = icmp ult i8 %17, 3
  %narrow.i.i = select i1 %18, i8 %17, i8 3
  %trunc.i.i = trunc i8 %narrow.i.i to i2
  switch i2 %trunc.i.i, label %bb1.i.i [
    i2 0, label %bb11.i
    i2 -2, label %bb2.i.i
  ]

bb110.i.i:                                        ; preds = %bb2.i.i
  unreachable

bb1.i.i:                                          ; preds = %_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i
  %switch.i.i = icmp ult i8 %sign, 2
  %.28.i.i = select i1 %negative.i, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0)
  %.29.i.i = select i1 %negative.i, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19124 to [0 x i8]*)
  %not.switch.i.i = xor i1 %switch.i.i, true
  %.sroa.12.0.shrunk.i.i = or i1 %negative.i, %not.switch.i.i
  %.sroa.0.0.i.i = select i1 %switch.i.i, [0 x i8]* %.28.i.i, [0 x i8]* %.29.i.i
  %.sroa.12.0.i.i = zext i1 %.sroa.12.0.shrunk.i.i to i16
  %switch.i = icmp eq i2 %trunc.i.i, -1
  br i1 %switch.i, label %bb8.i, label %bb14.i

bb2.i.i:                                          ; preds = %_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i
  switch i8 %sign, label %bb110.i.i [
    i8 0, label %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i
    i8 1, label %bb6.i.i
    i8 2, label %bb10.i.i
    i8 3, label %bb11.i1.i
  ]

bb6.i.i:                                          ; preds = %bb2.i.i
  %.25.i.i = select i1 %negative.i, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0)
  %.lobit.i = lshr i64 %3, 63
  %19 = trunc i64 %.lobit.i to i16
  br label %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i

bb10.i.i:                                         ; preds = %bb2.i.i
  br label %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i

bb11.i1.i:                                        ; preds = %bb2.i.i
  %.26.i.i = select i1 %negative.i, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19124 to [0 x i8]*)
  br label %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i

_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i: ; preds = %bb11.i1.i, %bb10.i.i, %bb6.i.i, %bb2.i.i
  %.sroa.12.0.shrunk.i.ph.i = phi i16 [ 1, %bb11.i1.i ], [ %19, %bb6.i.i ], [ 0, %bb2.i.i ], [ 1, %bb10.i.i ]
  %.sroa.0.0.i.ph.i = phi [0 x i8]* [ %.26.i.i, %bb11.i1.i ], [ %.25.i.i, %bb6.i.i ], [ getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), %bb2.i.i ], [ bitcast (<{ [1 x i8] }>* @alloc19124 to [0 x i8]*), %bb10.i.i ]
  %_49.i = icmp eq i16 %precision, 0
  store i8 2, i8* %1, align 1, !noalias !1061
  %20 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 1
  %_69.sroa.4.0..sroa_cast26.i = bitcast i8* %20 to [0 x i8]**
  br i1 %_49.i, label %bb22.i, label %bb19.i

bb8.i:                                            ; preds = %bb1.i.i
  %decoded.i = bitcast %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i to %"num::flt2dec::decoder::Decoded"*
  %_6.i.i = icmp slt i16 %decoded.sroa.0.sroa.8.1.i.i, 0
  %..i.i = select i1 %_6.i.i, i16 -12, i16 5
  %_4.i.i = mul i16 %..i.i, %decoded.sroa.0.sroa.8.1.i.i
  %_2.i.i = lshr i16 %_4.i.i, 4
  %21 = add nuw nsw i16 %_2.i.i, 21
  %_86.i = icmp ugt i16 %_4.i.i, 16063
  br i1 %_86.i, label %bb28.i, label %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit.i"

bb11.i:                                           ; preds = %_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i
  store i8 2, i8* %1, align 1, !noalias !1061
  %22 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 1
  %_23.sroa.4.0..sroa_cast8.i = bitcast i8* %22 to [0 x i8]**
  store [0 x i8]* bitcast (<{ [3 x i8] }>* @alloc245 to [0 x i8]*), [0 x i8]** %_23.sroa.4.0..sroa_cast8.i, align 1, !noalias !1061
  %23 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 3
  %_23.sroa.5.0..sroa_cast10.i = bitcast i8* %23 to i16*
  store i16 3, i16* %_23.sroa.5.0..sroa_cast10.i, align 1, !noalias !1061
  %24 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), [0 x i8]** %24, align 1, !alias.scope !1061
  br label %_ZN4core3num7flt2dec18to_exact_fixed_str17h3f569356746c3469E.exit

bb14.i:                                           ; preds = %bb1.i.i
  store i8 2, i8* %1, align 1, !noalias !1061
  %25 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 1
  %_36.sroa.4.0..sroa_cast12.i = bitcast i8* %25 to [0 x i8]**
  store [0 x i8]* bitcast (<{ [3 x i8] }>* @alloc246 to [0 x i8]*), [0 x i8]** %_36.sroa.4.0..sroa_cast12.i, align 1, !noalias !1061
  %26 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 3
  %_36.sroa.5.0..sroa_cast14.i = bitcast i8* %26 to i16*
  store i16 3, i16* %_36.sroa.5.0..sroa_cast14.i, align 1, !noalias !1061
  %27 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %.sroa.0.0.i.i, [0 x i8]** %27, align 1, !alias.scope !1061
  br label %_ZN4core3num7flt2dec18to_exact_fixed_str17h3f569356746c3469E.exit

bb19.i:                                           ; preds = %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i
  store [0 x i8]* bitcast (<{ [2 x i8] }>* @alloc239 to [0 x i8]*), [0 x i8]** %_69.sroa.4.0..sroa_cast26.i, align 1, !noalias !1061
  %28 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 3
  %_51.sroa.5.0..sroa_cast18.i = bitcast i8* %28 to i16*
  store i16 2, i16* %_51.sroa.5.0..sroa_cast18.i, align 1, !noalias !1061
  %29 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 5
  store i8 0, i8* %29, align 1, !noalias !1061
  %30 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 6
  %_58.sroa.4.0..sroa_cast20.i = bitcast i8* %30 to i16*
  store i16 %precision, i16* %_58.sroa.4.0..sroa_cast20.i, align 1, !noalias !1061
  %31 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %.sroa.0.0.i.ph.i, [0 x i8]** %31, align 1, !alias.scope !1061
  br label %_ZN4core3num7flt2dec18to_exact_fixed_str17h3f569356746c3469E.exit

bb22.i:                                           ; preds = %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i
  store [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc247 to [0 x i8]*), [0 x i8]** %_69.sroa.4.0..sroa_cast26.i, align 1, !noalias !1061
  %32 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 3
  %_69.sroa.5.0..sroa_cast28.i = bitcast i8* %32 to i16*
  store i16 1, i16* %_69.sroa.5.0..sroa_cast28.i, align 1, !noalias !1061
  %33 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %.sroa.0.0.i.ph.i, [0 x i8]** %33, align 1, !alias.scope !1061
  br label %_ZN4core3num7flt2dec18to_exact_fixed_str17h3f569356746c3469E.exit

"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit.i": ; preds = %bb8.i
  %_93.i = icmp sgt i16 %precision, -1
  %34 = sub i16 0, %precision
  %limit.0.i = select i1 %_93.i, i16 %34, i16 -32768
  %35 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %_4.i.i.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 5, i8* nonnull %35), !noalias !1064
; call core::num::flt2dec::strategy::grisu::format_exact_opt
  call addrspace(1) void @_ZN4core3num7flt2dec8strategy5grisu16format_exact_opt17he193f633dc4a3d8fE(%"option::Option<(usize, i16)>"* noalias nocapture nonnull sret dereferenceable(5) %_4.i.i.i, %"num::flt2dec::decoder::Decoded"* noalias nonnull readonly align 1 dereferenceable(27) %decoded.i, [0 x i8]* nonnull align 1 %_11.0, i16 %21, i16 %limit.0.i)
  %36 = load i8, i8* %35, align 1, !range !87, !noalias !1064
  %switch.i.i.i = icmp eq i8 %36, 1
  br i1 %switch.i.i.i, label %bb4.i.i.i, label %bb2.i.i.i

bb2.i.i.i:                                        ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit.i"
; call core::num::flt2dec::strategy::dragon::format_exact
  %37 = call addrspace(1) { i16, i16 } @_ZN4core3num7flt2dec8strategy6dragon12format_exact17h8254a82163510597E(%"num::flt2dec::decoder::Decoded"* noalias nonnull readonly align 1 dereferenceable(27) %decoded.i, [0 x i8]* nonnull align 1 %_11.0, i16 %21, i16 %limit.0.i)
  %.fca.0.extract.i.i.i = extractvalue { i16, i16 } %37, 0
  %.fca.1.extract.i.i.i = extractvalue { i16, i16 } %37, 1
  br label %_ZN4core3ops8function5FnMut8call_mut17ha8ecc7f04fdaafcaE.exit.i

bb4.i.i.i:                                        ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit.i"
  %38 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %_4.i.i.i, i16 0, i32 2
  %39 = bitcast [4 x i8]* %38 to i16*
  %ret.0.i.i.i = load i16, i16* %39, align 1, !noalias !1064
  %40 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %_4.i.i.i, i16 0, i32 2, i16 2
  %41 = bitcast i8* %40 to i16*
  %ret.1.i.i.i = load i16, i16* %41, align 1, !noalias !1064
  br label %_ZN4core3ops8function5FnMut8call_mut17ha8ecc7f04fdaafcaE.exit.i

_ZN4core3ops8function5FnMut8call_mut17ha8ecc7f04fdaafcaE.exit.i: ; preds = %bb4.i.i.i, %bb2.i.i.i
  %.sroa.3.0.i.i.i = phi i16 [ %.fca.1.extract.i.i.i, %bb2.i.i.i ], [ %ret.1.i.i.i, %bb4.i.i.i ]
  %.sroa.0.0.i.i.i = phi i16 [ %.fca.0.extract.i.i.i, %bb2.i.i.i ], [ %ret.0.i.i.i, %bb4.i.i.i ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 5, i8* nonnull %35), !noalias !1064
  %_110.i = icmp sgt i16 %.sroa.3.0.i.i.i, %limit.0.i
  br i1 %_110.i, label %bb34.i, label %bb35.i

bb28.i:                                           ; preds = %bb8.i
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [37 x i8] }>* @alloc18530 to [0 x i8]*), i16 37, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18496 to %"panic::Location"*))
  unreachable

bb34.i:                                           ; preds = %_ZN4core3ops8function5FnMut8call_mut17ha8ecc7f04fdaafcaE.exit.i
  %_8.i.i.i.i = icmp ugt i16 %.sroa.0.0.i.i.i, 1024
  br i1 %_8.i.i.i.i, label %bb5.i.i.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i"

bb5.i.i.i.i:                                      ; preds = %bb34.i
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.sroa.0.0.i.i.i, i16 1024, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18510 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i": ; preds = %bb34.i
  %42 = icmp eq i16 %.sroa.0.0.i.i.i, 0
  br i1 %42, label %bb3.i, label %bb4.i

bb3.i:                                            ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i"
; call core::panicking::panic
  call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [33 x i8] }>* @alloc18355 to [0 x i8]*), i16 33, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18306 to %"panic::Location"*))
  unreachable

bb4.i:                                            ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i"
  %_13.i = load i8, i8* %0, align 1, !alias.scope !1069
  %_12.i = icmp ult i8 %_13.i, 49
  br i1 %_12.i, label %bb6.i, label %bb5.i

bb5.i:                                            ; preds = %bb4.i
  %_25.i = icmp slt i16 %.sroa.3.0.i.i.i, 1
  br i1 %_25.i, label %bb14.i4, label %bb10.i

bb6.i:                                            ; preds = %bb4.i
; call core::panicking::panic
  call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [31 x i8] }>* @alloc18360 to [0 x i8]*), i16 31, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18311 to %"panic::Location"*))
  unreachable

bb10.i:                                           ; preds = %bb5.i
  %_79.i = icmp ult i16 %.sroa.3.0.i.i.i, %.sroa.0.0.i.i.i
  store i8 2, i8* %1, align 1, !noalias !1069
  %43 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 1
  %44 = bitcast i8* %43 to %"mem::maybe_uninit::MaybeUninit<[u8; 1024]>"**
  store %"mem::maybe_uninit::MaybeUninit<[u8; 1024]>"* %buf, %"mem::maybe_uninit::MaybeUninit<[u8; 1024]>"** %44, align 1, !noalias !1069
  %45 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 3
  %_83.sroa.5.0..sroa_cast35.i = bitcast i8* %45 to i16*
  br i1 %_79.i, label %bb35.i6, label %bb46.i

bb14.i4:                                          ; preds = %bb5.i
  %_28.i = sub nsw i16 0, %.sroa.3.0.i.i.i
  store i8 2, i8* %1, align 1, !noalias !1069
  %46 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 1
  %_31.sroa.4.0..sroa_cast13.i = bitcast i8* %46 to [0 x i8]**
  store [0 x i8]* bitcast (<{ [2 x i8] }>* @alloc239 to [0 x i8]*), [0 x i8]** %_31.sroa.4.0..sroa_cast13.i, align 1, !noalias !1069
  %47 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 3
  %_31.sroa.5.0..sroa_cast15.i = bitcast i8* %47 to i16*
  store i16 2, i16* %_31.sroa.5.0..sroa_cast15.i, align 1, !noalias !1069
  %48 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 5
  store i8 0, i8* %48, align 1, !noalias !1069
  %49 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 6
  %_38.sroa.4.0..sroa_cast17.i = bitcast i8* %49 to i16*
  store i16 %_28.i, i16* %_38.sroa.4.0..sroa_cast17.i, align 1, !noalias !1069
  %50 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 10
  store i8 2, i8* %50, align 1, !noalias !1069
  %51 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 11
  %52 = bitcast i8* %51 to %"mem::maybe_uninit::MaybeUninit<[u8; 1024]>"**
  store %"mem::maybe_uninit::MaybeUninit<[u8; 1024]>"* %buf, %"mem::maybe_uninit::MaybeUninit<[u8; 1024]>"** %52, align 1, !noalias !1069
  %53 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 13
  %_43.sroa.5.0..sroa_cast25.i = bitcast i8* %53 to i16*
  store i16 %.sroa.0.0.i.i.i, i16* %_43.sroa.5.0..sroa_cast25.i, align 1, !noalias !1069
  %_49.i3 = icmp ult i16 %.sroa.0.0.i.i.i, %precision
  br i1 %_49.i3, label %bb17.i, label %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit

bb17.i:                                           ; preds = %bb14.i4
  %_54.i = sub i16 %precision, %.sroa.0.0.i.i.i
  %_53.i = icmp ugt i16 %_54.i, %_28.i
  br i1 %_53.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit76.i", label %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit76.i": ; preds = %bb17.i
  %_60.i = add i16 %_54.i, %.sroa.3.0.i.i.i
  %54 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 15
  store i8 0, i8* %54, align 1, !noalias !1069
  %55 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 16
  %_59.sroa.4.0..sroa_cast27.i = bitcast i8* %55 to i16*
  store i16 %_60.i, i16* %_59.sroa.4.0..sroa_cast27.i, align 1, !noalias !1069
  br label %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit

bb35.i6:                                          ; preds = %bb10.i
  store i16 %.sroa.3.0.i.i.i, i16* %_83.sroa.5.0..sroa_cast35.i, align 1, !noalias !1069
  %56 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 5
  store i8 2, i8* %56, align 1, !noalias !1069
  %57 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 6
  %_93.sroa.4.0..sroa_cast38.i = bitcast i8* %57 to [0 x i8]**
  store [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc16827 to [0 x i8]*), [0 x i8]** %_93.sroa.4.0..sroa_cast38.i, align 1, !noalias !1069
  %58 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 8
  %_93.sroa.5.0..sroa_cast40.i = bitcast i8* %58 to i16*
  store i16 1, i16* %_93.sroa.5.0..sroa_cast40.i, align 1, !noalias !1069
  %59 = getelementptr inbounds [0 x i8], [0 x i8]* %_11.0, i16 0, i16 %.sroa.3.0.i.i.i
  %_7.i.i.i.i.i = sub nsw i16 %.sroa.0.0.i.i.i, %.sroa.3.0.i.i.i
  %60 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 10
  store i8 2, i8* %60, align 1, !noalias !1069
  %61 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 11
  %62 = bitcast i8* %61 to i8**
  store i8* %59, i8** %62, align 1, !noalias !1069
  %63 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 13
  %_100.sroa.5.0..sroa_cast44.i = bitcast i8* %63 to i16*
  store i16 %_7.i.i.i.i.i, i16* %_100.sroa.5.0..sroa_cast44.i, align 1, !noalias !1069
  %_110.i5 = icmp ult i16 %_7.i.i.i.i.i, %precision
  br i1 %_110.i5, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit84.i", label %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit84.i": ; preds = %bb35.i6
  %_11973.i = add i16 %.sroa.3.0.i.i.i, %precision
  %_117.i7 = sub i16 %_11973.i, %.sroa.0.0.i.i.i
  %64 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 15
  store i8 0, i8* %64, align 1, !noalias !1069
  %65 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 16
  %_116.sroa.4.0..sroa_cast47.i = bitcast i8* %65 to i16*
  store i16 %_117.i7, i16* %_116.sroa.4.0..sroa_cast47.i, align 1, !noalias !1069
  br label %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit

bb46.i:                                           ; preds = %bb10.i
  store i16 %.sroa.0.0.i.i.i, i16* %_83.sroa.5.0..sroa_cast35.i, align 1, !noalias !1069
  %_140.i = sub nsw i16 %.sroa.3.0.i.i.i, %.sroa.0.0.i.i.i
  %66 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 5
  store i8 0, i8* %66, align 1, !noalias !1069
  %67 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 6
  %_139.sroa.4.0..sroa_cast57.i = bitcast i8* %67 to i16*
  store i16 %_140.i, i16* %_139.sroa.4.0..sroa_cast57.i, align 1, !noalias !1069
  %_147.i = icmp eq i16 %precision, 0
  br i1 %_147.i, label %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit90.i"

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit90.i": ; preds = %bb46.i
  %68 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 10
  store i8 2, i8* %68, align 1, !noalias !1069
  %69 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 11
  %_149.sroa.4.0..sroa_cast63.i = bitcast i8* %69 to [0 x i8]**
  store [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc16827 to [0 x i8]*), [0 x i8]** %_149.sroa.4.0..sroa_cast63.i, align 1, !noalias !1069
  %70 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 13
  %_149.sroa.5.0..sroa_cast65.i = bitcast i8* %70 to i16*
  store i16 1, i16* %_149.sroa.5.0..sroa_cast65.i, align 1, !noalias !1069
  %71 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 15
  store i8 0, i8* %71, align 1, !noalias !1069
  %72 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 16
  %_156.sroa.4.0..sroa_cast67.i = bitcast i8* %72 to i16*
  store i16 %precision, i16* %_156.sroa.4.0..sroa_cast67.i, align 1, !noalias !1069
  br label %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit

_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit: ; preds = %bb14.i4, %bb17.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit76.i", %bb35.i6, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit84.i", %bb46.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit90.i"
  %.sroa.7.1.i = phi i16 [ 4, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit84.i" ], [ 4, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit90.i" ], [ 4, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit76.i" ], [ 3, %bb17.i ], [ 3, %bb14.i4 ], [ 3, %bb35.i6 ], [ 2, %bb46.i ]
  %73 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %.sroa.0.0.i.i, [0 x i8]** %73, align 1, !alias.scope !1061
  br label %_ZN4core3num7flt2dec18to_exact_fixed_str17h3f569356746c3469E.exit

bb35.i:                                           ; preds = %_ZN4core3ops8function5FnMut8call_mut17ha8ecc7f04fdaafcaE.exit.i
  %_117.i = icmp eq i16 %precision, 0
  store i8 2, i8* %1, align 1, !noalias !1061
  %74 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 1
  %_137.sroa.4.0..sroa_cast47.i = bitcast i8* %74 to [0 x i8]**
  br i1 %_117.i, label %bb41.i, label %bb38.i

bb38.i:                                           ; preds = %bb35.i
  store [0 x i8]* bitcast (<{ [2 x i8] }>* @alloc239 to [0 x i8]*), [0 x i8]** %_137.sroa.4.0..sroa_cast47.i, align 1, !noalias !1061
  %75 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 3
  %_119.sroa.5.0..sroa_cast39.i = bitcast i8* %75 to i16*
  store i16 2, i16* %_119.sroa.5.0..sroa_cast39.i, align 1, !noalias !1061
  %76 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 5
  store i8 0, i8* %76, align 1, !noalias !1061
  %77 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 6
  %_126.sroa.4.0..sroa_cast41.i = bitcast i8* %77 to i16*
  store i16 %precision, i16* %_126.sroa.4.0..sroa_cast41.i, align 1, !noalias !1061
  %78 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %.sroa.0.0.i.i, [0 x i8]** %78, align 1, !alias.scope !1061
  br label %_ZN4core3num7flt2dec18to_exact_fixed_str17h3f569356746c3469E.exit

bb41.i:                                           ; preds = %bb35.i
  store [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc247 to [0 x i8]*), [0 x i8]** %_137.sroa.4.0..sroa_cast47.i, align 1, !noalias !1061
  %79 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 3
  %_137.sroa.5.0..sroa_cast49.i = bitcast i8* %79 to i16*
  store i16 1, i16* %_137.sroa.5.0..sroa_cast49.i, align 1, !noalias !1061
  %80 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %.sroa.0.0.i.i, [0 x i8]** %80, align 1, !alias.scope !1061
  br label %_ZN4core3num7flt2dec18to_exact_fixed_str17h3f569356746c3469E.exit

_ZN4core3num7flt2dec18to_exact_fixed_str17h3f569356746c3469E.exit: ; preds = %bb11.i, %bb14.i, %bb19.i, %bb22.i, %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit, %bb38.i, %bb41.i
  %.sink4 = phi i16 [ 0, %bb11.i ], [ %.sroa.12.0.i.i, %bb14.i ], [ %.sroa.12.0.shrunk.i.ph.i, %bb19.i ], [ %.sroa.12.0.shrunk.i.ph.i, %bb22.i ], [ %.sroa.12.0.i.i, %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit ], [ %.sroa.12.0.i.i, %bb38.i ], [ %.sroa.12.0.i.i, %bb41.i ]
  %.sink = phi i16 [ 1, %bb11.i ], [ 1, %bb14.i ], [ 2, %bb19.i ], [ 1, %bb22.i ], [ %.sroa.7.1.i, %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit ], [ 2, %bb38.i ], [ 1, %bb41.i ]
  %81 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 1, i32 1
  store i16 %.sink4, i16* %81, align 1, !alias.scope !1061
  %82 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 0
  %83 = bitcast [0 x %"num::flt2dec::Part"]** %82 to %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"**
  store %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"** %83, align 1, !alias.scope !1061
  %84 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 1
  store i16 %.sink, i16* %84, align 1, !alias.scope !1061
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 27, i8* nonnull %16), !noalias !1061
; call core::fmt::Formatter::pad_formatted_parts
  %85 = call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter19pad_formatted_parts17hd831476560d54163E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %fmt, %"num::flt2dec::Formatted"* noalias nonnull readonly align 1 dereferenceable(8) %formatted)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 8, i8* nonnull %2)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 20, i8* nonnull %1)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 1024, i8* nonnull %0)
  ret i1 %85
}

; core::fmt::float::float_to_decimal_common_shortest
; Function Attrs: noinline uwtable
define internal fastcc zeroext i1 @_ZN4core3fmt5float32float_to_decimal_common_shortest17h7feefefa083ebf6eE(%"fmt::Formatter"* nocapture align 1 dereferenceable(19) %fmt, double %num.val, i8 %sign, i16 %precision) unnamed_addr addrspace(1) #11 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_3.i.i.i = alloca %"option::Option<(usize, i16)>", align 1
  %full_decoded.i = alloca %"num::flt2dec::decoder::FullDecoded", align 1
  %formatted = alloca %"num::flt2dec::Formatted", align 1
  %parts = alloca %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", align 1
  %buf = alloca %"mem::maybe_uninit::MaybeUninit<[u8; 17]>", align 1
  %0 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[u8; 17]>", %"mem::maybe_uninit::MaybeUninit<[u8; 17]>"* %buf, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 17, i8* nonnull %0)
  %1 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 20, i8* nonnull %1)
  %2 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %2)
  %_11.0 = bitcast %"mem::maybe_uninit::MaybeUninit<[u8; 17]>"* %buf to [0 x i8]*
  %3 = bitcast double %num.val to i64
  %_10.i.i.i = lshr i64 %3, 52
  %4 = trunc i64 %_10.i.i.i to i16
  %5 = and i16 %4, 2047
  %_13.i.i.i = icmp eq i16 %5, 0
  %_15.i.i.i = and i64 %3, 4503599627370495
  %6 = shl nuw nsw i64 %_15.i.i.i, 1
  %7 = or i64 %_15.i.i.i, 4503599627370496
  %mantissa.0.i.i.i = select i1 %_13.i.i.i, i64 %6, i64 %7
  %8 = add nsw i16 %5, -1075
  %_8.i.i = and i64 %mantissa.0.i.i.i, 1
  %9 = icmp eq i64 %_15.i.i.i, 0
  %10 = and i64 %3, 9223372036854775807
  %11 = icmp eq i64 %10, 0
  br i1 %11, label %_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i, label %bb3.i.i.i.i

bb3.i.i.i.i:                                      ; preds = %start
  %12 = trunc i64 %3 to i63
  %trunc.i.i.i.i = and i63 %12, -4503599627370496
  switch i63 %trunc.i.i.i.i, label %bb3.i.i [
    i63 0, label %bb8.i.i
    i63 -4503599627370496, label %"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17ha6dce715db4a91a6E.exit.i.i"
  ]

"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17ha6dce715db4a91a6E.exit.i.i": ; preds = %bb3.i.i.i.i
  %spec.select.i.i = select i1 %9, i8 3, i8 2
  br label %_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i

bb3.i.i:                                          ; preds = %bb3.i.i.i.i
  %_20.i.i = icmp eq i64 %mantissa.0.i.i.i, 4503599627370496
  br i1 %_20.i.i, label %bb12.i.i, label %bb11.i.i

bb8.i.i:                                          ; preds = %bb3.i.i.i.i
  %13 = trunc i64 %_8.i.i to i8
  %14 = xor i8 %13, 1
  br label %_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i

bb11.i.i:                                         ; preds = %bb3.i.i
  %_30.i.i = shl nuw nsw i64 %mantissa.0.i.i.i, 1
  %_32.i.i = add nsw i16 %5, -1076
  %15 = trunc i64 %_8.i.i to i8
  %phitmp.i.i = xor i8 %15, 1
  br label %_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i

bb12.i.i:                                         ; preds = %bb3.i.i
  %_26.i.i = add nsw i16 %5, -1077
  br label %_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i

_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i: ; preds = %bb12.i.i, %bb11.i.i, %bb8.i.i, %"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17ha6dce715db4a91a6E.exit.i.i", %start
  %decoded.sroa.0.sroa.0.1.i.i = phi i64 [ %mantissa.0.i.i.i, %bb8.i.i ], [ undef, %"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17ha6dce715db4a91a6E.exit.i.i" ], [ undef, %start ], [ 18014398509481984, %bb12.i.i ], [ %_30.i.i, %bb11.i.i ]
  %decoded.sroa.0.sroa.7.1.i.i = phi i64 [ 1, %bb8.i.i ], [ undef, %"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17ha6dce715db4a91a6E.exit.i.i" ], [ undef, %start ], [ 2, %bb12.i.i ], [ 1, %bb11.i.i ]
  %decoded.sroa.0.sroa.8.1.i.i = phi i16 [ %8, %bb8.i.i ], [ undef, %"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17ha6dce715db4a91a6E.exit.i.i" ], [ undef, %start ], [ %_26.i.i, %bb12.i.i ], [ %_32.i.i, %bb11.i.i ]
  %decoded.sroa.6.1.i.i = phi i8 [ %14, %bb8.i.i ], [ %spec.select.i.i, %"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17ha6dce715db4a91a6E.exit.i.i" ], [ 4, %start ], [ 1, %bb12.i.i ], [ %phitmp.i.i, %bb11.i.i ]
  %negative.i = icmp slt i64 %3, 0
  %16 = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 27, i8* nonnull %16), !noalias !1072
  %_21.sroa.4.1..sroa_cast.i = bitcast %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i to i64*
  store i64 %decoded.sroa.0.sroa.0.1.i.i, i64* %_21.sroa.4.1..sroa_cast.i, align 1, !noalias !1072
  %_21.sroa.6.1..sroa_idx.i = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 0, i16 8
  %_21.sroa.6.1..sroa_cast.i = bitcast i8* %_21.sroa.6.1..sroa_idx.i to i64*
  store i64 1, i64* %_21.sroa.6.1..sroa_cast.i, align 1, !noalias !1072
  %_21.sroa.7.1..sroa_idx.i = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 0, i16 16
  %_21.sroa.7.1..sroa_cast.i = bitcast i8* %_21.sroa.7.1..sroa_idx.i to i64*
  store i64 %decoded.sroa.0.sroa.7.1.i.i, i64* %_21.sroa.7.1..sroa_cast.i, align 1, !noalias !1072
  %_21.sroa.8.1..sroa_idx.i = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 0, i16 24
  %_21.sroa.8.1..sroa_cast.i = bitcast i8* %_21.sroa.8.1..sroa_idx.i to i16*
  store i16 %decoded.sroa.0.sroa.8.1.i.i, i16* %_21.sroa.8.1..sroa_cast.i, align 1, !noalias !1072
  %_21.sroa.9.1..sroa_idx.i = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 1
  store i8 %decoded.sroa.6.1.i.i, i8* %_21.sroa.9.1..sroa_idx.i, align 1, !noalias !1072
  %17 = add i8 %decoded.sroa.6.1.i.i, -2
  %18 = icmp ult i8 %17, 3
  %narrow.i.i = select i1 %18, i8 %17, i8 3
  %trunc.i.i = trunc i8 %narrow.i.i to i2
  switch i2 %trunc.i.i, label %bb1.i.i [
    i2 0, label %bb14.i
    i2 -2, label %bb2.i.i
  ]

bb110.i.i:                                        ; preds = %bb2.i.i
  unreachable

bb1.i.i:                                          ; preds = %_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i
  %switch.i.i = icmp ult i8 %sign, 2
  %.28.i.i = select i1 %negative.i, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0)
  %.29.i.i = select i1 %negative.i, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19124 to [0 x i8]*)
  %not.switch.i.i = xor i1 %switch.i.i, true
  %.sroa.12.0.shrunk.i.i = or i1 %negative.i, %not.switch.i.i
  %.sroa.0.0.i.i = select i1 %switch.i.i, [0 x i8]* %.28.i.i, [0 x i8]* %.29.i.i
  %.sroa.12.0.i.i = zext i1 %.sroa.12.0.shrunk.i.i to i16
  %switch.i = icmp eq i2 %trunc.i.i, -1
  br i1 %switch.i, label %bb11.i, label %bb17.i

bb2.i.i:                                          ; preds = %_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i
  switch i8 %sign, label %bb110.i.i [
    i8 0, label %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i
    i8 1, label %bb6.i.i
    i8 2, label %bb10.i.i
    i8 3, label %bb11.i1.i
  ]

bb6.i.i:                                          ; preds = %bb2.i.i
  %.25.i.i = select i1 %negative.i, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0)
  %.lobit.i = lshr i64 %3, 63
  %19 = trunc i64 %.lobit.i to i16
  br label %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i

bb10.i.i:                                         ; preds = %bb2.i.i
  br label %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i

bb11.i1.i:                                        ; preds = %bb2.i.i
  %.26.i.i = select i1 %negative.i, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19124 to [0 x i8]*)
  br label %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i

_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i: ; preds = %bb11.i1.i, %bb10.i.i, %bb6.i.i, %bb2.i.i
  %.sroa.12.0.shrunk.i.ph.i = phi i16 [ 1, %bb11.i1.i ], [ %19, %bb6.i.i ], [ 0, %bb2.i.i ], [ 1, %bb10.i.i ]
  %.sroa.0.0.i.ph.i = phi [0 x i8]* [ %.26.i.i, %bb11.i1.i ], [ %.25.i.i, %bb6.i.i ], [ getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), %bb2.i.i ], [ bitcast (<{ [1 x i8] }>* @alloc19124 to [0 x i8]*), %bb10.i.i ]
  %_55.i = icmp eq i16 %precision, 0
  store i8 2, i8* %1, align 1, !noalias !1072
  %20 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 1
  %_75.sroa.4.0..sroa_cast23.i = bitcast i8* %20 to [0 x i8]**
  br i1 %_55.i, label %bb25.i, label %bb22.i

bb11.i:                                           ; preds = %bb1.i.i
  %decoded.i = bitcast %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i to %"num::flt2dec::decoder::Decoded"*
  %21 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %_3.i.i.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 5, i8* nonnull %21), !noalias !1075
; call core::num::flt2dec::strategy::grisu::format_shortest_opt
  call addrspace(1) void @_ZN4core3num7flt2dec8strategy5grisu19format_shortest_opt17h7dc38a7ef9464546E(%"option::Option<(usize, i16)>"* noalias nocapture nonnull sret dereferenceable(5) %_3.i.i.i, %"num::flt2dec::decoder::Decoded"* noalias nonnull readonly align 1 dereferenceable(27) %decoded.i, [0 x i8]* nonnull align 1 %_11.0, i16 17), !noalias !1072
  %22 = load i8, i8* %21, align 1, !range !87, !noalias !1075
  %switch.i.i.i = icmp eq i8 %22, 1
  br i1 %switch.i.i.i, label %bb4.i.i.i, label %bb2.i.i.i

bb2.i.i.i:                                        ; preds = %bb11.i
; call core::num::flt2dec::strategy::dragon::format_shortest
  %23 = call addrspace(1) { i16, i16 } @_ZN4core3num7flt2dec8strategy6dragon15format_shortest17h0c494f8b5739104dE(%"num::flt2dec::decoder::Decoded"* noalias nonnull readonly align 1 dereferenceable(27) %decoded.i, [0 x i8]* nonnull align 1 %_11.0, i16 17), !noalias !1072
  %.fca.0.extract.i.i.i = extractvalue { i16, i16 } %23, 0
  %.fca.1.extract.i.i.i = extractvalue { i16, i16 } %23, 1
  br label %_ZN4core3ops8function5FnMut8call_mut17h5efd88025d924ecbE.exit.i

bb4.i.i.i:                                        ; preds = %bb11.i
  %24 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %_3.i.i.i, i16 0, i32 2
  %25 = bitcast [4 x i8]* %24 to i16*
  %ret.0.i.i.i = load i16, i16* %25, align 1, !noalias !1075
  %26 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %_3.i.i.i, i16 0, i32 2, i16 2
  %27 = bitcast i8* %26 to i16*
  %ret.1.i.i.i = load i16, i16* %27, align 1, !noalias !1075
  br label %_ZN4core3ops8function5FnMut8call_mut17h5efd88025d924ecbE.exit.i

_ZN4core3ops8function5FnMut8call_mut17h5efd88025d924ecbE.exit.i: ; preds = %bb4.i.i.i, %bb2.i.i.i
  %.sroa.3.0.i.i.i = phi i16 [ %.fca.1.extract.i.i.i, %bb2.i.i.i ], [ %ret.1.i.i.i, %bb4.i.i.i ]
  %.sroa.0.0.i.i.i = phi i16 [ %.fca.0.extract.i.i.i, %bb2.i.i.i ], [ %ret.0.i.i.i, %bb4.i.i.i ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 5, i8* nonnull %21), !noalias !1075
  %_8.i.i.i.i = icmp ugt i16 %.sroa.0.0.i.i.i, 17
  br i1 %_8.i.i.i.i, label %bb5.i.i.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i"

bb5.i.i.i.i:                                      ; preds = %_ZN4core3ops8function5FnMut8call_mut17h5efd88025d924ecbE.exit.i
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.sroa.0.0.i.i.i, i16 17, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18406 to %"panic::Location"*)), !noalias !1072
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i": ; preds = %_ZN4core3ops8function5FnMut8call_mut17h5efd88025d924ecbE.exit.i
  %28 = icmp eq i16 %.sroa.0.0.i.i.i, 0
  br i1 %28, label %bb3.i, label %bb4.i

bb3.i:                                            ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i"
; call core::panicking::panic
  call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [33 x i8] }>* @alloc18355 to [0 x i8]*), i16 33, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18306 to %"panic::Location"*))
  unreachable

bb4.i:                                            ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i"
  %_13.i = load i8, i8* %0, align 1, !alias.scope !1080
  %_12.i = icmp ult i8 %_13.i, 49
  br i1 %_12.i, label %bb6.i, label %bb5.i

bb5.i:                                            ; preds = %bb4.i
  %_25.i = icmp slt i16 %.sroa.3.0.i.i.i, 1
  br i1 %_25.i, label %bb14.i2, label %bb10.i

bb6.i:                                            ; preds = %bb4.i
; call core::panicking::panic
  call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [31 x i8] }>* @alloc18360 to [0 x i8]*), i16 31, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18311 to %"panic::Location"*))
  unreachable

bb10.i:                                           ; preds = %bb5.i
  %_79.i = icmp ult i16 %.sroa.3.0.i.i.i, %.sroa.0.0.i.i.i
  store i8 2, i8* %1, align 1, !noalias !1080
  %29 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 1
  %30 = bitcast i8* %29 to %"mem::maybe_uninit::MaybeUninit<[u8; 17]>"**
  store %"mem::maybe_uninit::MaybeUninit<[u8; 17]>"* %buf, %"mem::maybe_uninit::MaybeUninit<[u8; 17]>"** %30, align 1, !noalias !1080
  %31 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 3
  %_83.sroa.5.0..sroa_cast35.i = bitcast i8* %31 to i16*
  br i1 %_79.i, label %bb35.i, label %bb46.i

bb14.i2:                                          ; preds = %bb5.i
  %_28.i = sub i16 0, %.sroa.3.0.i.i.i
  store i8 2, i8* %1, align 1, !noalias !1080
  %32 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 1
  %_31.sroa.4.0..sroa_cast13.i = bitcast i8* %32 to [0 x i8]**
  store [0 x i8]* bitcast (<{ [2 x i8] }>* @alloc239 to [0 x i8]*), [0 x i8]** %_31.sroa.4.0..sroa_cast13.i, align 1, !noalias !1080
  %33 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 3
  %_31.sroa.5.0..sroa_cast15.i = bitcast i8* %33 to i16*
  store i16 2, i16* %_31.sroa.5.0..sroa_cast15.i, align 1, !noalias !1080
  %34 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 5
  store i8 0, i8* %34, align 1, !noalias !1080
  %35 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 6
  %_38.sroa.4.0..sroa_cast17.i = bitcast i8* %35 to i16*
  store i16 %_28.i, i16* %_38.sroa.4.0..sroa_cast17.i, align 1, !noalias !1080
  %36 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 10
  store i8 2, i8* %36, align 1, !noalias !1080
  %37 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 11
  %38 = bitcast i8* %37 to %"mem::maybe_uninit::MaybeUninit<[u8; 17]>"**
  store %"mem::maybe_uninit::MaybeUninit<[u8; 17]>"* %buf, %"mem::maybe_uninit::MaybeUninit<[u8; 17]>"** %38, align 1, !noalias !1080
  %39 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 13
  %_43.sroa.5.0..sroa_cast25.i = bitcast i8* %39 to i16*
  store i16 %.sroa.0.0.i.i.i, i16* %_43.sroa.5.0..sroa_cast25.i, align 1, !noalias !1080
  %_49.i = icmp ult i16 %.sroa.0.0.i.i.i, %precision
  br i1 %_49.i, label %bb17.i3, label %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit

bb17.i3:                                          ; preds = %bb14.i2
  %_54.i = sub i16 %precision, %.sroa.0.0.i.i.i
  %_53.i = icmp ugt i16 %_54.i, %_28.i
  br i1 %_53.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit76.i", label %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit76.i": ; preds = %bb17.i3
  %_60.i = add i16 %_54.i, %.sroa.3.0.i.i.i
  %40 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 15
  store i8 0, i8* %40, align 1, !noalias !1080
  %41 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 16
  %_59.sroa.4.0..sroa_cast27.i = bitcast i8* %41 to i16*
  store i16 %_60.i, i16* %_59.sroa.4.0..sroa_cast27.i, align 1, !noalias !1080
  br label %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit

bb35.i:                                           ; preds = %bb10.i
  store i16 %.sroa.3.0.i.i.i, i16* %_83.sroa.5.0..sroa_cast35.i, align 1, !noalias !1080
  %42 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 5
  store i8 2, i8* %42, align 1, !noalias !1080
  %43 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 6
  %_93.sroa.4.0..sroa_cast38.i = bitcast i8* %43 to [0 x i8]**
  store [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc16827 to [0 x i8]*), [0 x i8]** %_93.sroa.4.0..sroa_cast38.i, align 1, !noalias !1080
  %44 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 8
  %_93.sroa.5.0..sroa_cast40.i = bitcast i8* %44 to i16*
  store i16 1, i16* %_93.sroa.5.0..sroa_cast40.i, align 1, !noalias !1080
  %45 = getelementptr inbounds [0 x i8], [0 x i8]* %_11.0, i16 0, i16 %.sroa.3.0.i.i.i
  %_7.i.i.i.i.i = sub nsw i16 %.sroa.0.0.i.i.i, %.sroa.3.0.i.i.i
  %46 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 10
  store i8 2, i8* %46, align 1, !noalias !1080
  %47 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 11
  %48 = bitcast i8* %47 to i8**
  store i8* %45, i8** %48, align 1, !noalias !1080
  %49 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 13
  %_100.sroa.5.0..sroa_cast44.i = bitcast i8* %49 to i16*
  store i16 %_7.i.i.i.i.i, i16* %_100.sroa.5.0..sroa_cast44.i, align 1, !noalias !1080
  %_110.i = icmp ult i16 %_7.i.i.i.i.i, %precision
  br i1 %_110.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit84.i", label %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit84.i": ; preds = %bb35.i
  %_11973.i = add i16 %.sroa.3.0.i.i.i, %precision
  %_117.i = sub i16 %_11973.i, %.sroa.0.0.i.i.i
  %50 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 15
  store i8 0, i8* %50, align 1, !noalias !1080
  %51 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 16
  %_116.sroa.4.0..sroa_cast47.i = bitcast i8* %51 to i16*
  store i16 %_117.i, i16* %_116.sroa.4.0..sroa_cast47.i, align 1, !noalias !1080
  br label %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit

bb46.i:                                           ; preds = %bb10.i
  store i16 %.sroa.0.0.i.i.i, i16* %_83.sroa.5.0..sroa_cast35.i, align 1, !noalias !1080
  %_140.i = sub nsw i16 %.sroa.3.0.i.i.i, %.sroa.0.0.i.i.i
  %52 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 5
  store i8 0, i8* %52, align 1, !noalias !1080
  %53 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 6
  %_139.sroa.4.0..sroa_cast57.i = bitcast i8* %53 to i16*
  store i16 %_140.i, i16* %_139.sroa.4.0..sroa_cast57.i, align 1, !noalias !1080
  %_147.i = icmp eq i16 %precision, 0
  br i1 %_147.i, label %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit90.i"

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit90.i": ; preds = %bb46.i
  %54 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 10
  store i8 2, i8* %54, align 1, !noalias !1080
  %55 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 11
  %_149.sroa.4.0..sroa_cast63.i = bitcast i8* %55 to [0 x i8]**
  store [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc16827 to [0 x i8]*), [0 x i8]** %_149.sroa.4.0..sroa_cast63.i, align 1, !noalias !1080
  %56 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 13
  %_149.sroa.5.0..sroa_cast65.i = bitcast i8* %56 to i16*
  store i16 1, i16* %_149.sroa.5.0..sroa_cast65.i, align 1, !noalias !1080
  %57 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 15
  store i8 0, i8* %57, align 1, !noalias !1080
  %58 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 16
  %_156.sroa.4.0..sroa_cast67.i = bitcast i8* %58 to i16*
  store i16 %precision, i16* %_156.sroa.4.0..sroa_cast67.i, align 1, !noalias !1080
  br label %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit

_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit: ; preds = %bb14.i2, %bb17.i3, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit76.i", %bb35.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit84.i", %bb46.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit90.i"
  %.sroa.7.1.i = phi i16 [ 4, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit84.i" ], [ 4, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit90.i" ], [ 4, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit76.i" ], [ 3, %bb17.i3 ], [ 3, %bb14.i2 ], [ 3, %bb35.i ], [ 2, %bb46.i ]
  %59 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %.sroa.0.0.i.i, [0 x i8]** %59, align 1, !alias.scope !1072
  br label %_ZN4core3num7flt2dec15to_shortest_str17ha24fc92d0314f6b9E.exit

bb14.i:                                           ; preds = %_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i
  store i8 2, i8* %1, align 1, !noalias !1072
  %60 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 1
  %_29.sroa.4.0..sroa_cast5.i = bitcast i8* %60 to [0 x i8]**
  store [0 x i8]* bitcast (<{ [3 x i8] }>* @alloc245 to [0 x i8]*), [0 x i8]** %_29.sroa.4.0..sroa_cast5.i, align 1, !noalias !1072
  %61 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 3
  %_29.sroa.5.0..sroa_cast7.i = bitcast i8* %61 to i16*
  store i16 3, i16* %_29.sroa.5.0..sroa_cast7.i, align 1, !noalias !1072
  %62 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), [0 x i8]** %62, align 1, !alias.scope !1072
  br label %_ZN4core3num7flt2dec15to_shortest_str17ha24fc92d0314f6b9E.exit

bb17.i:                                           ; preds = %bb1.i.i
  store i8 2, i8* %1, align 1, !noalias !1072
  %63 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 1
  %_42.sroa.4.0..sroa_cast9.i = bitcast i8* %63 to [0 x i8]**
  store [0 x i8]* bitcast (<{ [3 x i8] }>* @alloc246 to [0 x i8]*), [0 x i8]** %_42.sroa.4.0..sroa_cast9.i, align 1, !noalias !1072
  %64 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 3
  %_42.sroa.5.0..sroa_cast11.i = bitcast i8* %64 to i16*
  store i16 3, i16* %_42.sroa.5.0..sroa_cast11.i, align 1, !noalias !1072
  %65 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %.sroa.0.0.i.i, [0 x i8]** %65, align 1, !alias.scope !1072
  br label %_ZN4core3num7flt2dec15to_shortest_str17ha24fc92d0314f6b9E.exit

bb22.i:                                           ; preds = %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i
  store [0 x i8]* bitcast (<{ [2 x i8] }>* @alloc239 to [0 x i8]*), [0 x i8]** %_75.sroa.4.0..sroa_cast23.i, align 1, !noalias !1072
  %66 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 3
  %_57.sroa.5.0..sroa_cast15.i = bitcast i8* %66 to i16*
  store i16 2, i16* %_57.sroa.5.0..sroa_cast15.i, align 1, !noalias !1072
  %67 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 5
  store i8 0, i8* %67, align 1, !noalias !1072
  %68 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 6
  %_64.sroa.4.0..sroa_cast17.i = bitcast i8* %68 to i16*
  store i16 %precision, i16* %_64.sroa.4.0..sroa_cast17.i, align 1, !noalias !1072
  %69 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %.sroa.0.0.i.ph.i, [0 x i8]** %69, align 1, !alias.scope !1072
  br label %_ZN4core3num7flt2dec15to_shortest_str17ha24fc92d0314f6b9E.exit

bb25.i:                                           ; preds = %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i
  store [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc247 to [0 x i8]*), [0 x i8]** %_75.sroa.4.0..sroa_cast23.i, align 1, !noalias !1072
  %70 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 3
  %_75.sroa.5.0..sroa_cast25.i = bitcast i8* %70 to i16*
  store i16 1, i16* %_75.sroa.5.0..sroa_cast25.i, align 1, !noalias !1072
  %71 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %.sroa.0.0.i.ph.i, [0 x i8]** %71, align 1, !alias.scope !1072
  br label %_ZN4core3num7flt2dec15to_shortest_str17ha24fc92d0314f6b9E.exit

_ZN4core3num7flt2dec15to_shortest_str17ha24fc92d0314f6b9E.exit: ; preds = %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit, %bb14.i, %bb17.i, %bb22.i, %bb25.i
  %.sroa.12.0.i.i.sink = phi i16 [ %.sroa.12.0.i.i, %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit ], [ 0, %bb14.i ], [ %.sroa.12.0.i.i, %bb17.i ], [ %.sroa.12.0.shrunk.i.ph.i, %bb22.i ], [ %.sroa.12.0.shrunk.i.ph.i, %bb25.i ]
  %.sroa.7.1.i.sink = phi i16 [ %.sroa.7.1.i, %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit ], [ 1, %bb14.i ], [ 1, %bb17.i ], [ 2, %bb22.i ], [ 1, %bb25.i ]
  %72 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 1, i32 1
  store i16 %.sroa.12.0.i.i.sink, i16* %72, align 1, !alias.scope !1072
  %73 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 0
  %74 = bitcast [0 x %"num::flt2dec::Part"]** %73 to %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"**
  store %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"** %74, align 1, !alias.scope !1072
  %75 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 1
  store i16 %.sroa.7.1.i.sink, i16* %75, align 1, !alias.scope !1072
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 27, i8* nonnull %16), !noalias !1072
; call core::fmt::Formatter::pad_formatted_parts
  %76 = call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter19pad_formatted_parts17hd831476560d54163E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %fmt, %"num::flt2dec::Formatted"* noalias nonnull readonly align 1 dereferenceable(8) %formatted)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 8, i8* nonnull %2)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 20, i8* nonnull %1)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 17, i8* nonnull %0)
  ret i1 %76
}

; core::fmt::float::float_to_decimal_common_shortest
; Function Attrs: noinline uwtable
define internal fastcc zeroext i1 @_ZN4core3fmt5float32float_to_decimal_common_shortest17he9fe45e94df9e1b4E(%"fmt::Formatter"* nocapture align 1 dereferenceable(19) %fmt, float %num.val, i8 %sign, i16 %precision) unnamed_addr addrspace(1) #11 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_3.i.i.i = alloca %"option::Option<(usize, i16)>", align 1
  %full_decoded.i = alloca %"num::flt2dec::decoder::FullDecoded", align 1
  %formatted = alloca %"num::flt2dec::Formatted", align 1
  %parts = alloca %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", align 1
  %buf = alloca %"mem::maybe_uninit::MaybeUninit<[u8; 17]>", align 1
  %0 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[u8; 17]>", %"mem::maybe_uninit::MaybeUninit<[u8; 17]>"* %buf, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 17, i8* nonnull %0)
  %1 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 20, i8* nonnull %1)
  %2 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %2)
  %_11.0 = bitcast %"mem::maybe_uninit::MaybeUninit<[u8; 17]>"* %buf to [0 x i8]*
  %3 = bitcast float %num.val to i32
  %_10.i.i.i = lshr i32 %3, 23
  %4 = trunc i32 %_10.i.i.i to i16
  %5 = and i16 %4, 255
  %_13.i.i.i = icmp eq i16 %5, 0
  %_15.i.i.i = and i32 %3, 8388607
  %6 = shl nuw nsw i32 %_15.i.i.i, 1
  %7 = or i32 %_15.i.i.i, 8388608
  %mantissa.0.i.i.i = select i1 %_13.i.i.i, i32 %6, i32 %7
  %_20.i.i.i = zext i32 %mantissa.0.i.i.i to i64
  %_8.i.i = and i64 %_20.i.i.i, 1
  %8 = icmp eq i32 %_15.i.i.i, 0
  %9 = and i32 %3, 2147483647
  %10 = icmp eq i32 %9, 0
  br i1 %10, label %_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %start
  %11 = trunc i32 %3 to i31
  %trunc.i.i.i = and i31 %11, -8388608
  switch i31 %trunc.i.i.i, label %bb3.i.i [
    i31 0, label %bb8.i.i
    i31 -8388608, label %"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17hfe9954e5c26e2ab2E.exit.i"
  ]

"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17hfe9954e5c26e2ab2E.exit.i": ; preds = %bb3.i.i.i
  %spec.select.i = select i1 %8, i8 3, i8 2
  br label %_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i

bb3.i.i:                                          ; preds = %bb3.i.i.i
  %_20.i.i = icmp eq i32 %mantissa.0.i.i.i, 8388608
  br i1 %_20.i.i, label %bb12.i.i, label %bb11.i.i

bb8.i.i:                                          ; preds = %bb3.i.i.i
  %12 = add nsw i16 %5, -150
  %13 = trunc i64 %_8.i.i to i8
  %14 = xor i8 %13, 1
  br label %_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i

bb11.i.i:                                         ; preds = %bb3.i.i
  %_30.i.i = shl nuw nsw i64 %_20.i.i.i, 1
  %_32.i.i = add nsw i16 %5, -151
  %15 = trunc i64 %_8.i.i to i8
  %phitmp.i.i = xor i8 %15, 1
  br label %_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i

bb12.i.i:                                         ; preds = %bb3.i.i
  %_26.i.i = add nsw i16 %5, -152
  br label %_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i

_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i: ; preds = %bb12.i.i, %bb11.i.i, %bb8.i.i, %"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17hfe9954e5c26e2ab2E.exit.i", %start
  %decoded.sroa.0.sroa.0.1.i.i = phi i64 [ %_20.i.i.i, %bb8.i.i ], [ 33554432, %bb12.i.i ], [ %_30.i.i, %bb11.i.i ], [ undef, %"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17hfe9954e5c26e2ab2E.exit.i" ], [ undef, %start ]
  %decoded.sroa.0.sroa.7.1.i.i = phi i64 [ 1, %bb8.i.i ], [ 2, %bb12.i.i ], [ 1, %bb11.i.i ], [ undef, %"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17hfe9954e5c26e2ab2E.exit.i" ], [ undef, %start ]
  %decoded.sroa.0.sroa.8.1.i.i = phi i16 [ %12, %bb8.i.i ], [ %_26.i.i, %bb12.i.i ], [ %_32.i.i, %bb11.i.i ], [ undef, %"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17hfe9954e5c26e2ab2E.exit.i" ], [ undef, %start ]
  %decoded.sroa.6.1.i.i = phi i8 [ %14, %bb8.i.i ], [ 1, %bb12.i.i ], [ %phitmp.i.i, %bb11.i.i ], [ %spec.select.i, %"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17hfe9954e5c26e2ab2E.exit.i" ], [ 4, %start ]
  %negative.i = icmp slt i32 %3, 0
  %16 = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 27, i8* nonnull %16), !noalias !1083
  %_21.sroa.4.1..sroa_cast.i = bitcast %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i to i64*
  store i64 %decoded.sroa.0.sroa.0.1.i.i, i64* %_21.sroa.4.1..sroa_cast.i, align 1, !noalias !1083
  %_21.sroa.6.1..sroa_idx.i = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 0, i16 8
  %_21.sroa.6.1..sroa_cast.i = bitcast i8* %_21.sroa.6.1..sroa_idx.i to i64*
  store i64 1, i64* %_21.sroa.6.1..sroa_cast.i, align 1, !noalias !1083
  %_21.sroa.7.1..sroa_idx.i = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 0, i16 16
  %_21.sroa.7.1..sroa_cast.i = bitcast i8* %_21.sroa.7.1..sroa_idx.i to i64*
  store i64 %decoded.sroa.0.sroa.7.1.i.i, i64* %_21.sroa.7.1..sroa_cast.i, align 1, !noalias !1083
  %_21.sroa.8.1..sroa_idx.i = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 0, i16 24
  %_21.sroa.8.1..sroa_cast.i = bitcast i8* %_21.sroa.8.1..sroa_idx.i to i16*
  store i16 %decoded.sroa.0.sroa.8.1.i.i, i16* %_21.sroa.8.1..sroa_cast.i, align 1, !noalias !1083
  %_21.sroa.9.1..sroa_idx.i = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 1
  store i8 %decoded.sroa.6.1.i.i, i8* %_21.sroa.9.1..sroa_idx.i, align 1, !noalias !1083
  %17 = add i8 %decoded.sroa.6.1.i.i, -2
  %18 = icmp ult i8 %17, 3
  %narrow.i.i = select i1 %18, i8 %17, i8 3
  %trunc.i2.i = trunc i8 %narrow.i.i to i2
  switch i2 %trunc.i2.i, label %bb1.i.i [
    i2 0, label %bb14.i
    i2 -2, label %bb2.i.i
  ]

bb110.i.i:                                        ; preds = %bb2.i.i
  unreachable

bb1.i.i:                                          ; preds = %_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i
  %switch.i.i = icmp ult i8 %sign, 2
  %.28.i.i = select i1 %negative.i, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0)
  %.29.i.i = select i1 %negative.i, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19124 to [0 x i8]*)
  %not.switch.i.i = xor i1 %switch.i.i, true
  %.sroa.12.0.shrunk.i.i = or i1 %negative.i, %not.switch.i.i
  %.sroa.0.0.i.i = select i1 %switch.i.i, [0 x i8]* %.28.i.i, [0 x i8]* %.29.i.i
  %.sroa.12.0.i.i = zext i1 %.sroa.12.0.shrunk.i.i to i16
  %switch30.i = icmp eq i2 %trunc.i2.i, -1
  br i1 %switch30.i, label %bb11.i, label %bb17.i

bb2.i.i:                                          ; preds = %_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i
  switch i8 %sign, label %bb110.i.i [
    i8 0, label %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i
    i8 1, label %bb6.i3.i
    i8 2, label %bb10.i.i
    i8 3, label %bb11.i4.i
  ]

bb6.i3.i:                                         ; preds = %bb2.i.i
  %.25.i.i = select i1 %negative.i, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0)
  %.lobit.i = lshr i32 %3, 31
  %19 = trunc i32 %.lobit.i to i16
  br label %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i

bb10.i.i:                                         ; preds = %bb2.i.i
  br label %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i

bb11.i4.i:                                        ; preds = %bb2.i.i
  %.26.i.i = select i1 %negative.i, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19124 to [0 x i8]*)
  br label %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i

_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i: ; preds = %bb11.i4.i, %bb10.i.i, %bb6.i3.i, %bb2.i.i
  %.sroa.12.0.shrunk.i.ph.i = phi i16 [ 1, %bb11.i4.i ], [ %19, %bb6.i3.i ], [ 0, %bb2.i.i ], [ 1, %bb10.i.i ]
  %.sroa.0.0.i.ph.i = phi [0 x i8]* [ %.26.i.i, %bb11.i4.i ], [ %.25.i.i, %bb6.i3.i ], [ getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), %bb2.i.i ], [ bitcast (<{ [1 x i8] }>* @alloc19124 to [0 x i8]*), %bb10.i.i ]
  %_55.i = icmp eq i16 %precision, 0
  store i8 2, i8* %1, align 1, !noalias !1083
  %20 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 1
  %_75.sroa.4.0..sroa_cast23.i = bitcast i8* %20 to [0 x i8]**
  br i1 %_55.i, label %bb25.i, label %bb22.i

bb11.i:                                           ; preds = %bb1.i.i
  %decoded.i = bitcast %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i to %"num::flt2dec::decoder::Decoded"*
  %21 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %_3.i.i.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 5, i8* nonnull %21), !noalias !1086
; call core::num::flt2dec::strategy::grisu::format_shortest_opt
  call addrspace(1) void @_ZN4core3num7flt2dec8strategy5grisu19format_shortest_opt17h7dc38a7ef9464546E(%"option::Option<(usize, i16)>"* noalias nocapture nonnull sret dereferenceable(5) %_3.i.i.i, %"num::flt2dec::decoder::Decoded"* noalias nonnull readonly align 1 dereferenceable(27) %decoded.i, [0 x i8]* nonnull align 1 %_11.0, i16 17), !noalias !1083
  %22 = load i8, i8* %21, align 1, !range !87, !noalias !1086
  %switch.i.i.i = icmp eq i8 %22, 1
  br i1 %switch.i.i.i, label %bb4.i.i1.i, label %bb2.i.i.i

bb2.i.i.i:                                        ; preds = %bb11.i
; call core::num::flt2dec::strategy::dragon::format_shortest
  %23 = call addrspace(1) { i16, i16 } @_ZN4core3num7flt2dec8strategy6dragon15format_shortest17h0c494f8b5739104dE(%"num::flt2dec::decoder::Decoded"* noalias nonnull readonly align 1 dereferenceable(27) %decoded.i, [0 x i8]* nonnull align 1 %_11.0, i16 17), !noalias !1083
  %.fca.0.extract.i.i.i = extractvalue { i16, i16 } %23, 0
  %.fca.1.extract.i.i.i = extractvalue { i16, i16 } %23, 1
  br label %_ZN4core3ops8function5FnMut8call_mut17h5efd88025d924ecbE.exit.i

bb4.i.i1.i:                                       ; preds = %bb11.i
  %24 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %_3.i.i.i, i16 0, i32 2
  %25 = bitcast [4 x i8]* %24 to i16*
  %ret.0.i.i.i = load i16, i16* %25, align 1, !noalias !1086
  %26 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %_3.i.i.i, i16 0, i32 2, i16 2
  %27 = bitcast i8* %26 to i16*
  %ret.1.i.i.i = load i16, i16* %27, align 1, !noalias !1086
  br label %_ZN4core3ops8function5FnMut8call_mut17h5efd88025d924ecbE.exit.i

_ZN4core3ops8function5FnMut8call_mut17h5efd88025d924ecbE.exit.i: ; preds = %bb4.i.i1.i, %bb2.i.i.i
  %.sroa.3.0.i.i.i = phi i16 [ %.fca.1.extract.i.i.i, %bb2.i.i.i ], [ %ret.1.i.i.i, %bb4.i.i1.i ]
  %.sroa.0.0.i.i.i = phi i16 [ %.fca.0.extract.i.i.i, %bb2.i.i.i ], [ %ret.0.i.i.i, %bb4.i.i1.i ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 5, i8* nonnull %21), !noalias !1086
  %_8.i.i.i.i = icmp ugt i16 %.sroa.0.0.i.i.i, 17
  br i1 %_8.i.i.i.i, label %bb5.i.i.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i"

bb5.i.i.i.i:                                      ; preds = %_ZN4core3ops8function5FnMut8call_mut17h5efd88025d924ecbE.exit.i
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.sroa.0.0.i.i.i, i16 17, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18406 to %"panic::Location"*)), !noalias !1083
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i": ; preds = %_ZN4core3ops8function5FnMut8call_mut17h5efd88025d924ecbE.exit.i
  %28 = icmp eq i16 %.sroa.0.0.i.i.i, 0
  br i1 %28, label %bb3.i, label %bb4.i

bb3.i:                                            ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i"
; call core::panicking::panic
  call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [33 x i8] }>* @alloc18355 to [0 x i8]*), i16 33, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18306 to %"panic::Location"*))
  unreachable

bb4.i:                                            ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i"
  %_13.i = load i8, i8* %0, align 1, !alias.scope !1091
  %_12.i = icmp ult i8 %_13.i, 49
  br i1 %_12.i, label %bb6.i, label %bb5.i

bb5.i:                                            ; preds = %bb4.i
  %_25.i = icmp slt i16 %.sroa.3.0.i.i.i, 1
  br i1 %_25.i, label %bb14.i2, label %bb10.i

bb6.i:                                            ; preds = %bb4.i
; call core::panicking::panic
  call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [31 x i8] }>* @alloc18360 to [0 x i8]*), i16 31, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18311 to %"panic::Location"*))
  unreachable

bb10.i:                                           ; preds = %bb5.i
  %_79.i = icmp ult i16 %.sroa.3.0.i.i.i, %.sroa.0.0.i.i.i
  store i8 2, i8* %1, align 1, !noalias !1091
  %29 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 1
  %30 = bitcast i8* %29 to %"mem::maybe_uninit::MaybeUninit<[u8; 17]>"**
  store %"mem::maybe_uninit::MaybeUninit<[u8; 17]>"* %buf, %"mem::maybe_uninit::MaybeUninit<[u8; 17]>"** %30, align 1, !noalias !1091
  %31 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 3
  %_83.sroa.5.0..sroa_cast35.i = bitcast i8* %31 to i16*
  br i1 %_79.i, label %bb35.i, label %bb46.i

bb14.i2:                                          ; preds = %bb5.i
  %_28.i = sub i16 0, %.sroa.3.0.i.i.i
  store i8 2, i8* %1, align 1, !noalias !1091
  %32 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 1
  %_31.sroa.4.0..sroa_cast13.i = bitcast i8* %32 to [0 x i8]**
  store [0 x i8]* bitcast (<{ [2 x i8] }>* @alloc239 to [0 x i8]*), [0 x i8]** %_31.sroa.4.0..sroa_cast13.i, align 1, !noalias !1091
  %33 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 3
  %_31.sroa.5.0..sroa_cast15.i = bitcast i8* %33 to i16*
  store i16 2, i16* %_31.sroa.5.0..sroa_cast15.i, align 1, !noalias !1091
  %34 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 5
  store i8 0, i8* %34, align 1, !noalias !1091
  %35 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 6
  %_38.sroa.4.0..sroa_cast17.i = bitcast i8* %35 to i16*
  store i16 %_28.i, i16* %_38.sroa.4.0..sroa_cast17.i, align 1, !noalias !1091
  %36 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 10
  store i8 2, i8* %36, align 1, !noalias !1091
  %37 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 11
  %38 = bitcast i8* %37 to %"mem::maybe_uninit::MaybeUninit<[u8; 17]>"**
  store %"mem::maybe_uninit::MaybeUninit<[u8; 17]>"* %buf, %"mem::maybe_uninit::MaybeUninit<[u8; 17]>"** %38, align 1, !noalias !1091
  %39 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 13
  %_43.sroa.5.0..sroa_cast25.i = bitcast i8* %39 to i16*
  store i16 %.sroa.0.0.i.i.i, i16* %_43.sroa.5.0..sroa_cast25.i, align 1, !noalias !1091
  %_49.i = icmp ult i16 %.sroa.0.0.i.i.i, %precision
  br i1 %_49.i, label %bb17.i3, label %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit

bb17.i3:                                          ; preds = %bb14.i2
  %_54.i = sub i16 %precision, %.sroa.0.0.i.i.i
  %_53.i = icmp ugt i16 %_54.i, %_28.i
  br i1 %_53.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit76.i", label %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit76.i": ; preds = %bb17.i3
  %_60.i = add i16 %_54.i, %.sroa.3.0.i.i.i
  %40 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 15
  store i8 0, i8* %40, align 1, !noalias !1091
  %41 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 16
  %_59.sroa.4.0..sroa_cast27.i = bitcast i8* %41 to i16*
  store i16 %_60.i, i16* %_59.sroa.4.0..sroa_cast27.i, align 1, !noalias !1091
  br label %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit

bb35.i:                                           ; preds = %bb10.i
  store i16 %.sroa.3.0.i.i.i, i16* %_83.sroa.5.0..sroa_cast35.i, align 1, !noalias !1091
  %42 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 5
  store i8 2, i8* %42, align 1, !noalias !1091
  %43 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 6
  %_93.sroa.4.0..sroa_cast38.i = bitcast i8* %43 to [0 x i8]**
  store [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc16827 to [0 x i8]*), [0 x i8]** %_93.sroa.4.0..sroa_cast38.i, align 1, !noalias !1091
  %44 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 8
  %_93.sroa.5.0..sroa_cast40.i = bitcast i8* %44 to i16*
  store i16 1, i16* %_93.sroa.5.0..sroa_cast40.i, align 1, !noalias !1091
  %45 = getelementptr inbounds [0 x i8], [0 x i8]* %_11.0, i16 0, i16 %.sroa.3.0.i.i.i
  %_7.i.i.i.i.i = sub nsw i16 %.sroa.0.0.i.i.i, %.sroa.3.0.i.i.i
  %46 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 10
  store i8 2, i8* %46, align 1, !noalias !1091
  %47 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 11
  %48 = bitcast i8* %47 to i8**
  store i8* %45, i8** %48, align 1, !noalias !1091
  %49 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 13
  %_100.sroa.5.0..sroa_cast44.i = bitcast i8* %49 to i16*
  store i16 %_7.i.i.i.i.i, i16* %_100.sroa.5.0..sroa_cast44.i, align 1, !noalias !1091
  %_110.i = icmp ult i16 %_7.i.i.i.i.i, %precision
  br i1 %_110.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit84.i", label %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit84.i": ; preds = %bb35.i
  %_11973.i = add i16 %.sroa.3.0.i.i.i, %precision
  %_117.i = sub i16 %_11973.i, %.sroa.0.0.i.i.i
  %50 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 15
  store i8 0, i8* %50, align 1, !noalias !1091
  %51 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 16
  %_116.sroa.4.0..sroa_cast47.i = bitcast i8* %51 to i16*
  store i16 %_117.i, i16* %_116.sroa.4.0..sroa_cast47.i, align 1, !noalias !1091
  br label %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit

bb46.i:                                           ; preds = %bb10.i
  store i16 %.sroa.0.0.i.i.i, i16* %_83.sroa.5.0..sroa_cast35.i, align 1, !noalias !1091
  %_140.i = sub nsw i16 %.sroa.3.0.i.i.i, %.sroa.0.0.i.i.i
  %52 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 5
  store i8 0, i8* %52, align 1, !noalias !1091
  %53 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 6
  %_139.sroa.4.0..sroa_cast57.i = bitcast i8* %53 to i16*
  store i16 %_140.i, i16* %_139.sroa.4.0..sroa_cast57.i, align 1, !noalias !1091
  %_147.i = icmp eq i16 %precision, 0
  br i1 %_147.i, label %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit90.i"

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit90.i": ; preds = %bb46.i
  %54 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 10
  store i8 2, i8* %54, align 1, !noalias !1091
  %55 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 11
  %_149.sroa.4.0..sroa_cast63.i = bitcast i8* %55 to [0 x i8]**
  store [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc16827 to [0 x i8]*), [0 x i8]** %_149.sroa.4.0..sroa_cast63.i, align 1, !noalias !1091
  %56 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 13
  %_149.sroa.5.0..sroa_cast65.i = bitcast i8* %56 to i16*
  store i16 1, i16* %_149.sroa.5.0..sroa_cast65.i, align 1, !noalias !1091
  %57 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 15
  store i8 0, i8* %57, align 1, !noalias !1091
  %58 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 16
  %_156.sroa.4.0..sroa_cast67.i = bitcast i8* %58 to i16*
  store i16 %precision, i16* %_156.sroa.4.0..sroa_cast67.i, align 1, !noalias !1091
  br label %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit

_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit: ; preds = %bb14.i2, %bb17.i3, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit76.i", %bb35.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit84.i", %bb46.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit90.i"
  %.sroa.7.1.i = phi i16 [ 4, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit84.i" ], [ 4, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit90.i" ], [ 4, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb799557fd429e25dE.exit76.i" ], [ 3, %bb17.i3 ], [ 3, %bb14.i2 ], [ 3, %bb35.i ], [ 2, %bb46.i ]
  %59 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %.sroa.0.0.i.i, [0 x i8]** %59, align 1, !alias.scope !1083
  br label %_ZN4core3num7flt2dec15to_shortest_str17h22585e7b408e1d50E.exit

bb14.i:                                           ; preds = %_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i
  store i8 2, i8* %1, align 1, !noalias !1083
  %60 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 1
  %_29.sroa.4.0..sroa_cast5.i = bitcast i8* %60 to [0 x i8]**
  store [0 x i8]* bitcast (<{ [3 x i8] }>* @alloc245 to [0 x i8]*), [0 x i8]** %_29.sroa.4.0..sroa_cast5.i, align 1, !noalias !1083
  %61 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 3
  %_29.sroa.5.0..sroa_cast7.i = bitcast i8* %61 to i16*
  store i16 3, i16* %_29.sroa.5.0..sroa_cast7.i, align 1, !noalias !1083
  %62 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), [0 x i8]** %62, align 1, !alias.scope !1083
  br label %_ZN4core3num7flt2dec15to_shortest_str17h22585e7b408e1d50E.exit

bb17.i:                                           ; preds = %bb1.i.i
  store i8 2, i8* %1, align 1, !noalias !1083
  %63 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 1
  %_42.sroa.4.0..sroa_cast9.i = bitcast i8* %63 to [0 x i8]**
  store [0 x i8]* bitcast (<{ [3 x i8] }>* @alloc246 to [0 x i8]*), [0 x i8]** %_42.sroa.4.0..sroa_cast9.i, align 1, !noalias !1083
  %64 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 3
  %_42.sroa.5.0..sroa_cast11.i = bitcast i8* %64 to i16*
  store i16 3, i16* %_42.sroa.5.0..sroa_cast11.i, align 1, !noalias !1083
  %65 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %.sroa.0.0.i.i, [0 x i8]** %65, align 1, !alias.scope !1083
  br label %_ZN4core3num7flt2dec15to_shortest_str17h22585e7b408e1d50E.exit

bb22.i:                                           ; preds = %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i
  store [0 x i8]* bitcast (<{ [2 x i8] }>* @alloc239 to [0 x i8]*), [0 x i8]** %_75.sroa.4.0..sroa_cast23.i, align 1, !noalias !1083
  %66 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 3
  %_57.sroa.5.0..sroa_cast15.i = bitcast i8* %66 to i16*
  store i16 2, i16* %_57.sroa.5.0..sroa_cast15.i, align 1, !noalias !1083
  %67 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 5
  store i8 0, i8* %67, align 1, !noalias !1083
  %68 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 6
  %_64.sroa.4.0..sroa_cast17.i = bitcast i8* %68 to i16*
  store i16 %precision, i16* %_64.sroa.4.0..sroa_cast17.i, align 1, !noalias !1083
  %69 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %.sroa.0.0.i.ph.i, [0 x i8]** %69, align 1, !alias.scope !1083
  br label %_ZN4core3num7flt2dec15to_shortest_str17h22585e7b408e1d50E.exit

bb25.i:                                           ; preds = %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i
  store [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc247 to [0 x i8]*), [0 x i8]** %_75.sroa.4.0..sroa_cast23.i, align 1, !noalias !1083
  %70 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, i16 0, i32 0, i16 3
  %_75.sroa.5.0..sroa_cast25.i = bitcast i8* %70 to i16*
  store i16 1, i16* %_75.sroa.5.0..sroa_cast25.i, align 1, !noalias !1083
  %71 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %.sroa.0.0.i.ph.i, [0 x i8]** %71, align 1, !alias.scope !1083
  br label %_ZN4core3num7flt2dec15to_shortest_str17h22585e7b408e1d50E.exit

_ZN4core3num7flt2dec15to_shortest_str17h22585e7b408e1d50E.exit: ; preds = %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit, %bb14.i, %bb17.i, %bb22.i, %bb25.i
  %.sroa.12.0.i.i.sink = phi i16 [ %.sroa.12.0.i.i, %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit ], [ 0, %bb14.i ], [ %.sroa.12.0.i.i, %bb17.i ], [ %.sroa.12.0.shrunk.i.ph.i, %bb22.i ], [ %.sroa.12.0.shrunk.i.ph.i, %bb25.i ]
  %.sroa.7.1.i.sink = phi i16 [ %.sroa.7.1.i, %_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE.exit ], [ 1, %bb14.i ], [ 1, %bb17.i ], [ 2, %bb22.i ], [ 1, %bb25.i ]
  %72 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 1, i32 1
  store i16 %.sroa.12.0.i.i.sink, i16* %72, align 1, !alias.scope !1083
  %73 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 0
  %74 = bitcast [0 x %"num::flt2dec::Part"]** %73 to %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"**
  store %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"* %parts, %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 4]>"** %74, align 1, !alias.scope !1083
  %75 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 1
  store i16 %.sroa.7.1.i.sink, i16* %75, align 1, !alias.scope !1083
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 27, i8* nonnull %16), !noalias !1083
; call core::fmt::Formatter::pad_formatted_parts
  %76 = call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter19pad_formatted_parts17hd831476560d54163E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %fmt, %"num::flt2dec::Formatted"* noalias nonnull readonly align 1 dereferenceable(8) %formatted)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 8, i8* nonnull %2)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 20, i8* nonnull %1)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 17, i8* nonnull %0)
  ret i1 %76
}

; core::fmt::float::float_to_exponential_common_exact
; Function Attrs: noinline uwtable
define internal fastcc zeroext i1 @_ZN4core3fmt5float33float_to_exponential_common_exact17h116573ac2a34148fE(%"fmt::Formatter"* nocapture align 1 dereferenceable(19) %fmt, double %num.val, i8 %sign, i16 %precision, i1 zeroext %upper) unnamed_addr addrspace(1) #11 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_4.i.i.i = alloca %"option::Option<(usize, i16)>", align 1
  %full_decoded.i = alloca %"num::flt2dec::decoder::FullDecoded", align 1
  %formatted = alloca %"num::flt2dec::Formatted", align 1
  %parts = alloca %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", align 1
  %buf = alloca %"mem::maybe_uninit::MaybeUninit<[u8; 1024]>", align 1
  %0 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[u8; 1024]>", %"mem::maybe_uninit::MaybeUninit<[u8; 1024]>"* %buf, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 1024, i8* nonnull %0)
  %1 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 30, i8* nonnull %1)
  %2 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %2)
  %_13.0 = bitcast %"mem::maybe_uninit::MaybeUninit<[u8; 1024]>"* %buf to [0 x i8]*
  %_17.0 = bitcast %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts to [0 x %"num::flt2dec::Part"]*
  %_15.i = icmp eq i16 %precision, 0
  br i1 %_15.i, label %bb7.i, label %bb6.i

bb6.i:                                            ; preds = %start
  %3 = bitcast double %num.val to i64
  %_10.i.i.i = lshr i64 %3, 52
  %4 = trunc i64 %_10.i.i.i to i16
  %5 = and i16 %4, 2047
  %_13.i.i.i = icmp eq i16 %5, 0
  %_15.i.i.i = and i64 %3, 4503599627370495
  %6 = shl nuw nsw i64 %_15.i.i.i, 1
  %7 = or i64 %_15.i.i.i, 4503599627370496
  %mantissa.0.i.i.i = select i1 %_13.i.i.i, i64 %6, i64 %7
  %8 = add nsw i16 %5, -1075
  %_8.i.i = and i64 %mantissa.0.i.i.i, 1
  %9 = icmp eq i64 %_15.i.i.i, 0
  %10 = and i64 %3, 9223372036854775807
  %11 = icmp eq i64 %10, 0
  br i1 %11, label %_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i, label %bb3.i.i.i.i

bb3.i.i.i.i:                                      ; preds = %bb6.i
  %12 = trunc i64 %3 to i63
  %trunc.i.i.i.i = and i63 %12, -4503599627370496
  switch i63 %trunc.i.i.i.i, label %bb3.i.i [
    i63 0, label %bb8.i.i
    i63 -4503599627370496, label %"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17ha6dce715db4a91a6E.exit.i.i"
  ]

"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17ha6dce715db4a91a6E.exit.i.i": ; preds = %bb3.i.i.i.i
  %spec.select.i.i = select i1 %9, i8 3, i8 2
  br label %_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i

bb3.i.i:                                          ; preds = %bb3.i.i.i.i
  %_20.i.i = icmp eq i64 %mantissa.0.i.i.i, 4503599627370496
  br i1 %_20.i.i, label %bb12.i.i, label %bb11.i.i

bb8.i.i:                                          ; preds = %bb3.i.i.i.i
  %13 = trunc i64 %_8.i.i to i8
  %14 = xor i8 %13, 1
  br label %_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i

bb11.i.i:                                         ; preds = %bb3.i.i
  %_30.i.i = shl nuw nsw i64 %mantissa.0.i.i.i, 1
  %_32.i.i = add nsw i16 %5, -1076
  %15 = trunc i64 %_8.i.i to i8
  %phitmp.i.i = xor i8 %15, 1
  br label %_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i

bb12.i.i:                                         ; preds = %bb3.i.i
  %_26.i.i = add nsw i16 %5, -1077
  br label %_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i

_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i: ; preds = %bb12.i.i, %bb11.i.i, %bb8.i.i, %"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17ha6dce715db4a91a6E.exit.i.i", %bb6.i
  %decoded.sroa.0.sroa.0.1.i.i = phi i64 [ %mantissa.0.i.i.i, %bb8.i.i ], [ undef, %"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17ha6dce715db4a91a6E.exit.i.i" ], [ undef, %bb6.i ], [ 18014398509481984, %bb12.i.i ], [ %_30.i.i, %bb11.i.i ]
  %decoded.sroa.0.sroa.7.1.i.i = phi i64 [ 1, %bb8.i.i ], [ undef, %"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17ha6dce715db4a91a6E.exit.i.i" ], [ undef, %bb6.i ], [ 2, %bb12.i.i ], [ 1, %bb11.i.i ]
  %decoded.sroa.0.sroa.8.1.i.i = phi i16 [ %8, %bb8.i.i ], [ undef, %"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17ha6dce715db4a91a6E.exit.i.i" ], [ undef, %bb6.i ], [ %_26.i.i, %bb12.i.i ], [ %_32.i.i, %bb11.i.i ]
  %decoded.sroa.6.1.i.i = phi i8 [ %14, %bb8.i.i ], [ %spec.select.i.i, %"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17ha6dce715db4a91a6E.exit.i.i" ], [ 4, %bb6.i ], [ 1, %bb12.i.i ], [ %phitmp.i.i, %bb11.i.i ]
  %negative.i = icmp slt i64 %3, 0
  %16 = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 27, i8* nonnull %16), !noalias !1094
  %_21.sroa.4.1..sroa_cast.i = bitcast %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i to i64*
  store i64 %decoded.sroa.0.sroa.0.1.i.i, i64* %_21.sroa.4.1..sroa_cast.i, align 1, !noalias !1094
  %_21.sroa.6.1..sroa_idx.i = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 0, i16 8
  %_21.sroa.6.1..sroa_cast.i = bitcast i8* %_21.sroa.6.1..sroa_idx.i to i64*
  store i64 1, i64* %_21.sroa.6.1..sroa_cast.i, align 1, !noalias !1094
  %_21.sroa.7.1..sroa_idx.i = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 0, i16 16
  %_21.sroa.7.1..sroa_cast.i = bitcast i8* %_21.sroa.7.1..sroa_idx.i to i64*
  store i64 %decoded.sroa.0.sroa.7.1.i.i, i64* %_21.sroa.7.1..sroa_cast.i, align 1, !noalias !1094
  %_21.sroa.8.1..sroa_idx.i = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 0, i16 24
  %_21.sroa.8.1..sroa_cast.i = bitcast i8* %_21.sroa.8.1..sroa_idx.i to i16*
  store i16 %decoded.sroa.0.sroa.8.1.i.i, i16* %_21.sroa.8.1..sroa_cast.i, align 1, !noalias !1094
  %_21.sroa.9.1..sroa_idx.i = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 1
  store i8 %decoded.sroa.6.1.i.i, i8* %_21.sroa.9.1..sroa_idx.i, align 1, !noalias !1094
  %17 = add i8 %decoded.sroa.6.1.i.i, -2
  %18 = icmp ult i8 %17, 3
  %narrow.i.i = select i1 %18, i8 %17, i8 3
  %trunc.i.i = trunc i8 %narrow.i.i to i2
  switch i2 %trunc.i.i, label %bb1.i.i [
    i2 0, label %bb13.i
    i2 -2, label %bb2.i.i
  ]

bb110.i.i:                                        ; preds = %bb2.i.i
  unreachable

bb1.i.i:                                          ; preds = %_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i
  %switch.i.i = icmp ult i8 %sign, 2
  %.28.i.i = select i1 %negative.i, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0)
  %.29.i.i = select i1 %negative.i, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19124 to [0 x i8]*)
  %not.switch.i.i = xor i1 %switch.i.i, true
  %.sroa.12.0.shrunk.i.i = or i1 %negative.i, %not.switch.i.i
  %.sroa.0.0.i.i = select i1 %switch.i.i, [0 x i8]* %.28.i.i, [0 x i8]* %.29.i.i
  %.sroa.12.0.i.i = zext i1 %.sroa.12.0.shrunk.i.i to i16
  %switch.i = icmp eq i2 %trunc.i.i, -1
  br i1 %switch.i, label %bb10.i, label %bb16.i

bb2.i.i:                                          ; preds = %_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i
  switch i8 %sign, label %bb110.i.i [
    i8 0, label %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i
    i8 1, label %bb6.i.i
    i8 2, label %bb10.i.i
    i8 3, label %bb11.i1.i
  ]

bb6.i.i:                                          ; preds = %bb2.i.i
  %.25.i.i = select i1 %negative.i, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0)
  %.lobit.i = lshr i64 %3, 63
  %19 = trunc i64 %.lobit.i to i16
  br label %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i

bb10.i.i:                                         ; preds = %bb2.i.i
  br label %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i

bb11.i1.i:                                        ; preds = %bb2.i.i
  %.26.i.i = select i1 %negative.i, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19124 to [0 x i8]*)
  br label %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i

_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i: ; preds = %bb11.i1.i, %bb10.i.i, %bb6.i.i, %bb2.i.i
  %.sroa.12.0.shrunk.i.ph.i = phi i16 [ 1, %bb11.i1.i ], [ %19, %bb6.i.i ], [ 0, %bb2.i.i ], [ 1, %bb10.i.i ]
  %.sroa.0.0.i.ph.i = phi [0 x i8]* [ %.26.i.i, %bb11.i1.i ], [ %.25.i.i, %bb6.i.i ], [ getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), %bb2.i.i ], [ bitcast (<{ [1 x i8] }>* @alloc19124 to [0 x i8]*), %bb10.i.i ]
  %_55.i = icmp ugt i16 %precision, 1
  br i1 %_55.i, label %bb21.i, label %bb19.i

bb7.i:                                            ; preds = %start
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [29 x i8] }>* @alloc18489 to [0 x i8]*), i16 29, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18460 to %"panic::Location"*)), !noalias !1094
  unreachable

bb10.i:                                           ; preds = %bb1.i.i
  %decoded.i = bitcast %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i to %"num::flt2dec::decoder::Decoded"*
  %_6.i.i = icmp slt i16 %decoded.sroa.0.sroa.8.1.i.i, 0
  %..i.i = select i1 %_6.i.i, i16 -12, i16 5
  %_4.i.i = mul i16 %..i.i, %decoded.sroa.0.sroa.8.1.i.i
  %_2.i.i = lshr i16 %_4.i.i, 4
  %20 = add nuw nsw i16 %_2.i.i, 21
  %_107.i = icmp ugt i16 %precision, 1024
  %_111.i = icmp ugt i16 %_4.i.i, 16063
  %or.cond.i = and i1 %_107.i, %_111.i
  br i1 %or.cond.i, label %bb36.i, label %bb41.i

bb13.i:                                           ; preds = %_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i
  store i8 2, i8* %1, align 1, !noalias !1094
  %21 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 1
  %_29.sroa.4.0..sroa_cast6.i = bitcast i8* %21 to [0 x i8]**
  store [0 x i8]* bitcast (<{ [3 x i8] }>* @alloc245 to [0 x i8]*), [0 x i8]** %_29.sroa.4.0..sroa_cast6.i, align 1, !noalias !1094
  %22 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 3
  %_29.sroa.5.0..sroa_cast8.i = bitcast i8* %22 to i16*
  store i16 3, i16* %_29.sroa.5.0..sroa_cast8.i, align 1, !noalias !1094
  %23 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), [0 x i8]** %23, align 1, !alias.scope !1094
  %24 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 1, i32 1
  store i16 0, i16* %24, align 1, !alias.scope !1094
  %25 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 0
  %26 = bitcast [0 x %"num::flt2dec::Part"]** %25 to %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"**
  store %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"** %26, align 1, !alias.scope !1094
  br label %_ZN4core3num7flt2dec16to_exact_exp_str17h7fc80e2dde131f41E.exit

bb16.i:                                           ; preds = %bb1.i.i
  store i8 2, i8* %1, align 1, !noalias !1094
  %27 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 1
  %_42.sroa.4.0..sroa_cast10.i = bitcast i8* %27 to [0 x i8]**
  store [0 x i8]* bitcast (<{ [3 x i8] }>* @alloc246 to [0 x i8]*), [0 x i8]** %_42.sroa.4.0..sroa_cast10.i, align 1, !noalias !1094
  %28 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 3
  %_42.sroa.5.0..sroa_cast12.i = bitcast i8* %28 to i16*
  store i16 3, i16* %_42.sroa.5.0..sroa_cast12.i, align 1, !noalias !1094
  %29 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %.sroa.0.0.i.i, [0 x i8]** %29, align 1, !alias.scope !1094
  %30 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 1, i32 1
  store i16 %.sroa.12.0.i.i, i16* %30, align 1, !alias.scope !1094
  %31 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 0
  %32 = bitcast [0 x %"num::flt2dec::Part"]** %31 to %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"**
  store %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"** %32, align 1, !alias.scope !1094
  br label %_ZN4core3num7flt2dec16to_exact_exp_str17h7fc80e2dde131f41E.exit

bb19.i:                                           ; preds = %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i
  %..i = select i1 %upper, [0 x i8]* bitcast (<{ [3 x i8] }>* @alloc248 to [0 x i8]*), [0 x i8]* bitcast (<{ [3 x i8] }>* @alloc249 to [0 x i8]*)
  store i8 2, i8* %1, align 1, !noalias !1094
  %33 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 1
  %_86.sroa.4.0..sroa_cast30.i = bitcast i8* %33 to [0 x i8]**
  store [0 x i8]* %..i, [0 x i8]** %_86.sroa.4.0..sroa_cast30.i, align 1, !noalias !1094
  %34 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 3
  %_86.sroa.5.0..sroa_cast32.i = bitcast i8* %34 to i16*
  store i16 3, i16* %_86.sroa.5.0..sroa_cast32.i, align 1, !noalias !1094
  %35 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %.sroa.0.0.i.ph.i, [0 x i8]** %35, align 1, !alias.scope !1094
  %36 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 1, i32 1
  store i16 %.sroa.12.0.shrunk.i.ph.i, i16* %36, align 1, !alias.scope !1094
  %37 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 0
  %38 = bitcast [0 x %"num::flt2dec::Part"]** %37 to %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"**
  store %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"** %38, align 1, !alias.scope !1094
  br label %_ZN4core3num7flt2dec16to_exact_exp_str17h7fc80e2dde131f41E.exit

bb21.i:                                           ; preds = %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i
  store i8 2, i8* %1, align 1, !noalias !1094
  %39 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 1
  %_57.sroa.4.0..sroa_cast14.i = bitcast i8* %39 to [0 x i8]**
  store [0 x i8]* bitcast (<{ [2 x i8] }>* @alloc239 to [0 x i8]*), [0 x i8]** %_57.sroa.4.0..sroa_cast14.i, align 1, !noalias !1094
  %40 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 3
  %_57.sroa.5.0..sroa_cast16.i = bitcast i8* %40 to i16*
  store i16 2, i16* %_57.sroa.5.0..sroa_cast16.i, align 1, !noalias !1094
  %_65.i = add i16 %precision, -1
  %41 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 5
  store i8 0, i8* %41, align 1, !noalias !1094
  %42 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 6
  %_64.sroa.4.0..sroa_cast18.i = bitcast i8* %42 to i16*
  store i16 %_65.i, i16* %_64.sroa.4.0..sroa_cast18.i, align 1, !noalias !1094
  %_71.sroa.0.0.i = select i1 %upper, [0 x i8]* bitcast (<{ [2 x i8] }>* @alloc250 to [0 x i8]*), [0 x i8]* bitcast (<{ [2 x i8] }>* @alloc251 to [0 x i8]*)
  %43 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 10
  store i8 2, i8* %43, align 1, !noalias !1094
  %44 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 11
  %_70.sroa.4.0..sroa_cast24.i = bitcast i8* %44 to [0 x i8]**
  store [0 x i8]* %_71.sroa.0.0.i, [0 x i8]** %_70.sroa.4.0..sroa_cast24.i, align 1, !noalias !1094
  %45 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 13
  %_70.sroa.5.0..sroa_cast26.i = bitcast i8* %45 to i16*
  store i16 2, i16* %_70.sroa.5.0..sroa_cast26.i, align 1, !noalias !1094
  %46 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %.sroa.0.0.i.ph.i, [0 x i8]** %46, align 1, !alias.scope !1094
  %47 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 1, i32 1
  store i16 %.sroa.12.0.shrunk.i.ph.i, i16* %47, align 1, !alias.scope !1094
  %48 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 0
  %49 = bitcast [0 x %"num::flt2dec::Part"]** %48 to %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"**
  store %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"** %49, align 1, !alias.scope !1094
  br label %_ZN4core3num7flt2dec16to_exact_exp_str17h7fc80e2dde131f41E.exit

bb36.i:                                           ; preds = %bb10.i
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [61 x i8] }>* @alloc18490 to [0 x i8]*), i16 61, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18463 to %"panic::Location"*)), !noalias !1094
  unreachable

bb41.i:                                           ; preds = %bb10.i
  %_118.i = icmp ugt i16 %20, %precision
  %ndigits.maxlen.i = select i1 %_118.i, i16 %precision, i16 %20
  %_9.i.i.i.i = icmp ugt i16 %ndigits.maxlen.i, 1024
  br i1 %_9.i.i.i.i, label %bb5.i.i.i2.i, label %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit.i"

bb5.i.i.i2.i:                                     ; preds = %bb41.i
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %ndigits.maxlen.i, i16 1024, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18465 to %"panic::Location"*)), !noalias !1094
  unreachable

"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit.i": ; preds = %bb41.i
  %50 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %_4.i.i.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 5, i8* nonnull %50), !noalias !1097
; call core::num::flt2dec::strategy::grisu::format_exact_opt
  call addrspace(1) void @_ZN4core3num7flt2dec8strategy5grisu16format_exact_opt17he193f633dc4a3d8fE(%"option::Option<(usize, i16)>"* noalias nocapture nonnull sret dereferenceable(5) %_4.i.i.i, %"num::flt2dec::decoder::Decoded"* noalias nonnull readonly align 1 dereferenceable(27) %decoded.i, [0 x i8]* nonnull align 1 %_13.0, i16 %ndigits.maxlen.i, i16 -32768), !noalias !1094
  %51 = load i8, i8* %50, align 1, !range !87, !noalias !1097
  %switch.i.i.i = icmp eq i8 %51, 1
  br i1 %switch.i.i.i, label %bb4.i.i.i, label %bb2.i.i.i

bb2.i.i.i:                                        ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit.i"
; call core::num::flt2dec::strategy::dragon::format_exact
  %52 = call addrspace(1) { i16, i16 } @_ZN4core3num7flt2dec8strategy6dragon12format_exact17h8254a82163510597E(%"num::flt2dec::decoder::Decoded"* noalias nonnull readonly align 1 dereferenceable(27) %decoded.i, [0 x i8]* nonnull align 1 %_13.0, i16 %ndigits.maxlen.i, i16 -32768), !noalias !1094
  %.fca.0.extract.i.i.i = extractvalue { i16, i16 } %52, 0
  %.fca.1.extract.i.i.i = extractvalue { i16, i16 } %52, 1
  br label %_ZN4core3ops8function5FnMut8call_mut17ha8ecc7f04fdaafcaE.exit.i

bb4.i.i.i:                                        ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit.i"
  %53 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %_4.i.i.i, i16 0, i32 2
  %54 = bitcast [4 x i8]* %53 to i16*
  %ret.0.i.i.i = load i16, i16* %54, align 1, !noalias !1097
  %55 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %_4.i.i.i, i16 0, i32 2, i16 2
  %56 = bitcast i8* %55 to i16*
  %ret.1.i.i.i = load i16, i16* %56, align 1, !noalias !1097
  br label %_ZN4core3ops8function5FnMut8call_mut17ha8ecc7f04fdaafcaE.exit.i

_ZN4core3ops8function5FnMut8call_mut17ha8ecc7f04fdaafcaE.exit.i: ; preds = %bb4.i.i.i, %bb2.i.i.i
  %.sroa.3.0.i.i.i = phi i16 [ %.fca.1.extract.i.i.i, %bb2.i.i.i ], [ %ret.1.i.i.i, %bb4.i.i.i ]
  %.sroa.0.0.i.i.i = phi i16 [ %.fca.0.extract.i.i.i, %bb2.i.i.i ], [ %ret.0.i.i.i, %bb4.i.i.i ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 5, i8* nonnull %50), !noalias !1097
  %_8.i.i.i.i = icmp ugt i16 %.sroa.0.0.i.i.i, 1024
  br i1 %_8.i.i.i.i, label %bb5.i.i.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i"

bb5.i.i.i.i:                                      ; preds = %_ZN4core3ops8function5FnMut8call_mut17ha8ecc7f04fdaafcaE.exit.i
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.sroa.0.0.i.i.i, i16 1024, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18467 to %"panic::Location"*)), !noalias !1094
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i": ; preds = %_ZN4core3ops8function5FnMut8call_mut17ha8ecc7f04fdaafcaE.exit.i
; call core::num::flt2dec::digits_to_exp_str
  %57 = call addrspace(1) { [0 x %"num::flt2dec::Part"]*, i16 } @_ZN4core3num7flt2dec17digits_to_exp_str17he546c1d8fc89e6f6E([0 x i8]* noalias nonnull readonly align 1 %_13.0, i16 %.sroa.0.0.i.i.i, i16 %.sroa.3.0.i.i.i, i16 %precision, i1 zeroext %upper, [0 x %"num::flt2dec::Part"]* nonnull align 1 %_17.0, i16 6), !noalias !1094
  %_135.0.i = extractvalue { [0 x %"num::flt2dec::Part"]*, i16 } %57, 0
  %_135.1.i = extractvalue { [0 x %"num::flt2dec::Part"]*, i16 } %57, 1
  %58 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %.sroa.0.0.i.i, [0 x i8]** %58, align 1, !alias.scope !1094
  %59 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 1, i32 1
  store i16 %.sroa.12.0.i.i, i16* %59, align 1, !alias.scope !1094
  %60 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 0
  store [0 x %"num::flt2dec::Part"]* %_135.0.i, [0 x %"num::flt2dec::Part"]** %60, align 1, !alias.scope !1094
  br label %_ZN4core3num7flt2dec16to_exact_exp_str17h7fc80e2dde131f41E.exit

_ZN4core3num7flt2dec16to_exact_exp_str17h7fc80e2dde131f41E.exit: ; preds = %bb13.i, %bb16.i, %bb19.i, %bb21.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i"
  %.sink = phi i16 [ 1, %bb13.i ], [ 1, %bb16.i ], [ 1, %bb19.i ], [ 3, %bb21.i ], [ %_135.1.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i" ]
  %61 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 1
  store i16 %.sink, i16* %61, align 1, !alias.scope !1094
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 27, i8* nonnull %16), !noalias !1094
; call core::fmt::Formatter::pad_formatted_parts
  %62 = call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter19pad_formatted_parts17hd831476560d54163E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %fmt, %"num::flt2dec::Formatted"* noalias nonnull readonly align 1 dereferenceable(8) %formatted)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 8, i8* nonnull %2)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 30, i8* nonnull %1)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 1024, i8* nonnull %0)
  ret i1 %62
}

; core::fmt::float::float_to_exponential_common_exact
; Function Attrs: noinline uwtable
define internal fastcc zeroext i1 @_ZN4core3fmt5float33float_to_exponential_common_exact17h50bf6f9b69950921E(%"fmt::Formatter"* nocapture align 1 dereferenceable(19) %fmt, float %num.val, i8 %sign, i16 %precision, i1 zeroext %upper) unnamed_addr addrspace(1) #11 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_4.i.i.i = alloca %"option::Option<(usize, i16)>", align 1
  %full_decoded.i = alloca %"num::flt2dec::decoder::FullDecoded", align 1
  %formatted = alloca %"num::flt2dec::Formatted", align 1
  %parts = alloca %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", align 1
  %buf = alloca %"mem::maybe_uninit::MaybeUninit<[u8; 1024]>", align 1
  %0 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[u8; 1024]>", %"mem::maybe_uninit::MaybeUninit<[u8; 1024]>"* %buf, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 1024, i8* nonnull %0)
  %1 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 30, i8* nonnull %1)
  %2 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %2)
  %_13.0 = bitcast %"mem::maybe_uninit::MaybeUninit<[u8; 1024]>"* %buf to [0 x i8]*
  %_17.0 = bitcast %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts to [0 x %"num::flt2dec::Part"]*
  %_15.i = icmp eq i16 %precision, 0
  br i1 %_15.i, label %bb7.i, label %bb6.i

bb6.i:                                            ; preds = %start
  %3 = bitcast float %num.val to i32
  %_10.i.i.i = lshr i32 %3, 23
  %4 = trunc i32 %_10.i.i.i to i16
  %5 = and i16 %4, 255
  %_13.i.i.i = icmp eq i16 %5, 0
  %_15.i.i.i = and i32 %3, 8388607
  %6 = shl nuw nsw i32 %_15.i.i.i, 1
  %7 = or i32 %_15.i.i.i, 8388608
  %mantissa.0.i.i.i = select i1 %_13.i.i.i, i32 %6, i32 %7
  %_20.i.i.i = zext i32 %mantissa.0.i.i.i to i64
  %_8.i.i = and i64 %_20.i.i.i, 1
  %8 = icmp eq i32 %_15.i.i.i, 0
  %9 = and i32 %3, 2147483647
  %10 = icmp eq i32 %9, 0
  br i1 %10, label %_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb6.i
  %11 = trunc i32 %3 to i31
  %trunc.i.i.i = and i31 %11, -8388608
  switch i31 %trunc.i.i.i, label %bb3.i.i [
    i31 0, label %bb8.i.i
    i31 -8388608, label %"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17hfe9954e5c26e2ab2E.exit.i"
  ]

"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17hfe9954e5c26e2ab2E.exit.i": ; preds = %bb3.i.i.i
  %spec.select.i = select i1 %8, i8 3, i8 2
  br label %_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i

bb3.i.i:                                          ; preds = %bb3.i.i.i
  %_20.i.i = icmp eq i32 %mantissa.0.i.i.i, 8388608
  br i1 %_20.i.i, label %bb12.i.i, label %bb11.i.i

bb8.i.i:                                          ; preds = %bb3.i.i.i
  %12 = add nsw i16 %5, -150
  %13 = trunc i64 %_8.i.i to i8
  %14 = xor i8 %13, 1
  br label %_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i

bb11.i.i:                                         ; preds = %bb3.i.i
  %_30.i.i = shl nuw nsw i64 %_20.i.i.i, 1
  %_32.i.i = add nsw i16 %5, -151
  %15 = trunc i64 %_8.i.i to i8
  %phitmp.i.i = xor i8 %15, 1
  br label %_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i

bb12.i.i:                                         ; preds = %bb3.i.i
  %_26.i.i = add nsw i16 %5, -152
  br label %_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i

_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i: ; preds = %bb12.i.i, %bb11.i.i, %bb8.i.i, %"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17hfe9954e5c26e2ab2E.exit.i", %bb6.i
  %decoded.sroa.0.sroa.0.1.i.i = phi i64 [ %_20.i.i.i, %bb8.i.i ], [ 33554432, %bb12.i.i ], [ %_30.i.i, %bb11.i.i ], [ undef, %"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17hfe9954e5c26e2ab2E.exit.i" ], [ undef, %bb6.i ]
  %decoded.sroa.0.sroa.7.1.i.i = phi i64 [ 1, %bb8.i.i ], [ 2, %bb12.i.i ], [ 1, %bb11.i.i ], [ undef, %"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17hfe9954e5c26e2ab2E.exit.i" ], [ undef, %bb6.i ]
  %decoded.sroa.0.sroa.8.1.i.i = phi i16 [ %12, %bb8.i.i ], [ %_26.i.i, %bb12.i.i ], [ %_32.i.i, %bb11.i.i ], [ undef, %"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17hfe9954e5c26e2ab2E.exit.i" ], [ undef, %bb6.i ]
  %decoded.sroa.6.1.i.i = phi i8 [ %14, %bb8.i.i ], [ 1, %bb12.i.i ], [ %phitmp.i.i, %bb11.i.i ], [ %spec.select.i, %"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17hfe9954e5c26e2ab2E.exit.i" ], [ 4, %bb6.i ]
  %negative.i = icmp slt i32 %3, 0
  %16 = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 27, i8* nonnull %16), !noalias !1102
  %_21.sroa.4.1..sroa_cast.i = bitcast %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i to i64*
  store i64 %decoded.sroa.0.sroa.0.1.i.i, i64* %_21.sroa.4.1..sroa_cast.i, align 1, !noalias !1102
  %_21.sroa.6.1..sroa_idx.i = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 0, i16 8
  %_21.sroa.6.1..sroa_cast.i = bitcast i8* %_21.sroa.6.1..sroa_idx.i to i64*
  store i64 1, i64* %_21.sroa.6.1..sroa_cast.i, align 1, !noalias !1102
  %_21.sroa.7.1..sroa_idx.i = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 0, i16 16
  %_21.sroa.7.1..sroa_cast.i = bitcast i8* %_21.sroa.7.1..sroa_idx.i to i64*
  store i64 %decoded.sroa.0.sroa.7.1.i.i, i64* %_21.sroa.7.1..sroa_cast.i, align 1, !noalias !1102
  %_21.sroa.8.1..sroa_idx.i = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 0, i16 24
  %_21.sroa.8.1..sroa_cast.i = bitcast i8* %_21.sroa.8.1..sroa_idx.i to i16*
  store i16 %decoded.sroa.0.sroa.8.1.i.i, i16* %_21.sroa.8.1..sroa_cast.i, align 1, !noalias !1102
  %_21.sroa.9.1..sroa_idx.i = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 1
  store i8 %decoded.sroa.6.1.i.i, i8* %_21.sroa.9.1..sroa_idx.i, align 1, !noalias !1102
  %17 = add i8 %decoded.sroa.6.1.i.i, -2
  %18 = icmp ult i8 %17, 3
  %narrow.i.i = select i1 %18, i8 %17, i8 3
  %trunc.i1.i = trunc i8 %narrow.i.i to i2
  switch i2 %trunc.i1.i, label %bb1.i.i [
    i2 0, label %bb13.i
    i2 -2, label %bb2.i.i
  ]

bb110.i.i:                                        ; preds = %bb2.i.i
  unreachable

bb1.i.i:                                          ; preds = %_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i
  %switch.i.i = icmp ult i8 %sign, 2
  %.28.i.i = select i1 %negative.i, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0)
  %.29.i.i = select i1 %negative.i, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19124 to [0 x i8]*)
  %not.switch.i.i = xor i1 %switch.i.i, true
  %.sroa.12.0.shrunk.i.i = or i1 %negative.i, %not.switch.i.i
  %.sroa.0.0.i.i = select i1 %switch.i.i, [0 x i8]* %.28.i.i, [0 x i8]* %.29.i.i
  %.sroa.12.0.i.i = zext i1 %.sroa.12.0.shrunk.i.i to i16
  %switch31.i = icmp eq i2 %trunc.i1.i, -1
  br i1 %switch31.i, label %bb10.i, label %bb16.i

bb2.i.i:                                          ; preds = %_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i
  switch i8 %sign, label %bb110.i.i [
    i8 0, label %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i
    i8 1, label %bb6.i2.i
    i8 2, label %bb10.i.i
    i8 3, label %bb11.i3.i
  ]

bb6.i2.i:                                         ; preds = %bb2.i.i
  %.25.i.i = select i1 %negative.i, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0)
  %.lobit.i = lshr i32 %3, 31
  %19 = trunc i32 %.lobit.i to i16
  br label %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i

bb10.i.i:                                         ; preds = %bb2.i.i
  br label %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i

bb11.i3.i:                                        ; preds = %bb2.i.i
  %.26.i.i = select i1 %negative.i, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19124 to [0 x i8]*)
  br label %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i

_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i: ; preds = %bb11.i3.i, %bb10.i.i, %bb6.i2.i, %bb2.i.i
  %.sroa.12.0.shrunk.i.ph.i = phi i16 [ 1, %bb11.i3.i ], [ %19, %bb6.i2.i ], [ 0, %bb2.i.i ], [ 1, %bb10.i.i ]
  %.sroa.0.0.i.ph.i = phi [0 x i8]* [ %.26.i.i, %bb11.i3.i ], [ %.25.i.i, %bb6.i2.i ], [ getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), %bb2.i.i ], [ bitcast (<{ [1 x i8] }>* @alloc19124 to [0 x i8]*), %bb10.i.i ]
  %_55.i = icmp ugt i16 %precision, 1
  br i1 %_55.i, label %bb21.i, label %bb19.i

bb7.i:                                            ; preds = %start
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [29 x i8] }>* @alloc18489 to [0 x i8]*), i16 29, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18460 to %"panic::Location"*)), !noalias !1102
  unreachable

bb10.i:                                           ; preds = %bb1.i.i
  %decoded.i = bitcast %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i to %"num::flt2dec::decoder::Decoded"*
  %_6.i.i = icmp slt i16 %decoded.sroa.0.sroa.8.1.i.i, 0
  %..i.i = select i1 %_6.i.i, i16 -12, i16 5
  %_4.i.i = mul i16 %..i.i, %decoded.sroa.0.sroa.8.1.i.i
  %_2.i.i = lshr i16 %_4.i.i, 4
  %20 = add nuw nsw i16 %_2.i.i, 21
  %_107.i = icmp ugt i16 %precision, 1024
  %_111.i = icmp ugt i16 %_4.i.i, 16063
  %or.cond.i = and i1 %_107.i, %_111.i
  br i1 %or.cond.i, label %bb36.i, label %bb41.i

bb13.i:                                           ; preds = %_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i
  store i8 2, i8* %1, align 1, !noalias !1102
  %21 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 1
  %_29.sroa.4.0..sroa_cast6.i = bitcast i8* %21 to [0 x i8]**
  store [0 x i8]* bitcast (<{ [3 x i8] }>* @alloc245 to [0 x i8]*), [0 x i8]** %_29.sroa.4.0..sroa_cast6.i, align 1, !noalias !1102
  %22 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 3
  %_29.sroa.5.0..sroa_cast8.i = bitcast i8* %22 to i16*
  store i16 3, i16* %_29.sroa.5.0..sroa_cast8.i, align 1, !noalias !1102
  %23 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), [0 x i8]** %23, align 1, !alias.scope !1102
  %24 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 1, i32 1
  store i16 0, i16* %24, align 1, !alias.scope !1102
  %25 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 0
  %26 = bitcast [0 x %"num::flt2dec::Part"]** %25 to %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"**
  store %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"** %26, align 1, !alias.scope !1102
  br label %_ZN4core3num7flt2dec16to_exact_exp_str17hed78bca49115c29cE.exit

bb16.i:                                           ; preds = %bb1.i.i
  store i8 2, i8* %1, align 1, !noalias !1102
  %27 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 1
  %_42.sroa.4.0..sroa_cast10.i = bitcast i8* %27 to [0 x i8]**
  store [0 x i8]* bitcast (<{ [3 x i8] }>* @alloc246 to [0 x i8]*), [0 x i8]** %_42.sroa.4.0..sroa_cast10.i, align 1, !noalias !1102
  %28 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 3
  %_42.sroa.5.0..sroa_cast12.i = bitcast i8* %28 to i16*
  store i16 3, i16* %_42.sroa.5.0..sroa_cast12.i, align 1, !noalias !1102
  %29 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %.sroa.0.0.i.i, [0 x i8]** %29, align 1, !alias.scope !1102
  %30 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 1, i32 1
  store i16 %.sroa.12.0.i.i, i16* %30, align 1, !alias.scope !1102
  %31 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 0
  %32 = bitcast [0 x %"num::flt2dec::Part"]** %31 to %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"**
  store %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"** %32, align 1, !alias.scope !1102
  br label %_ZN4core3num7flt2dec16to_exact_exp_str17hed78bca49115c29cE.exit

bb19.i:                                           ; preds = %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i
  %..i = select i1 %upper, [0 x i8]* bitcast (<{ [3 x i8] }>* @alloc248 to [0 x i8]*), [0 x i8]* bitcast (<{ [3 x i8] }>* @alloc249 to [0 x i8]*)
  store i8 2, i8* %1, align 1, !noalias !1102
  %33 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 1
  %_86.sroa.4.0..sroa_cast30.i = bitcast i8* %33 to [0 x i8]**
  store [0 x i8]* %..i, [0 x i8]** %_86.sroa.4.0..sroa_cast30.i, align 1, !noalias !1102
  %34 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 3
  %_86.sroa.5.0..sroa_cast32.i = bitcast i8* %34 to i16*
  store i16 3, i16* %_86.sroa.5.0..sroa_cast32.i, align 1, !noalias !1102
  %35 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %.sroa.0.0.i.ph.i, [0 x i8]** %35, align 1, !alias.scope !1102
  %36 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 1, i32 1
  store i16 %.sroa.12.0.shrunk.i.ph.i, i16* %36, align 1, !alias.scope !1102
  %37 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 0
  %38 = bitcast [0 x %"num::flt2dec::Part"]** %37 to %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"**
  store %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"** %38, align 1, !alias.scope !1102
  br label %_ZN4core3num7flt2dec16to_exact_exp_str17hed78bca49115c29cE.exit

bb21.i:                                           ; preds = %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i
  store i8 2, i8* %1, align 1, !noalias !1102
  %39 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 1
  %_57.sroa.4.0..sroa_cast14.i = bitcast i8* %39 to [0 x i8]**
  store [0 x i8]* bitcast (<{ [2 x i8] }>* @alloc239 to [0 x i8]*), [0 x i8]** %_57.sroa.4.0..sroa_cast14.i, align 1, !noalias !1102
  %40 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 3
  %_57.sroa.5.0..sroa_cast16.i = bitcast i8* %40 to i16*
  store i16 2, i16* %_57.sroa.5.0..sroa_cast16.i, align 1, !noalias !1102
  %_65.i = add i16 %precision, -1
  %41 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 5
  store i8 0, i8* %41, align 1, !noalias !1102
  %42 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 6
  %_64.sroa.4.0..sroa_cast18.i = bitcast i8* %42 to i16*
  store i16 %_65.i, i16* %_64.sroa.4.0..sroa_cast18.i, align 1, !noalias !1102
  %_71.sroa.0.0.i = select i1 %upper, [0 x i8]* bitcast (<{ [2 x i8] }>* @alloc250 to [0 x i8]*), [0 x i8]* bitcast (<{ [2 x i8] }>* @alloc251 to [0 x i8]*)
  %43 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 10
  store i8 2, i8* %43, align 1, !noalias !1102
  %44 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 11
  %_70.sroa.4.0..sroa_cast24.i = bitcast i8* %44 to [0 x i8]**
  store [0 x i8]* %_71.sroa.0.0.i, [0 x i8]** %_70.sroa.4.0..sroa_cast24.i, align 1, !noalias !1102
  %45 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 13
  %_70.sroa.5.0..sroa_cast26.i = bitcast i8* %45 to i16*
  store i16 2, i16* %_70.sroa.5.0..sroa_cast26.i, align 1, !noalias !1102
  %46 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %.sroa.0.0.i.ph.i, [0 x i8]** %46, align 1, !alias.scope !1102
  %47 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 1, i32 1
  store i16 %.sroa.12.0.shrunk.i.ph.i, i16* %47, align 1, !alias.scope !1102
  %48 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 0
  %49 = bitcast [0 x %"num::flt2dec::Part"]** %48 to %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"**
  store %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"** %49, align 1, !alias.scope !1102
  br label %_ZN4core3num7flt2dec16to_exact_exp_str17hed78bca49115c29cE.exit

bb36.i:                                           ; preds = %bb10.i
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [61 x i8] }>* @alloc18490 to [0 x i8]*), i16 61, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18463 to %"panic::Location"*)), !noalias !1102
  unreachable

bb41.i:                                           ; preds = %bb10.i
  %_118.i = icmp ugt i16 %20, %precision
  %ndigits.maxlen.i = select i1 %_118.i, i16 %precision, i16 %20
  %_9.i.i.i.i = icmp ugt i16 %ndigits.maxlen.i, 1024
  br i1 %_9.i.i.i.i, label %bb5.i.i.i5.i, label %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit.i"

bb5.i.i.i5.i:                                     ; preds = %bb41.i
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %ndigits.maxlen.i, i16 1024, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18465 to %"panic::Location"*)), !noalias !1102
  unreachable

"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit.i": ; preds = %bb41.i
  %50 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %_4.i.i.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 5, i8* nonnull %50), !noalias !1105
; call core::num::flt2dec::strategy::grisu::format_exact_opt
  call addrspace(1) void @_ZN4core3num7flt2dec8strategy5grisu16format_exact_opt17he193f633dc4a3d8fE(%"option::Option<(usize, i16)>"* noalias nocapture nonnull sret dereferenceable(5) %_4.i.i.i, %"num::flt2dec::decoder::Decoded"* noalias nonnull readonly align 1 dereferenceable(27) %decoded.i, [0 x i8]* nonnull align 1 %_13.0, i16 %ndigits.maxlen.i, i16 -32768), !noalias !1102
  %51 = load i8, i8* %50, align 1, !range !87, !noalias !1105
  %switch.i.i.i = icmp eq i8 %51, 1
  br i1 %switch.i.i.i, label %bb4.i.i4.i, label %bb2.i.i.i

bb2.i.i.i:                                        ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit.i"
; call core::num::flt2dec::strategy::dragon::format_exact
  %52 = call addrspace(1) { i16, i16 } @_ZN4core3num7flt2dec8strategy6dragon12format_exact17h8254a82163510597E(%"num::flt2dec::decoder::Decoded"* noalias nonnull readonly align 1 dereferenceable(27) %decoded.i, [0 x i8]* nonnull align 1 %_13.0, i16 %ndigits.maxlen.i, i16 -32768), !noalias !1102
  %.fca.0.extract.i.i.i = extractvalue { i16, i16 } %52, 0
  %.fca.1.extract.i.i.i = extractvalue { i16, i16 } %52, 1
  br label %_ZN4core3ops8function5FnMut8call_mut17ha8ecc7f04fdaafcaE.exit.i

bb4.i.i4.i:                                       ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit.i"
  %53 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %_4.i.i.i, i16 0, i32 2
  %54 = bitcast [4 x i8]* %53 to i16*
  %ret.0.i.i.i = load i16, i16* %54, align 1, !noalias !1105
  %55 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %_4.i.i.i, i16 0, i32 2, i16 2
  %56 = bitcast i8* %55 to i16*
  %ret.1.i.i.i = load i16, i16* %56, align 1, !noalias !1105
  br label %_ZN4core3ops8function5FnMut8call_mut17ha8ecc7f04fdaafcaE.exit.i

_ZN4core3ops8function5FnMut8call_mut17ha8ecc7f04fdaafcaE.exit.i: ; preds = %bb4.i.i4.i, %bb2.i.i.i
  %.sroa.3.0.i.i.i = phi i16 [ %.fca.1.extract.i.i.i, %bb2.i.i.i ], [ %ret.1.i.i.i, %bb4.i.i4.i ]
  %.sroa.0.0.i.i.i = phi i16 [ %.fca.0.extract.i.i.i, %bb2.i.i.i ], [ %ret.0.i.i.i, %bb4.i.i4.i ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 5, i8* nonnull %50), !noalias !1105
  %_8.i.i.i.i = icmp ugt i16 %.sroa.0.0.i.i.i, 1024
  br i1 %_8.i.i.i.i, label %bb5.i.i.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i"

bb5.i.i.i.i:                                      ; preds = %_ZN4core3ops8function5FnMut8call_mut17ha8ecc7f04fdaafcaE.exit.i
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.sroa.0.0.i.i.i, i16 1024, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18467 to %"panic::Location"*)), !noalias !1102
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i": ; preds = %_ZN4core3ops8function5FnMut8call_mut17ha8ecc7f04fdaafcaE.exit.i
; call core::num::flt2dec::digits_to_exp_str
  %57 = call addrspace(1) { [0 x %"num::flt2dec::Part"]*, i16 } @_ZN4core3num7flt2dec17digits_to_exp_str17he546c1d8fc89e6f6E([0 x i8]* noalias nonnull readonly align 1 %_13.0, i16 %.sroa.0.0.i.i.i, i16 %.sroa.3.0.i.i.i, i16 %precision, i1 zeroext %upper, [0 x %"num::flt2dec::Part"]* nonnull align 1 %_17.0, i16 6), !noalias !1102
  %_135.0.i = extractvalue { [0 x %"num::flt2dec::Part"]*, i16 } %57, 0
  %_135.1.i = extractvalue { [0 x %"num::flt2dec::Part"]*, i16 } %57, 1
  %58 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %.sroa.0.0.i.i, [0 x i8]** %58, align 1, !alias.scope !1102
  %59 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 1, i32 1
  store i16 %.sroa.12.0.i.i, i16* %59, align 1, !alias.scope !1102
  %60 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 0
  store [0 x %"num::flt2dec::Part"]* %_135.0.i, [0 x %"num::flt2dec::Part"]** %60, align 1, !alias.scope !1102
  br label %_ZN4core3num7flt2dec16to_exact_exp_str17hed78bca49115c29cE.exit

_ZN4core3num7flt2dec16to_exact_exp_str17hed78bca49115c29cE.exit: ; preds = %bb13.i, %bb16.i, %bb19.i, %bb21.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i"
  %.sink = phi i16 [ 1, %bb13.i ], [ 1, %bb16.i ], [ 1, %bb19.i ], [ 3, %bb21.i ], [ %_135.1.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i" ]
  %61 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 1
  store i16 %.sink, i16* %61, align 1, !alias.scope !1102
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 27, i8* nonnull %16), !noalias !1102
; call core::fmt::Formatter::pad_formatted_parts
  %62 = call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter19pad_formatted_parts17hd831476560d54163E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %fmt, %"num::flt2dec::Formatted"* noalias nonnull readonly align 1 dereferenceable(8) %formatted)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 8, i8* nonnull %2)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 30, i8* nonnull %1)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 1024, i8* nonnull %0)
  ret i1 %62
}

; core::fmt::float::float_to_exponential_common_shortest
; Function Attrs: noinline uwtable
define internal fastcc zeroext i1 @_ZN4core3fmt5float36float_to_exponential_common_shortest17hab51a3afe7f7cde6E(%"fmt::Formatter"* nocapture align 1 dereferenceable(19) %fmt, float %num.val, i8 %sign, i1 zeroext %upper) unnamed_addr addrspace(1) #11 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_3.i.i.i = alloca %"option::Option<(usize, i16)>", align 1
  %full_decoded.i = alloca %"num::flt2dec::decoder::FullDecoded", align 1
  %formatted = alloca %"num::flt2dec::Formatted", align 1
  %parts = alloca %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", align 1
  %buf = alloca %"mem::maybe_uninit::MaybeUninit<[u8; 17]>", align 1
  %0 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[u8; 17]>", %"mem::maybe_uninit::MaybeUninit<[u8; 17]>"* %buf, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 17, i8* nonnull %0)
  %1 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 30, i8* nonnull %1)
  %2 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %2)
  %_12.0 = bitcast %"mem::maybe_uninit::MaybeUninit<[u8; 17]>"* %buf to [0 x i8]*
  %_16.0 = bitcast %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts to [0 x %"num::flt2dec::Part"]*
  %3 = bitcast float %num.val to i32
  %_10.i.i.i = lshr i32 %3, 23
  %4 = trunc i32 %_10.i.i.i to i16
  %5 = and i16 %4, 255
  %_13.i.i.i = icmp eq i16 %5, 0
  %_15.i.i.i = and i32 %3, 8388607
  %6 = shl nuw nsw i32 %_15.i.i.i, 1
  %7 = or i32 %_15.i.i.i, 8388608
  %mantissa.0.i.i.i = select i1 %_13.i.i.i, i32 %6, i32 %7
  %_20.i.i.i = zext i32 %mantissa.0.i.i.i to i64
  %_8.i.i = and i64 %_20.i.i.i, 1
  %8 = icmp eq i32 %_15.i.i.i, 0
  %9 = and i32 %3, 2147483647
  %10 = icmp eq i32 %9, 0
  br i1 %10, label %_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %start
  %11 = trunc i32 %3 to i31
  %trunc.i.i.i = and i31 %11, -8388608
  switch i31 %trunc.i.i.i, label %bb3.i.i [
    i31 0, label %bb8.i.i
    i31 -8388608, label %"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17hfe9954e5c26e2ab2E.exit.i"
  ]

"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17hfe9954e5c26e2ab2E.exit.i": ; preds = %bb3.i.i.i
  %spec.select.i = select i1 %8, i8 3, i8 2
  br label %_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i

bb3.i.i:                                          ; preds = %bb3.i.i.i
  %_20.i.i = icmp eq i32 %mantissa.0.i.i.i, 8388608
  br i1 %_20.i.i, label %bb12.i.i, label %bb11.i.i

bb8.i.i:                                          ; preds = %bb3.i.i.i
  %12 = add nsw i16 %5, -150
  %13 = trunc i64 %_8.i.i to i8
  %14 = xor i8 %13, 1
  br label %_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i

bb11.i.i:                                         ; preds = %bb3.i.i
  %_30.i.i = shl nuw nsw i64 %_20.i.i.i, 1
  %_32.i.i = add nsw i16 %5, -151
  %15 = trunc i64 %_8.i.i to i8
  %phitmp.i.i = xor i8 %15, 1
  br label %_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i

bb12.i.i:                                         ; preds = %bb3.i.i
  %_26.i.i = add nsw i16 %5, -152
  br label %_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i

_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i: ; preds = %bb12.i.i, %bb11.i.i, %bb8.i.i, %"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17hfe9954e5c26e2ab2E.exit.i", %start
  %decoded.sroa.0.sroa.0.1.i.i = phi i64 [ %_20.i.i.i, %bb8.i.i ], [ 33554432, %bb12.i.i ], [ %_30.i.i, %bb11.i.i ], [ undef, %"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17hfe9954e5c26e2ab2E.exit.i" ], [ undef, %start ]
  %decoded.sroa.0.sroa.7.1.i.i = phi i64 [ 1, %bb8.i.i ], [ 2, %bb12.i.i ], [ 1, %bb11.i.i ], [ undef, %"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17hfe9954e5c26e2ab2E.exit.i" ], [ undef, %start ]
  %decoded.sroa.0.sroa.8.1.i.i = phi i16 [ %12, %bb8.i.i ], [ %_26.i.i, %bb12.i.i ], [ %_32.i.i, %bb11.i.i ], [ undef, %"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17hfe9954e5c26e2ab2E.exit.i" ], [ undef, %start ]
  %decoded.sroa.6.1.i.i = phi i8 [ %14, %bb8.i.i ], [ 1, %bb12.i.i ], [ %phitmp.i.i, %bb11.i.i ], [ %spec.select.i, %"_ZN59_$LT$f32$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17hfe9954e5c26e2ab2E.exit.i" ], [ 4, %start ]
  %negative.i = icmp slt i32 %3, 0
  %16 = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 27, i8* nonnull %16), !noalias !1110
  %_28.sroa.4.1..sroa_cast.i = bitcast %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i to i64*
  store i64 %decoded.sroa.0.sroa.0.1.i.i, i64* %_28.sroa.4.1..sroa_cast.i, align 1, !noalias !1110
  %_28.sroa.6.1..sroa_idx.i = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 0, i16 8
  %_28.sroa.6.1..sroa_cast.i = bitcast i8* %_28.sroa.6.1..sroa_idx.i to i64*
  store i64 1, i64* %_28.sroa.6.1..sroa_cast.i, align 1, !noalias !1110
  %_28.sroa.7.1..sroa_idx.i = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 0, i16 16
  %_28.sroa.7.1..sroa_cast.i = bitcast i8* %_28.sroa.7.1..sroa_idx.i to i64*
  store i64 %decoded.sroa.0.sroa.7.1.i.i, i64* %_28.sroa.7.1..sroa_cast.i, align 1, !noalias !1110
  %_28.sroa.8.1..sroa_idx.i = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 0, i16 24
  %_28.sroa.8.1..sroa_cast.i = bitcast i8* %_28.sroa.8.1..sroa_idx.i to i16*
  store i16 %decoded.sroa.0.sroa.8.1.i.i, i16* %_28.sroa.8.1..sroa_cast.i, align 1, !noalias !1110
  %_28.sroa.9.1..sroa_idx.i = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 1
  store i8 %decoded.sroa.6.1.i.i, i8* %_28.sroa.9.1..sroa_idx.i, align 1, !noalias !1110
  %17 = add i8 %decoded.sroa.6.1.i.i, -2
  %18 = icmp ult i8 %17, 3
  %narrow.i.i = select i1 %18, i8 %17, i8 3
  %trunc.i2.i = trunc i8 %narrow.i.i to i2
  switch i2 %trunc.i2.i, label %bb1.i.i [
    i2 0, label %bb16.i
    i2 -2, label %bb2.i.i
  ]

bb110.i.i:                                        ; preds = %bb2.i.i
  unreachable

bb1.i.i:                                          ; preds = %_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i
  %switch.i.i = icmp ult i8 %sign, 2
  %.28.i.i = select i1 %negative.i, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0)
  %.29.i.i = select i1 %negative.i, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19124 to [0 x i8]*)
  %not.switch.i.i = xor i1 %switch.i.i, true
  %.sroa.12.0.shrunk.i.i = or i1 %negative.i, %not.switch.i.i
  %.sroa.0.0.i.i = select i1 %switch.i.i, [0 x i8]* %.28.i.i, [0 x i8]* %.29.i.i
  %.sroa.12.0.i.i = zext i1 %.sroa.12.0.shrunk.i.i to i16
  %switch29.i = icmp eq i2 %trunc.i2.i, -1
  br i1 %switch29.i, label %bb13.i, label %bb19.i

bb2.i.i:                                          ; preds = %_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i
  switch i8 %sign, label %bb110.i.i [
    i8 0, label %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i
    i8 1, label %bb6.i3.i
    i8 2, label %bb10.i.i
    i8 3, label %bb11.i4.i
  ]

bb6.i3.i:                                         ; preds = %bb2.i.i
  %.25.i.i = select i1 %negative.i, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0)
  %.lobit.i = lshr i32 %3, 31
  %19 = trunc i32 %.lobit.i to i16
  br label %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i

bb10.i.i:                                         ; preds = %bb2.i.i
  br label %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i

bb11.i4.i:                                        ; preds = %bb2.i.i
  %.26.i.i = select i1 %negative.i, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19124 to [0 x i8]*)
  br label %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i

_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i: ; preds = %bb11.i4.i, %bb10.i.i, %bb6.i3.i, %bb2.i.i
  %.sroa.12.0.shrunk.i.ph.i = phi i16 [ 1, %bb11.i4.i ], [ %19, %bb6.i3.i ], [ 0, %bb2.i.i ], [ 1, %bb10.i.i ]
  %.sroa.0.0.i.ph.i = phi [0 x i8]* [ %.26.i.i, %bb11.i4.i ], [ %.25.i.i, %bb6.i3.i ], [ getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), %bb2.i.i ], [ bitcast (<{ [1 x i8] }>* @alloc19124 to [0 x i8]*), %bb10.i.i ]
  %..i = select i1 %upper, [0 x i8]* bitcast (<{ [3 x i8] }>* @alloc248 to [0 x i8]*), [0 x i8]* bitcast (<{ [3 x i8] }>* @alloc249 to [0 x i8]*)
  store i8 2, i8* %1, align 1, !noalias !1110
  %20 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 1
  %_62.sroa.5.0..sroa_cast12.i = bitcast i8* %20 to [0 x i8]**
  store [0 x i8]* %..i, [0 x i8]** %_62.sroa.5.0..sroa_cast12.i, align 1, !noalias !1110
  %21 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 3
  %_62.sroa.7.0..sroa_cast14.i = bitcast i8* %21 to i16*
  store i16 3, i16* %_62.sroa.7.0..sroa_cast14.i, align 1, !noalias !1110
  %22 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %.sroa.0.0.i.ph.i, [0 x i8]** %22, align 1, !alias.scope !1110
  %23 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 1, i32 1
  store i16 %.sroa.12.0.shrunk.i.ph.i, i16* %23, align 1, !alias.scope !1110
  %24 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 0
  %25 = bitcast [0 x %"num::flt2dec::Part"]** %24 to %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"**
  store %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"** %25, align 1, !alias.scope !1110
  br label %_ZN4core3num7flt2dec19to_shortest_exp_str17h289638ca9aac9289E.exit

bb13.i:                                           ; preds = %bb1.i.i
  %decoded.i = bitcast %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i to %"num::flt2dec::decoder::Decoded"*
  %26 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %_3.i.i.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 5, i8* nonnull %26), !noalias !1113
; call core::num::flt2dec::strategy::grisu::format_shortest_opt
  call addrspace(1) void @_ZN4core3num7flt2dec8strategy5grisu19format_shortest_opt17h7dc38a7ef9464546E(%"option::Option<(usize, i16)>"* noalias nocapture nonnull sret dereferenceable(5) %_3.i.i.i, %"num::flt2dec::decoder::Decoded"* noalias nonnull readonly align 1 dereferenceable(27) %decoded.i, [0 x i8]* nonnull align 1 %_12.0, i16 17), !noalias !1110
  %27 = load i8, i8* %26, align 1, !range !87, !noalias !1113
  %switch.i.i.i = icmp eq i8 %27, 1
  br i1 %switch.i.i.i, label %bb4.i.i1.i, label %bb2.i.i.i

bb2.i.i.i:                                        ; preds = %bb13.i
; call core::num::flt2dec::strategy::dragon::format_shortest
  %28 = call addrspace(1) { i16, i16 } @_ZN4core3num7flt2dec8strategy6dragon15format_shortest17h0c494f8b5739104dE(%"num::flt2dec::decoder::Decoded"* noalias nonnull readonly align 1 dereferenceable(27) %decoded.i, [0 x i8]* nonnull align 1 %_12.0, i16 17), !noalias !1110
  %.fca.0.extract.i.i.i = extractvalue { i16, i16 } %28, 0
  %.fca.1.extract.i.i.i = extractvalue { i16, i16 } %28, 1
  br label %_ZN4core3ops8function5FnMut8call_mut17h5efd88025d924ecbE.exit.i

bb4.i.i1.i:                                       ; preds = %bb13.i
  %29 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %_3.i.i.i, i16 0, i32 2
  %30 = bitcast [4 x i8]* %29 to i16*
  %ret.0.i.i.i = load i16, i16* %30, align 1, !noalias !1113
  %31 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %_3.i.i.i, i16 0, i32 2, i16 2
  %32 = bitcast i8* %31 to i16*
  %ret.1.i.i.i = load i16, i16* %32, align 1, !noalias !1113
  br label %_ZN4core3ops8function5FnMut8call_mut17h5efd88025d924ecbE.exit.i

_ZN4core3ops8function5FnMut8call_mut17h5efd88025d924ecbE.exit.i: ; preds = %bb4.i.i1.i, %bb2.i.i.i
  %.sroa.3.0.i.i.i = phi i16 [ %.fca.1.extract.i.i.i, %bb2.i.i.i ], [ %ret.1.i.i.i, %bb4.i.i1.i ]
  %.sroa.0.0.i.i.i = phi i16 [ %.fca.0.extract.i.i.i, %bb2.i.i.i ], [ %ret.0.i.i.i, %bb4.i.i1.i ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 5, i8* nonnull %26), !noalias !1113
  %_8.i.i.i.i = icmp ugt i16 %.sroa.0.0.i.i.i, 17
  br i1 %_8.i.i.i.i, label %bb5.i.i.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i"

bb5.i.i.i.i:                                      ; preds = %_ZN4core3ops8function5FnMut8call_mut17h5efd88025d924ecbE.exit.i
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.sroa.0.0.i.i.i, i16 17, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18439 to %"panic::Location"*)), !noalias !1110
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i": ; preds = %_ZN4core3ops8function5FnMut8call_mut17h5efd88025d924ecbE.exit.i
; call core::num::flt2dec::digits_to_exp_str
  %33 = call addrspace(1) { [0 x %"num::flt2dec::Part"]*, i16 } @_ZN4core3num7flt2dec17digits_to_exp_str17he546c1d8fc89e6f6E([0 x i8]* noalias nonnull readonly align 1 %_12.0, i16 %.sroa.0.0.i.i.i, i16 %.sroa.3.0.i.i.i, i16 0, i1 zeroext %upper, [0 x %"num::flt2dec::Part"]* nonnull align 1 %_16.0, i16 6), !noalias !1110
  %_115.0.i = extractvalue { [0 x %"num::flt2dec::Part"]*, i16 } %33, 0
  %_115.1.i = extractvalue { [0 x %"num::flt2dec::Part"]*, i16 } %33, 1
  %34 = icmp ne [0 x %"num::flt2dec::Part"]* %_115.0.i, null
  call addrspace(1) void @llvm.assume(i1 %34), !noalias !1110
  %35 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %.sroa.0.0.i.i, [0 x i8]** %35, align 1, !alias.scope !1110
  %36 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 1, i32 1
  store i16 %.sroa.12.0.i.i, i16* %36, align 1, !alias.scope !1110
  %37 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 0
  store [0 x %"num::flt2dec::Part"]* %_115.0.i, [0 x %"num::flt2dec::Part"]** %37, align 1, !alias.scope !1110
  br label %_ZN4core3num7flt2dec19to_shortest_exp_str17h289638ca9aac9289E.exit

bb16.i:                                           ; preds = %_ZN4core3num7flt2dec7decoder6decode17hbf4340fb2fbe4d05E.exit.i
  store i8 2, i8* %1, align 1, !noalias !1110
  %38 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 1
  %_36.sroa.4.0..sroa_cast4.i = bitcast i8* %38 to [0 x i8]**
  store [0 x i8]* bitcast (<{ [3 x i8] }>* @alloc245 to [0 x i8]*), [0 x i8]** %_36.sroa.4.0..sroa_cast4.i, align 1, !noalias !1110
  %39 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 3
  %_36.sroa.5.0..sroa_cast6.i = bitcast i8* %39 to i16*
  store i16 3, i16* %_36.sroa.5.0..sroa_cast6.i, align 1, !noalias !1110
  %40 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), [0 x i8]** %40, align 1, !alias.scope !1110
  %41 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 1, i32 1
  store i16 0, i16* %41, align 1, !alias.scope !1110
  %42 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 0
  %43 = bitcast [0 x %"num::flt2dec::Part"]** %42 to %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"**
  store %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"** %43, align 1, !alias.scope !1110
  br label %_ZN4core3num7flt2dec19to_shortest_exp_str17h289638ca9aac9289E.exit

bb19.i:                                           ; preds = %bb1.i.i
  store i8 2, i8* %1, align 1, !noalias !1110
  %44 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 1
  %_49.sroa.4.0..sroa_cast8.i = bitcast i8* %44 to [0 x i8]**
  store [0 x i8]* bitcast (<{ [3 x i8] }>* @alloc246 to [0 x i8]*), [0 x i8]** %_49.sroa.4.0..sroa_cast8.i, align 1, !noalias !1110
  %45 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 3
  %_49.sroa.5.0..sroa_cast10.i = bitcast i8* %45 to i16*
  store i16 3, i16* %_49.sroa.5.0..sroa_cast10.i, align 1, !noalias !1110
  %46 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %.sroa.0.0.i.i, [0 x i8]** %46, align 1, !alias.scope !1110
  %47 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 1, i32 1
  store i16 %.sroa.12.0.i.i, i16* %47, align 1, !alias.scope !1110
  %48 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 0
  %49 = bitcast [0 x %"num::flt2dec::Part"]** %48 to %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"**
  store %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"** %49, align 1, !alias.scope !1110
  br label %_ZN4core3num7flt2dec19to_shortest_exp_str17h289638ca9aac9289E.exit

_ZN4core3num7flt2dec19to_shortest_exp_str17h289638ca9aac9289E.exit: ; preds = %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i", %bb16.i, %bb19.i
  %.sink = phi i16 [ 1, %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i ], [ %_115.1.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i" ], [ 1, %bb16.i ], [ 1, %bb19.i ]
  %50 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 1
  store i16 %.sink, i16* %50, align 1, !alias.scope !1110
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 27, i8* nonnull %16), !noalias !1110
; call core::fmt::Formatter::pad_formatted_parts
  %51 = call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter19pad_formatted_parts17hd831476560d54163E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %fmt, %"num::flt2dec::Formatted"* noalias nonnull readonly align 1 dereferenceable(8) %formatted)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 8, i8* nonnull %2)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 30, i8* nonnull %1)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 17, i8* nonnull %0)
  ret i1 %51
}

; core::fmt::float::float_to_exponential_common_shortest
; Function Attrs: noinline uwtable
define internal fastcc zeroext i1 @_ZN4core3fmt5float36float_to_exponential_common_shortest17hd7f25642eba2999eE(%"fmt::Formatter"* nocapture align 1 dereferenceable(19) %fmt, double %num.val, i8 %sign, i1 zeroext %upper) unnamed_addr addrspace(1) #11 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_3.i.i.i = alloca %"option::Option<(usize, i16)>", align 1
  %full_decoded.i = alloca %"num::flt2dec::decoder::FullDecoded", align 1
  %formatted = alloca %"num::flt2dec::Formatted", align 1
  %parts = alloca %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", align 1
  %buf = alloca %"mem::maybe_uninit::MaybeUninit<[u8; 17]>", align 1
  %0 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[u8; 17]>", %"mem::maybe_uninit::MaybeUninit<[u8; 17]>"* %buf, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 17, i8* nonnull %0)
  %1 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 30, i8* nonnull %1)
  %2 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %2)
  %_12.0 = bitcast %"mem::maybe_uninit::MaybeUninit<[u8; 17]>"* %buf to [0 x i8]*
  %_16.0 = bitcast %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts to [0 x %"num::flt2dec::Part"]*
  %3 = bitcast double %num.val to i64
  %_10.i.i.i = lshr i64 %3, 52
  %4 = trunc i64 %_10.i.i.i to i16
  %5 = and i16 %4, 2047
  %_13.i.i.i = icmp eq i16 %5, 0
  %_15.i.i.i = and i64 %3, 4503599627370495
  %6 = shl nuw nsw i64 %_15.i.i.i, 1
  %7 = or i64 %_15.i.i.i, 4503599627370496
  %mantissa.0.i.i.i = select i1 %_13.i.i.i, i64 %6, i64 %7
  %8 = add nsw i16 %5, -1075
  %_8.i.i = and i64 %mantissa.0.i.i.i, 1
  %9 = icmp eq i64 %_15.i.i.i, 0
  %10 = and i64 %3, 9223372036854775807
  %11 = icmp eq i64 %10, 0
  br i1 %11, label %_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i, label %bb3.i.i.i.i

bb3.i.i.i.i:                                      ; preds = %start
  %12 = trunc i64 %3 to i63
  %trunc.i.i.i.i = and i63 %12, -4503599627370496
  switch i63 %trunc.i.i.i.i, label %bb3.i.i [
    i63 0, label %bb8.i.i
    i63 -4503599627370496, label %"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17ha6dce715db4a91a6E.exit.i.i"
  ]

"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17ha6dce715db4a91a6E.exit.i.i": ; preds = %bb3.i.i.i.i
  %spec.select.i.i = select i1 %9, i8 3, i8 2
  br label %_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i

bb3.i.i:                                          ; preds = %bb3.i.i.i.i
  %_20.i.i = icmp eq i64 %mantissa.0.i.i.i, 4503599627370496
  br i1 %_20.i.i, label %bb12.i.i, label %bb11.i.i

bb8.i.i:                                          ; preds = %bb3.i.i.i.i
  %13 = trunc i64 %_8.i.i to i8
  %14 = xor i8 %13, 1
  br label %_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i

bb11.i.i:                                         ; preds = %bb3.i.i
  %_30.i.i = shl nuw nsw i64 %mantissa.0.i.i.i, 1
  %_32.i.i = add nsw i16 %5, -1076
  %15 = trunc i64 %_8.i.i to i8
  %phitmp.i.i = xor i8 %15, 1
  br label %_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i

bb12.i.i:                                         ; preds = %bb3.i.i
  %_26.i.i = add nsw i16 %5, -1077
  br label %_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i

_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i: ; preds = %bb12.i.i, %bb11.i.i, %bb8.i.i, %"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17ha6dce715db4a91a6E.exit.i.i", %start
  %decoded.sroa.0.sroa.0.1.i.i = phi i64 [ %mantissa.0.i.i.i, %bb8.i.i ], [ undef, %"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17ha6dce715db4a91a6E.exit.i.i" ], [ undef, %start ], [ 18014398509481984, %bb12.i.i ], [ %_30.i.i, %bb11.i.i ]
  %decoded.sroa.0.sroa.7.1.i.i = phi i64 [ 1, %bb8.i.i ], [ undef, %"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17ha6dce715db4a91a6E.exit.i.i" ], [ undef, %start ], [ 2, %bb12.i.i ], [ 1, %bb11.i.i ]
  %decoded.sroa.0.sroa.8.1.i.i = phi i16 [ %8, %bb8.i.i ], [ undef, %"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17ha6dce715db4a91a6E.exit.i.i" ], [ undef, %start ], [ %_26.i.i, %bb12.i.i ], [ %_32.i.i, %bb11.i.i ]
  %decoded.sroa.6.1.i.i = phi i8 [ %14, %bb8.i.i ], [ %spec.select.i.i, %"_ZN59_$LT$f64$u20$as$u20$core..num..dec2flt..rawfp..RawFloat$GT$8classify17ha6dce715db4a91a6E.exit.i.i" ], [ 4, %start ], [ 1, %bb12.i.i ], [ %phitmp.i.i, %bb11.i.i ]
  %negative.i = icmp slt i64 %3, 0
  %16 = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 27, i8* nonnull %16), !noalias !1118
  %_28.sroa.4.1..sroa_cast.i = bitcast %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i to i64*
  store i64 %decoded.sroa.0.sroa.0.1.i.i, i64* %_28.sroa.4.1..sroa_cast.i, align 1, !noalias !1118
  %_28.sroa.6.1..sroa_idx.i = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 0, i16 8
  %_28.sroa.6.1..sroa_cast.i = bitcast i8* %_28.sroa.6.1..sroa_idx.i to i64*
  store i64 1, i64* %_28.sroa.6.1..sroa_cast.i, align 1, !noalias !1118
  %_28.sroa.7.1..sroa_idx.i = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 0, i16 16
  %_28.sroa.7.1..sroa_cast.i = bitcast i8* %_28.sroa.7.1..sroa_idx.i to i64*
  store i64 %decoded.sroa.0.sroa.7.1.i.i, i64* %_28.sroa.7.1..sroa_cast.i, align 1, !noalias !1118
  %_28.sroa.8.1..sroa_idx.i = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 0, i16 24
  %_28.sroa.8.1..sroa_cast.i = bitcast i8* %_28.sroa.8.1..sroa_idx.i to i16*
  store i16 %decoded.sroa.0.sroa.8.1.i.i, i16* %_28.sroa.8.1..sroa_cast.i, align 1, !noalias !1118
  %_28.sroa.9.1..sroa_idx.i = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i, i16 0, i32 1
  store i8 %decoded.sroa.6.1.i.i, i8* %_28.sroa.9.1..sroa_idx.i, align 1, !noalias !1118
  %17 = add i8 %decoded.sroa.6.1.i.i, -2
  %18 = icmp ult i8 %17, 3
  %narrow.i.i = select i1 %18, i8 %17, i8 3
  %trunc.i.i = trunc i8 %narrow.i.i to i2
  switch i2 %trunc.i.i, label %bb1.i.i [
    i2 0, label %bb16.i
    i2 -2, label %bb2.i.i
  ]

bb110.i.i:                                        ; preds = %bb2.i.i
  unreachable

bb1.i.i:                                          ; preds = %_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i
  %switch.i.i = icmp ult i8 %sign, 2
  %.28.i.i = select i1 %negative.i, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0)
  %.29.i.i = select i1 %negative.i, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19124 to [0 x i8]*)
  %not.switch.i.i = xor i1 %switch.i.i, true
  %.sroa.12.0.shrunk.i.i = or i1 %negative.i, %not.switch.i.i
  %.sroa.0.0.i.i = select i1 %switch.i.i, [0 x i8]* %.28.i.i, [0 x i8]* %.29.i.i
  %.sroa.12.0.i.i = zext i1 %.sroa.12.0.shrunk.i.i to i16
  %switch.i = icmp eq i2 %trunc.i.i, -1
  br i1 %switch.i, label %bb13.i, label %bb19.i

bb2.i.i:                                          ; preds = %_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i
  switch i8 %sign, label %bb110.i.i [
    i8 0, label %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i
    i8 1, label %bb6.i.i
    i8 2, label %bb10.i.i
    i8 3, label %bb11.i1.i
  ]

bb6.i.i:                                          ; preds = %bb2.i.i
  %.25.i.i = select i1 %negative.i, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0)
  %.lobit.i = lshr i64 %3, 63
  %19 = trunc i64 %.lobit.i to i16
  br label %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i

bb10.i.i:                                         ; preds = %bb2.i.i
  br label %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i

bb11.i1.i:                                        ; preds = %bb2.i.i
  %.26.i.i = select i1 %negative.i, [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19124 to [0 x i8]*)
  br label %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i

_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i: ; preds = %bb11.i1.i, %bb10.i.i, %bb6.i.i, %bb2.i.i
  %.sroa.12.0.shrunk.i.ph.i = phi i16 [ 1, %bb11.i1.i ], [ %19, %bb6.i.i ], [ 0, %bb2.i.i ], [ 1, %bb10.i.i ]
  %.sroa.0.0.i.ph.i = phi [0 x i8]* [ %.26.i.i, %bb11.i1.i ], [ %.25.i.i, %bb6.i.i ], [ getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), %bb2.i.i ], [ bitcast (<{ [1 x i8] }>* @alloc19124 to [0 x i8]*), %bb10.i.i ]
  %..i = select i1 %upper, [0 x i8]* bitcast (<{ [3 x i8] }>* @alloc248 to [0 x i8]*), [0 x i8]* bitcast (<{ [3 x i8] }>* @alloc249 to [0 x i8]*)
  store i8 2, i8* %1, align 1, !noalias !1118
  %20 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 1
  %_62.sroa.5.0..sroa_cast12.i = bitcast i8* %20 to [0 x i8]**
  store [0 x i8]* %..i, [0 x i8]** %_62.sroa.5.0..sroa_cast12.i, align 1, !noalias !1118
  %21 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 3
  %_62.sroa.7.0..sroa_cast14.i = bitcast i8* %21 to i16*
  store i16 3, i16* %_62.sroa.7.0..sroa_cast14.i, align 1, !noalias !1118
  %22 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %.sroa.0.0.i.ph.i, [0 x i8]** %22, align 1, !alias.scope !1118
  %23 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 1, i32 1
  store i16 %.sroa.12.0.shrunk.i.ph.i, i16* %23, align 1, !alias.scope !1118
  %24 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 0
  %25 = bitcast [0 x %"num::flt2dec::Part"]** %24 to %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"**
  store %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"** %25, align 1, !alias.scope !1118
  br label %_ZN4core3num7flt2dec19to_shortest_exp_str17hd5234ab58a8d3c01E.exit

bb13.i:                                           ; preds = %bb1.i.i
  %decoded.i = bitcast %"num::flt2dec::decoder::FullDecoded"* %full_decoded.i to %"num::flt2dec::decoder::Decoded"*
  %26 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %_3.i.i.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 5, i8* nonnull %26), !noalias !1121
; call core::num::flt2dec::strategy::grisu::format_shortest_opt
  call addrspace(1) void @_ZN4core3num7flt2dec8strategy5grisu19format_shortest_opt17h7dc38a7ef9464546E(%"option::Option<(usize, i16)>"* noalias nocapture nonnull sret dereferenceable(5) %_3.i.i.i, %"num::flt2dec::decoder::Decoded"* noalias nonnull readonly align 1 dereferenceable(27) %decoded.i, [0 x i8]* nonnull align 1 %_12.0, i16 17), !noalias !1118
  %27 = load i8, i8* %26, align 1, !range !87, !noalias !1121
  %switch.i.i.i = icmp eq i8 %27, 1
  br i1 %switch.i.i.i, label %bb4.i.i.i, label %bb2.i.i.i

bb2.i.i.i:                                        ; preds = %bb13.i
; call core::num::flt2dec::strategy::dragon::format_shortest
  %28 = call addrspace(1) { i16, i16 } @_ZN4core3num7flt2dec8strategy6dragon15format_shortest17h0c494f8b5739104dE(%"num::flt2dec::decoder::Decoded"* noalias nonnull readonly align 1 dereferenceable(27) %decoded.i, [0 x i8]* nonnull align 1 %_12.0, i16 17), !noalias !1118
  %.fca.0.extract.i.i.i = extractvalue { i16, i16 } %28, 0
  %.fca.1.extract.i.i.i = extractvalue { i16, i16 } %28, 1
  br label %_ZN4core3ops8function5FnMut8call_mut17h5efd88025d924ecbE.exit.i

bb4.i.i.i:                                        ; preds = %bb13.i
  %29 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %_3.i.i.i, i16 0, i32 2
  %30 = bitcast [4 x i8]* %29 to i16*
  %ret.0.i.i.i = load i16, i16* %30, align 1, !noalias !1121
  %31 = getelementptr inbounds %"option::Option<(usize, i16)>", %"option::Option<(usize, i16)>"* %_3.i.i.i, i16 0, i32 2, i16 2
  %32 = bitcast i8* %31 to i16*
  %ret.1.i.i.i = load i16, i16* %32, align 1, !noalias !1121
  br label %_ZN4core3ops8function5FnMut8call_mut17h5efd88025d924ecbE.exit.i

_ZN4core3ops8function5FnMut8call_mut17h5efd88025d924ecbE.exit.i: ; preds = %bb4.i.i.i, %bb2.i.i.i
  %.sroa.3.0.i.i.i = phi i16 [ %.fca.1.extract.i.i.i, %bb2.i.i.i ], [ %ret.1.i.i.i, %bb4.i.i.i ]
  %.sroa.0.0.i.i.i = phi i16 [ %.fca.0.extract.i.i.i, %bb2.i.i.i ], [ %ret.0.i.i.i, %bb4.i.i.i ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 5, i8* nonnull %26), !noalias !1121
  %_8.i.i.i.i = icmp ugt i16 %.sroa.0.0.i.i.i, 17
  br i1 %_8.i.i.i.i, label %bb5.i.i.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i"

bb5.i.i.i.i:                                      ; preds = %_ZN4core3ops8function5FnMut8call_mut17h5efd88025d924ecbE.exit.i
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.sroa.0.0.i.i.i, i16 17, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18439 to %"panic::Location"*)), !noalias !1118
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i": ; preds = %_ZN4core3ops8function5FnMut8call_mut17h5efd88025d924ecbE.exit.i
; call core::num::flt2dec::digits_to_exp_str
  %33 = call addrspace(1) { [0 x %"num::flt2dec::Part"]*, i16 } @_ZN4core3num7flt2dec17digits_to_exp_str17he546c1d8fc89e6f6E([0 x i8]* noalias nonnull readonly align 1 %_12.0, i16 %.sroa.0.0.i.i.i, i16 %.sroa.3.0.i.i.i, i16 0, i1 zeroext %upper, [0 x %"num::flt2dec::Part"]* nonnull align 1 %_16.0, i16 6), !noalias !1118
  %_115.0.i = extractvalue { [0 x %"num::flt2dec::Part"]*, i16 } %33, 0
  %_115.1.i = extractvalue { [0 x %"num::flt2dec::Part"]*, i16 } %33, 1
  %34 = icmp ne [0 x %"num::flt2dec::Part"]* %_115.0.i, null
  call addrspace(1) void @llvm.assume(i1 %34), !noalias !1118
  %35 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %.sroa.0.0.i.i, [0 x i8]** %35, align 1, !alias.scope !1118
  %36 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 1, i32 1
  store i16 %.sroa.12.0.i.i, i16* %36, align 1, !alias.scope !1118
  %37 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 0
  store [0 x %"num::flt2dec::Part"]* %_115.0.i, [0 x %"num::flt2dec::Part"]** %37, align 1, !alias.scope !1118
  br label %_ZN4core3num7flt2dec19to_shortest_exp_str17hd5234ab58a8d3c01E.exit

bb16.i:                                           ; preds = %_ZN4core3num7flt2dec7decoder6decode17h4b57f8a59b2e72e3E.exit.i
  store i8 2, i8* %1, align 1, !noalias !1118
  %38 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 1
  %_36.sroa.4.0..sroa_cast4.i = bitcast i8* %38 to [0 x i8]**
  store [0 x i8]* bitcast (<{ [3 x i8] }>* @alloc245 to [0 x i8]*), [0 x i8]** %_36.sroa.4.0..sroa_cast4.i, align 1, !noalias !1118
  %39 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 3
  %_36.sroa.5.0..sroa_cast6.i = bitcast i8* %39 to i16*
  store i16 3, i16* %_36.sroa.5.0..sroa_cast6.i, align 1, !noalias !1118
  %40 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), [0 x i8]** %40, align 1, !alias.scope !1118
  %41 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 1, i32 1
  store i16 0, i16* %41, align 1, !alias.scope !1118
  %42 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 0
  %43 = bitcast [0 x %"num::flt2dec::Part"]** %42 to %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"**
  store %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"** %43, align 1, !alias.scope !1118
  br label %_ZN4core3num7flt2dec19to_shortest_exp_str17hd5234ab58a8d3c01E.exit

bb19.i:                                           ; preds = %bb1.i.i
  store i8 2, i8* %1, align 1, !noalias !1118
  %44 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 1
  %_49.sroa.4.0..sroa_cast8.i = bitcast i8* %44 to [0 x i8]**
  store [0 x i8]* bitcast (<{ [3 x i8] }>* @alloc246 to [0 x i8]*), [0 x i8]** %_49.sroa.4.0..sroa_cast8.i, align 1, !noalias !1118
  %45 = getelementptr inbounds %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>", %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, i16 0, i32 0, i16 3
  %_49.sroa.5.0..sroa_cast10.i = bitcast i8* %45 to i16*
  store i16 3, i16* %_49.sroa.5.0..sroa_cast10.i, align 1, !noalias !1118
  %46 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %.sroa.0.0.i.i, [0 x i8]** %46, align 1, !alias.scope !1118
  %47 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 1, i32 1
  store i16 %.sroa.12.0.i.i, i16* %47, align 1, !alias.scope !1118
  %48 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 0
  %49 = bitcast [0 x %"num::flt2dec::Part"]** %48 to %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"**
  store %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"* %parts, %"mem::maybe_uninit::MaybeUninit<[num::flt2dec::Part; 6]>"** %49, align 1, !alias.scope !1118
  br label %_ZN4core3num7flt2dec19to_shortest_exp_str17hd5234ab58a8d3c01E.exit

_ZN4core3num7flt2dec19to_shortest_exp_str17hd5234ab58a8d3c01E.exit: ; preds = %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i", %bb16.i, %bb19.i
  %.sink = phi i16 [ 1, %_ZN4core3num7flt2dec14determine_sign17hbd140eb48050cd4eE.exit.thread.i ], [ %_115.1.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i" ], [ 1, %bb16.i ], [ 1, %bb19.i ]
  %50 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 1
  store i16 %.sink, i16* %50, align 1, !alias.scope !1118
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 27, i8* nonnull %16), !noalias !1118
; call core::fmt::Formatter::pad_formatted_parts
  %51 = call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter19pad_formatted_parts17hd831476560d54163E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %fmt, %"num::flt2dec::Formatted"* noalias nonnull readonly align 1 dereferenceable(8) %formatted)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 8, i8* nonnull %2)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 30, i8* nonnull %1)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 17, i8* nonnull %0)
  ret i1 %51
}

; core::fmt::Write::write_char
; Function Attrs: uwtable
define internal zeroext i1 @_ZN4core3fmt5Write10write_char17h875919391bb168dcE(%"fmt::builders::PadAdapter"* nocapture readonly align 1 dereferenceable(6) %self, i32 %c) unnamed_addr addrspace(1) #2 {
start:
  %_10 = alloca [4 x i8], align 1
  %0 = getelementptr inbounds [4 x i8], [4 x i8]* %_10, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = bitcast [4 x i8]* %_10 to i32*
  store i32 0, i32* %1, align 1
  %_7.0 = bitcast [4 x i8]* %_10 to [0 x i8]*
  %2 = icmp ult i32 %c, 1114112
  tail call addrspace(1) void @llvm.assume(i1 %2) #20
  %_2.i.i.i = icmp ult i32 %c, 128
  br i1 %_2.i.i.i, label %bb8.i.i, label %bb1.i.i.i

bb1.i.i.i:                                        ; preds = %start
  %_4.i.i.i = icmp ult i32 %c, 2048
  br i1 %_4.i.i.i, label %bb9.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb1.i.i.i
  %_6.i.i.i = icmp ult i32 %c, 65536
  %3 = insertvalue { [0 x i8]*, i16 } undef, [0 x i8]* %_7.0, 0
  %b2.i.i = getelementptr inbounds [4 x i8], [4 x i8]* %_10, i16 0, i16 1
  %c3.i.i = getelementptr inbounds [4 x i8], [4 x i8]* %_10, i16 0, i16 2
  br i1 %_6.i.i.i, label %bb10.i.i, label %bb11.i.i

bb8.i.i:                                          ; preds = %start
  %4 = insertvalue { [0 x i8]*, i16 } undef, [0 x i8]* %_7.0, 0
  %5 = trunc i32 %c to i8
  store i8 %5, i8* %0, align 1
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$11encode_utf817hf382f78b7bdca53fE.exit"

bb9.i.i:                                          ; preds = %bb1.i.i.i
  %6 = insertvalue { [0 x i8]*, i16 } undef, [0 x i8]* %_7.0, 0
  %b5.i.i = getelementptr inbounds [4 x i8], [4 x i8]* %_10, i16 0, i16 1
  %_30.i.i = lshr i32 %c, 6
  %7 = trunc i32 %_30.i.i to i8
  %8 = or i8 %7, -64
  store i8 %8, i8* %0, align 1
  %9 = trunc i32 %c to i8
  %_32.i.i = and i8 %9, 63
  %10 = or i8 %_32.i.i, -128
  store i8 %10, i8* %b5.i.i, align 1
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$11encode_utf817hf382f78b7bdca53fE.exit"

bb10.i.i:                                         ; preds = %bb3.i.i.i
  %_40.i.i = lshr i32 %c, 12
  %11 = trunc i32 %_40.i.i to i8
  %12 = or i8 %11, -32
  store i8 %12, i8* %0, align 1
  %_44.i.i = lshr i32 %c, 6
  %13 = trunc i32 %_44.i.i to i8
  %_42.i.i = and i8 %13, 63
  %14 = or i8 %_42.i.i, -128
  store i8 %14, i8* %b2.i.i, align 1
  %15 = trunc i32 %c to i8
  %_46.i.i = and i8 %15, 63
  %16 = or i8 %_46.i.i, -128
  store i8 %16, i8* %c3.i.i, align 1
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$11encode_utf817hf382f78b7bdca53fE.exit"

bb11.i.i:                                         ; preds = %bb3.i.i.i
  %d.i.i = getelementptr inbounds [4 x i8], [4 x i8]* %_10, i16 0, i16 3
  %_55.i.i = lshr i32 %c, 18
  %17 = trunc i32 %_55.i.i to i8
  %18 = or i8 %17, -16
  store i8 %18, i8* %0, align 1
  %_59.i.i = lshr i32 %c, 12
  %19 = trunc i32 %_59.i.i to i8
  %_57.i.i = and i8 %19, 63
  %20 = or i8 %_57.i.i, -128
  store i8 %20, i8* %b2.i.i, align 1
  %_63.i.i = lshr i32 %c, 6
  %21 = trunc i32 %_63.i.i to i8
  %_61.i.i = and i8 %21, 63
  %22 = or i8 %_61.i.i, -128
  store i8 %22, i8* %c3.i.i, align 1
  %23 = trunc i32 %c to i8
  %_65.i.i = and i8 %23, 63
  %24 = or i8 %_65.i.i, -128
  store i8 %24, i8* %d.i.i, align 1
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$11encode_utf817hf382f78b7bdca53fE.exit"

"_ZN4core4char7methods22_$LT$impl$u20$char$GT$11encode_utf817hf382f78b7bdca53fE.exit": ; preds = %bb8.i.i, %bb9.i.i, %bb10.i.i, %bb11.i.i
  %25 = phi { [0 x i8]*, i16 } [ %4, %bb8.i.i ], [ %6, %bb9.i.i ], [ %3, %bb10.i.i ], [ %3, %bb11.i.i ]
  %.0.i2.i.i = phi i16 [ 1, %bb8.i.i ], [ 2, %bb9.i.i ], [ 3, %bb10.i.i ], [ 4, %bb11.i.i ]
  %_5.0 = extractvalue { [0 x i8]*, i16 } %25, 0
; call <core::fmt::builders::PadAdapter as core::fmt::Write>::write_str
  %26 = call zeroext addrspace(1) i1 @"_ZN68_$LT$core..fmt..builders..PadAdapter$u20$as$u20$core..fmt..Write$GT$9write_str17he9c5f1e2d628a56cE"(%"fmt::builders::PadAdapter"* nonnull align 1 dereferenceable(6) %self, [0 x i8]* noalias nonnull readonly align 1 %_5.0, i16 %.0.i2.i.i)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %26
}

; core::fmt::Write::write_fmt
; Function Attrs: uwtable
define internal zeroext i1 @_ZN4core3fmt5Write9write_fmt17h0e0ce554ea355ac9E(%"fmt::builders::PadAdapter"* align 1 dereferenceable(6) %0, %"fmt::Arguments"* noalias nocapture readonly dereferenceable(12) %args) unnamed_addr addrspace(1) #2 {
start:
  %_6 = alloca %"fmt::Arguments", align 1
  %self = alloca %"fmt::builders::PadAdapter"*, align 1
  store %"fmt::builders::PadAdapter"* %0, %"fmt::builders::PadAdapter"** %self, align 1
  %_3.0 = bitcast %"fmt::builders::PadAdapter"** %self to {}*
  %1 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_6, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %1)
  %2 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %args, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 dereferenceable(12) %1, i8* nonnull align 1 dereferenceable(12) %2, i16 12, i1 false)
; call core::fmt::write
  %3 = call zeroext addrspace(1) i1 @_ZN4core3fmt5write17hf4cd163abe69055cE({}* nonnull align 1 %_3.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"fmt::builders::PadAdapter"**) addrspace(1)*, i16, i16, i1 (%"fmt::builders::PadAdapter"**, [0 x i8]*, i16) addrspace(1)*, i1 (%"fmt::builders::PadAdapter"**, i32) addrspace(1)*, i1 (%"fmt::builders::PadAdapter"**, %"fmt::Arguments"*) addrspace(1)* }* @vtable.i to [3 x i16]*), %"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_6)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 12, i8* nonnull %1)
  ret i1 %3
}

; <&mut W as core::fmt::Write>::write_str
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN50_$LT$$RF$mut$u20$W$u20$as$u20$core..fmt..Write$GT$9write_str17h0e5d1557647da5d2E"(%"fmt::builders::PadAdapter"** nocapture readonly align 1 dereferenceable(2) %self, [0 x i8]* noalias nonnull readonly align 1 %s.0, i16 %s.1) unnamed_addr addrspace(1) #2 {
start:
  %_3 = load %"fmt::builders::PadAdapter"*, %"fmt::builders::PadAdapter"** %self, align 1, !nonnull !568
; call <core::fmt::builders::PadAdapter as core::fmt::Write>::write_str
  %0 = tail call zeroext addrspace(1) i1 @"_ZN68_$LT$core..fmt..builders..PadAdapter$u20$as$u20$core..fmt..Write$GT$9write_str17he9c5f1e2d628a56cE"(%"fmt::builders::PadAdapter"* nonnull align 1 dereferenceable(6) %_3, [0 x i8]* noalias nonnull readonly align 1 %s.0, i16 %s.1)
  ret i1 %0
}

; <&mut W as core::fmt::Write>::write_char
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN50_$LT$$RF$mut$u20$W$u20$as$u20$core..fmt..Write$GT$10write_char17h7f001aeaacf91762E"(%"fmt::builders::PadAdapter"** nocapture readonly align 1 dereferenceable(2) %self, i32 %c) unnamed_addr addrspace(1) #2 {
start:
  %_10.i = alloca [4 x i8], align 1
  %_3 = load %"fmt::builders::PadAdapter"*, %"fmt::builders::PadAdapter"** %self, align 1, !nonnull !568
  %0 = getelementptr inbounds [4 x i8], [4 x i8]* %_10.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = bitcast [4 x i8]* %_10.i to i32*
  store i32 0, i32* %1, align 1
  %_7.0.i = bitcast [4 x i8]* %_10.i to [0 x i8]*
  %2 = icmp ult i32 %c, 1114112
  tail call addrspace(1) void @llvm.assume(i1 %2) #20
  %_2.i.i.i.i = icmp ult i32 %c, 128
  br i1 %_2.i.i.i.i, label %bb8.i.i.i, label %bb1.i.i.i.i

bb1.i.i.i.i:                                      ; preds = %start
  %_4.i.i.i.i = icmp ult i32 %c, 2048
  br i1 %_4.i.i.i.i, label %bb9.i.i.i, label %bb3.i.i.i.i

bb3.i.i.i.i:                                      ; preds = %bb1.i.i.i.i
  %_6.i.i.i.i = icmp ult i32 %c, 65536
  %3 = insertvalue { [0 x i8]*, i16 } undef, [0 x i8]* %_7.0.i, 0
  %b2.i.i.i = getelementptr inbounds [4 x i8], [4 x i8]* %_10.i, i16 0, i16 1
  %c3.i.i.i = getelementptr inbounds [4 x i8], [4 x i8]* %_10.i, i16 0, i16 2
  br i1 %_6.i.i.i.i, label %bb10.i.i.i, label %bb11.i.i.i

bb8.i.i.i:                                        ; preds = %start
  %4 = insertvalue { [0 x i8]*, i16 } undef, [0 x i8]* %_7.0.i, 0
  %5 = trunc i32 %c to i8
  store i8 %5, i8* %0, align 1
  br label %_ZN4core3fmt5Write10write_char17h875919391bb168dcE.exit

bb9.i.i.i:                                        ; preds = %bb1.i.i.i.i
  %6 = insertvalue { [0 x i8]*, i16 } undef, [0 x i8]* %_7.0.i, 0
  %b5.i.i.i = getelementptr inbounds [4 x i8], [4 x i8]* %_10.i, i16 0, i16 1
  %_30.i.i.i = lshr i32 %c, 6
  %7 = trunc i32 %_30.i.i.i to i8
  %8 = or i8 %7, -64
  store i8 %8, i8* %0, align 1
  %9 = trunc i32 %c to i8
  %_32.i.i.i = and i8 %9, 63
  %10 = or i8 %_32.i.i.i, -128
  store i8 %10, i8* %b5.i.i.i, align 1
  br label %_ZN4core3fmt5Write10write_char17h875919391bb168dcE.exit

bb10.i.i.i:                                       ; preds = %bb3.i.i.i.i
  %_40.i.i.i = lshr i32 %c, 12
  %11 = trunc i32 %_40.i.i.i to i8
  %12 = or i8 %11, -32
  store i8 %12, i8* %0, align 1
  %_44.i.i.i = lshr i32 %c, 6
  %13 = trunc i32 %_44.i.i.i to i8
  %_42.i.i.i = and i8 %13, 63
  %14 = or i8 %_42.i.i.i, -128
  store i8 %14, i8* %b2.i.i.i, align 1
  %15 = trunc i32 %c to i8
  %_46.i.i.i = and i8 %15, 63
  %16 = or i8 %_46.i.i.i, -128
  store i8 %16, i8* %c3.i.i.i, align 1
  br label %_ZN4core3fmt5Write10write_char17h875919391bb168dcE.exit

bb11.i.i.i:                                       ; preds = %bb3.i.i.i.i
  %d.i.i.i = getelementptr inbounds [4 x i8], [4 x i8]* %_10.i, i16 0, i16 3
  %_55.i.i.i = lshr i32 %c, 18
  %17 = trunc i32 %_55.i.i.i to i8
  %18 = or i8 %17, -16
  store i8 %18, i8* %0, align 1
  %_59.i.i.i = lshr i32 %c, 12
  %19 = trunc i32 %_59.i.i.i to i8
  %_57.i.i.i = and i8 %19, 63
  %20 = or i8 %_57.i.i.i, -128
  store i8 %20, i8* %b2.i.i.i, align 1
  %_63.i.i.i = lshr i32 %c, 6
  %21 = trunc i32 %_63.i.i.i to i8
  %_61.i.i.i = and i8 %21, 63
  %22 = or i8 %_61.i.i.i, -128
  store i8 %22, i8* %c3.i.i.i, align 1
  %23 = trunc i32 %c to i8
  %_65.i.i.i = and i8 %23, 63
  %24 = or i8 %_65.i.i.i, -128
  store i8 %24, i8* %d.i.i.i, align 1
  br label %_ZN4core3fmt5Write10write_char17h875919391bb168dcE.exit

_ZN4core3fmt5Write10write_char17h875919391bb168dcE.exit: ; preds = %bb8.i.i.i, %bb9.i.i.i, %bb10.i.i.i, %bb11.i.i.i
  %25 = phi { [0 x i8]*, i16 } [ %4, %bb8.i.i.i ], [ %6, %bb9.i.i.i ], [ %3, %bb10.i.i.i ], [ %3, %bb11.i.i.i ]
  %.0.i2.i.i.i = phi i16 [ 1, %bb8.i.i.i ], [ 2, %bb9.i.i.i ], [ 3, %bb10.i.i.i ], [ 4, %bb11.i.i.i ]
  %_5.0.i = extractvalue { [0 x i8]*, i16 } %25, 0
; call <core::fmt::builders::PadAdapter as core::fmt::Write>::write_str
  %26 = call zeroext addrspace(1) i1 @"_ZN68_$LT$core..fmt..builders..PadAdapter$u20$as$u20$core..fmt..Write$GT$9write_str17he9c5f1e2d628a56cE"(%"fmt::builders::PadAdapter"* nonnull align 1 dereferenceable(6) %_3, [0 x i8]* noalias nonnull readonly align 1 %_5.0.i, i16 %.0.i2.i.i.i)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %26
}

; <&mut W as core::fmt::Write>::write_fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN50_$LT$$RF$mut$u20$W$u20$as$u20$core..fmt..Write$GT$9write_fmt17hce3f29727e6570abE"(%"fmt::builders::PadAdapter"** nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Arguments"* noalias nocapture readonly dereferenceable(12) %args) unnamed_addr addrspace(1) #2 {
start:
  %_6.i = alloca %"fmt::Arguments", align 1
  %self.i = alloca %"fmt::builders::PadAdapter"*, align 1
  %_3 = load %"fmt::builders::PadAdapter"*, %"fmt::builders::PadAdapter"** %self, align 1, !nonnull !568
  %0 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %args, i16 0, i32 0, i16 0
  %1 = bitcast %"fmt::builders::PadAdapter"** %self.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %1)
  store %"fmt::builders::PadAdapter"* %_3, %"fmt::builders::PadAdapter"** %self.i, align 1, !noalias !1126
  %_3.0.i = bitcast %"fmt::builders::PadAdapter"** %self.i to {}*
  %2 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_6.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %2), !noalias !1126
  call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 dereferenceable(12) %2, i8* nonnull align 1 dereferenceable(12) %0, i16 12, i1 false)
; call core::fmt::write
  %3 = call zeroext addrspace(1) i1 @_ZN4core3fmt5write17hf4cd163abe69055cE({}* nonnull align 1 %_3.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"fmt::builders::PadAdapter"**) addrspace(1)*, i16, i16, i1 (%"fmt::builders::PadAdapter"**, [0 x i8]*, i16) addrspace(1)*, i1 (%"fmt::builders::PadAdapter"**, i32) addrspace(1)*, i1 (%"fmt::builders::PadAdapter"**, %"fmt::Arguments"*) addrspace(1)* }* @vtable.i to [3 x i16]*), %"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_6.i), !noalias !1126
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 12, i8* nonnull %2), !noalias !1126
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %1)
  ret i1 %3
}

; core::fmt::ArgumentV1::from_usize
; Function Attrs: norecurse nounwind readnone uwtable
define { i8*, i8 addrspace(1)* } @_ZN4core3fmt10ArgumentV110from_usize17h6af9fefae8f711edE(i16* noalias readonly align 1 dereferenceable(2) %x) unnamed_addr addrspace(1) #1 {
start:
  %0 = bitcast i16* %x to i8*
  %1 = insertvalue { i8*, i8 addrspace(1)* } undef, i8* %0, 0
  %2 = insertvalue { i8*, i8 addrspace(1)* } %1, i8 addrspace(1)* bitcast (i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @_ZN4core3ops8function6FnOnce9call_once17h35286f7b5a1cec98E to i8 addrspace(1)*), 1
  ret { i8*, i8 addrspace(1)* } %2
}

; <core::fmt::Arguments as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN57_$LT$core..fmt..Arguments$u20$as$u20$core..fmt..Debug$GT$3fmt17h372d321edf14a66aE"(%"fmt::Arguments"* noalias nocapture readonly align 1 dereferenceable(12) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %fmt) unnamed_addr addrspace(1) #2 {
start:
  %_5.i = alloca %"fmt::Arguments", align 1
  %0 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %fmt, i16 0, i32 11, i32 0
  %_4.0.i = load {}*, {}** %0, align 1, !noalias !1129, !nonnull !568
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %fmt, i16 0, i32 11, i32 1
  %_4.1.i = load [3 x i16]*, [3 x i16]** %1, align 1, !noalias !1129, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %2), !noalias !1129
  %3 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %self, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 dereferenceable(12) %2, i8* nonnull align 1 dereferenceable(12) %3, i16 12, i1 false)
; call core::fmt::write
  %4 = call zeroext addrspace(1) i1 @_ZN4core3fmt5write17hf4cd163abe69055cE({}* nonnull align 1 %_4.0.i, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) %_4.1.i, %"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_5.i), !noalias !1129
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 12, i8* nonnull %2), !noalias !1129
  ret i1 %4
}

; core::fmt::write
; Function Attrs: uwtable
define zeroext i1 @_ZN4core3fmt5write17hf4cd163abe69055cE({}* nonnull align 1 %output.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) %output.1, %"fmt::Arguments"* noalias nocapture readonly dereferenceable(12) %args) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %formatter = alloca %"fmt::Formatter", align 1
  %0 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %formatter, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 19, i8* nonnull %0)
  %1 = bitcast %"fmt::Formatter"* %formatter to i32*
  store i32 0, i32* %1, align 1
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %formatter, i16 0, i32 3
  store i32 32, i32* %2, align 1
  %3 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %formatter, i16 0, i32 5
  store i8 3, i8* %3, align 1
  %4 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %formatter, i16 0, i32 7, i32 0
  store i8 0, i8* %4, align 1
  %5 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %formatter, i16 0, i32 9, i32 0
  store i8 0, i8* %5, align 1
  %6 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %formatter, i16 0, i32 11, i32 0
  store {}* %output.0, {}** %6, align 1
  %7 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %formatter, i16 0, i32 11, i32 1
  store [3 x i16]* %output.1, [3 x i16]** %7, align 1
  %8 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %args, i16 0, i32 3
  %9 = bitcast { i8*, i16 }* %8 to {}**
  %10 = load {}*, {}** %9, align 1
  %11 = icmp eq {}* %10, null
  %12 = bitcast {}* %10 to [0 x %"fmt::rt::v1::Argument"]*
  br i1 %11, label %bb3, label %bb1

bb1:                                              ; preds = %start
  %13 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %args, i16 0, i32 3, i32 1
  %fmt.1 = load i16, i16* %13, align 1
  %14 = bitcast %"fmt::Arguments"* %args to { [0 x i8]*, i16 }**
  %_53.0122123 = load { [0 x i8]*, i16 }*, { [0 x i8]*, i16 }** %14, align 1, !nonnull !568
  %15 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %args, i16 0, i32 1, i32 1
  %_53.1 = load i16, i16* %15, align 1
  %16 = icmp ugt i16 %fmt.1, %_53.1
  %.0.sroa.speculated.i.i.i.i.i.i = select i1 %16, i16 %_53.1, i16 %fmt.1
  %_2.i.i150 = icmp eq i16 %.0.sroa.speculated.i.i.i.i.i.i, 0
  %17 = bitcast { [0 x i8]*, i16 }* %_53.0122123 to [0 x { [0 x i8]*, i16 }]*
  br i1 %_2.i.i150, label %bb55, label %"_ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h6fab5798075a6cc9E.exit.lr.ph"

"_ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h6fab5798075a6cc9E.exit.lr.ph": ; preds = %bb1
  %18 = bitcast [3 x i16]** %7 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %19 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %args, i16 0, i32 5, i32 0
  %_78.0 = load [0 x { i8*, i8 addrspace(1)* }]*, [0 x { i8*, i8 addrspace(1)* }]** %19, align 1
  %20 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %args, i16 0, i32 5, i32 1
  %_78.1 = load i16, i16* %20, align 1
  %21 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %formatter, i16 0, i32 7, i32 1
  %22 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %formatter, i16 0, i32 9, i32 1
  %23 = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %_53.0122123, i16 0, i32 0
  %_67.0198 = load [0 x i8]*, [0 x i8]** %23, align 1, !nonnull !568
  %24 = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %_53.0122123, i16 0, i32 1
  %_67.1199 = load i16, i16* %24, align 1
  %25 = getelementptr inbounds [3 x i16], [3 x i16]* %output.1, i16 0, i16 3
  %26 = bitcast i16* %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)**
  %27 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %26, align 1, !invariant.load !568, !nonnull !568
  %_65200 = call zeroext addrspace(1) i1 %27({}* nonnull align 1 %output.0, [0 x i8]* noalias nonnull readonly align 1 %_67.0198, i16 %_67.1199)
  br i1 %_65200, label %bb23, label %bb42.lr.ph

bb42.lr.ph:                                       ; preds = %"_ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h6fab5798075a6cc9E.exit.lr.ph"
  %28 = bitcast {}* %10 to i8*
  br label %bb42

bb3:                                              ; preds = %start
  %29 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %args, i16 0, i32 5, i32 0
  %30 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %29 to { i8*, i8 addrspace(1)* }**
  %_14.0124125 = load { i8*, i8 addrspace(1)* }*, { i8*, i8 addrspace(1)* }** %30, align 1, !nonnull !568
  %31 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %args, i16 0, i32 5, i32 1
  %_14.1 = load i16, i16* %31, align 1
  %32 = bitcast %"fmt::Arguments"* %args to { [0 x i8]*, i16 }**
  %_16.0126127 = load { [0 x i8]*, i16 }*, { [0 x i8]*, i16 }** %32, align 1, !nonnull !568
  %33 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %args, i16 0, i32 1, i32 1
  %_16.1 = load i16, i16* %33, align 1
  %34 = icmp ugt i16 %_14.1, %_16.1
  %.0.sroa.speculated.i.i.i.i.i.i37 = select i1 %34, i16 %_16.1, i16 %_14.1
  %_2.i.i43147 = icmp eq i16 %.0.sroa.speculated.i.i.i.i.i.i37, 0
  %35 = bitcast { [0 x i8]*, i16 }* %_16.0126127 to [0 x { [0 x i8]*, i16 }]*
  br i1 %_2.i.i43147, label %bb55, label %bb12.lr.ph

bb12.lr.ph:                                       ; preds = %bb3
  %36 = bitcast [3 x i16]** %7 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %37 = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %_16.0126127, i16 0, i32 0
  %_30.0194 = load [0 x i8]*, [0 x i8]** %37, align 1, !nonnull !568
  %38 = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %_16.0126127, i16 0, i32 1
  %_30.1195 = load i16, i16* %38, align 1
  %39 = getelementptr inbounds [3 x i16], [3 x i16]* %output.1, i16 0, i16 3
  %40 = bitcast i16* %39 to i1 ({}*, [0 x i8]*, i16) addrspace(1)**
  %41 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %40, align 1, !invariant.load !568, !nonnull !568
  %_28196 = call zeroext addrspace(1) i1 %41({}* nonnull align 1 %output.0, [0 x i8]* noalias nonnull readonly align 1 %_30.0194, i16 %_30.1195)
  br i1 %_28196, label %bb23, label %bb15

bb15:                                             ; preds = %bb12.lr.ph, %bb26.bb12_crit_edge
  %42 = phi i16 [ %47, %bb26.bb12_crit_edge ], [ 1, %bb12.lr.ph ]
  %idx.0149197 = phi i16 [ %42, %bb26.bb12_crit_edge ], [ 0, %bb12.lr.ph ]
  %43 = getelementptr inbounds { i8*, i8 addrspace(1)* }, { i8*, i8 addrspace(1)* }* %_14.0124125, i16 %idx.0149197
  %44 = getelementptr inbounds { i8*, i8 addrspace(1)* }, { i8*, i8 addrspace(1)* }* %_14.0124125, i16 %idx.0149197, i32 1
  %45 = bitcast i8 addrspace(1)** %44 to i1 (%"fmt::::Opaque"*, %"fmt::Formatter"*) addrspace(1)**
  %_38 = load i1 (%"fmt::::Opaque"*, %"fmt::Formatter"*) addrspace(1)*, i1 (%"fmt::::Opaque"*, %"fmt::Formatter"*) addrspace(1)** %45, align 1, !nonnull !568
  %46 = bitcast { i8*, i8 addrspace(1)* }* %43 to %"fmt::::Opaque"**
  %_39 = load %"fmt::::Opaque"*, %"fmt::::Opaque"** %46, align 1, !nonnull !568
  %_37 = call zeroext addrspace(1) i1 %_38(%"fmt::::Opaque"* nonnull align 1 %_39, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %formatter)
  br i1 %_37, label %bb23, label %bb26

bb18:                                             ; preds = %bb66, %bb23
  %.0 = phi i1 [ false, %bb66 ], [ true, %bb23 ]
  ret i1 %.0

bb23:                                             ; preds = %"bb50._ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h6fab5798075a6cc9E.exit_crit_edge", %_ZN4core3fmt3run17h13a5a855c58b3d83E.exit, %bb26.bb12_crit_edge, %bb15, %"_ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h6fab5798075a6cc9E.exit.lr.ph", %bb12.lr.ph, %bb58
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 19, i8* nonnull %0)
  br label %bb18

bb26:                                             ; preds = %bb15
  %_2.i.i43 = icmp ult i16 %42, %.0.sroa.speculated.i.i.i.i.i.i37
  br i1 %_2.i.i43, label %bb26.bb12_crit_edge, label %bb55

bb26.bb12_crit_edge:                              ; preds = %bb26
  %_29.0.pre = load {}*, {}** %6, align 1
  %_29.136.pre = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %36, align 1
  %47 = add nuw i16 %42, 1
  %48 = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %_16.0126127, i16 %42, i32 0
  %_30.0 = load [0 x i8]*, [0 x i8]** %48, align 1, !nonnull !568
  %49 = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %_16.0126127, i16 %42, i32 1
  %_30.1 = load i16, i16* %49, align 1
  %50 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_29.136.pre, i16 3
  %51 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %50, align 1, !invariant.load !568, !nonnull !568
  %_28 = call zeroext addrspace(1) i1 %51({}* nonnull align 1 %_29.0.pre, [0 x i8]* noalias nonnull readonly align 1 %_30.0, i16 %_30.1)
  br i1 %_28, label %bb23, label %bb15

bb42:                                             ; preds = %bb42.lr.ph, %"bb50._ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h6fab5798075a6cc9E.exit_crit_edge"
  %52 = phi i8* [ %28, %bb42.lr.ph ], [ %76, %"bb50._ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h6fab5798075a6cc9E.exit_crit_edge" ]
  %53 = phi i16 [ 1, %bb42.lr.ph ], [ %75, %"bb50._ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h6fab5798075a6cc9E.exit_crit_edge" ]
  %idx.1152201 = phi i16 [ 0, %bb42.lr.ph ], [ %53, %"bb50._ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h6fab5798075a6cc9E.exit_crit_edge" ]
  %54 = getelementptr inbounds [0 x %"fmt::rt::v1::Argument"], [0 x %"fmt::rt::v1::Argument"]* %12, i16 0, i16 %idx.1152201, i32 0, i16 2
  %55 = bitcast i8* %54 to i32*
  %_4.i = load i32, i32* %55, align 1, !range !690, !alias.scope !1132, !noalias !1135
  store i32 %_4.i, i32* %2, align 1, !noalias !1137
  %56 = getelementptr inbounds [0 x %"fmt::rt::v1::Argument"], [0 x %"fmt::rt::v1::Argument"]* %12, i16 0, i16 %idx.1152201, i32 0, i16 6
  %_5.i = load i8, i8* %56, align 1, !range !696, !alias.scope !1132, !noalias !1135
  store i8 %_5.i, i8* %3, align 1, !noalias !1137
  %57 = getelementptr inbounds [0 x %"fmt::rt::v1::Argument"], [0 x %"fmt::rt::v1::Argument"]* %12, i16 0, i16 %idx.1152201, i32 0, i16 7
  %58 = bitcast i8* %57 to i32*
  %_6.i = load i32, i32* %58, align 1, !alias.scope !1132, !noalias !1135
  store i32 %_6.i, i32* %1, align 1, !noalias !1137
  %59 = getelementptr inbounds [0 x %"fmt::rt::v1::Argument"], [0 x %"fmt::rt::v1::Argument"]* %12, i16 0, i16 %idx.1152201, i32 0, i16 14
  %_10.idx.val.i = load i8, i8* %59, align 1, !alias.scope !1132, !noalias !1135
  %_10.idx4.i = getelementptr [0 x %"fmt::rt::v1::Argument"], [0 x %"fmt::rt::v1::Argument"]* %12, i16 0, i16 %idx.1152201, i32 0, i16 15
  %60 = bitcast i8* %_10.idx4.i to i16*
  %_10.idx4.val.i = load i16, i16* %60, align 1, !alias.scope !1132, !noalias !1135
  %trunc.i.i = trunc i8 %_10.idx.val.i to i2
  switch i2 %trunc.i.i, label %bb2.i.i [
    i2 0, label %bb3.i.i
    i2 1, label %bb1.i.i
    i2 -2, label %_ZN4core3fmt8getcount17he5b94741d1e3c681E.exit.i
  ]

bb1.i.i:                                          ; preds = %bb42
  %_10.i.i = icmp ult i16 %_10.idx4.val.i, %_78.1
  br i1 %_10.i.i, label %bb5.i.i, label %panic.i.i, !prof !4, !misexpect !5

bb2.i.i:                                          ; preds = %bb42
  unreachable

bb3.i.i:                                          ; preds = %bb42
  br label %_ZN4core3fmt8getcount17he5b94741d1e3c681E.exit.i

bb5.i.i:                                          ; preds = %bb1.i.i
  %61 = getelementptr inbounds [0 x { i8*, i8 addrspace(1)* }], [0 x { i8*, i8 addrspace(1)* }]* %_78.0, i16 0, i16 %_10.idx4.val.i, i32 1
  %62 = bitcast i8 addrspace(1)** %61 to i16*
  %_41.i.i.i = load i16, i16* %62, align 1, !range !1138, !alias.scope !1139, !noalias !1132
  %_2.i.i.i = icmp eq i16 %_41.i.i.i, ptrtoint (i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @_ZN4core3ops8function6FnOnce9call_once17h35286f7b5a1cec98E to i16)
  br i1 %_2.i.i.i, label %bb2.i.i.i, label %_ZN4core3fmt8getcount17he5b94741d1e3c681E.exit.i

bb2.i.i.i:                                        ; preds = %bb5.i.i
  %_7.i.i = getelementptr inbounds [0 x { i8*, i8 addrspace(1)* }], [0 x { i8*, i8 addrspace(1)* }]* %_78.0, i16 0, i16 %_10.idx4.val.i
  %63 = bitcast { i8*, i8 addrspace(1)* }* %_7.i.i to i16**
  %_112.i.i.i = load i16*, i16** %63, align 1, !alias.scope !1139, !noalias !1132, !nonnull !568
  %_8.i.i.i = load i16, i16* %_112.i.i.i, align 1, !noalias !1144
  br label %_ZN4core3fmt8getcount17he5b94741d1e3c681E.exit.i

panic.i.i:                                        ; preds = %bb1.i.i
; call core::panicking::panic_bounds_check
  call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_10.idx4.val.i, i16 %_78.1, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18711 to %"panic::Location"*)), !noalias !1145
  unreachable

_ZN4core3fmt8getcount17he5b94741d1e3c681E.exit.i: ; preds = %bb2.i.i.i, %bb5.i.i, %bb3.i.i, %bb42
  %.sroa.4.0.i.i = phi i16 [ %_10.idx4.val.i, %bb3.i.i ], [ undef, %bb42 ], [ %_8.i.i.i, %bb2.i.i.i ], [ undef, %bb5.i.i ]
  %.sroa.0.0.i.i = phi i8 [ 1, %bb3.i.i ], [ 0, %bb42 ], [ 1, %bb2.i.i.i ], [ 0, %bb5.i.i ]
  store i8 %.sroa.0.0.i.i, i8* %4, align 1, !noalias !1137
  store i16 %.sroa.4.0.i.i, i16* %21, align 1, !noalias !1137
  %64 = getelementptr inbounds [0 x %"fmt::rt::v1::Argument"], [0 x %"fmt::rt::v1::Argument"]* %12, i16 0, i16 %idx.1152201, i32 0, i16 11
  %_14.idx.val.i = load i8, i8* %64, align 1, !alias.scope !1132, !noalias !1135
  %_14.idx3.i = getelementptr [0 x %"fmt::rt::v1::Argument"], [0 x %"fmt::rt::v1::Argument"]* %12, i16 0, i16 %idx.1152201, i32 0, i16 12
  %65 = bitcast i8* %_14.idx3.i to i16*
  %_14.idx3.val.i = load i16, i16* %65, align 1, !alias.scope !1132, !noalias !1135
  %trunc.i5.i = trunc i8 %_14.idx.val.i to i2
  switch i2 %trunc.i5.i, label %bb2.i8.i [
    i2 0, label %bb3.i9.i
    i2 1, label %bb1.i7.i
    i2 -2, label %_ZN4core3fmt8getcount17he5b94741d1e3c681E.exit20.i
  ]

bb1.i7.i:                                         ; preds = %_ZN4core3fmt8getcount17he5b94741d1e3c681E.exit.i
  %_10.i6.i = icmp ult i16 %_14.idx3.val.i, %_78.1
  br i1 %_10.i6.i, label %bb5.i12.i, label %panic.i19.i, !prof !4, !misexpect !5

bb2.i8.i:                                         ; preds = %_ZN4core3fmt8getcount17he5b94741d1e3c681E.exit.i
  unreachable

bb3.i9.i:                                         ; preds = %_ZN4core3fmt8getcount17he5b94741d1e3c681E.exit.i
  br label %_ZN4core3fmt8getcount17he5b94741d1e3c681E.exit20.i

bb5.i12.i:                                        ; preds = %bb1.i7.i
  %66 = getelementptr inbounds [0 x { i8*, i8 addrspace(1)* }], [0 x { i8*, i8 addrspace(1)* }]* %_78.0, i16 0, i16 %_14.idx3.val.i, i32 1
  %67 = bitcast i8 addrspace(1)** %66 to i16*
  %_41.i.i10.i = load i16, i16* %67, align 1, !range !1138, !alias.scope !1146, !noalias !1132
  %_2.i.i11.i = icmp eq i16 %_41.i.i10.i, ptrtoint (i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @_ZN4core3ops8function6FnOnce9call_once17h35286f7b5a1cec98E to i16)
  br i1 %_2.i.i11.i, label %bb2.i.i16.i, label %_ZN4core3fmt8getcount17he5b94741d1e3c681E.exit20.i

bb2.i.i16.i:                                      ; preds = %bb5.i12.i
  %_7.i13.i = getelementptr inbounds [0 x { i8*, i8 addrspace(1)* }], [0 x { i8*, i8 addrspace(1)* }]* %_78.0, i16 0, i16 %_14.idx3.val.i
  %68 = bitcast { i8*, i8 addrspace(1)* }* %_7.i13.i to i16**
  %_112.i.i14.i = load i16*, i16** %68, align 1, !alias.scope !1146, !noalias !1132, !nonnull !568
  %_8.i.i15.i = load i16, i16* %_112.i.i14.i, align 1, !noalias !1151
  br label %_ZN4core3fmt8getcount17he5b94741d1e3c681E.exit20.i

panic.i19.i:                                      ; preds = %bb1.i7.i
; call core::panicking::panic_bounds_check
  call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_14.idx3.val.i, i16 %_78.1, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18711 to %"panic::Location"*)), !noalias !1152
  unreachable

_ZN4core3fmt8getcount17he5b94741d1e3c681E.exit20.i: ; preds = %bb2.i.i16.i, %bb5.i12.i, %bb3.i9.i, %_ZN4core3fmt8getcount17he5b94741d1e3c681E.exit.i
  %.sroa.4.0.i17.i = phi i16 [ %_14.idx3.val.i, %bb3.i9.i ], [ undef, %_ZN4core3fmt8getcount17he5b94741d1e3c681E.exit.i ], [ %_8.i.i15.i, %bb2.i.i16.i ], [ undef, %bb5.i12.i ]
  %.sroa.0.0.i18.i = phi i8 [ 1, %bb3.i9.i ], [ 0, %_ZN4core3fmt8getcount17he5b94741d1e3c681E.exit.i ], [ 1, %bb2.i.i16.i ], [ 0, %bb5.i12.i ]
  store i8 %.sroa.0.0.i18.i, i8* %5, align 1, !noalias !1137
  store i16 %.sroa.4.0.i17.i, i16* %22, align 1, !noalias !1137
  %69 = bitcast i8* %52 to i16*
  %_16.i = load i16, i16* %69, align 1, !alias.scope !1132, !noalias !1135
  %_18.i = icmp ult i16 %_16.i, %_78.1
  br i1 %_18.i, label %_ZN4core3fmt3run17h13a5a855c58b3d83E.exit, label %panic.i, !prof !4, !misexpect !5

panic.i:                                          ; preds = %_ZN4core3fmt8getcount17he5b94741d1e3c681E.exit20.i
; call core::panicking::panic_bounds_check
  call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_16.i, i16 %_78.1, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18709 to %"panic::Location"*)), !noalias !1137
  unreachable

_ZN4core3fmt3run17h13a5a855c58b3d83E.exit:        ; preds = %_ZN4core3fmt8getcount17he5b94741d1e3c681E.exit20.i
  %70 = getelementptr inbounds [0 x { i8*, i8 addrspace(1)* }], [0 x { i8*, i8 addrspace(1)* }]* %_78.0, i16 0, i16 %_16.i
  %71 = bitcast { i8*, i8 addrspace(1)* }* %70 to %"fmt::::Opaque"**
  %value.01.i = load %"fmt::::Opaque"*, %"fmt::::Opaque"** %71, align 1, !alias.scope !1135, !noalias !1132, !nonnull !568
  %72 = getelementptr inbounds [0 x { i8*, i8 addrspace(1)* }], [0 x { i8*, i8 addrspace(1)* }]* %_78.0, i16 0, i16 %_16.i, i32 1
  %73 = bitcast i8 addrspace(1)** %72 to i1 (%"fmt::::Opaque"*, %"fmt::Formatter"*) addrspace(1)**
  %value.12.i = load i1 (%"fmt::::Opaque"*, %"fmt::Formatter"*) addrspace(1)*, i1 (%"fmt::::Opaque"*, %"fmt::Formatter"*) addrspace(1)** %73, align 1, !alias.scope !1135, !noalias !1132, !nonnull !568
  %74 = call zeroext addrspace(1) i1 %value.12.i(%"fmt::::Opaque"* nonnull align 1 %value.01.i, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %formatter), !noalias !1137
  br i1 %74, label %bb23, label %bb50

bb50:                                             ; preds = %_ZN4core3fmt3run17h13a5a855c58b3d83E.exit
  %_2.i.i = icmp ult i16 %53, %.0.sroa.speculated.i.i.i.i.i.i
  br i1 %_2.i.i, label %"bb50._ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h6fab5798075a6cc9E.exit_crit_edge", label %bb55

"bb50._ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h6fab5798075a6cc9E.exit_crit_edge": ; preds = %bb50
  %_66.0.pre = load {}*, {}** %6, align 1
  %_66.134.pre = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %18, align 1
  %75 = add nuw i16 %53, 1
  %76 = getelementptr inbounds [0 x %"fmt::rt::v1::Argument"], [0 x %"fmt::rt::v1::Argument"]* %12, i16 0, i16 %53, i32 0, i16 0
  %77 = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %_53.0122123, i16 %53, i32 0
  %_67.0 = load [0 x i8]*, [0 x i8]** %77, align 1, !nonnull !568
  %78 = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %_53.0122123, i16 %53, i32 1
  %_67.1 = load i16, i16* %78, align 1
  %79 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_66.134.pre, i16 3
  %80 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %79, align 1, !invariant.load !568, !nonnull !568
  %_65 = call zeroext addrspace(1) i1 %80({}* nonnull align 1 %_66.0.pre, [0 x i8]* noalias nonnull readonly align 1 %_67.0, i16 %_67.1)
  br i1 %_65, label %bb23, label %bb42

bb55:                                             ; preds = %bb50, %bb26, %bb3, %bb1
  %_86.1 = phi i16 [ %_16.1, %bb3 ], [ %_53.1, %bb1 ], [ %_16.1, %bb26 ], [ %_53.1, %bb50 ]
  %_86.0 = phi [0 x { [0 x i8]*, i16 }]* [ %35, %bb3 ], [ %17, %bb1 ], [ %35, %bb26 ], [ %17, %bb50 ]
  %idx.2 = phi i16 [ 0, %bb3 ], [ 0, %bb1 ], [ %.0.sroa.speculated.i.i.i.i.i.i37, %bb26 ], [ %.0.sroa.speculated.i.i.i.i.i.i, %bb50 ]
  %_3.i.i = icmp ugt i16 %_86.1, %idx.2
  br i1 %_3.i.i, label %bb58, label %bb66

bb58:                                             ; preds = %bb55
  %_92.0 = load {}*, {}** %6, align 1, !nonnull !568
  %81 = bitcast [3 x i16]** %7 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_92.135 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %81, align 1, !nonnull !568
  %82 = getelementptr inbounds [0 x { [0 x i8]*, i16 }], [0 x { [0 x i8]*, i16 }]* %_86.0, i16 0, i16 %idx.2, i32 0
  %_93.0 = load [0 x i8]*, [0 x i8]** %82, align 1, !nonnull !568
  %83 = getelementptr inbounds [0 x { [0 x i8]*, i16 }], [0 x { [0 x i8]*, i16 }]* %_86.0, i16 0, i16 %idx.2, i32 1
  %_93.1 = load i16, i16* %83, align 1
  %84 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_92.135, i16 3
  %85 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %84, align 1, !invariant.load !568, !nonnull !568
  %_91 = call zeroext addrspace(1) i1 %85({}* nonnull align 1 %_92.0, [0 x i8]* noalias nonnull readonly align 1 %_93.0, i16 %_93.1)
  br i1 %_91, label %bb23, label %bb66

bb66:                                             ; preds = %bb55, %bb58
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 19, i8* nonnull %0)
  br label %bb18
}

; core::fmt::Formatter::pad_integral
; Function Attrs: uwtable
define zeroext i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* align 1 dereferenceable(19) %self, i1 zeroext %is_nonnegative, [0 x i8]* noalias nonnull readonly align 1 %prefix.0, i16 %prefix.1, [0 x i8]* noalias nonnull readonly align 1 %buf.0, i16 %buf.1) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  br i1 %is_nonnegative, label %bb2, label %bb3

bb2:                                              ; preds = %start
  %0 = bitcast %"fmt::Formatter"* %self to i32*
  %_3.i = load i32, i32* %0, align 1, !alias.scope !1153
  %_2.i = and i32 %_3.i, 1
  %1 = icmp eq i32 %_2.i, 0
  %spec.select = select i1 %1, i32 1114112, i32 43
  %2 = trunc i32 %_2.i to i16
  %spec.select55 = add i16 %2, %buf.1
  br label %bb8

bb3:                                              ; preds = %start
  %3 = add i16 %buf.1, 1
  %.phi.trans.insert = bitcast %"fmt::Formatter"* %self to i32*
  %_3.i56.pre = load i32, i32* %.phi.trans.insert, align 1, !alias.scope !1156
  br label %bb8

bb8:                                              ; preds = %bb2, %bb3
  %_3.i56 = phi i32 [ %_3.i56.pre, %bb3 ], [ %_3.i, %bb2 ]
  %sign.0 = phi i32 [ 45, %bb3 ], [ %spec.select, %bb2 ]
  %width.0 = phi i16 [ %3, %bb3 ], [ %spec.select55, %bb2 ]
  %_2.i57 = and i32 %_3.i56, 4
  %4 = icmp eq i32 %_2.i57, 0
  br i1 %4, label %bb14, label %bb11

bb11:                                             ; preds = %bb8
  %5 = getelementptr [0 x i8], [0 x i8]* %prefix.0, i16 0, i16 0
  %6 = getelementptr inbounds [0 x i8], [0 x i8]* %prefix.0, i16 0, i16 %prefix.1
  %_13.i9.i = icmp eq i16 %prefix.1, 0
  br i1 %_13.i9.i, label %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$5count17he93c42af0f84d0e8E.exit", label %bb7.i

bb7.i:                                            ; preds = %bb11, %bb7.i
  %cont_bytes.011.i = phi i16 [ %9, %bb7.i ], [ 0, %bb11 ]
  %iter.sroa.0.010.i = phi i8* [ %7, %bb7.i ], [ %5, %bb11 ]
  %7 = getelementptr inbounds i8, i8* %iter.sroa.0.010.i, i16 1
  %byte.i = load i8, i8* %iter.sroa.0.010.i, align 1
  %_2.i.i = and i8 %byte.i, -64
  %8 = icmp eq i8 %_2.i.i, -128
  %_16.i = zext i1 %8 to i16
  %9 = add i16 %cont_bytes.011.i, %_16.i
  %_13.i.i = icmp eq i8* %7, %6
  br i1 %_13.i.i, label %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$5count17he93c42af0f84d0e8E.exit", label %bb7.i

"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$5count17he93c42af0f84d0e8E.exit": ; preds = %bb7.i, %bb11
  %cont_bytes.0.lcssa.i = phi i16 [ 0, %bb11 ], [ %9, %bb7.i ]
  %10 = add i16 %width.0, %prefix.1
  %11 = sub i16 %10, %cont_bytes.0.lcssa.i
  br label %bb14

bb14:                                             ; preds = %bb8, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$5count17he93c42af0f84d0e8E.exit"
  %prefix.sroa.0.0 = phi i8* [ %5, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$5count17he93c42af0f84d0e8E.exit" ], [ null, %bb8 ]
  %width.1 = phi i16 [ %11, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$5count17he93c42af0f84d0e8E.exit" ], [ %width.0, %bb8 ]
  %12 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 7, i32 0
  %13 = load i8, i8* %12, align 1, !range !87
  %switch = icmp eq i8 %13, 1
  br i1 %switch, label %bb27, label %bb16

bb16:                                             ; preds = %bb14
; call core::fmt::Formatter::pad_integral::write_prefix
  %_21 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral12write_prefix17hd9b56f569438a88eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %self, i32 %sign.0, i8* noalias readonly align 1 %prefix.sroa.0.0, i16 %prefix.1)
  br i1 %_21, label %bb22, label %bb19

bb19:                                             ; preds = %bb16
  %14 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 0
  %_30.0 = load {}*, {}** %14, align 1, !nonnull !568
  %15 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 1
  %16 = bitcast [3 x i16]** %15 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_30.154 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %16, align 1, !nonnull !568
  %17 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_30.154, i16 3
  %18 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %17, align 1, !invariant.load !568, !nonnull !568
  %19 = tail call zeroext addrspace(1) i1 %18({}* nonnull align 1 %_30.0, [0 x i8]* noalias nonnull readonly align 1 %buf.0, i16 %buf.1)
  br label %bb22

bb22:                                             ; preds = %bb14.i, %bb6.i61, %bb14.i85, %bb6.i, %bb2.i, %bb83, %bb75, %bb53, %bb39, %bb28, %bb16, %bb32, %bb68, %bb19
  %.0 = phi i1 [ %19, %bb19 ], [ %27, %bb32 ], [ false, %bb68 ], [ true, %bb16 ], [ true, %bb28 ], [ true, %bb39 ], [ true, %bb53 ], [ true, %bb75 ], [ true, %bb83 ], [ true, %bb6.i ], [ false, %bb2.i ], [ true, %bb14.i85 ], [ true, %bb6.i61 ], [ true, %bb14.i ]
  ret i1 %.0

bb27:                                             ; preds = %bb14
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 7, i32 1
  %_36 = load i16, i16* %20, align 1
  %_34 = icmp ugt i16 %_36, %width.1
  br i1 %_34, label %bb29, label %bb28

bb28:                                             ; preds = %bb27
; call core::fmt::Formatter::pad_integral::write_prefix
  %_38 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral12write_prefix17hd9b56f569438a88eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %self, i32 %sign.0, i8* noalias readonly align 1 %prefix.sroa.0.0, i16 %prefix.1)
  br i1 %_38, label %bb22, label %bb32

bb29:                                             ; preds = %bb27
  %_2.i90 = and i32 %_3.i56, 8
  %21 = icmp eq i32 %_2.i90, 0
  br i1 %21, label %bb40, label %bb39

bb32:                                             ; preds = %bb28
  %22 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 0
  %_47.0 = load {}*, {}** %22, align 1, !nonnull !568
  %23 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 1
  %24 = bitcast [3 x i16]** %23 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_47.153 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %24, align 1, !nonnull !568
  %25 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_47.153, i16 3
  %26 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %25, align 1, !invariant.load !568, !nonnull !568
  %27 = tail call zeroext addrspace(1) i1 %26({}* nonnull align 1 %_47.0, [0 x i8]* noalias nonnull readonly align 1 %buf.0, i16 %buf.1)
  br label %bb22

bb39:                                             ; preds = %bb29
  %_55 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 3
  %x.val.i.i.i88 = load i32, i32* %_55, align 1
  store i32 48, i32* %_55, align 1
  %_58 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 5
  %x.val.i.i.i = load i8, i8* %_58, align 1
  store i8 1, i8* %_58, align 1
; call core::fmt::Formatter::pad_integral::write_prefix
  %_61 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral12write_prefix17hd9b56f569438a88eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %self, i32 %sign.0, i8* noalias readonly align 1 %prefix.sroa.0.0, i16 %prefix.1)
  br i1 %_61, label %bb22, label %bb45

bb40:                                             ; preds = %bb29
  %_110 = sub i16 %_36, %width.1
  %28 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 5
  %29 = load i8, i8* %28, align 1, !range !696
  %30 = icmp eq i8 %29, 3
  %default..i67 = select i1 %30, i8 1, i8 %29
  switch i8 %default..i67, label %bb5.i72 [
    i8 0, label %bb8.i76
    i8 1, label %bb7.i73
    i8 2, label %bb4.i71
    i8 3, label %bb7.i73
  ]

bb4.i71:                                          ; preds = %bb40
  %_12.i68 = lshr i16 %_110, 1
  %_15.i69 = add i16 %_110, 1
  %_14.i70 = lshr i16 %_15.i69, 1
  br label %bb8.i76

bb5.i72:                                          ; preds = %bb40
  unreachable

bb7.i73:                                          ; preds = %bb40, %bb40
  br label %bb8.i76

bb8.i76:                                          ; preds = %bb7.i73, %bb4.i71, %bb40
  %_8.sroa.6.0.i74 = phi i16 [ %_14.i70, %bb4.i71 ], [ 0, %bb7.i73 ], [ %_110, %bb40 ]
  %_8.sroa.0.0.i75 = phi i16 [ %_12.i68, %bb4.i71 ], [ %_110, %bb7.i73 ], [ 0, %bb40 ]
  %31 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 0
  %32 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 1
  %33 = bitcast [3 x i16]** %32 to i1 ({}*, i32) addrspace(1)***
  %34 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 3
  br label %bb10.i78

bb10.i78:                                         ; preds = %bb14.i85, %bb8.i76
  %iter.sroa.0.0.i77 = phi i16 [ 0, %bb8.i76 ], [ %36, %bb14.i85 ]
  %35 = icmp ult i16 %iter.sroa.0.0.i77, %_8.sroa.0.0.i75
  br i1 %35, label %bb14.i85, label %bb75

bb14.i85:                                         ; preds = %bb10.i78
  %36 = add nuw i16 %iter.sroa.0.0.i77, 1
  %_30.0.i81 = load {}*, {}** %31, align 1, !nonnull !568
  %_30.112.i82 = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %33, align 1, !nonnull !568
  %_31.i83 = load i32, i32* %34, align 1, !range !690
  %37 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_30.112.i82, i16 4
  %38 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %37, align 1, !invariant.load !568, !nonnull !568
  %_29.i84 = tail call zeroext addrspace(1) i1 %38({}* nonnull align 1 %_30.0.i81, i32 %_31.i83)
  br i1 %_29.i84, label %bb22, label %bb10.i78

bb45:                                             ; preds = %bb39
  %_74 = sub i16 %_36, %width.1
  %39 = load i8, i8* %_58, align 1, !range !696
  %40 = icmp eq i8 %39, 3
  %default..i = select i1 %40, i8 1, i8 %39
  switch i8 %default..i, label %bb5.i [
    i8 0, label %bb8.i
    i8 1, label %bb7.i65
    i8 2, label %bb4.i
    i8 3, label %bb7.i65
  ]

bb4.i:                                            ; preds = %bb45
  %_12.i = lshr i16 %_74, 1
  %_15.i64 = add i16 %_74, 1
  %_14.i = lshr i16 %_15.i64, 1
  br label %bb8.i

bb5.i:                                            ; preds = %bb45
  unreachable

bb7.i65:                                          ; preds = %bb45, %bb45
  br label %bb8.i

bb8.i:                                            ; preds = %bb7.i65, %bb4.i, %bb45
  %_8.sroa.6.0.i = phi i16 [ %_14.i, %bb4.i ], [ 0, %bb7.i65 ], [ %_74, %bb45 ]
  %_8.sroa.0.0.i = phi i16 [ %_12.i, %bb4.i ], [ %_74, %bb7.i65 ], [ 0, %bb45 ]
  %41 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 0
  %42 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 1
  %43 = bitcast [3 x i16]** %42 to i1 ({}*, i32) addrspace(1)***
  br label %bb10.i

bb10.i:                                           ; preds = %bb14.i, %bb8.i
  %iter.sroa.0.0.i66 = phi i16 [ 0, %bb8.i ], [ %45, %bb14.i ]
  %44 = icmp ult i16 %iter.sroa.0.0.i66, %_8.sroa.0.0.i
  br i1 %44, label %bb14.i, label %bb53

bb14.i:                                           ; preds = %bb10.i
  %45 = add nuw i16 %iter.sroa.0.0.i66, 1
  %_30.0.i = load {}*, {}** %41, align 1, !nonnull !568
  %_30.112.i = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %43, align 1, !nonnull !568
  %_31.i = load i32, i32* %_55, align 1, !range !690
  %46 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_30.112.i, i16 4
  %47 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %46, align 1, !invariant.load !568, !nonnull !568
  %_29.i = tail call zeroext addrspace(1) i1 %47({}* nonnull align 1 %_30.0.i, i32 %_31.i)
  br i1 %_29.i, label %bb22, label %bb10.i

bb53:                                             ; preds = %bb10.i
  %_38.i = load i32, i32* %_55, align 1, !range !690
  %_85.0 = load {}*, {}** %41, align 1, !nonnull !568
  %48 = bitcast [3 x i16]** %42 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_85.152 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %48, align 1, !nonnull !568
  %49 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_85.152, i16 3
  %50 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %49, align 1, !invariant.load !568, !nonnull !568
  %_84 = tail call zeroext addrspace(1) i1 %50({}* nonnull align 1 %_85.0, [0 x i8]* noalias nonnull readonly align 1 %buf.0, i16 %buf.1)
  br i1 %_84, label %bb22, label %bb61

bb61:                                             ; preds = %bb53
  %_96.0 = load {}*, {}** %41, align 1, !nonnull !568
  %_96.1 = load [3 x i16]*, [3 x i16]** %42, align 1, !nonnull !568
  %51 = getelementptr inbounds [3 x i16], [3 x i16]* %_96.1, i16 0, i16 4
  %52 = bitcast i16* %51 to i1 ({}*, i32) addrspace(1)**
  br label %bb2.i59

bb2.i59:                                          ; preds = %bb6.i61, %bb61
  %iter.sroa.0.0.i58 = phi i16 [ 0, %bb61 ], [ %54, %bb6.i61 ]
  %53 = icmp ult i16 %iter.sroa.0.0.i58, %_8.sroa.6.0.i
  br i1 %53, label %bb6.i61, label %bb68

bb6.i61:                                          ; preds = %bb2.i59
  %54 = add nuw i16 %iter.sroa.0.0.i58, 1
  %55 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %52, align 1, !invariant.load !568, !alias.scope !1159, !nonnull !568
  %_15.i60 = tail call zeroext addrspace(1) i1 %55({}* nonnull align 1 %_96.0, i32 %_38.i), !noalias !1159
  br i1 %_15.i60, label %bb22, label %bb2.i59

bb68:                                             ; preds = %bb2.i59
  store i32 %x.val.i.i.i88, i32* %_55, align 1
  store i8 %x.val.i.i.i, i8* %_58, align 1
  br label %bb22

bb75:                                             ; preds = %bb10.i78
  %_38.i79 = load i32, i32* %34, align 1, !range !690
; call core::fmt::Formatter::pad_integral::write_prefix
  %_120 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral12write_prefix17hd9b56f569438a88eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %self, i32 %sign.0, i8* noalias readonly align 1 %prefix.sroa.0.0, i16 %prefix.1)
  br i1 %_120, label %bb22, label %bb83

bb83:                                             ; preds = %bb75
  %_131.0 = load {}*, {}** %31, align 1, !nonnull !568
  %56 = bitcast [3 x i16]** %32 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_131.151 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %56, align 1, !nonnull !568
  %57 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_131.151, i16 3
  %58 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %57, align 1, !invariant.load !568, !nonnull !568
  %_130 = tail call zeroext addrspace(1) i1 %58({}* nonnull align 1 %_131.0, [0 x i8]* noalias nonnull readonly align 1 %buf.0, i16 %buf.1)
  br i1 %_130, label %bb22, label %bb90

bb90:                                             ; preds = %bb83
  %_140.0 = load {}*, {}** %31, align 1, !nonnull !568
  %_140.1 = load [3 x i16]*, [3 x i16]** %32, align 1, !nonnull !568
  %59 = getelementptr inbounds [3 x i16], [3 x i16]* %_140.1, i16 0, i16 4
  %60 = bitcast i16* %59 to i1 ({}*, i32) addrspace(1)**
  br label %bb2.i

bb2.i:                                            ; preds = %bb6.i, %bb90
  %iter.sroa.0.0.i = phi i16 [ 0, %bb90 ], [ %62, %bb6.i ]
  %61 = icmp ult i16 %iter.sroa.0.0.i, %_8.sroa.6.0.i74
  br i1 %61, label %bb6.i, label %bb22

bb6.i:                                            ; preds = %bb2.i
  %62 = add nuw i16 %iter.sroa.0.0.i, 1
  %63 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %60, align 1, !invariant.load !568, !alias.scope !1162, !nonnull !568
  %_15.i = tail call zeroext addrspace(1) i1 %63({}* nonnull align 1 %_140.0, i32 %_38.i79), !noalias !1162
  br i1 %_15.i, label %bb22, label %bb2.i
}

; core::fmt::Formatter::pad_integral::write_prefix
; Function Attrs: noinline uwtable
define internal fastcc zeroext i1 @_ZN4core3fmt9Formatter12pad_integral12write_prefix17hd9b56f569438a88eE(%"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f, i32 %0, i8* noalias readonly align 1 %1, i16 %2) unnamed_addr addrspace(1) #11 {
start:
  %3 = icmp eq i32 %0, 1114112
  br i1 %3, label %bb11, label %bb2

bb2:                                              ; preds = %start
  %4 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_8.0 = load {}*, {}** %4, align 1, !nonnull !568
  %5 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %6 = bitcast [3 x i16]** %5 to i1 ({}*, i32) addrspace(1)***
  %_8.14 = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %6, align 1, !nonnull !568
  %7 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_8.14, i16 4
  %8 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %7, align 1, !invariant.load !568, !nonnull !568
  %_7 = tail call zeroext addrspace(1) i1 %8({}* nonnull align 1 %_8.0, i32 %0)
  br i1 %_7, label %bb8, label %bb11

bb8:                                              ; preds = %bb2, %bb11, %bb13
  %.0 = phi i1 [ %16, %bb13 ], [ false, %bb11 ], [ true, %bb2 ]
  ret i1 %.0

bb11:                                             ; preds = %bb2, %start
  %9 = icmp eq i8* %1, null
  br i1 %9, label %bb8, label %bb13

bb13:                                             ; preds = %bb11
  %10 = bitcast i8* %1 to [0 x i8]*
  %11 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_17.0 = load {}*, {}** %11, align 1, !nonnull !568
  %12 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %13 = bitcast [3 x i16]** %12 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_17.13 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %13, align 1, !nonnull !568
  %14 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_17.13, i16 3
  %15 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %14, align 1, !invariant.load !568, !nonnull !568
  %16 = tail call zeroext addrspace(1) i1 %15({}* nonnull align 1 %_17.0, [0 x i8]* noalias nonnull readonly align 1 %10, i16 %2)
  br label %bb8
}

; core::fmt::Formatter::pad
; Function Attrs: uwtable
define zeroext i1 @_ZN4core3fmt9Formatter3pad17h307fb261f2dc8a5eE(%"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %self, [0 x i8]* noalias nonnull readonly align 1 %0, i16 %1) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_5.idx = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 7, i32 0
  %_5.idx.val = load i8, i8* %_5.idx, align 1
  %2 = icmp eq i8 %_5.idx.val, 0
  %_7.idx = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 9, i32 0
  %_7.idx.val = load i8, i8* %_7.idx, align 1
  %3 = icmp eq i8 %_7.idx.val, 0
  br i1 %2, label %bb3, label %bb7.critedge

bb3:                                              ; preds = %start
  br i1 %3, label %bb8, label %bb12

bb7.critedge:                                     ; preds = %start
  br i1 %3, label %bb20, label %bb12

bb8:                                              ; preds = %bb3
  %4 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 0
  %_8.0 = load {}*, {}** %4, align 1, !nonnull !568
  %5 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 1
  %6 = bitcast [3 x i16]** %5 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_8.135 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %6, align 1, !nonnull !568
  %7 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_8.135, i16 3
  %8 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %7, align 1, !invariant.load !568, !nonnull !568
  %9 = tail call zeroext addrspace(1) i1 %8({}* nonnull align 1 %_8.0, [0 x i8]* noalias nonnull readonly align 1 %0, i16 %1)
  br label %bb9

bb9:                                              ; preds = %bb14.i, %bb6.i, %bb2.i, %bb34, %bb27, %bb22, %bb8
  %.0 = phi i1 [ %9, %bb8 ], [ %42, %bb22 ], [ %56, %bb27 ], [ true, %bb34 ], [ true, %bb6.i ], [ false, %bb2.i ], [ true, %bb14.i ]
  ret i1 %.0

bb12:                                             ; preds = %bb3, %bb7.critedge
  %10 = getelementptr [0 x i8], [0 x i8]* %0, i16 0, i16 0
  %11 = getelementptr inbounds [0 x i8], [0 x i8]* %0, i16 0, i16 %1
  %_13.i.i.i.i14.i = icmp eq i16 %1, 0
  br i1 %_13.i.i.i.i14.i, label %bb20, label %bb3.i.i.i.i.preheader

bb3.i.i.i.i.preheader:                            ; preds = %bb12
  %12 = ptrtoint [0 x i8]* %0 to i16
  %13 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 9, i32 1
  %max = load i16, i16* %13, align 1
  br label %bb3.i.i.i.i

bb1.i:                                            ; preds = %bb4.i38
  %_11.i.i = sub i16 %_15.sroa.0.0, %start15.i.i16.i
  %14 = add i16 %_11.i.i, %start15.i.i.i
  %15 = add i16 %n.015.i, -1
  %_16.i.i.i.cast.i.i = inttoptr i16 %start15.i.i.i to i8*
  %_13.i.i.i.i.i = icmp eq i8* %11, %_16.i.i.i.cast.i.i
  br i1 %_13.i.i.i.i.i, label %bb20, label %bb3.i.i.i.i

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i.i.preheader, %bb1.i
  %_15.sroa.0.0 = phi i16 [ %14, %bb1.i ], [ 0, %bb3.i.i.i.i.preheader ]
  %_16.i.i.i.cast.i18.i = phi i8* [ %_16.i.i.i.cast.i.i, %bb1.i ], [ %10, %bb3.i.i.i.i.preheader ]
  %start15.i.i16.i = phi i16 [ %start15.i.i.i, %bb1.i ], [ %12, %bb3.i.i.i.i.preheader ]
  %n.015.i = phi i16 [ %15, %bb1.i ], [ %max, %bb3.i.i.i.i.preheader ]
  %16 = getelementptr inbounds i8, i8* %_16.i.i.i.cast.i18.i, i16 1
  %x.i.i.i.i = load i8, i8* %_16.i.i.i.cast.i18.i, align 1
  %_12.i.i.i.i = icmp sgt i8 %x.i.i.i.i, -1
  %17 = ptrtoint i8* %16 to i16
  br i1 %_12.i.i.i.i, label %bb11.i.i.i.i, label %bb10.i.i.i.i

bb10.i.i.i.i:                                     ; preds = %bb3.i.i.i.i
  %_3.i37.i.i.i.i = and i8 %x.i.i.i.i, 31
  %18 = zext i8 %_3.i37.i.i.i.i to i32
  %_13.i33.i.i.i.i = icmp eq i8* %16, %11
  br i1 %_13.i33.i.i.i.i, label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i, label %bb3.i28.i.i.i.i

bb3.i28.i.i.i.i:                                  ; preds = %bb10.i.i.i.i
  %19 = getelementptr inbounds i8, i8* %_16.i.i.i.cast.i18.i, i16 2
  %byte.i27.i.i.i.i = load i8, i8* %16, align 1, !alias.scope !1165
  %phitmp.i.i.i.i = and i8 %byte.i27.i.i.i.i, 63
  %phitmp42.i.i.i.i = zext i8 %phitmp.i.i.i.i to i32
  %20 = ptrtoint i8* %19 to i16
  br label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i

_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i: ; preds = %bb3.i28.i.i.i.i, %bb10.i.i.i.i
  %start15.i.i27.i = phi i16 [ %20, %bb3.i28.i.i.i.i ], [ %17, %bb10.i.i.i.i ]
  %_16.i19.i.i.i.i = phi i8* [ %19, %bb3.i28.i.i.i.i ], [ %11, %bb10.i.i.i.i ]
  %.0.i29.i.i.i.i = phi i32 [ %phitmp42.i.i.i.i, %bb3.i28.i.i.i.i ], [ 0, %bb10.i.i.i.i ]
  %_3.i24.i.i.i.i = shl nuw nsw i32 %18, 6
  %21 = or i32 %.0.i29.i.i.i.i, %_3.i24.i.i.i.i
  %_24.i.i.i.i = icmp ugt i8 %x.i.i.i.i, -33
  br i1 %_24.i.i.i.i, label %bb17.i.i.i.i, label %bb4.i38

bb11.i.i.i.i:                                     ; preds = %bb3.i.i.i.i
  %_14.i.i.i.i = zext i8 %x.i.i.i.i to i32
  br label %bb4.i38

bb17.i.i.i.i:                                     ; preds = %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i
  %_13.i20.i.i.i.i = icmp eq i8* %_16.i19.i.i.i.i, %11
  br i1 %_13.i20.i.i.i.i, label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i, label %bb3.i15.i.i.i.i

bb3.i15.i.i.i.i:                                  ; preds = %bb17.i.i.i.i
  %22 = getelementptr inbounds i8, i8* %_16.i19.i.i.i.i, i16 1
  %byte.i14.i.i.i.i = load i8, i8* %_16.i19.i.i.i.i, align 1, !alias.scope !1168
  %phitmp43.i.i.i.i = and i8 %byte.i14.i.i.i.i, 63
  %phitmp44.i.i.i.i = zext i8 %phitmp43.i.i.i.i to i32
  %23 = ptrtoint i8* %22 to i16
  br label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i

_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i: ; preds = %bb3.i15.i.i.i.i, %bb17.i.i.i.i
  %start15.i.i26.i = phi i16 [ %23, %bb3.i15.i.i.i.i ], [ %start15.i.i27.i, %bb17.i.i.i.i ]
  %_16.i6.i.i.i.i = phi i8* [ %22, %bb3.i15.i.i.i.i ], [ %11, %bb17.i.i.i.i ]
  %.0.i16.i.i.i.i = phi i32 [ %phitmp44.i.i.i.i, %bb3.i15.i.i.i.i ], [ 0, %bb17.i.i.i.i ]
  %_3.i11.i.i.i.i = shl nuw nsw i32 %.0.i29.i.i.i.i, 6
  %24 = or i32 %.0.i16.i.i.i.i, %_3.i11.i.i.i.i
  %_34.i.i.i.i = shl nuw nsw i32 %18, 12
  %25 = or i32 %24, %_34.i.i.i.i
  %_37.i.i.i.i = icmp ugt i8 %x.i.i.i.i, -17
  br i1 %_37.i.i.i.i, label %bb22.i.i.i.i, label %bb4.i38

bb22.i.i.i.i:                                     ; preds = %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i
  %_13.i7.i.i.i.i = icmp eq i8* %_16.i6.i.i.i.i, %11
  br i1 %_13.i7.i.i.i.i, label %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i.i", label %bb3.i.i.i.i.i

bb3.i.i.i.i.i:                                    ; preds = %bb22.i.i.i.i
  %26 = getelementptr inbounds i8, i8* %_16.i6.i.i.i.i, i16 1
  %byte.i.i.i.i.i = load i8, i8* %_16.i6.i.i.i.i, align 1, !alias.scope !1171
  %phitmp45.i.i.i.i = and i8 %byte.i.i.i.i.i, 63
  %phitmp46.i.i.i.i = zext i8 %phitmp45.i.i.i.i to i32
  %27 = ptrtoint i8* %26 to i16
  br label %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i.i"

"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i.i": ; preds = %bb3.i.i.i.i.i, %bb22.i.i.i.i
  %start15.i.i25.i = phi i16 [ %27, %bb3.i.i.i.i.i ], [ %start15.i.i26.i, %bb22.i.i.i.i ]
  %.0.i4.i.i.i.i = phi i32 [ %phitmp46.i.i.i.i, %bb3.i.i.i.i.i ], [ 0, %bb22.i.i.i.i ]
  %_43.i.i.i.i = shl nuw nsw i32 %18, 18
  %_42.i.i.i.i = and i32 %_43.i.i.i.i, 1835008
  %_3.i.i.i.i.i = shl nuw nsw i32 %24, 6
  %28 = or i32 %_3.i.i.i.i.i, %_42.i.i.i.i
  %29 = or i32 %28, %.0.i4.i.i.i.i
  %30 = icmp eq i32 %29, 1114112
  br i1 %30, label %bb20, label %bb4.i38

bb4.i38:                                          ; preds = %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i.i", %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i, %bb11.i.i.i.i, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i
  %start15.i.i.i = phi i16 [ %start15.i.i25.i, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i.i" ], [ %start15.i.i27.i, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i ], [ %start15.i.i26.i, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i ], [ %17, %bb11.i.i.i.i ]
  %.sroa.0.0.i.i8.i.i = phi i32 [ %29, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i.i" ], [ %21, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i ], [ %25, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i ], [ %_14.i.i.i.i, %bb11.i.i.i.i ]
  %_7.i = icmp eq i16 %n.015.i, 0
  br i1 %_7.i, label %_ZN4core4iter6traits8iterator8Iterator3nth17h773d203eb6eda3acE.exit, label %bb1.i

_ZN4core4iter6traits8iterator8Iterator3nth17h773d203eb6eda3acE.exit: ; preds = %bb4.i38
  %31 = icmp eq i32 %.sroa.0.0.i.i8.i.i, 1114112
  br i1 %31, label %bb20, label %bb16

bb16:                                             ; preds = %_ZN4core4iter6traits8iterator8Iterator3nth17h773d203eb6eda3acE.exit
  %_4.i.i.i = icmp eq i16 %_15.sroa.0.0, 0
  %_6.i.i.i = icmp eq i16 %_15.sroa.0.0, %1
  %or.cond.i.i.i = or i1 %_4.i.i.i, %_6.i.i.i
  br i1 %or.cond.i.i.i, label %bb3.i.i, label %bb6.i.i.i

bb6.i.i.i:                                        ; preds = %bb16
  %_3.i.i.i.i.i42 = icmp ult i16 %_15.sroa.0.0, %1
  br i1 %_3.i.i.i.i.i42, label %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i", label %"_ZN4core3str21_$LT$impl$u20$str$GT$3get17h9d351c904fa4aa9dE.exit"

"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i": ; preds = %bb6.i.i.i
  %32 = getelementptr inbounds [0 x i8], [0 x i8]* %0, i16 0, i16 %_15.sroa.0.0
  %b.i.i.i = load i8, i8* %32, align 1, !alias.scope !1174
  %33 = icmp sgt i8 %b.i.i.i, -65
  br i1 %33, label %bb3.i.i, label %"_ZN4core3str21_$LT$impl$u20$str$GT$3get17h9d351c904fa4aa9dE.exit"

bb3.i.i:                                          ; preds = %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i", %bb16
  br label %"_ZN4core3str21_$LT$impl$u20$str$GT$3get17h9d351c904fa4aa9dE.exit"

"_ZN4core3str21_$LT$impl$u20$str$GT$3get17h9d351c904fa4aa9dE.exit": ; preds = %bb6.i.i.i, %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i", %bb3.i.i
  %.sroa.0.0.i.i = phi i8* [ %10, %bb3.i.i ], [ null, %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i" ], [ null, %bb6.i.i.i ]
  %34 = icmp eq i8* %.sroa.0.0.i.i, null
  %35 = bitcast i8* %.sroa.0.0.i.i to [0 x i8]*
  %.sroa.0.0.i54 = select i1 %34, [0 x i8]* %0, [0 x i8]* %35
  %.sroa.3.0.i = select i1 %34, i16 %1, i16 %_15.sroa.0.0
  br label %bb20

bb20:                                             ; preds = %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i.i", %bb1.i, %bb12, %"_ZN4core3str21_$LT$impl$u20$str$GT$3get17h9d351c904fa4aa9dE.exit", %_ZN4core4iter6traits8iterator8Iterator3nth17h773d203eb6eda3acE.exit, %bb7.critedge
  %s1.sroa.0.1 = phi [0 x i8]* [ %0, %bb7.critedge ], [ %.sroa.0.0.i54, %"_ZN4core3str21_$LT$impl$u20$str$GT$3get17h9d351c904fa4aa9dE.exit" ], [ %0, %_ZN4core4iter6traits8iterator8Iterator3nth17h773d203eb6eda3acE.exit ], [ %0, %bb12 ], [ %0, %bb1.i ], [ %0, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i.i" ]
  %s1.sroa.11.1 = phi i16 [ %1, %bb7.critedge ], [ %.sroa.3.0.i, %"_ZN4core3str21_$LT$impl$u20$str$GT$3get17h9d351c904fa4aa9dE.exit" ], [ %1, %_ZN4core4iter6traits8iterator8Iterator3nth17h773d203eb6eda3acE.exit ], [ 0, %bb12 ], [ %1, %bb1.i ], [ %1, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i.i" ]
  %switch = icmp eq i8 %_5.idx.val, 1
  br i1 %switch, label %bb24, label %bb22

bb22:                                             ; preds = %bb20
  %36 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 0
  %_29.0 = load {}*, {}** %36, align 1, !nonnull !568
  %37 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 1
  %38 = bitcast [3 x i16]** %37 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_29.134 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %38, align 1, !nonnull !568
  %39 = icmp ne [0 x i8]* %s1.sroa.0.1, null
  tail call addrspace(1) void @llvm.assume(i1 %39)
  %40 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_29.134, i16 3
  %41 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %40, align 1, !invariant.load !568, !nonnull !568
  %42 = tail call zeroext addrspace(1) i1 %41({}* nonnull align 1 %_29.0, [0 x i8]* noalias nonnull readonly align 1 %s1.sroa.0.1, i16 %s1.sroa.11.1)
  br label %bb9

bb24:                                             ; preds = %bb20
  %43 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 7, i32 1
  %44 = icmp ne [0 x i8]* %s1.sroa.0.1, null
  tail call addrspace(1) void @llvm.assume(i1 %44)
  %45 = getelementptr [0 x i8], [0 x i8]* %s1.sroa.0.1, i16 0, i16 0
  %46 = getelementptr inbounds [0 x i8], [0 x i8]* %s1.sroa.0.1, i16 0, i16 %s1.sroa.11.1
  %_13.i9.i43 = icmp eq i16 %s1.sroa.11.1, 0
  br i1 %_13.i9.i43, label %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$5count17he93c42af0f84d0e8E.exit53", label %bb7.i52

bb7.i52:                                          ; preds = %bb24, %bb7.i52
  %cont_bytes.011.i46 = phi i16 [ %49, %bb7.i52 ], [ 0, %bb24 ]
  %iter.sroa.0.010.i47 = phi i8* [ %47, %bb7.i52 ], [ %45, %bb24 ]
  %47 = getelementptr inbounds i8, i8* %iter.sroa.0.010.i47, i16 1
  %byte.i48 = load i8, i8* %iter.sroa.0.010.i47, align 1
  %_2.i.i49 = and i8 %byte.i48, -64
  %48 = icmp eq i8 %_2.i.i49, -128
  %_16.i50 = zext i1 %48 to i16
  %49 = add i16 %cont_bytes.011.i46, %_16.i50
  %_13.i.i51 = icmp eq i8* %47, %46
  br i1 %_13.i.i51, label %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$5count17he93c42af0f84d0e8E.exit53", label %bb7.i52

"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$5count17he93c42af0f84d0e8E.exit53": ; preds = %bb7.i52, %bb24
  %cont_bytes.0.lcssa.i44 = phi i16 [ 0, %bb24 ], [ %49, %bb7.i52 ]
  %50 = sub i16 %s1.sroa.11.1, %cont_bytes.0.lcssa.i44
  %_37 = load i16, i16* %43, align 1
  %_33 = icmp ult i16 %50, %_37
  br i1 %_33, label %bb28, label %bb27

bb27:                                             ; preds = %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$5count17he93c42af0f84d0e8E.exit53"
  %51 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 0
  %_38.0 = load {}*, {}** %51, align 1, !nonnull !568
  %52 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 1
  %53 = bitcast [3 x i16]** %52 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_38.133 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %53, align 1, !nonnull !568
  %54 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_38.133, i16 3
  %55 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %54, align 1, !invariant.load !568, !nonnull !568
  %56 = tail call zeroext addrspace(1) i1 %55({}* nonnull align 1 %_38.0, [0 x i8]* noalias nonnull readonly align 1 %s1.sroa.0.1, i16 %s1.sroa.11.1)
  br label %bb9

bb28:                                             ; preds = %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$5count17he93c42af0f84d0e8E.exit53"
  br i1 %_13.i9.i43, label %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$5count17he93c42af0f84d0e8E.exit", label %bb7.i41

bb7.i41:                                          ; preds = %bb28, %bb7.i41
  %cont_bytes.011.i = phi i16 [ %59, %bb7.i41 ], [ 0, %bb28 ]
  %iter.sroa.0.010.i = phi i8* [ %57, %bb7.i41 ], [ %45, %bb28 ]
  %57 = getelementptr inbounds i8, i8* %iter.sroa.0.010.i, i16 1
  %byte.i = load i8, i8* %iter.sroa.0.010.i, align 1
  %_2.i.i = and i8 %byte.i, -64
  %58 = icmp eq i8 %_2.i.i, -128
  %_16.i = zext i1 %58 to i16
  %59 = add i16 %cont_bytes.011.i, %_16.i
  %_13.i.i = icmp eq i8* %57, %46
  br i1 %_13.i.i, label %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$5count17he93c42af0f84d0e8E.exit", label %bb7.i41

"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$5count17he93c42af0f84d0e8E.exit": ; preds = %bb7.i41, %bb28
  %cont_bytes.0.lcssa.i = phi i16 [ 0, %bb28 ], [ %59, %bb7.i41 ]
  %60 = sub i16 %cont_bytes.0.lcssa.i, %s1.sroa.11.1
  %_46 = add i16 %60, %_37
  %61 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 5
  %62 = load i8, i8* %61, align 1, !range !696
  %63 = icmp eq i8 %62, 3
  %default..i = select i1 %63, i8 0, i8 %62
  switch i8 %default..i, label %bb5.i [
    i8 0, label %bb8.i
    i8 1, label %bb7.i
    i8 2, label %bb4.i
    i8 3, label %bb7.i
  ]

bb4.i:                                            ; preds = %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$5count17he93c42af0f84d0e8E.exit"
  %_12.i = lshr i16 %_46, 1
  %_15.i36 = add i16 %_46, 1
  %_14.i = lshr i16 %_15.i36, 1
  br label %bb8.i

bb5.i:                                            ; preds = %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$5count17he93c42af0f84d0e8E.exit"
  unreachable

bb7.i:                                            ; preds = %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$5count17he93c42af0f84d0e8E.exit", %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$5count17he93c42af0f84d0e8E.exit"
  br label %bb8.i

bb8.i:                                            ; preds = %bb7.i, %bb4.i, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$5count17he93c42af0f84d0e8E.exit"
  %_8.sroa.6.0.i = phi i16 [ %_14.i, %bb4.i ], [ 0, %bb7.i ], [ %_46, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$5count17he93c42af0f84d0e8E.exit" ]
  %_8.sroa.0.0.i = phi i16 [ %_12.i, %bb4.i ], [ %_46, %bb7.i ], [ 0, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$5count17he93c42af0f84d0e8E.exit" ]
  %64 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 0
  %65 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 1
  %66 = bitcast [3 x i16]** %65 to i1 ({}*, i32) addrspace(1)***
  %67 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 3
  br label %bb10.i

bb10.i:                                           ; preds = %bb14.i, %bb8.i
  %iter.sroa.0.0.i37 = phi i16 [ 0, %bb8.i ], [ %69, %bb14.i ]
  %68 = icmp ult i16 %iter.sroa.0.0.i37, %_8.sroa.0.0.i
  br i1 %68, label %bb14.i, label %bb34

bb14.i:                                           ; preds = %bb10.i
  %69 = add nuw i16 %iter.sroa.0.0.i37, 1
  %_30.0.i = load {}*, {}** %64, align 1, !nonnull !568
  %_30.112.i = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %66, align 1, !nonnull !568
  %_31.i = load i32, i32* %67, align 1, !range !690
  %70 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_30.112.i, i16 4
  %71 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %70, align 1, !invariant.load !568, !nonnull !568
  %_29.i = tail call zeroext addrspace(1) i1 %71({}* nonnull align 1 %_30.0.i, i32 %_31.i)
  br i1 %_29.i, label %bb9, label %bb10.i

bb34:                                             ; preds = %bb10.i
  %_38.i = load i32, i32* %67, align 1, !range !690
  %_59.0 = load {}*, {}** %64, align 1, !nonnull !568
  %72 = bitcast [3 x i16]** %65 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_59.132 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %72, align 1, !nonnull !568
  %73 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_59.132, i16 3
  %74 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %73, align 1, !invariant.load !568, !nonnull !568
  %_58 = tail call zeroext addrspace(1) i1 %74({}* nonnull align 1 %_59.0, [0 x i8]* noalias nonnull readonly align 1 %s1.sroa.0.1, i16 %s1.sroa.11.1)
  br i1 %_58, label %bb9, label %bb42

bb42:                                             ; preds = %bb34
  %_68.0 = load {}*, {}** %64, align 1, !nonnull !568
  %_68.1 = load [3 x i16]*, [3 x i16]** %65, align 1, !nonnull !568
  %75 = getelementptr inbounds [3 x i16], [3 x i16]* %_68.1, i16 0, i16 4
  %76 = bitcast i16* %75 to i1 ({}*, i32) addrspace(1)**
  br label %bb2.i

bb2.i:                                            ; preds = %bb6.i, %bb42
  %iter.sroa.0.0.i = phi i16 [ 0, %bb42 ], [ %78, %bb6.i ]
  %77 = icmp ult i16 %iter.sroa.0.0.i, %_8.sroa.6.0.i
  br i1 %77, label %bb6.i, label %bb9

bb6.i:                                            ; preds = %bb2.i
  %78 = add nuw i16 %iter.sroa.0.0.i, 1
  %79 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %76, align 1, !invariant.load !568, !alias.scope !1181, !nonnull !568
  %_15.i = tail call zeroext addrspace(1) i1 %79({}* nonnull align 1 %_68.0, i32 %_38.i), !noalias !1181
  br i1 %_15.i, label %bb9, label %bb2.i
}

; core::fmt::Formatter::pad_formatted_parts
; Function Attrs: uwtable
define internal fastcc zeroext i1 @_ZN4core3fmt9Formatter19pad_formatted_parts17hd831476560d54163E(%"fmt::Formatter"* nocapture align 1 dereferenceable(19) %self, %"num::flt2dec::Formatted"* noalias nocapture readonly align 1 dereferenceable(8) %formatted) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %formatted1 = alloca %"num::flt2dec::Formatted", align 1
  %0 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 7, i32 0
  %1 = load i8, i8* %0, align 1, !range !87
  %2 = icmp eq i8 %1, 0
  br i1 %2, label %bb1, label %bb2

bb1:                                              ; preds = %start
; call core::fmt::Formatter::write_formatted_parts
  %3 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter21write_formatted_parts17h1d468c0f020f84ddE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %self, %"num::flt2dec::Formatted"* noalias nonnull readonly align 1 dereferenceable(8) %formatted)
  br label %bb12

bb2:                                              ; preds = %start
  %4 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 7, i32 1
  %5 = load i16, i16* %4, align 1
  %6 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted1, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %6)
  %__self_0_0.idx.i = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  %__self_0_0.idx.val.i = load [0 x i8]*, [0 x i8]** %__self_0_0.idx.i, align 1, !alias.scope !1184, !noalias !1187
  %7 = getelementptr %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 1, i32 1
  %__self_0_0.idx1.val.i = load i16, i16* %7, align 1, !alias.scope !1184, !noalias !1187
  %__self_0_1.idx.i = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 0
  %__self_0_1.idx.val.i = load [0 x %"num::flt2dec::Part"]*, [0 x %"num::flt2dec::Part"]** %__self_0_1.idx.i, align 1, !alias.scope !1184, !noalias !1187
  %__self_0_1.idx2.i = getelementptr %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 1
  %__self_0_1.idx2.val.i = load i16, i16* %__self_0_1.idx2.i, align 1, !alias.scope !1184, !noalias !1187
  %8 = bitcast %"num::flt2dec::Formatted"* %formatted1 to [0 x i8]**
  store [0 x i8]* %__self_0_0.idx.val.i, [0 x i8]** %8, align 1, !alias.scope !1187, !noalias !1184
  %9 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted1, i16 0, i32 1, i32 1
  store i16 %__self_0_0.idx1.val.i, i16* %9, align 1, !alias.scope !1187, !noalias !1184
  %10 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted1, i16 0, i32 3, i32 0
  store [0 x %"num::flt2dec::Part"]* %__self_0_1.idx.val.i, [0 x %"num::flt2dec::Part"]** %10, align 1, !alias.scope !1187, !noalias !1184
  %11 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted1, i16 0, i32 3, i32 1
  store i16 %__self_0_1.idx2.val.i, i16* %11, align 1, !alias.scope !1187, !noalias !1184
  %12 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 3
  %old_fill = load i32, i32* %12, align 1, !range !690
  %13 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 5
  %old_align = load i8, i8* %13, align 1, !range !696
  %14 = bitcast %"fmt::Formatter"* %self to i32*
  %_3.i = load i32, i32* %14, align 1, !alias.scope !1189
  %_2.i = and i32 %_3.i, 8
  %15 = icmp eq i32 %_2.i, 0
  br i1 %15, label %bb18, label %bb6

bb6:                                              ; preds = %bb2
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 0
  %_15.0 = load {}*, {}** %16, align 1, !nonnull !568
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 1
  %18 = bitcast [3 x i16]** %17 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_15.113 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_15.113, i16 3
  %20 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %19, align 1, !invariant.load !568, !nonnull !568
  %_14 = tail call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_15.0, [0 x i8]* noalias nonnull readonly align 1 %__self_0_0.idx.val.i, i16 %__self_0_0.idx1.val.i)
  br i1 %_14, label %bb15, label %bb9

bb9:                                              ; preds = %bb6
  store [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), [0 x i8]** %8, align 1
  store i16 0, i16* %9, align 1
  %21 = tail call addrspace(1) i16 @llvm.usub.sat.i16(i16 %5, i16 %__self_0_0.idx1.val.i) #20
  store i32 48, i32* %12, align 1
  store i8 1, i8* %13, align 1
  br label %bb18

bb12:                                             ; preds = %bb39, %bb15, %bb1
  %.0.shrunk = phi i1 [ %ret.0.in, %bb39 ], [ true, %bb15 ], [ %3, %bb1 ]
  ret i1 %.0.shrunk

bb15:                                             ; preds = %bb14.i, %bb25, %bb6
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 8, i8* nonnull %6)
  br label %bb12

bb18:                                             ; preds = %bb2, %bb9
  %_2.1.i = phi i16 [ 0, %bb9 ], [ %__self_0_0.idx1.val.i, %bb2 ]
  %22 = phi i8 [ 1, %bb9 ], [ %old_align, %bb2 ]
  %width.0 = phi i16 [ %21, %bb9 ], [ %5, %bb2 ]
  %23 = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %__self_0_1.idx.val.i, i16 0, i16 %__self_0_1.idx2.val.i, i32 0, i16 0
  %_13.i10.i = icmp eq i16 %__self_0_1.idx2.val.i, 0
  br i1 %_13.i10.i, label %_ZN4core3num7flt2dec9Formatted3len17hc9331884bb628d22E.exit, label %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit.preheader.i"

"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit.preheader.i": ; preds = %bb18
  %24 = getelementptr [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %__self_0_1.idx.val.i, i16 0, i16 0, i32 0, i16 0
  br label %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit.i"

"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit.i": ; preds = %_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit.i, %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit.preheader.i"
  %len.012.i = phi i16 [ %33, %_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit.i ], [ %_2.1.i, %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit.preheader.i" ]
  %iter.sroa.0.011.i = phi i8* [ %25, %_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit.i ], [ %24, %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit.preheader.i" ]
  %25 = getelementptr inbounds i8, i8* %iter.sroa.0.011.i, i16 5
  %26 = load i8, i8* %iter.sroa.0.011.i, align 1, !range !564, !alias.scope !1192, !noalias !1195
  %trunc.i.i = trunc i8 %26 to i2
  switch i2 %trunc.i.i, label %bb2.i.i [
    i2 0, label %bb3.i.i
    i2 1, label %bb4.i.i
    i2 -2, label %bb1.i.i
  ]

bb1.i.i:                                          ; preds = %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit.i"
  %27 = getelementptr inbounds i8, i8* %iter.sroa.0.011.i, i16 3
  %28 = bitcast i8* %27 to i16*
  %buf.1.i.i = load i16, i16* %28, align 1, !alias.scope !1192, !noalias !1195
  br label %_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit.i

bb2.i.i:                                          ; preds = %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit.i"
  unreachable

bb3.i.i:                                          ; preds = %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit.i"
  %29 = getelementptr inbounds i8, i8* %iter.sroa.0.011.i, i16 1
  %30 = bitcast i8* %29 to i16*
  %nzeroes.i.i = load i16, i16* %30, align 1, !alias.scope !1192, !noalias !1195
  br label %_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit.i

bb4.i.i:                                          ; preds = %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit.i"
  %31 = getelementptr inbounds i8, i8* %iter.sroa.0.011.i, i16 1
  %32 = bitcast i8* %31 to i16*
  %v.i.i = load i16, i16* %32, align 1, !alias.scope !1192, !noalias !1195
  %_5.i.i = icmp ult i16 %v.i.i, 1000
  br i1 %_5.i.i, label %bb6.i.i, label %bb5.i.i

bb5.i.i:                                          ; preds = %bb4.i.i
  %_11.i.i = icmp ult i16 %v.i.i, 10000
  %..i.i = select i1 %_11.i.i, i16 4, i16 5
  br label %_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit.i

bb6.i.i:                                          ; preds = %bb4.i.i
  %_7.i.i = icmp ult i16 %v.i.i, 10
  br i1 %_7.i.i, label %_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit.i, label %bb7.i.i

bb7.i.i:                                          ; preds = %bb6.i.i
  %_9.i.i = icmp ult i16 %v.i.i, 100
  %.1.i.i = select i1 %_9.i.i, i16 2, i16 3
  br label %_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit.i

_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit.i: ; preds = %bb7.i.i, %bb6.i.i, %bb5.i.i, %bb3.i.i, %bb1.i.i
  %.0.i.i = phi i16 [ %buf.1.i.i, %bb1.i.i ], [ %nzeroes.i.i, %bb3.i.i ], [ %..i.i, %bb5.i.i ], [ %.1.i.i, %bb7.i.i ], [ 1, %bb6.i.i ]
  %33 = add i16 %.0.i.i, %len.012.i
  %_13.i.i = icmp eq i8* %25, %23
  br i1 %_13.i.i, label %_ZN4core3num7flt2dec9Formatted3len17hc9331884bb628d22E.exit, label %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit.i"

_ZN4core3num7flt2dec9Formatted3len17hc9331884bb628d22E.exit: ; preds = %_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit.i, %bb18
  %len.0.lcssa.i = phi i16 [ %_2.1.i, %bb18 ], [ %33, %_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit.i ]
  %_31 = icmp ugt i16 %width.0, %len.0.lcssa.i
  br i1 %_31, label %bb20, label %bb21

bb20:                                             ; preds = %_ZN4core3num7flt2dec9Formatted3len17hc9331884bb628d22E.exit
  %_41 = sub i16 %width.0, %len.0.lcssa.i
  switch i8 %22, label %bb5.i [
    i8 0, label %bb8.i
    i8 1, label %bb7.i
    i8 2, label %bb4.i
    i8 3, label %bb7.i
  ]

bb4.i:                                            ; preds = %bb20
  %_12.i = lshr i16 %_41, 1
  %_15.i14 = add i16 %_41, 1
  %_14.i = lshr i16 %_15.i14, 1
  br label %bb8.i

bb5.i:                                            ; preds = %bb20
  unreachable

bb7.i:                                            ; preds = %bb20, %bb20
  br label %bb8.i

bb8.i:                                            ; preds = %bb7.i, %bb4.i, %bb20
  %_8.sroa.6.0.i = phi i16 [ %_14.i, %bb4.i ], [ 0, %bb7.i ], [ %_41, %bb20 ]
  %_8.sroa.0.0.i = phi i16 [ %_12.i, %bb4.i ], [ %_41, %bb7.i ], [ 0, %bb20 ]
  %34 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 0
  %35 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 1
  %36 = bitcast [3 x i16]** %35 to i1 ({}*, i32) addrspace(1)***
  br label %bb10.i

bb10.i:                                           ; preds = %bb14.i, %bb8.i
  %iter.sroa.0.0.i15 = phi i16 [ 0, %bb8.i ], [ %38, %bb14.i ]
  %37 = icmp ult i16 %iter.sroa.0.0.i15, %_8.sroa.0.0.i
  br i1 %37, label %bb14.i, label %bb25

bb14.i:                                           ; preds = %bb10.i
  %38 = add nuw i16 %iter.sroa.0.0.i15, 1
  %_30.0.i = load {}*, {}** %34, align 1, !nonnull !568
  %_30.112.i = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %36, align 1, !nonnull !568
  %_31.i = load i32, i32* %12, align 1, !range !690
  %39 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_30.112.i, i16 4
  %40 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %39, align 1, !invariant.load !568, !nonnull !568
  %_29.i = tail call zeroext addrspace(1) i1 %40({}* nonnull align 1 %_30.0.i, i32 %_31.i)
  br i1 %_29.i, label %bb15, label %bb10.i

bb21:                                             ; preds = %_ZN4core3num7flt2dec9Formatted3len17hc9331884bb628d22E.exit
; call core::fmt::Formatter::write_formatted_parts
  %41 = call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter21write_formatted_parts17h1d468c0f020f84ddE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %self, %"num::flt2dec::Formatted"* noalias nonnull readonly align 1 dereferenceable(8) %formatted1)
  br label %bb39

bb25:                                             ; preds = %bb10.i
  %_38.i = load i32, i32* %12, align 1, !range !690
; call core::fmt::Formatter::write_formatted_parts
  %_51 = call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter21write_formatted_parts17h1d468c0f020f84ddE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %self, %"num::flt2dec::Formatted"* noalias nonnull readonly align 1 dereferenceable(8) %formatted1)
  br i1 %_51, label %bb15, label %bb33

bb33:                                             ; preds = %bb25
  %_62.0 = load {}*, {}** %34, align 1, !nonnull !568
  %_62.1 = load [3 x i16]*, [3 x i16]** %35, align 1, !nonnull !568
  %42 = getelementptr inbounds [3 x i16], [3 x i16]* %_62.1, i16 0, i16 4
  %43 = bitcast i16* %42 to i1 ({}*, i32) addrspace(1)**
  br label %bb2.i

bb2.i:                                            ; preds = %bb6.i, %bb33
  %iter.sroa.0.0.i = phi i16 [ 0, %bb33 ], [ %45, %bb6.i ]
  %44 = icmp ult i16 %iter.sroa.0.0.i, %_8.sroa.6.0.i
  br i1 %44, label %bb6.i, label %bb39

bb6.i:                                            ; preds = %bb2.i
  %45 = add nuw i16 %iter.sroa.0.0.i, 1
  %46 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %43, align 1, !invariant.load !568, !alias.scope !1198, !nonnull !568
  %_15.i = tail call zeroext addrspace(1) i1 %46({}* nonnull align 1 %_62.0, i32 %_38.i), !noalias !1198
  br i1 %_15.i, label %bb39, label %bb2.i

bb39:                                             ; preds = %bb6.i, %bb2.i, %bb21
  %ret.0.in = phi i1 [ %41, %bb21 ], [ true, %bb6.i ], [ false, %bb2.i ]
  store i32 %old_fill, i32* %12, align 1
  store i8 %old_align, i8* %13, align 1
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 8, i8* nonnull %6)
  br label %bb12
}

; core::fmt::Formatter::write_formatted_parts
; Function Attrs: uwtable
define internal fastcc zeroext i1 @_ZN4core3fmt9Formatter21write_formatted_parts17h1d468c0f020f84ddE(%"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %self, %"num::flt2dec::Formatted"* noalias nocapture readonly align 1 dereferenceable(8) %formatted) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %s = alloca [5 x i8], align 1
  %0 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 1, i32 1
  %_5.1 = load i16, i16* %0, align 1
  %1 = icmp eq i16 %_5.1, 0
  br i1 %1, label %bb12, label %bb3

bb3:                                              ; preds = %start
  %2 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  %3 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 0
  %_8.0 = load {}*, {}** %3, align 1, !nonnull !568
  %4 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 1
  %5 = bitcast [3 x i16]** %4 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_8.130 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %5, align 1, !nonnull !568
  %_9.0 = load [0 x i8]*, [0 x i8]** %2, align 1, !nonnull !568
  %6 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_8.130, i16 3
  %7 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %6, align 1, !invariant.load !568, !nonnull !568
  %_7 = tail call zeroext addrspace(1) i1 %7({}* nonnull align 1 %_8.0, [0 x i8]* noalias nonnull readonly align 1 %_9.0, i16 %_5.1)
  br i1 %_7, label %bb9, label %bb12

bb9:                                              ; preds = %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17he6b928d46e35b1dfE.exit", %bb19, %bb73, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit", %bb25, %bb12, %bb3
  %.0 = phi i1 [ true, %bb3 ], [ false, %bb12 ], [ true, %bb25 ], [ true, %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17he6b928d46e35b1dfE.exit" ], [ true, %bb19 ], [ false, %bb73 ], [ true, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit" ]
  ret i1 %.0

bb12:                                             ; preds = %bb3, %start
  %8 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 0
  %_16.0 = load [0 x %"num::flt2dec::Part"]*, [0 x %"num::flt2dec::Part"]** %8, align 1, !nonnull !568
  %9 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 1
  %_16.1 = load i16, i16* %9, align 1
  %10 = getelementptr inbounds [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %_16.0, i16 0, i16 %_16.1, i32 0, i16 0
  %_13.i57 = icmp eq i16 %_16.1, 0
  br i1 %_13.i57, label %bb9, label %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit.lr.ph"

"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit.lr.ph": ; preds = %bb12
  %11 = getelementptr [0 x %"num::flt2dec::Part"], [0 x %"num::flt2dec::Part"]* %_16.0, i16 0, i16 0, i32 0, i16 0
  %12 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 0
  %13 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 1
  %14 = getelementptr inbounds [5 x i8], [5 x i8]* %s, i16 0, i16 0
  %_72.045 = bitcast [5 x i8]* %s to [0 x i8]*
  %15 = bitcast [3 x i16]** %13 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  br label %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit"

"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit": ; preds = %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit.lr.ph", %bb73
  %iter.sroa.0.058 = phi i8* [ %11, %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit.lr.ph" ], [ %16, %bb73 ]
  %16 = getelementptr inbounds i8, i8* %iter.sroa.0.058, i16 5
  %17 = load i8, i8* %iter.sroa.0.058, align 1, !range !564
  %trunc = trunc i8 %17 to i2
  switch i2 %trunc, label %bb20 [
    i2 0, label %bb21
    i2 1, label %bb47
    i2 -2, label %bb19
  ]

bb19:                                             ; preds = %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit"
  %18 = getelementptr inbounds i8, i8* %iter.sroa.0.058, i16 1
  %19 = bitcast i8* %18 to [0 x i8]**
  %buf.0 = load [0 x i8]*, [0 x i8]** %19, align 1, !nonnull !568
  %20 = getelementptr inbounds i8, i8* %iter.sroa.0.058, i16 3
  %21 = bitcast i8* %20 to i16*
  %buf.1 = load i16, i16* %21, align 1
  %_108.0 = load {}*, {}** %12, align 1, !nonnull !568
  %_108.1 = load [3 x i16]*, [3 x i16]** %13, align 1, !nonnull !568
  %22 = getelementptr inbounds [3 x i16], [3 x i16]* %_108.1, i16 0, i16 3
  %23 = bitcast i16* %22 to i1 ({}*, [0 x i8]*, i16) addrspace(1)**
  %24 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %23, align 1, !invariant.load !568, !alias.scope !1201, !noalias !1204, !nonnull !568
  %25 = call zeroext addrspace(1) i1 %24({}* nonnull align 1 %_108.0, [0 x i8]* noalias nonnull readonly align 1 %buf.0, i16 %buf.1), !noalias !1201
  br i1 %25, label %bb9, label %bb73

bb20:                                             ; preds = %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit"
  unreachable

bb21:                                             ; preds = %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit"
  %26 = getelementptr inbounds i8, i8* %iter.sroa.0.058, i16 1
  %27 = bitcast i8* %26 to i16*
  %28 = load i16, i16* %27, align 1
  %_2855 = icmp ugt i16 %28, 64
  br i1 %_2855, label %bb25, label %bb24

bb24:                                             ; preds = %bb21
  %_46 = icmp eq i16 %28, 0
  br i1 %_46, label %bb73, label %bb37

bb25:                                             ; preds = %bb21, %bb28
  %nzeroes.056 = phi i16 [ %31, %bb28 ], [ %28, %bb21 ]
  %_35.0 = load {}*, {}** %12, align 1, !nonnull !568
  %_35.129 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %15, align 1, !nonnull !568
  %29 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_35.129, i16 3
  %30 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %29, align 1, !invariant.load !568, !nonnull !568
  %_34 = call zeroext addrspace(1) i1 %30({}* nonnull align 1 %_35.0, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [64 x i8] }>* @alloc18720 to [0 x i8]*), i16 64)
  br i1 %_34, label %bb9, label %bb28

bb28:                                             ; preds = %bb25
  %31 = add i16 %nzeroes.056, -64
  %_28 = icmp ugt i16 %31, 64
  br i1 %_28, label %bb25, label %bb37

bb37:                                             ; preds = %bb28, %bb24
  %nzeroes.0.lcssa66 = phi i16 [ %28, %bb24 ], [ %31, %bb28 ]
  %_50.0 = load {}*, {}** %12, align 1, !nonnull !568
  %_50.128 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %15, align 1, !nonnull !568
  %_6.i.i.i.i = icmp eq i16 %nzeroes.0.lcssa66, 64
  br i1 %_6.i.i.i.i, label %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17he6b928d46e35b1dfE.exit", label %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i"

"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i": ; preds = %bb37
  %32 = getelementptr inbounds [0 x i8], [0 x i8]* bitcast (<{ [64 x i8] }>* @alloc18720 to [0 x i8]*), i16 0, i16 %nzeroes.0.lcssa66
  %b.i.i.i.i = load i8, i8* %32, align 1, !alias.scope !1206
  %33 = icmp sgt i8 %b.i.i.i.i, -65
  br i1 %33, label %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17he6b928d46e35b1dfE.exit", label %bb1.i.i

bb1.i.i:                                          ; preds = %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i"
; call core::str::slice_error_fail
  call addrspace(1) void @_ZN4core3str16slice_error_fail17h31442c6f648259d9E([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [64 x i8] }>* @alloc18720 to [0 x i8]*), i16 64, i16 0, i16 %nzeroes.0.lcssa66, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18840 to %"panic::Location"*)), !noalias !1215
  unreachable

"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17he6b928d46e35b1dfE.exit": ; preds = %bb37, %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i"
  %nzeroes.0.lcssa67 = phi i16 [ 64, %bb37 ], [ %nzeroes.0.lcssa66, %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i" ]
  %34 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_50.128, i16 3
  %35 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %34, align 1, !invariant.load !568, !nonnull !568
  %_49 = call zeroext addrspace(1) i1 %35({}* nonnull align 1 %_50.0, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [64 x i8] }>* @alloc18720 to [0 x i8]*), i16 %nzeroes.0.lcssa67)
  br i1 %_49, label %bb9, label %bb73

bb47:                                             ; preds = %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit"
  %36 = getelementptr inbounds i8, i8* %iter.sroa.0.058, i16 1
  %37 = bitcast i8* %36 to i16*
  %38 = load i16, i16* %37, align 1
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 5, i8* nonnull %14)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(5) %14, i8 0, i16 5, i1 false)
  %39 = load i8, i8* %iter.sroa.0.058, align 1, !range !564, !alias.scope !1222
  %trunc.i = trunc i8 %39 to i2
  switch i2 %trunc.i, label %bb2.i [
    i2 0, label %_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit
    i2 1, label %bb4.i
    i2 -2, label %bb1.i
  ]

bb1.i:                                            ; preds = %bb47
  %40 = getelementptr inbounds i8, i8* %iter.sroa.0.058, i16 3
  %.pre = bitcast i8* %40 to i16*
  br label %_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit

bb2.i:                                            ; preds = %bb47
  unreachable

bb4.i:                                            ; preds = %bb47
  %v.i = load i16, i16* %37, align 1, !alias.scope !1222
  %_5.i = icmp ult i16 %v.i, 1000
  br i1 %_5.i, label %bb6.i, label %bb5.i

bb5.i:                                            ; preds = %bb4.i
  %_11.i = icmp ult i16 %v.i, 10000
  %..i = select i1 %_11.i, i16 4, i16 5
  br label %bb57.preheader

bb6.i:                                            ; preds = %bb4.i
  %_7.i = icmp ult i16 %v.i, 10
  br i1 %_7.i, label %bb57.preheader, label %bb7.i

bb7.i:                                            ; preds = %bb6.i
  %_9.i = icmp ult i16 %v.i, 100
  %.1.i = select i1 %_9.i, i16 2, i16 3
  br label %bb57.preheader

_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit: ; preds = %bb47, %bb1.i
  %.0.i.in.pre-phi = phi i16* [ %.pre, %bb1.i ], [ %37, %bb47 ]
  %.0.i = load i16, i16* %.0.i.in.pre-phi, align 1, !alias.scope !1222
  %_9.i.i.i = icmp ugt i16 %.0.i, 5
  br i1 %_9.i.i.i, label %bb5.i.i.i31, label %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit"

bb5.i.i.i31:                                      ; preds = %_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit
; call core::slice::slice_index_len_fail
  call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.0.i, i16 5, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18714 to %"panic::Location"*))
  unreachable

"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit": ; preds = %_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E.exit
  %_13.i.i52 = icmp eq i16 %.0.i, 0
  br i1 %_13.i.i52, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit", label %bb57.preheader

bb57.preheader:                                   ; preds = %bb5.i, %bb7.i, %bb6.i, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit"
  %.0.i4471 = phi i16 [ %.0.i, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit" ], [ %..i, %bb5.i ], [ %.1.i, %bb7.i ], [ 1, %bb6.i ]
  %41 = getelementptr inbounds [5 x i8], [5 x i8]* %s, i16 0, i16 %.0.i4471
  br label %bb57

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit": ; preds = %bb57, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit"
  %.0.i4472 = phi i16 [ 0, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit" ], [ %.0.i4471, %bb57 ]
  %_91.0 = load {}*, {}** %12, align 1, !nonnull !568
  %_91.1 = load [3 x i16]*, [3 x i16]** %13, align 1, !nonnull !568
  %42 = getelementptr inbounds [3 x i16], [3 x i16]* %_91.1, i16 0, i16 3
  %43 = bitcast i16* %42 to i1 ({}*, [0 x i8]*, i16) addrspace(1)**
  %44 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %43, align 1, !invariant.load !568, !alias.scope !1225, !noalias !1228, !nonnull !568
  %45 = call zeroext addrspace(1) i1 %44({}* nonnull align 1 %_91.0, [0 x i8]* noalias nonnull readonly align 1 %_72.045, i16 %.0.i4472), !noalias !1225
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 5, i8* nonnull %14)
  br i1 %45, label %bb9, label %bb73

bb57:                                             ; preds = %bb57.preheader, %bb57
  %v.054 = phi i16 [ %47, %bb57 ], [ %38, %bb57.preheader ]
  %iter1.sroa.4.053 = phi i8* [ %46, %bb57 ], [ %41, %bb57.preheader ]
  %46 = getelementptr inbounds i8, i8* %iter1.sroa.4.053, i16 -1
  %47 = udiv i16 %v.054, 10
  %48 = mul i16 %47, 10
  %_86.decomposed = sub i16 %v.054, %48
  %_85 = trunc i16 %_86.decomposed to i8
  %49 = or i8 %_85, 48
  store i8 %49, i8* %46, align 1
  %_13.i.i = icmp eq i8* %14, %46
  br i1 %_13.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit", label %bb57

bb73:                                             ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit", %bb19, %bb24, %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17he6b928d46e35b1dfE.exit"
  %_13.i = icmp eq i8* %16, %10
  br i1 %_13.i, label %bb9, label %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hfdea3be31a16906dE.exit"
}

; core::fmt::Formatter::write_str
; Function Attrs: uwtable
define zeroext i1 @_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE(%"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %self, [0 x i8]* noalias nonnull readonly align 1 %data.0, i16 %data.1) unnamed_addr addrspace(1) #2 {
start:
  %0 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 0
  %_3.0 = load {}*, {}** %0, align 1, !nonnull !568
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 1
  %2 = bitcast [3 x i16]** %1 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %2, align 1, !nonnull !568
  %3 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11, i16 3
  %4 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %3, align 1, !invariant.load !568, !nonnull !568
  %5 = tail call zeroext addrspace(1) i1 %4({}* nonnull align 1 %_3.0, [0 x i8]* noalias nonnull readonly align 1 %data.0, i16 %data.1)
  ret i1 %5
}

; core::fmt::Formatter::write_fmt
; Function Attrs: uwtable
define zeroext i1 @_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E(%"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %self, %"fmt::Arguments"* noalias nocapture readonly dereferenceable(12) %fmt) unnamed_addr addrspace(1) #2 {
start:
  %_5 = alloca %"fmt::Arguments", align 1
  %0 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 0
  %_4.0 = load {}*, {}** %0, align 1, !nonnull !568
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 1
  %_4.1 = load [3 x i16]*, [3 x i16]** %1, align 1, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %2)
  %3 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %fmt, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 dereferenceable(12) %2, i8* nonnull align 1 dereferenceable(12) %3, i16 12, i1 false)
; call core::fmt::write
  %4 = call zeroext addrspace(1) i1 @_ZN4core3fmt5write17hf4cd163abe69055cE({}* nonnull align 1 %_4.0, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) %_4.1, %"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_5)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 12, i8* nonnull %2)
  ret i1 %4
}

; core::fmt::Formatter::flags
; Function Attrs: norecurse nounwind readonly uwtable
define i32 @_ZN4core3fmt9Formatter5flags17h97288d036b50757eE(%"fmt::Formatter"* noalias nocapture readonly align 1 dereferenceable(19) %self) unnamed_addr addrspace(1) #5 {
start:
  %0 = bitcast %"fmt::Formatter"* %self to i32*
  %1 = load i32, i32* %0, align 1
  ret i32 %1
}

; core::fmt::Formatter::fill
; Function Attrs: norecurse nounwind readonly uwtable
define i32 @_ZN4core3fmt9Formatter4fill17h6962521751d1e500E(%"fmt::Formatter"* noalias nocapture readonly align 1 dereferenceable(19) %self) unnamed_addr addrspace(1) #5 {
start:
  %0 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 3
  %1 = load i32, i32* %0, align 1, !range !690
  ret i32 %1
}

; core::fmt::Formatter::align
; Function Attrs: norecurse nounwind readonly uwtable
define i8 @_ZN4core3fmt9Formatter5align17h74799e5bbc609da6E(%"fmt::Formatter"* noalias nocapture readonly align 1 dereferenceable(19) %self) unnamed_addr addrspace(1) #5 {
start:
  %0 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 5
  %1 = load i8, i8* %0, align 1, !range !696
  %trunc = trunc i8 %1 to i2
  %switch.tableidx = xor i2 %trunc, -2
  %2 = zext i2 %switch.tableidx to i16
  %switch.gep = getelementptr inbounds [4 x i8], [4 x i8]* @switch.table._ZN4core3fmt9Formatter5align17h74799e5bbc609da6E, i16 0, i16 %2
  %switch.load = load i8, i8* %switch.gep, align 1
  ret i8 %switch.load
}

; core::fmt::Formatter::width
; Function Attrs: norecurse nounwind readonly uwtable
define { i8, i16 } @_ZN4core3fmt9Formatter5width17hff12f1e2451b0985E(%"fmt::Formatter"* noalias nocapture readonly align 1 dereferenceable(19) %self) unnamed_addr addrspace(1) #5 {
start:
  %0 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 7, i32 0
  %1 = load i8, i8* %0, align 1, !range !87
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 7, i32 1
  %3 = load i16, i16* %2, align 1
  %4 = insertvalue { i8, i16 } undef, i8 %1, 0
  %5 = insertvalue { i8, i16 } %4, i16 %3, 1
  ret { i8, i16 } %5
}

; core::fmt::Formatter::precision
; Function Attrs: norecurse nounwind readonly uwtable
define { i8, i16 } @_ZN4core3fmt9Formatter9precision17hc85cb7827872dbe8E(%"fmt::Formatter"* noalias nocapture readonly align 1 dereferenceable(19) %self) unnamed_addr addrspace(1) #5 {
start:
  %0 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 9, i32 0
  %1 = load i8, i8* %0, align 1, !range !87
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 9, i32 1
  %3 = load i16, i16* %2, align 1
  %4 = insertvalue { i8, i16 } undef, i8 %1, 0
  %5 = insertvalue { i8, i16 } %4, i16 %3, 1
  ret { i8, i16 } %5
}

; core::fmt::Formatter::sign_plus
; Function Attrs: norecurse nounwind readonly uwtable
define zeroext i1 @_ZN4core3fmt9Formatter9sign_plus17hea67cd042fb3b4d6E(%"fmt::Formatter"* noalias nocapture readonly align 1 dereferenceable(19) %self) unnamed_addr addrspace(1) #5 {
start:
  %0 = bitcast %"fmt::Formatter"* %self to i32*
  %_3 = load i32, i32* %0, align 1
  %_2 = and i32 %_3, 1
  %1 = icmp ne i32 %_2, 0
  ret i1 %1
}

; core::fmt::Formatter::sign_minus
; Function Attrs: norecurse nounwind readonly uwtable
define zeroext i1 @_ZN4core3fmt9Formatter10sign_minus17h6c36de965d37e68fE(%"fmt::Formatter"* noalias nocapture readonly align 1 dereferenceable(19) %self) unnamed_addr addrspace(1) #5 {
start:
  %0 = bitcast %"fmt::Formatter"* %self to i32*
  %_3 = load i32, i32* %0, align 1
  %_2 = and i32 %_3, 2
  %1 = icmp ne i32 %_2, 0
  ret i1 %1
}

; core::fmt::Formatter::alternate
; Function Attrs: norecurse nounwind readonly uwtable
define zeroext i1 @_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE(%"fmt::Formatter"* noalias nocapture readonly align 1 dereferenceable(19) %self) unnamed_addr addrspace(1) #5 {
start:
  %0 = bitcast %"fmt::Formatter"* %self to i32*
  %_3 = load i32, i32* %0, align 1
  %_2 = and i32 %_3, 4
  %1 = icmp ne i32 %_2, 0
  ret i1 %1
}

; core::fmt::Formatter::sign_aware_zero_pad
; Function Attrs: norecurse nounwind readonly uwtable
define zeroext i1 @_ZN4core3fmt9Formatter19sign_aware_zero_pad17h3698baa2e0a3a973E(%"fmt::Formatter"* noalias nocapture readonly align 1 dereferenceable(19) %self) unnamed_addr addrspace(1) #5 {
start:
  %0 = bitcast %"fmt::Formatter"* %self to i32*
  %_3 = load i32, i32* %0, align 1
  %_2 = and i32 %_3, 8
  %1 = icmp ne i32 %_2, 0
  ret i1 %1
}

; core::fmt::Formatter::debug_lower_hex
; Function Attrs: norecurse nounwind readonly uwtable
define zeroext i1 @_ZN4core3fmt9Formatter15debug_lower_hex17h9cdd4be3848b7ad4E(%"fmt::Formatter"* noalias nocapture readonly align 1 dereferenceable(19) %self) unnamed_addr addrspace(1) #5 {
start:
  %0 = bitcast %"fmt::Formatter"* %self to i32*
  %_3 = load i32, i32* %0, align 1
  %_2 = and i32 %_3, 16
  %1 = icmp ne i32 %_2, 0
  ret i1 %1
}

; core::fmt::Formatter::debug_upper_hex
; Function Attrs: norecurse nounwind readonly uwtable
define zeroext i1 @_ZN4core3fmt9Formatter15debug_upper_hex17h93ed91cec6cde935E(%"fmt::Formatter"* noalias nocapture readonly align 1 dereferenceable(19) %self) unnamed_addr addrspace(1) #5 {
start:
  %0 = bitcast %"fmt::Formatter"* %self to i32*
  %_3 = load i32, i32* %0, align 1
  %_2 = and i32 %_3, 32
  %1 = icmp ne i32 %_2, 0
  ret i1 %1
}

; core::fmt::Formatter::debug_struct
; Function Attrs: uwtable
define void @_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE(%"fmt::builders::DebugStruct"* noalias nocapture sret dereferenceable(4) %0, %"fmt::Formatter"* align 1 dereferenceable(19) %self, [0 x i8]* noalias nonnull readonly align 1 %name.0, i16 %name.1) unnamed_addr addrspace(1) #2 {
start:
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 0
  %_3.0.i.i = load {}*, {}** %1, align 1, !noalias !1230, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !1230, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !1230, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i, [0 x i8]* noalias nonnull readonly align 1 %name.0, i16 %name.1), !noalias !1236
  %7 = bitcast %"fmt::builders::DebugStruct"* %0 to %"fmt::Formatter"**
  store %"fmt::Formatter"* %self, %"fmt::Formatter"** %7, align 1, !alias.scope !1236, !noalias !1237
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %0, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !1236, !noalias !1237
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %0, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !1236, !noalias !1237
  ret void
}

; core::fmt::Formatter::debug_tuple
; Function Attrs: uwtable
define void @_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E(%"fmt::builders::DebugTuple"* noalias nocapture sret dereferenceable(6) %0, %"fmt::Formatter"* align 1 dereferenceable(19) %self, [0 x i8]* noalias nonnull readonly align 1 %name.0, i16 %name.1) unnamed_addr addrspace(1) #2 {
start:
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 0
  %_3.0.i.i = load {}*, {}** %1, align 1, !noalias !1238, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !1238, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !1238, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i, [0 x i8]* noalias nonnull readonly align 1 %name.0, i16 %name.1), !noalias !1244
  %7 = icmp eq i16 %name.1, 0
  %8 = bitcast %"fmt::builders::DebugTuple"* %0 to %"fmt::Formatter"**
  store %"fmt::Formatter"* %self, %"fmt::Formatter"** %8, align 1, !alias.scope !1244, !noalias !1245
  %9 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %0, i16 0, i32 3
  %10 = zext i1 %6 to i8
  store i8 %10, i8* %9, align 1, !alias.scope !1244, !noalias !1245
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %0, i16 0, i32 5
  store i16 0, i16* %11, align 1, !alias.scope !1244, !noalias !1245
  %12 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %0, i16 0, i32 7
  %13 = zext i1 %7 to i8
  store i8 %13, i8* %12, align 1, !alias.scope !1244, !noalias !1245
  ret void
}

; core::fmt::Formatter::debug_list
; Function Attrs: uwtable
define void @_ZN4core3fmt9Formatter10debug_list17h28f90f7304fd6fd5E(%"fmt::builders::DebugList"* noalias nocapture sret dereferenceable(4) %0, %"fmt::Formatter"* align 1 dereferenceable(19) %self) unnamed_addr addrspace(1) #2 {
start:
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 0
  %_3.0.i.i = load {}*, {}** %1, align 1, !noalias !1246, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !1246, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !1246, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18664 to [0 x i8]*), i16 1), !noalias !1251
  %7 = zext i1 %6 to i8
  %_6.sroa.0.0..sroa_cast1.i = bitcast %"fmt::builders::DebugList"* %0 to %"fmt::Formatter"**
  store %"fmt::Formatter"* %self, %"fmt::Formatter"** %_6.sroa.0.0..sroa_cast1.i, align 1, !alias.scope !1251
  %8 = getelementptr inbounds %"fmt::builders::DebugList", %"fmt::builders::DebugList"* %0, i16 0, i32 1, i32 3
  store i8 %7, i8* %8, align 1, !alias.scope !1251
  %9 = getelementptr inbounds %"fmt::builders::DebugList", %"fmt::builders::DebugList"* %0, i16 0, i32 1, i32 5
  store i8 0, i8* %9, align 1, !alias.scope !1251
  ret void
}

; core::fmt::Formatter::debug_set
; Function Attrs: uwtable
define void @_ZN4core3fmt9Formatter9debug_set17hfbc6e11470d73e95E(%"fmt::builders::DebugSet"* noalias nocapture sret dereferenceable(4) %0, %"fmt::Formatter"* align 1 dereferenceable(19) %self) unnamed_addr addrspace(1) #2 {
start:
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 0
  %_3.0.i.i = load {}*, {}** %1, align 1, !noalias !1252, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !1252, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !1252, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18666 to [0 x i8]*), i16 1), !noalias !1257
  %7 = zext i1 %6 to i8
  %_6.sroa.0.0..sroa_cast1.i = bitcast %"fmt::builders::DebugSet"* %0 to %"fmt::Formatter"**
  store %"fmt::Formatter"* %self, %"fmt::Formatter"** %_6.sroa.0.0..sroa_cast1.i, align 1, !alias.scope !1257
  %8 = getelementptr inbounds %"fmt::builders::DebugSet", %"fmt::builders::DebugSet"* %0, i16 0, i32 1, i32 3
  store i8 %7, i8* %8, align 1, !alias.scope !1257
  %9 = getelementptr inbounds %"fmt::builders::DebugSet", %"fmt::builders::DebugSet"* %0, i16 0, i32 1, i32 5
  store i8 0, i8* %9, align 1, !alias.scope !1257
  ret void
}

; core::fmt::Formatter::debug_map
; Function Attrs: uwtable
define void @_ZN4core3fmt9Formatter9debug_map17hf4341ac1c3b5cff0E(%"fmt::builders::DebugMap"* noalias nocapture sret dereferenceable(6) %0, %"fmt::Formatter"* align 1 dereferenceable(19) %self) unnamed_addr addrspace(1) #2 {
start:
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 0
  %_3.0.i.i = load {}*, {}** %1, align 1, !noalias !1258, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !1258, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !1258, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18666 to [0 x i8]*), i16 1), !noalias !1263
  %7 = bitcast %"fmt::builders::DebugMap"* %0 to %"fmt::Formatter"**
  store %"fmt::Formatter"* %self, %"fmt::Formatter"** %7, align 1, !alias.scope !1263
  %8 = getelementptr inbounds %"fmt::builders::DebugMap", %"fmt::builders::DebugMap"* %0, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !1263
  %10 = getelementptr inbounds %"fmt::builders::DebugMap", %"fmt::builders::DebugMap"* %0, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !1263
  %11 = getelementptr inbounds %"fmt::builders::DebugMap", %"fmt::builders::DebugMap"* %0, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !1263
  %12 = getelementptr inbounds %"fmt::builders::DebugMap", %"fmt::builders::DebugMap"* %0, i16 0, i32 9
  store i8 1, i8* %12, align 1, !alias.scope !1263
  ret void
}

; <core::fmt::Formatter as core::fmt::Write>::write_char
; Function Attrs: uwtable
define zeroext i1 @"_ZN57_$LT$core..fmt..Formatter$u20$as$u20$core..fmt..Write$GT$10write_char17hc0c7922dfc91cd59E"(%"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %self, i32 %c) unnamed_addr addrspace(1) #2 {
start:
  %0 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 0
  %_3.0 = load {}*, {}** %0, align 1, !nonnull !568
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %self, i16 0, i32 11, i32 1
  %2 = bitcast [3 x i16]** %1 to i1 ({}*, i32) addrspace(1)***
  %_3.11 = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %2, align 1, !nonnull !568
  %3 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11, i16 4
  %4 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %3, align 1, !invariant.load !568, !nonnull !568
  %5 = tail call zeroext addrspace(1) i1 %4({}* nonnull align 1 %_3.0, i32 %c)
  ret i1 %5
}

; <core::fmt::Error as core::fmt::Display>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN55_$LT$core..fmt..Error$u20$as$u20$core..fmt..Display$GT$3fmt17ha5eb05778980b450E"(%"fmt::Error"* noalias nocapture nonnull readonly align 1 %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
; call core::fmt::Formatter::pad
  %0 = tail call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter3pad17h307fb261f2dc8a5eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [45 x i8] }>* @alloc18723 to [0 x i8]*), i16 45)
  ret i1 %0
}

; <! as core::fmt::Debug>::fmt
; Function Attrs: norecurse noreturn nounwind readnone uwtable
define zeroext i1 @"_ZN42_$LT$$u21$$u20$as$u20$core..fmt..Debug$GT$3fmt17h4ba6093cbc78122dE"({ [0 x i8] }* noalias nocapture nonnull readonly align 1 %self, %"fmt::Formatter"* nocapture readnone align 1 dereferenceable(19) %_2) unnamed_addr addrspace(1) #7 {
start:
  unreachable
}

; <bool as core::fmt::Debug>::fmt
; Function Attrs: inlinehint uwtable
define internal zeroext i1 @"_ZN41_$LT$bool$u20$as$u20$core..fmt..Debug$GT$3fmt17hac99d466b6ddfefdE"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #12 {
start:
  %0 = load i8, i8* %self, align 1, !range !87, !alias.scope !1264
  %_4.i = icmp eq i8 %0, 0
  br i1 %_4.i, label %bb1.split.i, label %bb2.split.i

bb1.split.i:                                      ; preds = %start
; call core::fmt::Formatter::pad
  %1 = tail call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter3pad17h307fb261f2dc8a5eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc18725 to [0 x i8]*), i16 5), !noalias !1264
  br label %"_ZN43_$LT$bool$u20$as$u20$core..fmt..Display$GT$3fmt17h64222129800deacdE.exit"

bb2.split.i:                                      ; preds = %start
; call core::fmt::Formatter::pad
  %2 = tail call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter3pad17h307fb261f2dc8a5eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc18724 to [0 x i8]*), i16 4), !noalias !1264
  br label %"_ZN43_$LT$bool$u20$as$u20$core..fmt..Display$GT$3fmt17h64222129800deacdE.exit"

"_ZN43_$LT$bool$u20$as$u20$core..fmt..Display$GT$3fmt17h64222129800deacdE.exit": ; preds = %bb1.split.i, %bb2.split.i
  %phi.call.i = phi i1 [ %1, %bb1.split.i ], [ %2, %bb2.split.i ]
  ret i1 %phi.call.i
}

; <bool as core::fmt::Display>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN43_$LT$bool$u20$as$u20$core..fmt..Display$GT$3fmt17h64222129800deacdE"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %0 = load i8, i8* %self, align 1, !range !87
  %_4 = icmp eq i8 %0, 0
  br i1 %_4, label %bb1.split, label %bb2.split

bb1.split:                                        ; preds = %start
; call core::fmt::Formatter::pad
  %1 = tail call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter3pad17h307fb261f2dc8a5eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc18725 to [0 x i8]*), i16 5)
  br label %bb3

bb2.split:                                        ; preds = %start
; call core::fmt::Formatter::pad
  %2 = tail call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter3pad17h307fb261f2dc8a5eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc18724 to [0 x i8]*), i16 4)
  br label %bb3

bb3:                                              ; preds = %bb1.split, %bb2.split
  %phi.call = phi i1 [ %1, %bb1.split ], [ %2, %bb2.split ]
  ret i1 %phi.call
}

; <str as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN40_$LT$str$u20$as$u20$core..fmt..Debug$GT$3fmt17h453ad31d24f56a92E"([0 x i8]* noalias nonnull readonly align 1 %self.0, i16 %self.1, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_5.i1.i.i = alloca %"str::traits::{{impl}}::index::{{closure}}.0", align 1
  %end.i.i = alloca i16, align 1
  %start1.i.i = alloca i16, align 1
  %slice.i.i = alloca { [0 x i8]*, i16 }, align 1
  %0 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i = load {}*, {}** %0, align 1, !nonnull !568
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %2 = bitcast [3 x i16]** %1 to i1 ({}*, i32) addrspace(1)***
  %_3.11.i = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %2, align 1, !nonnull !568
  %3 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11.i, i16 4
  %4 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %3, align 1, !invariant.load !568, !nonnull !568
  %5 = tail call zeroext addrspace(1) i1 %4({}* nonnull align 1 %_3.0.i, i32 34)
  br i1 %5, label %bb6, label %bb3

bb3:                                              ; preds = %start
  %6 = getelementptr inbounds [0 x i8], [0 x i8]* %self.0, i16 0, i16 %self.1
  %_13.i.i.i.i157 = icmp eq i16 %self.1, 0
  br i1 %_13.i.i.i.i157, label %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E.exit", label %bb3.i.i.i38.lr.ph

bb3.i.i.i38.lr.ph:                                ; preds = %bb3
  %_16.i.i.i.cast.i156 = getelementptr [0 x i8], [0 x i8]* %self.0, i16 0, i16 0
  %7 = ptrtoint [0 x i8]* %self.0 to i16
  %8 = bitcast { [0 x i8]*, i16 }* %slice.i.i to i8*
  %9 = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %slice.i.i, i16 0, i32 0
  %10 = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %slice.i.i, i16 0, i32 1
  %11 = bitcast i16* %start1.i.i to i8*
  %12 = bitcast i16* %end.i.i to i8*
  %13 = bitcast [3 x i16]** %1 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  br label %bb3.i.i.i38

bb6:                                              ; preds = %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h16d959e9eb68186dE.exit", %bb35, %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E.exit", %start, %bb48
  %.0 = phi i1 [ %74, %bb48 ], [ true, %start ], [ true, %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E.exit" ], [ true, %bb35 ], [ true, %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h16d959e9eb68186dE.exit" ]
  ret i1 %.0

bb3.i.i.i38:                                      ; preds = %bb3.i.i.i38.lr.ph, %bb44
  %_16.i.i.i.cast.i163 = phi i8* [ %_16.i.i.i.cast.i156, %bb3.i.i.i38.lr.ph ], [ %_16.i.i.i.cast.i, %bb44 ]
  %from.0160 = phi i16 [ 0, %bb3.i.i.i38.lr.ph ], [ %from.1, %bb44 ]
  %iter.sroa.6.0159 = phi i16 [ %7, %bb3.i.i.i38.lr.ph ], [ %iter.sroa.6.4, %bb44 ]
  %iter.sroa.0.0158 = phi i16 [ 0, %bb3.i.i.i38.lr.ph ], [ %37, %bb44 ]
  %14 = getelementptr inbounds i8, i8* %_16.i.i.i.cast.i163, i16 1
  %15 = ptrtoint i8* %14 to i16
  %x.i.i.i = load i8, i8* %_16.i.i.i.cast.i163, align 1
  %_12.i.i.i37 = icmp sgt i8 %x.i.i.i, -1
  br i1 %_12.i.i.i37, label %bb11.i.i.i, label %bb10.i.i.i39

bb10.i.i.i39:                                     ; preds = %bb3.i.i.i38
  %_3.i37.i.i.i = and i8 %x.i.i.i, 31
  %16 = zext i8 %_3.i37.i.i.i to i32
  %_13.i33.i.i.i = icmp eq i8* %14, %6
  br i1 %_13.i33.i.i.i, label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i, label %bb3.i28.i.i.i

bb3.i28.i.i.i:                                    ; preds = %bb10.i.i.i39
  %17 = getelementptr inbounds i8, i8* %_16.i.i.i.cast.i163, i16 2
  %18 = ptrtoint i8* %17 to i16
  %byte.i27.i.i.i = load i8, i8* %14, align 1, !alias.scope !1267
  %phitmp.i.i.i = and i8 %byte.i27.i.i.i, 63
  %phitmp42.i.i.i = zext i8 %phitmp.i.i.i to i32
  br label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i

_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i: ; preds = %bb3.i28.i.i.i, %bb10.i.i.i39
  %iter.sroa.6.1 = phi i16 [ %15, %bb10.i.i.i39 ], [ %18, %bb3.i28.i.i.i ]
  %_16.i19.i.i.i = phi i8* [ %6, %bb10.i.i.i39 ], [ %17, %bb3.i28.i.i.i ]
  %.0.i29.i.i.i = phi i32 [ 0, %bb10.i.i.i39 ], [ %phitmp42.i.i.i, %bb3.i28.i.i.i ]
  %_3.i24.i.i.i = shl nuw nsw i32 %16, 6
  %19 = or i32 %.0.i29.i.i.i, %_3.i24.i.i.i
  %_24.i.i.i = icmp ugt i8 %x.i.i.i, -33
  br i1 %_24.i.i.i, label %bb17.i.i.i, label %bb15

bb11.i.i.i:                                       ; preds = %bb3.i.i.i38
  %_14.i.i.i = zext i8 %x.i.i.i to i32
  br label %bb15

bb17.i.i.i:                                       ; preds = %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i
  %_13.i20.i.i.i = icmp eq i8* %_16.i19.i.i.i, %6
  br i1 %_13.i20.i.i.i, label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i, label %bb3.i15.i.i.i

bb3.i15.i.i.i:                                    ; preds = %bb17.i.i.i
  %20 = getelementptr inbounds i8, i8* %_16.i19.i.i.i, i16 1
  %21 = ptrtoint i8* %20 to i16
  %byte.i14.i.i.i = load i8, i8* %_16.i19.i.i.i, align 1, !alias.scope !1270
  %phitmp43.i.i.i = and i8 %byte.i14.i.i.i, 63
  %phitmp44.i.i.i = zext i8 %phitmp43.i.i.i to i32
  br label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i

_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i: ; preds = %bb3.i15.i.i.i, %bb17.i.i.i
  %iter.sroa.6.2 = phi i16 [ %iter.sroa.6.1, %bb17.i.i.i ], [ %21, %bb3.i15.i.i.i ]
  %_16.i6.i.i.i = phi i8* [ %6, %bb17.i.i.i ], [ %20, %bb3.i15.i.i.i ]
  %.0.i16.i.i.i = phi i32 [ 0, %bb17.i.i.i ], [ %phitmp44.i.i.i, %bb3.i15.i.i.i ]
  %_3.i11.i.i.i = shl nuw nsw i32 %.0.i29.i.i.i, 6
  %22 = or i32 %.0.i16.i.i.i, %_3.i11.i.i.i
  %_34.i.i.i = shl nuw nsw i32 %16, 12
  %23 = or i32 %22, %_34.i.i.i
  %_37.i.i.i = icmp ugt i8 %x.i.i.i, -17
  br i1 %_37.i.i.i, label %bb22.i.i.i, label %bb15

bb22.i.i.i:                                       ; preds = %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i
  %_13.i7.i.i.i = icmp eq i8* %_16.i6.i.i.i, %6
  br i1 %_13.i7.i.i.i, label %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i", label %bb3.i.i.i.i

bb3.i.i.i.i:                                      ; preds = %bb22.i.i.i
  %24 = getelementptr inbounds i8, i8* %_16.i6.i.i.i, i16 1
  %25 = ptrtoint i8* %24 to i16
  %byte.i.i.i.i = load i8, i8* %_16.i6.i.i.i, align 1, !alias.scope !1273
  %phitmp45.i.i.i = and i8 %byte.i.i.i.i, 63
  %phitmp46.i.i.i = zext i8 %phitmp45.i.i.i to i32
  br label %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i"

"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i": ; preds = %bb3.i.i.i.i, %bb22.i.i.i
  %iter.sroa.6.3 = phi i16 [ %iter.sroa.6.2, %bb22.i.i.i ], [ %25, %bb3.i.i.i.i ]
  %.0.i4.i.i.i = phi i32 [ 0, %bb22.i.i.i ], [ %phitmp46.i.i.i, %bb3.i.i.i.i ]
  %_43.i.i.i = shl nuw nsw i32 %16, 18
  %_42.i.i.i = and i32 %_43.i.i.i, 1835008
  %_3.i.i.i.i = shl nuw nsw i32 %22, 6
  %26 = or i32 %_3.i.i.i.i, %_42.i.i.i
  %27 = or i32 %26, %.0.i4.i.i.i
  %28 = icmp eq i32 %27, 1114112
  br i1 %28, label %bb13, label %bb15

bb13:                                             ; preds = %bb44, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i"
  %from.0.lcssa = phi i16 [ %from.1, %bb44 ], [ %from.0160, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i" ]
  %_4.i.i.i.i40 = icmp eq i16 %from.0.lcssa, 0
  %_6.i.i.i.i41 = icmp eq i16 %from.0.lcssa, %self.1
  %or.cond.i.i.i.i42 = or i1 %_4.i.i.i.i40, %_6.i.i.i.i41
  br i1 %or.cond.i.i.i.i42, label %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E.exit", label %bb6.i.i.i.i44

bb6.i.i.i.i44:                                    ; preds = %bb13
  %_3.i.i.i.i.i.i43 = icmp ult i16 %from.0.lcssa, %self.1
  br i1 %_3.i.i.i.i.i.i43, label %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i46", label %bb1.i.i.i47

"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i46": ; preds = %bb6.i.i.i.i44
  %29 = getelementptr inbounds [0 x i8], [0 x i8]* %self.0, i16 0, i16 %from.0.lcssa
  %b.i.i.i.i45 = load i8, i8* %29, align 1, !alias.scope !1276
  %30 = icmp sgt i8 %b.i.i.i.i45, -65
  br i1 %30, label %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E.exit", label %bb1.i.i.i47

bb1.i.i.i47:                                      ; preds = %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i46", %bb6.i.i.i.i44
; call core::str::slice_error_fail
  tail call addrspace(1) void @_ZN4core3str16slice_error_fail17h31442c6f648259d9E([0 x i8]* noalias nonnull readonly align 1 %self.0, i16 %self.1, i16 %from.0.lcssa, i16 %self.1, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18842 to %"panic::Location"*)), !noalias !1283
  unreachable

"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E.exit": ; preds = %bb3, %bb13, %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i46"
  %from.0.lcssa176 = phi i16 [ %from.0.lcssa, %bb13 ], [ %from.0.lcssa, %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i46" ], [ 0, %bb3 ]
  %31 = getelementptr inbounds [0 x i8], [0 x i8]* %self.0, i16 0, i16 %from.0.lcssa176
  %len.i.i.i.i48 = sub i16 %self.1, %from.0.lcssa176
  %32 = bitcast i8* %31 to [0 x i8]*
  %_3.0.i49 = load {}*, {}** %0, align 1, !noalias !1288, !nonnull !568
  %33 = bitcast [3 x i16]** %1 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i50 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %33, align 1, !noalias !1288, !nonnull !568
  %34 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i50, i16 3
  %35 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %34, align 1, !invariant.load !568, !noalias !1288, !nonnull !568
  %36 = tail call zeroext addrspace(1) i1 %35({}* nonnull align 1 %_3.0.i49, [0 x i8]* noalias nonnull readonly align 1 %32, i16 %len.i.i.i.i48)
  br i1 %36, label %bb6, label %bb48

bb15:                                             ; preds = %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i", %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i, %bb11.i.i.i, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i
  %iter.sroa.6.4 = phi i16 [ %15, %bb11.i.i.i ], [ %iter.sroa.6.3, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i" ], [ %iter.sroa.6.2, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i ], [ %iter.sroa.6.1, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i ]
  %.sroa.0.0.i.i8.i = phi i32 [ %_14.i.i.i, %bb11.i.i.i ], [ %27, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i" ], [ %23, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i ], [ %19, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i ]
  %_11.i = sub i16 %iter.sroa.0.0158, %iter.sroa.6.0159
  %37 = add i16 %_11.i, %iter.sroa.6.4
  switch i32 %.sroa.0.0.i.i8.i, label %bb5.i.i [
    i32 9, label %bb19
    i32 13, label %bb2.i.i33
    i32 10, label %bb3.i.i34
    i32 92, label %bb4.i.i35
    i32 39, label %bb4.i.i35
    i32 34, label %bb4.i.i35
  ]

bb2.i.i33:                                        ; preds = %bb15
  br label %bb19

bb3.i.i34:                                        ; preds = %bb15
  br label %bb19

bb4.i.i35:                                        ; preds = %bb15, %bb15, %bb15
  br label %bb19

bb5.i.i:                                          ; preds = %bb15
; call core::unicode::unicode_data::grapheme_extend::lookup
  %38 = tail call zeroext addrspace(1) i1 @_ZN4core7unicode12unicode_data15grapheme_extend6lookup17h1efbd4bf685b4a0bE(i32 %.sroa.0.0.i.i8.i), !noalias !1291
  %39 = icmp ult i32 %.sroa.0.0.i.i8.i, 1114112
  br i1 %38, label %bb11.i.i, label %bb7.i.i

bb7.i.i:                                          ; preds = %bb5.i.i
  tail call addrspace(1) void @llvm.assume(i1 %39)
  %lower.i = trunc i32 %.sroa.0.0.i.i8.i to i16
  %_6.i = icmp ult i32 %.sroa.0.0.i.i8.i, 65536
  br i1 %_6.i, label %bb2.i, label %bb1.i

bb1.i:                                            ; preds = %bb7.i.i
  %_15.i = icmp ult i32 %.sroa.0.0.i.i8.i, 131072
  br i1 %_15.i, label %_ZN4core7unicode9printable12is_printable17h91d3b28d6b01d70eE.exit, label %bb4.i

bb2.i:                                            ; preds = %bb7.i.i
; call core::unicode::printable::check
  %40 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core7unicode9printable5check17h2dcb736e2dcd86e6E(i16 %lower.i, [0 x { i8, i8 }]* noalias nonnull readonly align 1 bitcast (<{ [82 x i8] }>* @alloc748 to [0 x { i8, i8 }]*), i16 41, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [290 x i8] }>* @alloc18889 to [0 x i8]*), i16 290, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [309 x i8] }>* @alloc18890 to [0 x i8]*), i16 309)
  br i1 %40, label %bb44, label %_ZN4core4iter6traits10exact_size17ExactSizeIterator3len17h9659b6209929deafE.exit

bb4.i:                                            ; preds = %bb1.i
  %x.off.i = add nsw i32 %.sroa.0.0.i.i8.i, -173790
  %41 = icmp ult i32 %x.off.i, 34
  %x.off9.i = add nsw i32 %.sroa.0.0.i.i8.i, -177973
  %42 = icmp ult i32 %x.off9.i, 11
  %or.cond.i = or i1 %41, %42
  %43 = and i32 %.sroa.0.0.i.i8.i, 2097150
  %44 = icmp eq i32 %43, 178206
  %or.cond25.i = or i1 %44, %or.cond.i
  %x.off11.i = add nsw i32 %.sroa.0.0.i.i8.i, -183970
  %45 = icmp ult i32 %x.off11.i, 14
  %or.cond27.i = or i1 %45, %or.cond25.i
  %x.off12.i = add nsw i32 %.sroa.0.0.i.i8.i, -191457
  %46 = icmp ult i32 %x.off12.i, 3103
  %or.cond29.i = or i1 %46, %or.cond27.i
  %x.off13.i = add nsw i32 %.sroa.0.0.i.i8.i, -195102
  %47 = icmp ult i32 %x.off13.i, 1506
  %or.cond31.i = or i1 %47, %or.cond29.i
  %x.off14.i = add nsw i32 %.sroa.0.0.i.i8.i, -201547
  %48 = icmp ult i32 %x.off14.i, 716213
  %or.cond33.i = or i1 %48, %or.cond31.i
  %or.cond33.i.not = xor i1 %or.cond33.i, true
  %x.off15.i = add nsw i32 %.sroa.0.0.i.i8.i, -918000
  %49 = icmp ugt i32 %x.off15.i, 196111
  %or.cond = and i1 %49, %or.cond33.i.not
  br i1 %or.cond, label %bb44, label %_ZN4core4iter6traits10exact_size17ExactSizeIterator3len17h9659b6209929deafE.exit

_ZN4core7unicode9printable12is_printable17h91d3b28d6b01d70eE.exit: ; preds = %bb1.i
; call core::unicode::printable::check
  %50 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core7unicode9printable5check17h2dcb736e2dcd86e6E(i16 %lower.i, [0 x { i8, i8 }]* noalias nonnull readonly align 1 bitcast (<{ [76 x i8] }>* @alloc794 to [0 x { i8, i8 }]*), i16 38, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [175 x i8] }>* @alloc18891 to [0 x i8]*), i16 175, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [419 x i8] }>* @alloc18892 to [0 x i8]*), i16 419)
  br i1 %50, label %bb44, label %_ZN4core4iter6traits10exact_size17ExactSizeIterator3len17h9659b6209929deafE.exit

bb11.i.i:                                         ; preds = %bb5.i.i
  tail call addrspace(1) void @llvm.assume(i1 %39) #20, !noalias !1296
  br label %_ZN4core4iter6traits10exact_size17ExactSizeIterator3len17h9659b6209929deafE.exit

_ZN4core4iter6traits10exact_size17ExactSizeIterator3len17h9659b6209929deafE.exit: ; preds = %_ZN4core7unicode9printable12is_printable17h91d3b28d6b01d70eE.exit, %bb2.i, %bb4.i, %bb11.i.i
  %_6.i34.i.i = or i32 %.sroa.0.0.i.i8.i, 1
  %51 = tail call addrspace(1) i32 @llvm.ctlz.i32(i32 %_6.i34.i.i, i1 true) #20, !range !1299
  %msb.i35.i.i = lshr i32 %51, 2
  %52 = trunc i32 %msb.i35.i.i to i16
  %init_state.sroa.17.sroa.5.0.i.i = xor i16 %52, 7
  br label %bb19

bb19:                                             ; preds = %_ZN4core4iter6traits10exact_size17ExactSizeIterator3len17h9659b6209929deafE.exit, %bb15, %bb2.i.i33, %bb3.i.i34, %bb4.i.i35
  %init_state.sroa.17.sroa.5.0.i.i97122 = phi i16 [ %init_state.sroa.17.sroa.5.0.i.i, %_ZN4core4iter6traits10exact_size17ExactSizeIterator3len17h9659b6209929deafE.exit ], [ undef, %bb4.i.i35 ], [ undef, %bb3.i.i34 ], [ undef, %bb2.i.i33 ], [ undef, %bb15 ]
  %init_state.sroa.10.0.i.i100121 = phi i32 [ %.sroa.0.0.i.i8.i, %_ZN4core4iter6traits10exact_size17ExactSizeIterator3len17h9659b6209929deafE.exit ], [ %.sroa.0.0.i.i8.i, %bb4.i.i35 ], [ 110, %bb3.i.i34 ], [ 114, %bb2.i.i33 ], [ 116, %bb15 ]
  %init_state.sroa.0.0.i.i102120.off0 = phi i8 [ 3, %_ZN4core4iter6traits10exact_size17ExactSizeIterator3len17h9659b6209929deafE.exit ], [ 2, %bb4.i.i35 ], [ 2, %bb3.i.i34 ], [ 2, %bb2.i.i33 ], [ 2, %bb15 ]
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %8), !noalias !1300
  store [0 x i8]* %self.0, [0 x i8]** %9, align 1, !noalias !1303
  store i16 %self.1, i16* %10, align 1, !noalias !1303
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11), !noalias !1303
  store i16 %from.0160, i16* %start1.i.i, align 1, !noalias !1303
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12), !noalias !1303
  store i16 %iter.sroa.0.0158, i16* %end.i.i, align 1, !noalias !1303
  %_5.i.i.i = icmp ult i16 %iter.sroa.0.0158, %from.0160
  br i1 %_5.i.i.i, label %bb1.i.i.i, label %bb7.i.i.i

bb3.i.i.i32:                                      ; preds = %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit9.i.i.i", %bb7.i.i.i
  %_4.i.i.i.i = icmp eq i16 %iter.sroa.0.0158, 0
  %_6.i.i.i.i = icmp eq i16 %iter.sroa.0.0158, %self.1
  %or.cond.i.i.i.i = or i1 %_4.i.i.i.i, %_6.i.i.i.i
  br i1 %or.cond.i.i.i.i, label %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h16d959e9eb68186dE.exit", label %bb6.i.i.i.i

bb6.i.i.i.i:                                      ; preds = %bb3.i.i.i32
  %_3.i.i.i.i.i.i = icmp ult i16 %iter.sroa.0.0158, %self.1
  br i1 %_3.i.i.i.i.i.i, label %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i", label %bb1.i.i.i

"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i": ; preds = %bb6.i.i.i.i
  %53 = getelementptr inbounds [0 x i8], [0 x i8]* %self.0, i16 0, i16 %iter.sroa.0.0158
  %b.i.i.i.i = load i8, i8* %53, align 1, !alias.scope !1306
  %54 = icmp sgt i8 %b.i.i.i.i, -65
  br i1 %54, label %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h16d959e9eb68186dE.exit", label %bb1.i.i.i

bb7.i.i.i:                                        ; preds = %bb19
  %_4.i1.i.i.i = icmp eq i16 %from.0160, 0
  %_6.i2.i.i.i = icmp eq i16 %from.0160, %self.1
  %or.cond.i3.i.i.i = or i1 %_4.i1.i.i.i, %_6.i2.i.i.i
  br i1 %or.cond.i3.i.i.i, label %bb3.i.i.i32, label %bb6.i5.i.i.i

bb6.i5.i.i.i:                                     ; preds = %bb7.i.i.i
  %_3.i.i.i4.i.i.i = icmp ult i16 %from.0160, %self.1
  br i1 %_3.i.i.i4.i.i.i, label %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit9.i.i.i", label %bb1.i.i.i

"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit9.i.i.i": ; preds = %bb6.i5.i.i.i
  %55 = getelementptr inbounds [0 x i8], [0 x i8]* %self.0, i16 0, i16 %from.0160
  %b.i7.i.i.i = load i8, i8* %55, align 1, !alias.scope !1311
  %56 = icmp sgt i8 %b.i7.i.i.i, -65
  br i1 %56, label %bb3.i.i.i32, label %bb1.i.i.i

bb1.i.i.i:                                        ; preds = %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit9.i.i.i", %bb6.i5.i.i.i, %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i", %bb6.i.i.i.i, %bb19
  %57 = getelementptr inbounds %"str::traits::{{impl}}::index::{{closure}}.0", %"str::traits::{{impl}}::index::{{closure}}.0"* %_5.i1.i.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %57), !noalias !1314
  %_11.sroa.0.0..sroa_cast3.i.i = bitcast %"str::traits::{{impl}}::index::{{closure}}.0"* %_5.i1.i.i to { [0 x i8]*, i16 }**
  store { [0 x i8]*, i16 }* %slice.i.i, { [0 x i8]*, i16 }** %_11.sroa.0.0..sroa_cast3.i.i, align 1, !noalias !1318
  %_11.sroa.4.0..sroa_idx.i.i = getelementptr inbounds %"str::traits::{{impl}}::index::{{closure}}.0", %"str::traits::{{impl}}::index::{{closure}}.0"* %_5.i1.i.i, i16 0, i32 3
  store i16* %start1.i.i, i16** %_11.sroa.4.0..sroa_idx.i.i, align 1, !noalias !1318
  %_11.sroa.5.0..sroa_idx.i.i = getelementptr inbounds %"str::traits::{{impl}}::index::{{closure}}.0", %"str::traits::{{impl}}::index::{{closure}}.0"* %_5.i1.i.i, i16 0, i32 5
  store i16* %end.i.i, i16** %_11.sroa.5.0..sroa_idx.i.i, align 1, !noalias !1318
; call core::str::traits::<impl core::slice::SliceIndex<str> for core::ops::range::Range<usize>>::index::{{closure}}
  call fastcc addrspace(1) void @"_ZN4core3str6traits101_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..Range$LT$usize$GT$$GT$5index28_$u7b$$u7b$closure$u7d$$u7d$17h881ad5f1ad649d6aE"(%"str::traits::{{impl}}::index::{{closure}}.0"* noalias nocapture nonnull dereferenceable(6) %_5.i1.i.i), !noalias !1319
  unreachable

"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h16d959e9eb68186dE.exit": ; preds = %bb3.i.i.i32, %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i"
  %58 = getelementptr inbounds [0 x i8], [0 x i8]* %self.0, i16 0, i16 %from.0160
  %len.i.i.i.i = sub i16 %iter.sroa.0.0158, %from.0160
  %59 = bitcast i8* %58 to [0 x i8]*
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12), !noalias !1303
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11), !noalias !1303
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %8), !noalias !1300
  %_3.0.i30 = load {}*, {}** %0, align 1, !noalias !1320, !nonnull !568
  %_3.11.i31 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %13, align 1, !noalias !1320, !nonnull !568
  %60 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i31, i16 3
  %61 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %60, align 1, !invariant.load !568, !noalias !1320, !nonnull !568
  %62 = tail call zeroext addrspace(1) i1 %61({}* nonnull align 1 %_3.0.i30, [0 x i8]* noalias nonnull readonly align 1 %59, i16 %len.i.i.i.i)
  br i1 %62, label %bb6, label %bb31

bb31:                                             ; preds = %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h16d959e9eb68186dE.exit", %bb35
  %iter1.sroa.0.0 = phi i8 [ %iter1.sroa.0.1136, %bb35 ], [ %init_state.sroa.0.0.i.i102120.off0, %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h16d959e9eb68186dE.exit" ]
  %iter1.sroa.9.0 = phi i8 [ %iter1.sroa.9.1137, %bb35 ], [ 5, %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h16d959e9eb68186dE.exit" ]
  %iter1.sroa.15.0 = phi i16 [ %iter1.sroa.15.1138, %bb35 ], [ %init_state.sroa.17.sroa.5.0.i.i97122, %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h16d959e9eb68186dE.exit" ]
  %trunc.i.i = trunc i8 %iter1.sroa.0.0 to i2
  switch i2 %trunc.i.i, label %bb2.i.i.us-lcssa166 [
    i2 0, label %bb33
    i2 1, label %"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit"
    i2 -2, label %bb35
    i2 -1, label %bb1.i.i27
  ]

bb1.i.i27:                                        ; preds = %bb31
  %trunc.i.i.i = trunc i8 %iter1.sroa.9.0 to i3
  switch i3 %trunc.i.i.i, label %bb2.i.i.i [
    i3 0, label %bb33
    i3 1, label %bb12.i.i.i
    i3 2, label %bb6.i.i.i
    i3 3, label %bb5.i.i.i
    i3 -4, label %bb4.i.i.i
    i3 -3, label %bb35
  ]

bb2.i.i.i:                                        ; preds = %bb1.i.i27
  unreachable

bb4.i.i.i:                                        ; preds = %bb1.i.i27
  br label %bb35

bb5.i.i.i:                                        ; preds = %bb1.i.i27
  br label %bb35

bb6.i.i.i:                                        ; preds = %bb1.i.i27
  %_10.i.i.i = shl i16 %iter1.sroa.15.0, 2
  %63 = and i16 %_10.i.i.i, 28
  %64 = zext i16 %63 to i32
  %_7.i.i.i = lshr i32 %init_state.sroa.10.0.i.i100121, %64
  %65 = trunc i32 %_7.i.i.i to i8
  %num1.i.i.i.i = and i8 %65, 15
  %_12.i.i.i.i = icmp ult i8 %num1.i.i.i.i, 10
  %_15.i.i.i.i = or i8 %num1.i.i.i.i, 48
  %_18.i.i.i.i = add nuw nsw i8 %num1.i.i.i.i, 87
  %.0.i.v.i.i.i = select i1 %_12.i.i.i.i, i8 %_15.i.i.i.i, i8 %_18.i.i.i.i
  %.0.i.i.i.i = zext i8 %.0.i.v.i.i.i to i32
  %_15.i.i.i = icmp eq i16 %iter1.sroa.15.0, 0
  %66 = add i16 %iter1.sroa.15.0, -1
  %spec.select = select i1 %_15.i.i.i, i16 0, i16 %66
  %spec.select147 = select i1 %_15.i.i.i, i8 1, i8 %iter1.sroa.9.0
  br label %bb35

bb12.i.i.i:                                       ; preds = %bb1.i.i27
  br label %bb35

bb2.i.i.us-lcssa166:                              ; preds = %bb31
  unreachable

"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit": ; preds = %bb31
  br label %bb35

bb33:                                             ; preds = %bb1.i.i27, %bb31
  %67 = icmp ult i32 %.sroa.0.0.i.i8.i, 1114112
  tail call addrspace(1) void @llvm.assume(i1 %67) #20
  %_2.i.i = icmp ult i32 %.sroa.0.0.i.i8.i, 128
  br i1 %_2.i.i, label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8len_utf817h008cd1f0b227ba0fE.exit", label %bb1.i.i

bb1.i.i:                                          ; preds = %bb33
  %_4.i.i = icmp ult i32 %.sroa.0.0.i.i8.i, 2048
  br i1 %_4.i.i, label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8len_utf817h008cd1f0b227ba0fE.exit", label %bb3.i.i

bb3.i.i:                                          ; preds = %bb1.i.i
  %_6.i.i = icmp ult i32 %.sroa.0.0.i.i8.i, 65536
  %..i.i = select i1 %_6.i.i, i16 3, i16 4
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8len_utf817h008cd1f0b227ba0fE.exit"

"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8len_utf817h008cd1f0b227ba0fE.exit": ; preds = %bb33, %bb1.i.i, %bb3.i.i
  %.0.i.i = phi i16 [ 1, %bb33 ], [ %..i.i, %bb3.i.i ], [ 2, %bb1.i.i ]
  %68 = add i16 %.0.i.i, %iter.sroa.0.0158
  br label %bb44

bb35:                                             ; preds = %"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit", %bb6.i.i.i, %bb31, %bb1.i.i27, %bb12.i.i.i, %bb5.i.i.i, %bb4.i.i.i
  %.0.i.i29139 = phi i32 [ %init_state.sroa.10.0.i.i100121, %"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit" ], [ 125, %bb12.i.i.i ], [ 123, %bb5.i.i.i ], [ 117, %bb4.i.i.i ], [ 92, %bb1.i.i27 ], [ 92, %bb31 ], [ %.0.i.i.i.i, %bb6.i.i.i ]
  %iter1.sroa.15.1138 = phi i16 [ %iter1.sroa.15.0, %"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit" ], [ %iter1.sroa.15.0, %bb12.i.i.i ], [ %iter1.sroa.15.0, %bb5.i.i.i ], [ %iter1.sroa.15.0, %bb4.i.i.i ], [ %iter1.sroa.15.0, %bb1.i.i27 ], [ %iter1.sroa.15.0, %bb31 ], [ %spec.select, %bb6.i.i.i ]
  %iter1.sroa.9.1137 = phi i8 [ %iter1.sroa.9.0, %"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit" ], [ 0, %bb12.i.i.i ], [ 2, %bb5.i.i.i ], [ 3, %bb4.i.i.i ], [ 4, %bb1.i.i27 ], [ %iter1.sroa.9.0, %bb31 ], [ %spec.select147, %bb6.i.i.i ]
  %iter1.sroa.0.1136 = phi i8 [ 0, %"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit" ], [ %iter1.sroa.0.0, %bb12.i.i.i ], [ %iter1.sroa.0.0, %bb5.i.i.i ], [ %iter1.sroa.0.0, %bb4.i.i.i ], [ %iter1.sroa.0.0, %bb1.i.i27 ], [ 1, %bb31 ], [ %iter1.sroa.0.0, %bb6.i.i.i ]
  %_3.0.i25 = load {}*, {}** %0, align 1, !nonnull !568
  %_3.11.i26 = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %2, align 1, !nonnull !568
  %69 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11.i26, i16 4
  %70 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %69, align 1, !invariant.load !568, !nonnull !568
  %71 = tail call zeroext addrspace(1) i1 %70({}* nonnull align 1 %_3.0.i25, i32 %.0.i.i29139)
  br i1 %71, label %bb6, label %bb31

bb44:                                             ; preds = %bb4.i, %bb2.i, %_ZN4core7unicode9printable12is_printable17h91d3b28d6b01d70eE.exit, %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8len_utf817h008cd1f0b227ba0fE.exit"
  %from.1 = phi i16 [ %68, %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8len_utf817h008cd1f0b227ba0fE.exit" ], [ %from.0160, %_ZN4core7unicode9printable12is_printable17h91d3b28d6b01d70eE.exit ], [ %from.0160, %bb2.i ], [ %from.0160, %bb4.i ]
  %_16.i.i.i.cast.i = inttoptr i16 %iter.sroa.6.4 to i8*
  %_13.i.i.i.i = icmp eq i8* %6, %_16.i.i.i.cast.i
  br i1 %_13.i.i.i.i, label %bb13, label %bb3.i.i.i38

bb48:                                             ; preds = %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E.exit"
  %_3.0.i23 = load {}*, {}** %0, align 1, !nonnull !568
  %_3.11.i24 = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %2, align 1, !nonnull !568
  %72 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11.i24, i16 4
  %73 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %72, align 1, !invariant.load !568, !nonnull !568
  %74 = tail call zeroext addrspace(1) i1 %73({}* nonnull align 1 %_3.0.i23, i32 34)
  br label %bb6
}

; <str as core::fmt::Display>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN42_$LT$str$u20$as$u20$core..fmt..Display$GT$3fmt17h10fb5c145dabd013E"([0 x i8]* noalias nonnull readonly align 1 %self.0, i16 %self.1, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
; call core::fmt::Formatter::pad
  %0 = tail call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter3pad17h307fb261f2dc8a5eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, [0 x i8]* noalias nonnull readonly align 1 %self.0, i16 %self.1)
  ret i1 %0
}

; <char as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN41_$LT$char$u20$as$u20$core..fmt..Debug$GT$3fmt17h03e3d18dd45a0945E"(i32* noalias nocapture readonly align 1 dereferenceable(4) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i = load {}*, {}** %0, align 1, !nonnull !568
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %2 = bitcast [3 x i16]** %1 to i1 ({}*, i32) addrspace(1)***
  %_3.11.i = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %2, align 1, !nonnull !568
  %3 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11.i, i16 4
  %4 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %3, align 1, !invariant.load !568, !nonnull !568
  %5 = tail call zeroext addrspace(1) i1 %4({}* nonnull align 1 %_3.0.i, i32 39)
  br i1 %5, label %bb6, label %bb3

bb3:                                              ; preds = %start
  %_13 = load i32, i32* %self, align 1, !range !690
  %trunc = trunc i32 %_13 to i21
  switch i21 %trunc, label %bb5.i.i [
    i21 9, label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$12escape_debug17ha5fa7da70cdabb05E.exit"
    i21 13, label %bb2.i.i
    i21 10, label %bb3.i.i
    i21 92, label %bb4.i.i
    i21 39, label %bb4.i.i
    i21 34, label %bb4.i.i
  ]

bb2.i.i:                                          ; preds = %bb3
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$12escape_debug17ha5fa7da70cdabb05E.exit"

bb3.i.i:                                          ; preds = %bb3
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$12escape_debug17ha5fa7da70cdabb05E.exit"

bb4.i.i:                                          ; preds = %bb3, %bb3, %bb3
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$12escape_debug17ha5fa7da70cdabb05E.exit"

bb5.i.i:                                          ; preds = %bb3
; call core::unicode::unicode_data::grapheme_extend::lookup
  %6 = tail call zeroext addrspace(1) i1 @_ZN4core7unicode12unicode_data15grapheme_extend6lookup17h1efbd4bf685b4a0bE(i32 %_13), !noalias !1323
  br i1 %6, label %bb11.i.i, label %bb7.i.i

bb7.i.i:                                          ; preds = %bb5.i.i
  %lower.i = trunc i32 %_13 to i16
  %_6.i = icmp ult i32 %_13, 65536
  br i1 %_6.i, label %bb2.i, label %bb1.i

bb1.i:                                            ; preds = %bb7.i.i
  %_15.i = icmp ult i32 %_13, 131072
  br i1 %_15.i, label %_ZN4core7unicode9printable12is_printable17h91d3b28d6b01d70eE.exit, label %bb4.i

bb2.i:                                            ; preds = %bb7.i.i
; call core::unicode::printable::check
  %7 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core7unicode9printable5check17h2dcb736e2dcd86e6E(i16 %lower.i, [0 x { i8, i8 }]* noalias nonnull readonly align 1 bitcast (<{ [82 x i8] }>* @alloc748 to [0 x { i8, i8 }]*), i16 41, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [290 x i8] }>* @alloc18889 to [0 x i8]*), i16 290, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [309 x i8] }>* @alloc18890 to [0 x i8]*), i16 309)
  br i1 %7, label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$12escape_debug17ha5fa7da70cdabb05E.exit", label %bb16.i.i

bb4.i:                                            ; preds = %bb1.i
  %x.off.i = add nsw i32 %_13, -173790
  %8 = icmp ult i32 %x.off.i, 34
  %x.off9.i = add nsw i32 %_13, -177973
  %9 = icmp ult i32 %x.off9.i, 11
  %or.cond.i = or i1 %8, %9
  %10 = and i32 %_13, 2097150
  %11 = icmp eq i32 %10, 178206
  %or.cond25.i = or i1 %11, %or.cond.i
  %x.off11.i = add nsw i32 %_13, -183970
  %12 = icmp ult i32 %x.off11.i, 14
  %or.cond27.i = or i1 %12, %or.cond25.i
  %x.off12.i = add nsw i32 %_13, -191457
  %13 = icmp ult i32 %x.off12.i, 3103
  %or.cond29.i = or i1 %13, %or.cond27.i
  %x.off13.i = add nsw i32 %_13, -195102
  %14 = icmp ult i32 %x.off13.i, 1506
  %or.cond31.i = or i1 %14, %or.cond29.i
  %x.off14.i = add nsw i32 %_13, -201547
  %15 = icmp ult i32 %x.off14.i, 716213
  %or.cond33.i = or i1 %15, %or.cond31.i
  %or.cond33.i.not = xor i1 %or.cond33.i, true
  %x.off15.i = add nsw i32 %_13, -918000
  %16 = icmp ugt i32 %x.off15.i, 196111
  %or.cond = and i1 %16, %or.cond33.i.not
  br i1 %or.cond, label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$12escape_debug17ha5fa7da70cdabb05E.exit", label %bb16.i.i

_ZN4core7unicode9printable12is_printable17h91d3b28d6b01d70eE.exit: ; preds = %bb1.i
; call core::unicode::printable::check
  %17 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core7unicode9printable5check17h2dcb736e2dcd86e6E(i16 %lower.i, [0 x { i8, i8 }]* noalias nonnull readonly align 1 bitcast (<{ [76 x i8] }>* @alloc794 to [0 x { i8, i8 }]*), i16 38, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [175 x i8] }>* @alloc18891 to [0 x i8]*), i16 175, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [419 x i8] }>* @alloc18892 to [0 x i8]*), i16 419)
  br i1 %17, label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$12escape_debug17ha5fa7da70cdabb05E.exit", label %bb16.i.i

bb11.i.i:                                         ; preds = %bb5.i.i
  %_6.i.i.i = or i32 %_13, 1
  %18 = tail call addrspace(1) i32 @llvm.ctlz.i32(i32 %_6.i.i.i, i1 true) #20, !range !1299
  %msb.i.i.i = lshr i32 %18, 2
  %19 = trunc i32 %msb.i.i.i to i16
  %_12.i.i.i = xor i16 %19, 7
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$12escape_debug17ha5fa7da70cdabb05E.exit"

bb16.i.i:                                         ; preds = %bb4.i, %bb2.i, %_ZN4core7unicode9printable12is_printable17h91d3b28d6b01d70eE.exit
  %_6.i34.i.i = or i32 %_13, 1
  %20 = tail call addrspace(1) i32 @llvm.ctlz.i32(i32 %_6.i34.i.i, i1 true) #20, !range !1299
  %msb.i35.i.i = lshr i32 %20, 2
  %21 = trunc i32 %msb.i35.i.i to i16
  %_12.i36.i.i = xor i16 %21, 7
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$12escape_debug17ha5fa7da70cdabb05E.exit"

"_ZN4core4char7methods22_$LT$impl$u20$char$GT$12escape_debug17ha5fa7da70cdabb05E.exit": ; preds = %bb4.i, %bb2.i, %bb3, %bb2.i.i, %bb3.i.i, %bb4.i.i, %_ZN4core7unicode9printable12is_printable17h91d3b28d6b01d70eE.exit, %bb11.i.i, %bb16.i.i
  %init_state.sroa.17.sroa.5.0.i.i = phi i16 [ %_12.i.i.i, %bb11.i.i ], [ undef, %_ZN4core7unicode9printable12is_printable17h91d3b28d6b01d70eE.exit ], [ %_12.i36.i.i, %bb16.i.i ], [ undef, %bb4.i.i ], [ undef, %bb3.i.i ], [ undef, %bb2.i.i ], [ undef, %bb3 ], [ undef, %bb2.i ], [ undef, %bb4.i ]
  %init_state.sroa.10.0.i.i = phi i32 [ %_13, %bb11.i.i ], [ %_13, %_ZN4core7unicode9printable12is_printable17h91d3b28d6b01d70eE.exit ], [ %_13, %bb16.i.i ], [ %_13, %bb4.i.i ], [ 110, %bb3.i.i ], [ 114, %bb2.i.i ], [ 116, %bb3 ], [ %_13, %bb2.i ], [ %_13, %bb4.i ]
  %init_state.sroa.0.0.i.i.off0 = phi i8 [ 3, %bb11.i.i ], [ 1, %_ZN4core7unicode9printable12is_printable17h91d3b28d6b01d70eE.exit ], [ 3, %bb16.i.i ], [ 2, %bb4.i.i ], [ 2, %bb3.i.i ], [ 2, %bb2.i.i ], [ 2, %bb3 ], [ 1, %bb2.i ], [ 1, %bb4.i ]
  br label %bb11

bb6:                                              ; preds = %bb15, %start, %bb13
  %.0 = phi i1 [ %28, %bb13 ], [ true, %start ], [ true, %bb15 ]
  ret i1 %.0

bb11:                                             ; preds = %bb15, %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$12escape_debug17ha5fa7da70cdabb05E.exit"
  %iter.sroa.0.0 = phi i8 [ %init_state.sroa.0.0.i.i.off0, %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$12escape_debug17ha5fa7da70cdabb05E.exit" ], [ %iter.sroa.0.128, %bb15 ]
  %iter.sroa.9.0 = phi i8 [ 5, %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$12escape_debug17ha5fa7da70cdabb05E.exit" ], [ %iter.sroa.9.129, %bb15 ]
  %iter.sroa.15.0 = phi i16 [ %init_state.sroa.17.sroa.5.0.i.i, %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$12escape_debug17ha5fa7da70cdabb05E.exit" ], [ %iter.sroa.15.130, %bb15 ]
  %trunc.i.i = trunc i8 %iter.sroa.0.0 to i2
  switch i2 %trunc.i.i, label %bb2.i.i12 [
    i2 0, label %bb13
    i2 1, label %"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit"
    i2 -2, label %bb15
    i2 -1, label %bb1.i.i
  ]

bb1.i.i:                                          ; preds = %bb11
  %trunc.i.i.i = trunc i8 %iter.sroa.9.0 to i3
  switch i3 %trunc.i.i.i, label %bb2.i.i.i [
    i3 0, label %bb13
    i3 1, label %bb12.i.i.i
    i3 2, label %bb6.i.i.i
    i3 3, label %bb5.i.i.i
    i3 -4, label %bb4.i.i.i
    i3 -3, label %bb15
  ]

bb2.i.i.i:                                        ; preds = %bb1.i.i
  unreachable

bb4.i.i.i:                                        ; preds = %bb1.i.i
  br label %bb15

bb5.i.i.i:                                        ; preds = %bb1.i.i
  br label %bb15

bb6.i.i.i:                                        ; preds = %bb1.i.i
  %_10.i.i.i = shl i16 %iter.sroa.15.0, 2
  %22 = and i16 %_10.i.i.i, 28
  %23 = zext i16 %22 to i32
  %_7.i.i.i = lshr i32 %init_state.sroa.10.0.i.i, %23
  %24 = trunc i32 %_7.i.i.i to i8
  %num1.i.i.i.i = and i8 %24, 15
  %_12.i.i.i.i = icmp ult i8 %num1.i.i.i.i, 10
  %_15.i.i.i.i = or i8 %num1.i.i.i.i, 48
  %_18.i.i.i.i = add nuw nsw i8 %num1.i.i.i.i, 87
  %.0.i.v.i.i.i = select i1 %_12.i.i.i.i, i8 %_15.i.i.i.i, i8 %_18.i.i.i.i
  %.0.i.i.i.i = zext i8 %.0.i.v.i.i.i to i32
  %_15.i.i.i = icmp eq i16 %iter.sroa.15.0, 0
  %25 = add i16 %iter.sroa.15.0, -1
  %spec.select = select i1 %_15.i.i.i, i16 0, i16 %25
  %spec.select39 = select i1 %_15.i.i.i, i8 1, i8 %iter.sroa.9.0
  br label %bb15

bb12.i.i.i:                                       ; preds = %bb1.i.i
  br label %bb15

bb2.i.i12:                                        ; preds = %bb11
  unreachable

"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit": ; preds = %bb11
  br label %bb15

bb13:                                             ; preds = %bb1.i.i, %bb11
  %_3.0.i10 = load {}*, {}** %0, align 1, !nonnull !568
  %_3.11.i11 = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %2, align 1, !nonnull !568
  %26 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11.i11, i16 4
  %27 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %26, align 1, !invariant.load !568, !nonnull !568
  %28 = tail call zeroext addrspace(1) i1 %27({}* nonnull align 1 %_3.0.i10, i32 39)
  br label %bb6

bb15:                                             ; preds = %"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit", %bb6.i.i.i, %bb11, %bb1.i.i, %bb12.i.i.i, %bb5.i.i.i, %bb4.i.i.i
  %.0.i.i31 = phi i32 [ %init_state.sroa.10.0.i.i, %"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit" ], [ 125, %bb12.i.i.i ], [ 123, %bb5.i.i.i ], [ 117, %bb4.i.i.i ], [ 92, %bb1.i.i ], [ 92, %bb11 ], [ %.0.i.i.i.i, %bb6.i.i.i ]
  %iter.sroa.15.130 = phi i16 [ %iter.sroa.15.0, %"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit" ], [ %iter.sroa.15.0, %bb12.i.i.i ], [ %iter.sroa.15.0, %bb5.i.i.i ], [ %iter.sroa.15.0, %bb4.i.i.i ], [ %iter.sroa.15.0, %bb1.i.i ], [ %iter.sroa.15.0, %bb11 ], [ %spec.select, %bb6.i.i.i ]
  %iter.sroa.9.129 = phi i8 [ %iter.sroa.9.0, %"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit" ], [ 0, %bb12.i.i.i ], [ 2, %bb5.i.i.i ], [ 3, %bb4.i.i.i ], [ 4, %bb1.i.i ], [ %iter.sroa.9.0, %bb11 ], [ %spec.select39, %bb6.i.i.i ]
  %iter.sroa.0.128 = phi i8 [ 0, %"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit" ], [ %iter.sroa.0.0, %bb12.i.i.i ], [ %iter.sroa.0.0, %bb5.i.i.i ], [ %iter.sroa.0.0, %bb4.i.i.i ], [ %iter.sroa.0.0, %bb1.i.i ], [ 1, %bb11 ], [ %iter.sroa.0.0, %bb6.i.i.i ]
  %_3.0.i7 = load {}*, {}** %0, align 1, !nonnull !568
  %_3.11.i8 = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %2, align 1, !nonnull !568
  %29 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11.i8, i16 4
  %30 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %29, align 1, !invariant.load !568, !nonnull !568
  %31 = tail call zeroext addrspace(1) i1 %30({}* nonnull align 1 %_3.0.i7, i32 %.0.i.i31)
  br i1 %31, label %bb6, label %bb11
}

; <char as core::fmt::Display>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN43_$LT$char$u20$as$u20$core..fmt..Display$GT$3fmt17h6cd7436b7a36507fE"(i32* noalias nocapture readonly align 1 dereferenceable(4) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_17 = alloca [4 x i8], align 1
  %_5.idx = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 7, i32 0
  %_5.idx.val = load i8, i8* %_5.idx, align 1
  %0 = icmp eq i8 %_5.idx.val, 0
  br i1 %0, label %bb3, label %bb7

bb3:                                              ; preds = %start
  %_7.idx = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 9, i32 0
  %_7.idx.val = load i8, i8* %_7.idx, align 1
  %1 = icmp eq i8 %_7.idx.val, 0
  br i1 %1, label %bb8, label %bb7

bb7:                                              ; preds = %bb3, %start
  %_9 = load i32, i32* %self, align 1, !range !690
  %2 = getelementptr inbounds [4 x i8], [4 x i8]* %_17, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %2)
  %3 = bitcast [4 x i8]* %_17 to i32*
  store i32 0, i32* %3, align 1
  %_14.0 = bitcast [4 x i8]* %_17 to [0 x i8]*
  %_2.i.i.i = icmp ult i32 %_9, 128
  br i1 %_2.i.i.i, label %bb8.i.i, label %bb1.i.i.i

bb1.i.i.i:                                        ; preds = %bb7
  %_4.i.i.i = icmp ult i32 %_9, 2048
  br i1 %_4.i.i.i, label %bb9.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb1.i.i.i
  %_6.i.i.i = icmp ult i32 %_9, 65536
  %4 = insertvalue { [0 x i8]*, i16 } undef, [0 x i8]* %_14.0, 0
  %b2.i.i = getelementptr inbounds [4 x i8], [4 x i8]* %_17, i16 0, i16 1
  %c3.i.i = getelementptr inbounds [4 x i8], [4 x i8]* %_17, i16 0, i16 2
  br i1 %_6.i.i.i, label %bb10.i.i, label %bb11.i.i

bb8.i.i:                                          ; preds = %bb7
  %5 = insertvalue { [0 x i8]*, i16 } undef, [0 x i8]* %_14.0, 0
  %6 = trunc i32 %_9 to i8
  store i8 %6, i8* %2, align 1
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$11encode_utf817hf382f78b7bdca53fE.exit"

bb9.i.i:                                          ; preds = %bb1.i.i.i
  %7 = insertvalue { [0 x i8]*, i16 } undef, [0 x i8]* %_14.0, 0
  %b5.i.i = getelementptr inbounds [4 x i8], [4 x i8]* %_17, i16 0, i16 1
  %_30.i.i = lshr i32 %_9, 6
  %8 = trunc i32 %_30.i.i to i8
  %9 = or i8 %8, -64
  store i8 %9, i8* %2, align 1
  %10 = trunc i32 %_9 to i8
  %_32.i.i = and i8 %10, 63
  %11 = or i8 %_32.i.i, -128
  store i8 %11, i8* %b5.i.i, align 1
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$11encode_utf817hf382f78b7bdca53fE.exit"

bb10.i.i:                                         ; preds = %bb3.i.i.i
  %_40.i.i = lshr i32 %_9, 12
  %12 = trunc i32 %_40.i.i to i8
  %13 = or i8 %12, -32
  store i8 %13, i8* %2, align 1
  %_44.i.i = lshr i32 %_9, 6
  %14 = trunc i32 %_44.i.i to i8
  %_42.i.i = and i8 %14, 63
  %15 = or i8 %_42.i.i, -128
  store i8 %15, i8* %b2.i.i, align 1
  %16 = trunc i32 %_9 to i8
  %_46.i.i = and i8 %16, 63
  %17 = or i8 %_46.i.i, -128
  store i8 %17, i8* %c3.i.i, align 1
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$11encode_utf817hf382f78b7bdca53fE.exit"

bb11.i.i:                                         ; preds = %bb3.i.i.i
  %d.i.i = getelementptr inbounds [4 x i8], [4 x i8]* %_17, i16 0, i16 3
  %_55.i.i = lshr i32 %_9, 18
  %18 = trunc i32 %_55.i.i to i8
  %19 = or i8 %18, -16
  store i8 %19, i8* %2, align 1
  %_59.i.i = lshr i32 %_9, 12
  %20 = trunc i32 %_59.i.i to i8
  %_57.i.i = and i8 %20, 63
  %21 = or i8 %_57.i.i, -128
  store i8 %21, i8* %b2.i.i, align 1
  %_63.i.i = lshr i32 %_9, 6
  %22 = trunc i32 %_63.i.i to i8
  %_61.i.i = and i8 %22, 63
  %23 = or i8 %_61.i.i, -128
  store i8 %23, i8* %c3.i.i, align 1
  %24 = trunc i32 %_9 to i8
  %_65.i.i = and i8 %24, 63
  %25 = or i8 %_65.i.i, -128
  store i8 %25, i8* %d.i.i, align 1
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$11encode_utf817hf382f78b7bdca53fE.exit"

"_ZN4core4char7methods22_$LT$impl$u20$char$GT$11encode_utf817hf382f78b7bdca53fE.exit": ; preds = %bb8.i.i, %bb9.i.i, %bb10.i.i, %bb11.i.i
  %26 = phi { [0 x i8]*, i16 } [ %5, %bb8.i.i ], [ %7, %bb9.i.i ], [ %4, %bb10.i.i ], [ %4, %bb11.i.i ]
  %.0.i2.i.i = phi i16 [ 1, %bb8.i.i ], [ 2, %bb9.i.i ], [ 3, %bb10.i.i ], [ 4, %bb11.i.i ]
  %_12.0 = extractvalue { [0 x i8]*, i16 } %26, 0
; call core::fmt::Formatter::pad
  %27 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter3pad17h307fb261f2dc8a5eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, [0 x i8]* noalias nonnull readonly align 1 %_12.0, i16 %.0.i2.i.i)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %2)
  br label %bb12

bb8:                                              ; preds = %bb3
  %_92 = load i32, i32* %self, align 1, !range !690
  %28 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i = load {}*, {}** %28, align 1, !nonnull !568
  %29 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %30 = bitcast [3 x i16]** %29 to i1 ({}*, i32) addrspace(1)***
  %_3.11.i = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %30, align 1, !nonnull !568
  %31 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11.i, i16 4
  %32 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %31, align 1, !invariant.load !568, !nonnull !568
  %33 = tail call zeroext addrspace(1) i1 %32({}* nonnull align 1 %_3.0.i, i32 %_92)
  br label %bb12

bb12:                                             ; preds = %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$11encode_utf817hf382f78b7bdca53fE.exit", %bb8
  %.0.in = phi i1 [ %33, %bb8 ], [ %27, %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$11encode_utf817hf382f78b7bdca53fE.exit" ]
  ret i1 %.0.in
}

; <*mut T as core::fmt::Pointer>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN52_$LT$$BP$mut$u20$T$u20$as$u20$core..fmt..Pointer$GT$3fmt17he7e35628f78eac2bE"(i8** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i.i.i = alloca [128 x i8], align 1
  %0 = bitcast i8** %self to i16*
  %_62 = load i16, i16* %0, align 1
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 7, i32 0
  %2 = load i8, i8* %1, align 1, !range !87, !noalias !1328
  %3 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 7, i32 1
  %old_width.1.i = load i16, i16* %3, align 1, !noalias !1328
  %4 = bitcast %"fmt::Formatter"* %f to i32*
  %old_flags.i = load i32, i32* %4, align 1, !noalias !1328
  %_2.i.i = and i32 %old_flags.i, 4
  %5 = icmp eq i32 %_2.i.i, 0
  br i1 %5, label %bb9.i, label %bb3.i

bb3.i:                                            ; preds = %start
  %6 = or i32 %old_flags.i, 8
  store i32 %6, i32* %4, align 1, !noalias !1328
  %7 = icmp eq i8 %2, 0
  br i1 %7, label %bb6.i, label %bb9.i

bb6.i:                                            ; preds = %bb3.i
  store i8 1, i8* %1, align 1, !noalias !1328
  store i16 6, i16* %3, align 1, !noalias !1328
  br label %bb9.i

bb9.i:                                            ; preds = %bb6.i, %bb3.i, %start
  %8 = phi i32 [ %old_flags.i, %start ], [ %6, %bb6.i ], [ %6, %bb3.i ]
  %9 = or i32 %8, 4
  store i32 %9, i32* %4, align 1, !noalias !1328
  %10 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %10), !noalias !1331
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %10, i8 undef, i16 128, i1 false), !noalias !1331
  %11 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 128
  br label %bb15.i.i.i

bb15.i.i.i:                                       ; preds = %bb15.i.i.i, %bb9.i
  %iter.sroa.4.0.i.i.i = phi i8* [ %11, %bb9.i ], [ %12, %bb15.i.i.i ]
  %x.0.i.i.i = phi i16 [ %_62, %bb9.i ], [ %13, %bb15.i.i.i ]
  %curr.0.i.i.i = phi i16 [ 128, %bb9.i ], [ %18, %bb15.i.i.i ]
  %12 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i.i.i, i16 -1
  %13 = lshr i16 %x.0.i.i.i, 4
  %14 = trunc i16 %x.0.i.i.i to i8
  %15 = and i8 %14, 15
  %_5.i9.i.i.i = icmp ult i8 %15, 10
  %16 = or i8 %15, 48
  %17 = add nuw nsw i8 %15, 87
  %.0.i15.i.i.i = select i1 %_5.i9.i.i.i, i8 %16, i8 %17
  store i8 %.0.i15.i.i.i, i8* %12, align 1, !noalias !1331
  %18 = add nsw i16 %curr.0.i.i.i, -1
  %19 = icmp eq i16 %13, 0
  br i1 %19, label %bb43.i.i.i, label %bb15.i.i.i

bb43.i.i.i:                                       ; preds = %bb15.i.i.i
  %_3.i.i.i.i.i.i = icmp ugt i16 %18, 128
  br i1 %_3.i.i.i.i.i.i, label %bb2.i.i.i.i.i.i, label %"_ZN54_$LT$$BP$const$u20$T$u20$as$u20$core..fmt..Pointer$GT$3fmt17h3a7d52fe10e5b00eE.exit"

bb2.i.i.i.i.i.i:                                  ; preds = %bb43.i.i.i
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %18, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*)), !noalias !1331
  unreachable

"_ZN54_$LT$$BP$const$u20$T$u20$as$u20$core..fmt..Pointer$GT$3fmt17h3a7d52fe10e5b00eE.exit": ; preds = %bb43.i.i.i
  %20 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 %18
  %_7.i.i.i.i.i.i.i = sub nuw nsw i16 129, %curr.0.i.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i = bitcast i8* %20 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %21 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i, i16 %_7.i.i.i.i.i.i.i), !noalias !1331
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %10), !noalias !1331
  store i8 %2, i8* %1, align 1, !noalias !1328
  store i16 %old_width.1.i, i16* %3, align 1, !noalias !1328
  store i32 %old_flags.i, i32* %4, align 1, !noalias !1328
  ret i1 %21
}

; <*const T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN52_$LT$$BP$const$u20$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h8432cd9af3f12b55E"(%"task::wake::RawWakerVTable"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i.i.i = alloca [128 x i8], align 1
  %0 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 7, i32 0
  %1 = load i8, i8* %0, align 1, !range !87, !noalias !1334
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 7, i32 1
  %old_width.1.i = load i16, i16* %2, align 1, !noalias !1334
  %3 = bitcast %"fmt::Formatter"* %f to i32*
  %old_flags.i = load i32, i32* %3, align 1, !noalias !1334
  %_2.i.i = and i32 %old_flags.i, 4
  %4 = icmp eq i32 %_2.i.i, 0
  br i1 %4, label %bb9.i, label %bb3.i

bb3.i:                                            ; preds = %start
  %5 = or i32 %old_flags.i, 8
  store i32 %5, i32* %3, align 1, !noalias !1334
  %6 = icmp eq i8 %1, 0
  br i1 %6, label %bb6.i, label %bb9.i

bb6.i:                                            ; preds = %bb3.i
  store i8 1, i8* %0, align 1, !noalias !1334
  store i16 6, i16* %2, align 1, !noalias !1334
  br label %bb9.i

bb9.i:                                            ; preds = %bb6.i, %bb3.i, %start
  %7 = phi i32 [ %old_flags.i, %start ], [ %5, %bb6.i ], [ %5, %bb3.i ]
  %8 = or i32 %7, 4
  store i32 %8, i32* %3, align 1, !noalias !1334
  %9 = bitcast %"task::wake::RawWakerVTable"** %self to i16*
  %_2023.i = load i16, i16* %9, align 1, !alias.scope !1334
  %10 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %10), !noalias !1337
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %10, i8 undef, i16 128, i1 false), !noalias !1337
  %11 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 128
  br label %bb15.i.i.i

bb15.i.i.i:                                       ; preds = %bb15.i.i.i, %bb9.i
  %iter.sroa.4.0.i.i.i = phi i8* [ %11, %bb9.i ], [ %12, %bb15.i.i.i ]
  %x.0.i.i.i = phi i16 [ %_2023.i, %bb9.i ], [ %13, %bb15.i.i.i ]
  %curr.0.i.i.i = phi i16 [ 128, %bb9.i ], [ %18, %bb15.i.i.i ]
  %12 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i.i.i, i16 -1
  %13 = lshr i16 %x.0.i.i.i, 4
  %14 = trunc i16 %x.0.i.i.i to i8
  %15 = and i8 %14, 15
  %_5.i9.i.i.i = icmp ult i8 %15, 10
  %16 = or i8 %15, 48
  %17 = add nuw nsw i8 %15, 87
  %.0.i15.i.i.i = select i1 %_5.i9.i.i.i, i8 %16, i8 %17
  store i8 %.0.i15.i.i.i, i8* %12, align 1, !noalias !1337
  %18 = add nsw i16 %curr.0.i.i.i, -1
  %19 = icmp eq i16 %13, 0
  br i1 %19, label %bb43.i.i.i, label %bb15.i.i.i

bb43.i.i.i:                                       ; preds = %bb15.i.i.i
  %_3.i.i.i.i.i.i = icmp ugt i16 %18, 128
  br i1 %_3.i.i.i.i.i.i, label %bb2.i.i.i.i.i.i, label %"_ZN54_$LT$$BP$const$u20$T$u20$as$u20$core..fmt..Pointer$GT$3fmt17h4bb8307c358d88b5E.exit"

bb2.i.i.i.i.i.i:                                  ; preds = %bb43.i.i.i
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %18, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*)), !noalias !1337
  unreachable

"_ZN54_$LT$$BP$const$u20$T$u20$as$u20$core..fmt..Pointer$GT$3fmt17h4bb8307c358d88b5E.exit": ; preds = %bb43.i.i.i
  %20 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 %18
  %_7.i.i.i.i.i.i.i = sub nuw nsw i16 129, %curr.0.i.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i = bitcast i8* %20 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %21 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i, i16 %_7.i.i.i.i.i.i.i), !noalias !1337
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %10), !noalias !1337
  store i8 %1, i8* %0, align 1, !noalias !1334
  store i16 %old_width.1.i, i16* %2, align 1, !noalias !1334
  store i32 %old_flags.i, i32* %3, align 1, !noalias !1334
  ret i1 %21
}

; <<core::cell::RefCell<T> as core::fmt::Debug>::fmt::BorrowedPlaceholder as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN127_$LT$$LT$core..cell..RefCell$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$..fmt..BorrowedPlaceholder$u20$as$u20$core..fmt..Debug$GT$3fmt17hdcfbd5d8a04f586fE"(%"fmt::{{impl}}::fmt::BorrowedPlaceholder"* noalias nocapture nonnull readonly align 1 %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %0 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i = load {}*, {}** %0, align 1, !noalias !1340, !nonnull !568
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %2 = bitcast [3 x i16]** %1 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %2, align 1, !noalias !1340, !nonnull !568
  %3 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i, i16 3
  %4 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %3, align 1, !invariant.load !568, !noalias !1340, !nonnull !568
  %5 = tail call zeroext addrspace(1) i1 %4({}* nonnull align 1 %_3.0.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [10 x i8] }>* @alloc18734 to [0 x i8]*), i16 10)
  ret i1 %5
}

; core::slice::memchr::memchr
; Function Attrs: uwtable
define { i8, i16 } @_ZN4core5slice6memchr6memchr17he405907f4f903a64E(i8 %0, [0 x i8]* noalias nonnull readonly align 1 %text.0, i16 %text.1) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_7.i.i = ptrtoint [0 x i8]* %text.0 to i16
  %pmoda.i.i = and i16 %_7.i.i, 1
  %_10.i.i = icmp eq i16 %pmoda.i.i, 0
  %1 = sub nuw nsw i16 2, %pmoda.i.i
  %_1158 = icmp eq i16 %1, 0
  %_11 = or i1 %_10.i.i, %_1158
  br i1 %_11, label %bb14, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit"

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit": ; preds = %start
  %2 = icmp ugt i16 %1, %text.1
  %.0.sroa.speculated.i.i.i = select i1 %2, i16 %text.1, i16 %1
  %3 = getelementptr inbounds [0 x i8], [0 x i8]* %text.0, i16 0, i16 %.0.sroa.speculated.i.i.i
  %_13.i22.i28 = icmp eq i16 %.0.sroa.speculated.i.i.i, 0
  br i1 %_13.i22.i28, label %bb14, label %bb16.i34.preheader

bb16.i34.preheader:                               ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit"
  %4 = getelementptr [0 x i8], [0 x i8]* %text.0, i16 0, i16 0
  br label %bb16.i34

bb16.i34:                                         ; preds = %bb16.i34.preheader, %bb18.i37
  %_16.i24.i31 = phi i8* [ %5, %bb18.i37 ], [ %4, %bb16.i34.preheader ]
  %i.023.i32 = phi i16 [ %_38.0.i35, %bb18.i37 ], [ 0, %bb16.i34.preheader ]
  %5 = getelementptr inbounds i8, i8* %_16.i24.i31, i16 1
  %.val.i33 = load i8, i8* %_16.i24.i31, align 1, !noalias !1343
  %6 = icmp eq i8 %.val.i33, %0
  br i1 %6, label %bb12, label %bb18.i37

bb18.i37:                                         ; preds = %bb16.i34
  %_38.0.i35 = add nuw nsw i16 %i.023.i32, 1
  %_13.i.i36 = icmp eq i8* %5, %3
  br i1 %_13.i.i36, label %bb14, label %bb16.i34

bb12:                                             ; preds = %bb16.i34
  %_34.i38 = icmp ult i16 %i.023.i32, %.0.sroa.speculated.i.i.i
  tail call addrspace(1) void @llvm.assume(i1 %_34.i38) #20, !noalias !1343
  br label %bb13

bb13:                                             ; preds = %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$8position17hc163c40eb14fdc5dE.exit", %bb12
  %.sroa.3.0 = phi i16 [ %i.023.i32, %bb12 ], [ %25, %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$8position17hc163c40eb14fdc5dE.exit" ]
  %.sroa.0.0 = phi i8 [ 1, %bb12 ], [ %.sroa.0.0.i18, %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$8position17hc163c40eb14fdc5dE.exit" ]
  %7 = insertvalue { i8, i16 } undef, i8 %.sroa.0.0, 0
  %8 = insertvalue { i8, i16 } %7, i16 %.sroa.3.0, 1
  ret { i8, i16 } %8

bb14:                                             ; preds = %bb18.i37, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit", %start
  %offset.0 = phi i16 [ 0, %start ], [ 0, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit" ], [ %.0.sroa.speculated.i.i.i, %bb18.i37 ]
  %_3.i22 = zext i8 %0 to i16
  %_2.i23 = shl nuw i16 %_3.i22, 8
  %9 = or i16 %_2.i23, %_3.i22
  %_30 = icmp ugt i16 %text.1, 3
  br i1 %_30, label %bb17.preheader, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit"

bb17.preheader:                                   ; preds = %bb14
  %_36 = add i16 %text.1, -4
  %_3461 = icmp ugt i16 %offset.0, %_36
  br i1 %_3461, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit", label %bb19

bb19:                                             ; preds = %bb17.preheader, %bb28
  %offset.162 = phi i16 [ %16, %bb28 ], [ %offset.0, %bb17.preheader ]
  %10 = getelementptr inbounds [0 x i8], [0 x i8]* %text.0, i16 0, i16 %offset.162
  %_41 = bitcast i8* %10 to i16*
  %u = load i16, i16* %_41, align 1
  %_49 = add i16 %offset.162, 2
  %11 = getelementptr inbounds [0 x i8], [0 x i8]* %text.0, i16 0, i16 %_49
  %_46 = bitcast i8* %11 to i16*
  %v = load i16, i16* %_46, align 1
  %_53 = xor i16 %u, %9
  %12 = add i16 %_53, -257
  %_6.i19 = and i16 %_53, -32640
  %_3.i20 = xor i16 %_6.i19, -32640
  %_2.i21 = and i16 %_3.i20, %12
  %_57 = xor i16 %v, %9
  %13 = add i16 %_57, -257
  %_6.i = and i16 %_57, -32640
  %_3.i = xor i16 %_6.i, -32640
  %_2.i = and i16 %_3.i, %13
  %14 = or i16 %_2.i, %_2.i21
  %15 = icmp eq i16 %14, 0
  br i1 %15, label %bb28, label %bb31

bb28:                                             ; preds = %bb19
  %16 = add i16 %offset.162, 4
  %_34 = icmp ugt i16 %16, %_36
  br i1 %_34, label %bb31, label %bb19

bb31:                                             ; preds = %bb28, %bb19
  %offset.2 = phi i16 [ %offset.162, %bb19 ], [ %16, %bb28 ]
  %_3.i.i.i = icmp ugt i16 %offset.2, %text.1
  br i1 %_3.i.i.i, label %bb2.i.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit"

bb2.i.i.i:                                        ; preds = %bb31
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %offset.2, i16 %text.1, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18738 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit": ; preds = %bb17.preheader, %bb14, %bb31
  %offset.268 = phi i16 [ %offset.2, %bb31 ], [ %offset.0, %bb14 ], [ %offset.0, %bb17.preheader ]
  %17 = getelementptr inbounds [0 x i8], [0 x i8]* %text.0, i16 0, i16 %offset.268
  %18 = getelementptr inbounds [0 x i8], [0 x i8]* %text.0, i16 0, i16 %text.1
  %19 = ptrtoint i8* %17 to i16
  %20 = ptrtoint i8* %18 to i16
  %21 = sub nuw i16 %20, %19
  %_13.i22.i = icmp eq i16 %offset.268, %text.1
  br i1 %_13.i22.i, label %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$8position17hc163c40eb14fdc5dE.exit", label %bb16.i.preheader

bb16.i.preheader:                                 ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit"
  %22 = sub i16 %text.1, %offset.268
  br label %bb16.i

bb16.i:                                           ; preds = %bb16.i.preheader, %bb18.i
  %_16.i24.i = phi i8* [ %23, %bb18.i ], [ %17, %bb16.i.preheader ]
  %i.023.i = phi i16 [ %_38.0.i, %bb18.i ], [ 0, %bb16.i.preheader ]
  %23 = getelementptr inbounds i8, i8* %_16.i24.i, i16 1
  %.val.i = load i8, i8* %_16.i24.i, align 1, !noalias !1346
  %24 = icmp eq i8 %.val.i, %0
  br i1 %24, label %bb19.i, label %bb18.i

bb18.i:                                           ; preds = %bb16.i
  %_38.0.i = add nuw i16 %i.023.i, 1
  %_13.i.i = icmp eq i8* %23, %18
  br i1 %_13.i.i, label %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$8position17hc163c40eb14fdc5dE.exit", label %bb16.i

bb19.i:                                           ; preds = %bb16.i
  %_34.i = icmp ult i16 %i.023.i, %21
  tail call addrspace(1) void @llvm.assume(i1 %_34.i) #20, !noalias !1346
  br label %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$8position17hc163c40eb14fdc5dE.exit"

"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$8position17hc163c40eb14fdc5dE.exit": ; preds = %bb18.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit", %bb19.i
  %i.019.i = phi i16 [ %i.023.i, %bb19.i ], [ 0, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit" ], [ %22, %bb18.i ]
  %.sroa.0.0.i18 = phi i8 [ 1, %bb19.i ], [ 0, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit" ], [ 0, %bb18.i ]
  %25 = add i16 %i.019.i, %offset.268
  br label %bb13
}

; core::slice::memchr::memrchr
; Function Attrs: uwtable
define { i8, i16 } @_ZN4core5slice6memchr7memrchr17h7aaeb9a76b119b70E(i8 %0, [0 x i8]* noalias nonnull readonly align 1 %text.0, i16 %text.1) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %1 = getelementptr [0 x i8], [0 x i8]* %text.0, i16 0, i16 0
  %_51.i = and i16 %text.1, -4
  %2 = getelementptr inbounds [0 x i8], [0 x i8]* %text.0, i16 0, i16 %_51.i
  %3 = getelementptr inbounds [0 x i8], [0 x i8]* %text.0, i16 0, i16 %text.1
  %4 = ptrtoint i8* %3 to i16
  %_19.i33 = ptrtoint i8* %2 to i16
  %5 = sub nuw i16 %4, %_19.i33
  br label %bb13.i38

bb13.i38:                                         ; preds = %bb17.i40, %start
  %_12.i.i35 = phi i8* [ %3, %start ], [ %6, %bb17.i40 ]
  %i.0.i36 = phi i16 [ %5, %start ], [ %7, %bb17.i40 ]
  %_13.i.i37 = icmp eq i8* %2, %_12.i.i35
  br i1 %_13.i.i37, label %bb9, label %bb17.i40

bb17.i40:                                         ; preds = %bb13.i38
  %6 = getelementptr inbounds i8, i8* %_12.i.i35, i16 -1
  %7 = add i16 %i.0.i36, -1
  %.val.i39 = load i8, i8* %6, align 1, !noalias !1349
  %8 = icmp eq i8 %.val.i39, %0
  br i1 %8, label %bb10, label %bb13.i38

bb9:                                              ; preds = %bb13.i38
  %_3.i29 = zext i8 %0 to i16
  %_2.i30 = shl nuw i16 %_3.i29, 8
  %9 = or i16 %_2.i30, %_3.i29
  br label %bb14

bb10:                                             ; preds = %bb17.i40
  %_34.i41 = icmp ult i16 %7, %5
  tail call addrspace(1) void @llvm.assume(i1 %_34.i41), !noalias !1349
  %_33 = add i16 %7, %_51.i
  br label %bb11

bb11:                                             ; preds = %bb13.i, %bb19.i, %bb10
  %.sroa.3.0 = phi i16 [ %_33, %bb10 ], [ %20, %bb19.i ], [ undef, %bb13.i ]
  %.sroa.0.0 = phi i8 [ 1, %bb10 ], [ 1, %bb19.i ], [ 0, %bb13.i ]
  %10 = insertvalue { i8, i16 } undef, i8 %.sroa.0.0, 0
  %11 = insertvalue { i8, i16 } %10, i16 %.sroa.3.0, 1
  ret { i8, i16 } %11

bb14:                                             ; preds = %bb16, %bb9
  %offset.0 = phi i16 [ %_51.i, %bb9 ], [ %_46, %bb16 ]
  %_39 = icmp eq i16 %offset.0, 0
  br i1 %_39, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit", label %bb16

bb16:                                             ; preds = %bb14
  %_46 = add i16 %offset.0, -4
  %12 = getelementptr inbounds [0 x i8], [0 x i8]* %text.0, i16 0, i16 %_46
  %_43 = bitcast i8* %12 to i16*
  %u = load i16, i16* %_43, align 1
  %_56 = add i16 %offset.0, -2
  %13 = getelementptr inbounds [0 x i8], [0 x i8]* %text.0, i16 0, i16 %_56
  %_53 = bitcast i8* %13 to i16*
  %v = load i16, i16* %_53, align 1
  %_62 = xor i16 %u, %9
  %14 = add i16 %_62, -257
  %_6.i26 = and i16 %_62, -32640
  %_3.i27 = xor i16 %_6.i26, -32640
  %_2.i28 = and i16 %_3.i27, %14
  %_66 = xor i16 %v, %9
  %15 = add i16 %_66, -257
  %_6.i = and i16 %_66, -32640
  %_3.i = xor i16 %_6.i, -32640
  %_2.i = and i16 %_3.i, %15
  %16 = or i16 %_2.i, %_2.i28
  %17 = icmp eq i16 %16, 0
  br i1 %17, label %bb14, label %bb27

bb27:                                             ; preds = %bb16
  %_8.i.i.i = icmp ugt i16 %offset.0, %text.1
  br i1 %_8.i.i.i, label %bb5.i.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit"

bb5.i.i.i:                                        ; preds = %bb27
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %offset.0, i16 %text.1, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18742 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit": ; preds = %bb14, %bb27
  %offset.0.lcssa65 = phi i16 [ %offset.0, %bb27 ], [ 0, %bb14 ]
  %18 = getelementptr inbounds [0 x i8], [0 x i8]* %text.0, i16 0, i16 %offset.0.lcssa65
  br label %bb13.i

bb13.i:                                           ; preds = %bb17.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit"
  %_12.i.i = phi i8* [ %18, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit" ], [ %19, %bb17.i ]
  %i.0.i = phi i16 [ %offset.0.lcssa65, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit" ], [ %20, %bb17.i ]
  %_13.i.i = icmp eq i8* %1, %_12.i.i
  br i1 %_13.i.i, label %bb11, label %bb17.i

bb17.i:                                           ; preds = %bb13.i
  %19 = getelementptr inbounds i8, i8* %_12.i.i, i16 -1
  %20 = add i16 %i.0.i, -1
  %.val.i = load i8, i8* %19, align 1, !noalias !1352
  %21 = icmp eq i8 %.val.i, %0
  br i1 %21, label %bb19.i, label %bb13.i

bb19.i:                                           ; preds = %bb17.i
  %_34.i = icmp ult i16 %20, %offset.0.lcssa65
  tail call addrspace(1) void @llvm.assume(i1 %_34.i), !noalias !1352
  br label %bb11
}

; core::slice::slice_index_len_fail
; Function Attrs: cold noinline noreturn uwtable
define void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %0, i16 %1, %"panic::Location"* noalias readonly align 1 dereferenceable(12) %2) unnamed_addr addrspace(1) #10 {
start:
  %_10 = alloca [2 x { i8*, i8 addrspace(1)* }], align 1
  %_3 = alloca %"fmt::Arguments", align 1
  %len = alloca i16, align 1
  %index = alloca i16, align 1
  store i16 %0, i16* %index, align 1
  store i16 %1, i16* %len, align 1
  %3 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_3, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %3)
  %4 = bitcast [2 x { i8*, i8 addrspace(1)* }]* %_10 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %4)
  %5 = bitcast [2 x { i8*, i8 addrspace(1)* }]* %_10 to i16**
  store i16* %index, i16** %5, align 1
  %6 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_10, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u16$GT$3fmt17ha65397985f1509e1E" to i8 addrspace(1)*), i8 addrspace(1)** %6, align 1
  %7 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_10, i16 0, i16 1, i32 0
  %8 = bitcast i8** %7 to i16**
  store i16* %len, i16** %8, align 1
  %9 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_10, i16 0, i16 1, i32 1
  store i8 addrspace(1)* bitcast (i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u16$GT$3fmt17ha65397985f1509e1E" to i8 addrspace(1)*), i8 addrspace(1)** %9, align 1
  %10 = bitcast %"fmt::Arguments"* %_3 to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8], i8*, [2 x i8] }>* @alloc15712 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %10, align 1, !alias.scope !1355, !noalias !1358
  %11 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_3, i16 0, i32 1, i32 1
  store i16 2, i16* %11, align 1, !alias.scope !1355, !noalias !1358
  %12 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_3, i16 0, i32 3, i32 0
  store i8* null, i8** %12, align 1, !alias.scope !1355, !noalias !1358
  %13 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_3, i16 0, i32 5, i32 0
  %14 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %13 to [2 x { i8*, i8 addrspace(1)* }]**
  store [2 x { i8*, i8 addrspace(1)* }]* %_10, [2 x { i8*, i8 addrspace(1)* }]** %14, align 1, !alias.scope !1355, !noalias !1358
  %15 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_3, i16 0, i32 5, i32 1
  store i16 2, i16* %15, align 1, !alias.scope !1355, !noalias !1358
; call core::panicking::panic_fmt
  call addrspace(1) void @_ZN4core9panicking9panic_fmt17hb7ee2cb815ea49cfE(%"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_3, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) %2)
  unreachable
}

; core::slice::slice_index_order_fail
; Function Attrs: cold noinline noreturn uwtable
define void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %0, i16 %1, %"panic::Location"* noalias readonly align 1 dereferenceable(12) %2) unnamed_addr addrspace(1) #10 {
start:
  %_10 = alloca [2 x { i8*, i8 addrspace(1)* }], align 1
  %_3 = alloca %"fmt::Arguments", align 1
  %end = alloca i16, align 1
  %index = alloca i16, align 1
  store i16 %0, i16* %index, align 1
  store i16 %1, i16* %end, align 1
  %3 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_3, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %3)
  %4 = bitcast [2 x { i8*, i8 addrspace(1)* }]* %_10 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %4)
  %5 = bitcast [2 x { i8*, i8 addrspace(1)* }]* %_10 to i16**
  store i16* %index, i16** %5, align 1
  %6 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_10, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u16$GT$3fmt17ha65397985f1509e1E" to i8 addrspace(1)*), i8 addrspace(1)** %6, align 1
  %7 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_10, i16 0, i16 1, i32 0
  %8 = bitcast i8** %7 to i16**
  store i16* %end, i16** %8, align 1
  %9 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_10, i16 0, i16 1, i32 1
  store i8 addrspace(1)* bitcast (i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u16$GT$3fmt17ha65397985f1509e1E" to i8 addrspace(1)*), i8 addrspace(1)** %9, align 1
  %10 = bitcast %"fmt::Arguments"* %_3 to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8], i8*, [2 x i8] }>* @alloc15678 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %10, align 1, !alias.scope !1361, !noalias !1364
  %11 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_3, i16 0, i32 1, i32 1
  store i16 2, i16* %11, align 1, !alias.scope !1361, !noalias !1364
  %12 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_3, i16 0, i32 3, i32 0
  store i8* null, i8** %12, align 1, !alias.scope !1361, !noalias !1364
  %13 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_3, i16 0, i32 5, i32 0
  %14 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %13 to [2 x { i8*, i8 addrspace(1)* }]**
  store [2 x { i8*, i8 addrspace(1)* }]* %_10, [2 x { i8*, i8 addrspace(1)* }]** %14, align 1, !alias.scope !1361, !noalias !1364
  %15 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_3, i16 0, i32 5, i32 1
  store i16 2, i16* %15, align 1, !alias.scope !1361, !noalias !1364
; call core::panicking::panic_fmt
  call addrspace(1) void @_ZN4core9panicking9panic_fmt17hb7ee2cb815ea49cfE(%"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_3, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) %2)
  unreachable
}

; core::slice::slice_index_overflow_fail
; Function Attrs: cold noinline noreturn uwtable
define void @_ZN4core5slice25slice_index_overflow_fail17h6148c45e89e62a5aE(%"panic::Location"* noalias readonly align 1 dereferenceable(12) %0) unnamed_addr addrspace(1) #10 {
start:
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [44 x i8] }>* @alloc18757 to [0 x i8]*), i16 44, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) %0)
  unreachable
}

; <core::slice::Split<T,P> as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN68_$LT$core..slice..Split$LT$T$C$P$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17he272ca154075f437E"(%"slice::Split<u8, str::IsAsciiWhitespace>"* noalias readonly align 1 dereferenceable(5) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_8 = alloca %"fmt::builders::DebugStruct", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_8, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !1367, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !1367, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !1367, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19205 to [0 x i8]*), i16 5), !noalias !1376
  %7 = bitcast %"fmt::builders::DebugStruct"* %_8 to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !1376, !noalias !1377
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_8, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !1376, !noalias !1377
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_8, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !1376, !noalias !1377
  %_14.0 = bitcast %"slice::Split<u8, str::IsAsciiWhitespace>"* %self to {}*
; call core::fmt::builders::DebugStruct::field
  %_6 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %_8, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18760 to [0 x i8]*), i16 1, {}* nonnull align 1 %_14.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({ [0 x i8]*, i16 }*) addrspace(1)*, i16, i16, i1 ({ [0 x i8]*, i16 }*, %"fmt::Formatter"*) addrspace(1)* }* @vtable.j to [3 x i16]*))
  %_21 = getelementptr inbounds %"slice::Split<u8, str::IsAsciiWhitespace>", %"slice::Split<u8, str::IsAsciiWhitespace>"* %self, i16 0, i32 5
  %_19.0 = bitcast i8* %_21 to {}*
; call core::fmt::builders::DebugStruct::field
  %_4 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %_6, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [8 x i8] }>* @alloc18813 to [0 x i8]*), i16 8, {}* nonnull align 1 %_19.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8*) addrspace(1)*, i16, i16, i1 (i8*, %"fmt::Formatter"*) addrspace(1)* }* @vtable.k to [3 x i16]*))
  %11 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_4, i16 0, i32 5
  %12 = load i8, i8* %11, align 1, !range !87
  %_2.i = icmp eq i8 %12, 0
  %.phi.trans.insert.i = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_4, i16 0, i32 3
  %.pre.i = load i8, i8* %.phi.trans.insert.i, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %13 = bitcast %"fmt::builders::DebugStruct"* %_4 to i32**
  %_21.i.i.i.i = load i32*, i32** %13, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !1378, !noalias !1381
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %14 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %15 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %15, align 1, !nonnull !568
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %17 = bitcast [3 x i16]** %16 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %17, align 1, !nonnull !568
  %18 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %19 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %18, align 1, !invariant.load !568, !nonnull !568
  br i1 %14, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %20 = call zeroext addrspace(1) i1 %19({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %21 = call zeroext addrspace(1) i1 %19({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %21, %bb3.i.i.i ], [ %20, %bb2.i.i.i ]
  %22 = zext i1 %.0.i.i to i8
  store i8 %22, i8* %.phi.trans.insert.i, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %23 = phi i8 [ %22, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %24 = icmp ne i8 %23, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %24
}

; <i8 as core::slice::SliceContains>::slice_contains
; Function Attrs: uwtable
define zeroext i1 @"_ZN49_$LT$i8$u20$as$u20$core..slice..SliceContains$GT$14slice_contains17h76e02f3fb2b6fcc7E"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self, [0 x i8]* noalias nonnull readonly align 1 %x.0, i16 %x.1) unnamed_addr addrspace(1) #2 {
start:
  %_4 = load i8, i8* %self, align 1
; call core::slice::memchr::memchr
  %0 = tail call addrspace(1) { i8, i16 } @_ZN4core5slice6memchr6memchr17he405907f4f903a64E(i8 %_4, [0 x i8]* noalias nonnull readonly align 1 %x.0, i16 %x.1)
  %.fca.0.extract = extractvalue { i8, i16 } %0, 0
  %1 = icmp ne i8 %.fca.0.extract, 0
  ret i1 %1
}

; <core::str::pattern::CharPredicateSearcher<F> as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN87_$LT$core..str..pattern..CharPredicateSearcher$LT$F$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17he8b27b6705a5c204E"(%"str::pattern::CharPredicateSearcher<str::IsWhitespace>"* noalias readonly align 1 dereferenceable(10) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_8 = alloca %"fmt::builders::DebugStruct", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_8, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !1384, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !1384, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !1384, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [21 x i8] }>* @alloc18764 to [0 x i8]*), i16 21), !noalias !1393
  %7 = bitcast %"fmt::builders::DebugStruct"* %_8 to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !1393, !noalias !1394
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_8, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !1393, !noalias !1394
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_8, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !1393, !noalias !1394
  %_14.0 = bitcast %"str::pattern::CharPredicateSearcher<str::IsWhitespace>"* %self to {}*
; call core::fmt::builders::DebugStruct::field
  %_6 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %_8, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [8 x i8] }>* @alloc19174 to [0 x i8]*), i16 8, {}* nonnull align 1 %_14.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({ [0 x i8]*, i16 }*) addrspace(1)*, i16, i16, i1 ({ [0 x i8]*, i16 }*, %"fmt::Formatter"*) addrspace(1)* }* @vtable.l to [3 x i16]*))
  %11 = getelementptr inbounds %"str::pattern::CharPredicateSearcher<str::IsWhitespace>", %"str::pattern::CharPredicateSearcher<str::IsWhitespace>"* %self, i16 0, i32 1, i32 5
  %_19.0 = bitcast %"str::CharIndices"* %11 to {}*
; call core::fmt::builders::DebugStruct::field
  %_4 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %_6, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [12 x i8] }>* @alloc19171 to [0 x i8]*), i16 12, {}* nonnull align 1 %_19.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"str::CharIndices"*) addrspace(1)*, i16, i16, i1 (%"str::CharIndices"*, %"fmt::Formatter"*) addrspace(1)* }* @vtable.m to [3 x i16]*))
  %12 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_4, i16 0, i32 5
  %13 = load i8, i8* %12, align 1, !range !87
  %_2.i = icmp eq i8 %13, 0
  %.phi.trans.insert.i = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_4, i16 0, i32 3
  %.pre.i = load i8, i8* %.phi.trans.insert.i, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %14 = bitcast %"fmt::builders::DebugStruct"* %_4 to i32**
  %_21.i.i.i.i = load i32*, i32** %14, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !1395, !noalias !1398
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %15 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %16, align 1, !nonnull !568
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %18 = bitcast [3 x i16]** %17 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %20 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %19, align 1, !invariant.load !568, !nonnull !568
  br i1 %15, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %21 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %22 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %22, %bb3.i.i.i ], [ %21, %bb2.i.i.i ]
  %23 = zext i1 %.0.i.i to i8
  store i8 %23, i8* %.phi.trans.insert.i, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %24 = phi i8 [ %23, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %25 = icmp ne i8 %24, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %25
}

; core::str::pattern::StrSearcher::new
; Function Attrs: uwtable
define void @_ZN4core3str7pattern11StrSearcher3new17hb50c80c6c421d4b0E(%"str::pattern::StrSearcher"* noalias nocapture sret dereferenceable(31) %0, [0 x i8]* noalias nonnull readonly align 1 %haystack.0, i16 %haystack.1, [0 x i8]* noalias nonnull readonly align 1 %needle.0, i16 %needle.1) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  switch i16 %needle.1, label %bb4.i.i [
    i16 0, label %bb3
    i16 1, label %_ZN4core3str7pattern14TwoWaySearcher14maximal_suffix17h940471553bbb4b53E.exit41.i
  ]

bb4.i.i:                                          ; preds = %start, %bb26.i.i
  %_930.i.i = phi i16 [ %_9.i.i, %bb26.i.i ], [ 1, %start ]
  %left.029.i.i = phi i16 [ %left.1.i.i, %bb26.i.i ], [ 0, %start ]
  %right.028.i.i = phi i16 [ %right.1.i.i, %bb26.i.i ], [ 1, %start ]
  %offset.027.i.i = phi i16 [ %offset.1.i.i, %bb26.i.i ], [ 0, %start ]
  %period.026.i.i = phi i16 [ %period.1.i.i, %bb26.i.i ], [ 1, %start ]
  %1 = getelementptr inbounds [0 x i8], [0 x i8]* %needle.0, i16 0, i16 %_930.i.i
  %a.i.i = load i8, i8* %1, align 1, !alias.scope !1401, !noalias !1406
  %_15.i.i = add i16 %offset.027.i.i, %left.029.i.i
  %_19.i.i = icmp ult i16 %_15.i.i, %needle.1
  br i1 %_19.i.i, label %bb5.i.i, label %panic.i.i, !prof !4, !misexpect !5

bb5.i.i:                                          ; preds = %bb4.i.i
  %2 = getelementptr inbounds [0 x i8], [0 x i8]* %needle.0, i16 0, i16 %_15.i.i
  %b.i.i = load i8, i8* %2, align 1, !alias.scope !1401, !noalias !1406
  %_22.i.i = icmp ult i8 %a.i.i, %b.i.i
  br i1 %_22.i.i, label %bb19.i.i, label %bb7.i.i

bb7.i.i:                                          ; preds = %bb5.i.i
  %_36.i.i = icmp eq i8 %a.i.i, %b.i.i
  br i1 %_36.i.i, label %bb21.i.i, label %bb20.i.i

bb19.i.i:                                         ; preds = %bb5.i.i
  %_32.i.i = add i16 %right.028.i.i, 1
  %3 = add i16 %_32.i.i, %offset.027.i.i
  %4 = sub i16 %3, %left.029.i.i
  br label %bb26.i.i

bb20.i.i:                                         ; preds = %bb7.i.i
  %5 = add i16 %right.028.i.i, 1
  br label %bb26.i.i

bb21.i.i:                                         ; preds = %bb7.i.i
  %_40.i.i = add i16 %offset.027.i.i, 1
  %_39.i.i = icmp eq i16 %_40.i.i, %period.026.i.i
  %spec.select.i.i = select i1 %_39.i.i, i16 0, i16 %_40.i.i
  %6 = select i1 %_39.i.i, i16 %_40.i.i, i16 0
  %spec.select21.i.i = add i16 %6, %right.028.i.i
  br label %bb26.i.i

bb26.i.i:                                         ; preds = %bb21.i.i, %bb20.i.i, %bb19.i.i
  %period.1.i.i = phi i16 [ %4, %bb19.i.i ], [ 1, %bb20.i.i ], [ %period.026.i.i, %bb21.i.i ]
  %offset.1.i.i = phi i16 [ 0, %bb19.i.i ], [ 0, %bb20.i.i ], [ %spec.select.i.i, %bb21.i.i ]
  %right.1.i.i = phi i16 [ %3, %bb19.i.i ], [ %5, %bb20.i.i ], [ %spec.select21.i.i, %bb21.i.i ]
  %left.1.i.i = phi i16 [ %left.029.i.i, %bb19.i.i ], [ %right.028.i.i, %bb20.i.i ], [ %left.029.i.i, %bb21.i.i ]
  %_9.i.i = add i16 %right.1.i.i, %offset.1.i.i
  %_3.i.i.i.i = icmp ult i16 %_9.i.i, %needle.1
  br i1 %_3.i.i.i.i, label %bb4.i.i, label %bb4.i18.i

panic.i.i:                                        ; preds = %bb4.i.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_15.i.i, i16 %needle.1, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18774 to %"panic::Location"*)), !noalias !1408
  unreachable

bb4.i18.i:                                        ; preds = %bb26.i.i, %bb26.i39.i
  %_930.i10.i = phi i16 [ %_9.i37.i, %bb26.i39.i ], [ 1, %bb26.i.i ]
  %left.029.i11.i = phi i16 [ %left.1.i36.i, %bb26.i39.i ], [ 0, %bb26.i.i ]
  %right.028.i12.i = phi i16 [ %right.1.i35.i, %bb26.i39.i ], [ 1, %bb26.i.i ]
  %offset.027.i13.i = phi i16 [ %offset.1.i34.i, %bb26.i39.i ], [ 0, %bb26.i.i ]
  %period.026.i14.i = phi i16 [ %period.1.i33.i, %bb26.i39.i ], [ 1, %bb26.i.i ]
  %7 = getelementptr inbounds [0 x i8], [0 x i8]* %needle.0, i16 0, i16 %_930.i10.i
  %a.i15.i = load i8, i8* %7, align 1, !alias.scope !1409, !noalias !1406
  %_15.i16.i = add i16 %offset.027.i13.i, %left.029.i11.i
  %_19.i17.i = icmp ult i16 %_15.i16.i, %needle.1
  br i1 %_19.i17.i, label %bb5.i22.i, label %panic.i40.i, !prof !4, !misexpect !5

bb5.i22.i:                                        ; preds = %bb4.i18.i
  %8 = getelementptr inbounds [0 x i8], [0 x i8]* %needle.0, i16 0, i16 %_15.i16.i
  %b.i19.i = load i8, i8* %8, align 1, !alias.scope !1409, !noalias !1406
  %_28.i21.i = icmp ugt i8 %a.i15.i, %b.i19.i
  br i1 %_28.i21.i, label %bb19.i26.i, label %bb7.i24.i

bb7.i24.i:                                        ; preds = %bb5.i22.i
  %_36.i23.i = icmp eq i8 %a.i15.i, %b.i19.i
  br i1 %_36.i23.i, label %bb21.i32.i, label %bb20.i27.i

bb19.i26.i:                                       ; preds = %bb5.i22.i
  %_32.i25.i = add i16 %right.028.i12.i, 1
  %9 = add i16 %_32.i25.i, %offset.027.i13.i
  %10 = sub i16 %9, %left.029.i11.i
  br label %bb26.i39.i

bb20.i27.i:                                       ; preds = %bb7.i24.i
  %11 = add i16 %right.028.i12.i, 1
  br label %bb26.i39.i

bb21.i32.i:                                       ; preds = %bb7.i24.i
  %_40.i28.i = add i16 %offset.027.i13.i, 1
  %_39.i29.i = icmp eq i16 %_40.i28.i, %period.026.i14.i
  %spec.select.i30.i = select i1 %_39.i29.i, i16 0, i16 %_40.i28.i
  %12 = select i1 %_39.i29.i, i16 %_40.i28.i, i16 0
  %spec.select21.i31.i = add i16 %12, %right.028.i12.i
  br label %bb26.i39.i

bb26.i39.i:                                       ; preds = %bb21.i32.i, %bb20.i27.i, %bb19.i26.i
  %period.1.i33.i = phi i16 [ %10, %bb19.i26.i ], [ 1, %bb20.i27.i ], [ %period.026.i14.i, %bb21.i32.i ]
  %offset.1.i34.i = phi i16 [ 0, %bb19.i26.i ], [ 0, %bb20.i27.i ], [ %spec.select.i30.i, %bb21.i32.i ]
  %right.1.i35.i = phi i16 [ %9, %bb19.i26.i ], [ %11, %bb20.i27.i ], [ %spec.select21.i31.i, %bb21.i32.i ]
  %left.1.i36.i = phi i16 [ %left.029.i11.i, %bb19.i26.i ], [ %right.028.i12.i, %bb20.i27.i ], [ %left.029.i11.i, %bb21.i32.i ]
  %_9.i37.i = add i16 %right.1.i35.i, %offset.1.i34.i
  %_3.i.i.i38.i = icmp ult i16 %_9.i37.i, %needle.1
  br i1 %_3.i.i.i38.i, label %bb4.i18.i, label %_ZN4core3str7pattern14TwoWaySearcher14maximal_suffix17h940471553bbb4b53E.exit41.i

panic.i40.i:                                      ; preds = %bb4.i18.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_15.i16.i, i16 %needle.1, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18774 to %"panic::Location"*)), !noalias !1412
  unreachable

_ZN4core3str7pattern14TwoWaySearcher14maximal_suffix17h940471553bbb4b53E.exit41.i: ; preds = %bb26.i39.i, %start
  %left.0.lcssa.i117.i = phi i16 [ 0, %start ], [ %left.1.i.i, %bb26.i39.i ]
  %period.0.lcssa.i116.i = phi i16 [ %needle.1, %start ], [ %period.1.i.i, %bb26.i39.i ]
  %period.0.lcssa.i8.i = phi i16 [ %needle.1, %start ], [ %period.1.i33.i, %bb26.i39.i ]
  %left.0.lcssa.i9.i = phi i16 [ 0, %start ], [ %left.1.i36.i, %bb26.i39.i ]
  %_14.i = icmp ugt i16 %left.0.lcssa.i117.i, %left.0.lcssa.i9.i
  %_13.sroa.5.0.i = select i1 %_14.i, i16 %period.0.lcssa.i116.i, i16 %period.0.lcssa.i8.i
  %_13.sroa.0.0.i = select i1 %_14.i, i16 %left.0.lcssa.i117.i, i16 %left.0.lcssa.i9.i
  %_8.i.i.i.i = icmp ugt i16 %_13.sroa.0.0.i, %needle.1
  br i1 %_8.i.i.i.i, label %bb5.i.i.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i"

bb5.i.i.i.i:                                      ; preds = %_ZN4core3str7pattern14TwoWaySearcher14maximal_suffix17h940471553bbb4b53E.exit41.i
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %_13.sroa.0.0.i, i16 %needle.1, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18768 to %"panic::Location"*)), !noalias !1406
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i": ; preds = %_ZN4core3str7pattern14TwoWaySearcher14maximal_suffix17h940471553bbb4b53E.exit41.i
  %_32.i = add i16 %_13.sroa.5.0.i, %_13.sroa.0.0.i
  %_3.i.i.i = icmp ult i16 %_32.i, %_13.sroa.5.0.i
  br i1 %_3.i.i.i, label %bb2.i.i.i, label %bb1.i.i.i

bb1.i.i.i:                                        ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i"
  %_8.i.i.i = icmp ugt i16 %_32.i, %needle.1
  br i1 %_8.i.i.i, label %bb5.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i"
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %_13.sroa.5.0.i, i16 %_32.i, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18770 to %"panic::Location"*)), !noalias !1406
  unreachable

bb5.i.i.i:                                        ; preds = %bb1.i.i.i
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %_32.i, i16 %needle.1, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18770 to %"panic::Location"*)), !noalias !1406
  unreachable

bb3.i.i.i:                                        ; preds = %bb1.i.i.i
  %13 = getelementptr inbounds [0 x i8], [0 x i8]* %needle.0, i16 0, i16 %_13.sroa.5.0.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i = bitcast i8* %13 to [0 x i8]*
  %_8.i.i43.i = icmp eq [0 x i8]* %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i, %needle.0
  br i1 %_8.i.i43.i, label %bb2.i79.i.preheader, label %"_ZN4core5slice81_$LT$impl$u20$core..cmp..PartialEq$LT$$u5b$B$u5d$$GT$$u20$for$u20$$u5b$A$u5d$$GT$2eq17h4f494a6a11d48290E.exit.i"

bb2.i79.i.preheader:                              ; preds = %"_ZN4core5slice81_$LT$impl$u20$core..cmp..PartialEq$LT$$u5b$B$u5d$$GT$$u20$for$u20$$u5b$A$u5d$$GT$2eq17h4f494a6a11d48290E.exit.i", %bb3.i.i.i
  br label %bb2.i79.i

"_ZN4core5slice81_$LT$impl$u20$core..cmp..PartialEq$LT$$u5b$B$u5d$$GT$$u20$for$u20$$u5b$A$u5d$$GT$2eq17h4f494a6a11d48290E.exit.i": ; preds = %bb3.i.i.i
  %14 = getelementptr [0 x i8], [0 x i8]* %needle.0, i16 0, i16 0
  %_15.i.i.i = tail call addrspace(1) i32 @memcmp(i8* nonnull %14, i8* nonnull %13, i16 %_13.sroa.0.0.i) #20, !noalias !1406
  %15 = icmp eq i32 %_15.i.i.i, 0
  br i1 %15, label %bb2.i79.i.preheader, label %bb9.i

bb9.i:                                            ; preds = %"_ZN4core5slice81_$LT$impl$u20$core..cmp..PartialEq$LT$$u5b$B$u5d$$GT$$u20$for$u20$$u5b$A$u5d$$GT$2eq17h4f494a6a11d48290E.exit.i"
  %_63.i = sub i16 %needle.1, %_13.sroa.0.0.i
  %16 = icmp ugt i16 %_13.sroa.0.0.i, %_63.i
  %.0.sroa.speculated.i.i.i.i = select i1 %16, i16 %_13.sroa.0.0.i, i16 %_63.i
  %17 = getelementptr inbounds [0 x i8], [0 x i8]* %needle.0, i16 0, i16 %needle.1
  br label %bb7.i.i54.i

bb7.i.i54.i:                                      ; preds = %bb9.i, %bb7.i.i54.i
  %accum.05.i.i49.i = phi i64 [ %21, %bb7.i.i54.i ], [ 0, %bb9.i ]
  %self.sroa.0.04.i.i50.i = phi i8* [ %18, %bb7.i.i54.i ], [ %14, %bb9.i ]
  %18 = getelementptr inbounds i8, i8* %self.sroa.0.04.i.i50.i, i16 1
  %.val.i.i51.i = load i8, i8* %self.sroa.0.04.i.i50.i, align 1, !alias.scope !1413, !noalias !1406
  %19 = and i8 %.val.i.i51.i, 63
  %20 = zext i8 %19 to i64
  %_5.i.i.i52.i = shl nuw i64 1, %20
  %21 = or i64 %_5.i.i.i52.i, %accum.05.i.i49.i
  %_13.i.i.i53.i = icmp eq i8* %18, %17
  br i1 %_13.i.i.i53.i, label %_ZN4core3str7pattern14TwoWaySearcher3new17h6f6ae9055342774bE.exit.loopexit46, label %bb7.i.i54.i

bb2.i79.i:                                        ; preds = %bb2.i79.i.preheader, %bb27.i109.i
  %period.0.i73.i = phi i16 [ %period.1.i104.i, %bb27.i109.i ], [ 1, %bb2.i79.i.preheader ]
  %offset.0.i74.i = phi i16 [ %offset.1.i105.i, %bb27.i109.i ], [ 0, %bb2.i79.i.preheader ]
  %right.0.i75.i = phi i16 [ %right.1.i106.i, %bb27.i109.i ], [ 1, %bb2.i79.i.preheader ]
  %left.0.i76.i = phi i16 [ %left.1.i107.i, %bb27.i109.i ], [ 0, %bb2.i79.i.preheader ]
  %_10.i77.i = add i16 %right.0.i75.i, %offset.0.i74.i
  %_9.i78.i = icmp ult i16 %_10.i77.i, %needle.1
  br i1 %_9.i78.i, label %bb4.i85.i, label %_ZN4core3str7pattern14TwoWaySearcher22reverse_maximal_suffix17h0bdf013e5b5d3481E.exit113.i

bb4.i85.i:                                        ; preds = %bb2.i79.i
  %_18.i80.i = add i16 %right.0.i75.i, 1
  %_18.neg.i81.i = xor i16 %right.0.i75.i, -1
  %_17.neg.i82.i = sub i16 %needle.1, %offset.0.i74.i
  %_15.i83.i = add i16 %_17.neg.i82.i, %_18.neg.i81.i
  %_22.i84.i = icmp ult i16 %_15.i83.i, %needle.1
  br i1 %_22.i84.i, label %bb5.i90.i, label %panic.i111.i, !prof !4, !misexpect !5

bb5.i90.i:                                        ; preds = %bb4.i85.i
  %22 = getelementptr inbounds [0 x i8], [0 x i8]* %needle.0, i16 0, i16 %_15.i83.i
  %a.i86.i = load i8, i8* %22, align 1, !alias.scope !1416, !noalias !1406
  %23 = xor i16 %offset.0.i74.i, -1
  %_26.neg.i87.i = add i16 %23, %needle.1
  %_24.i88.i = sub i16 %_26.neg.i87.i, %left.0.i76.i
  %_31.i89.i = icmp ult i16 %_24.i88.i, %needle.1
  br i1 %_31.i89.i, label %bb6.i94.i, label %panic1.i112.i, !prof !4, !misexpect !5

bb6.i94.i:                                        ; preds = %bb5.i90.i
  %24 = getelementptr inbounds [0 x i8], [0 x i8]* %needle.0, i16 0, i16 %_24.i88.i
  %b.i91.i = load i8, i8* %24, align 1, !alias.scope !1416, !noalias !1406
  %_34.i92.i = icmp ult i8 %a.i86.i, %b.i91.i
  br i1 %_34.i92.i, label %bb20.i98.i, label %bb8.i96.i

bb8.i96.i:                                        ; preds = %bb6.i94.i
  %_48.i95.i = icmp eq i8 %a.i86.i, %b.i91.i
  br i1 %_48.i95.i, label %bb22.i103.i, label %bb27.i109.i

bb20.i98.i:                                       ; preds = %bb6.i94.i
  %_44.i97.i = add i16 %offset.0.i74.i, 1
  %25 = add i16 %_44.i97.i, %right.0.i75.i
  %26 = sub i16 %25, %left.0.i76.i
  br label %bb27.i109.i

bb22.i103.i:                                      ; preds = %bb8.i96.i
  %_52.i99.i = add i16 %offset.0.i74.i, 1
  %_51.i100.i = icmp eq i16 %_52.i99.i, %period.0.i73.i
  %spec.select.i101.i = select i1 %_51.i100.i, i16 0, i16 %_52.i99.i
  %27 = select i1 %_51.i100.i, i16 %_52.i99.i, i16 0
  %spec.select20.i102.i = add i16 %27, %right.0.i75.i
  br label %bb27.i109.i

bb27.i109.i:                                      ; preds = %bb22.i103.i, %bb20.i98.i, %bb8.i96.i
  %period.1.i104.i = phi i16 [ %26, %bb20.i98.i ], [ 1, %bb8.i96.i ], [ %period.0.i73.i, %bb22.i103.i ]
  %offset.1.i105.i = phi i16 [ 0, %bb20.i98.i ], [ 0, %bb8.i96.i ], [ %spec.select.i101.i, %bb22.i103.i ]
  %right.1.i106.i = phi i16 [ %25, %bb20.i98.i ], [ %_18.i80.i, %bb8.i96.i ], [ %spec.select20.i102.i, %bb22.i103.i ]
  %left.1.i107.i = phi i16 [ %left.0.i76.i, %bb20.i98.i ], [ %right.0.i75.i, %bb8.i96.i ], [ %left.0.i76.i, %bb22.i103.i ]
  %_58.i108.i = icmp eq i16 %period.1.i104.i, %_13.sroa.5.0.i
  br i1 %_58.i108.i, label %_ZN4core3str7pattern14TwoWaySearcher22reverse_maximal_suffix17h0bdf013e5b5d3481E.exit113.i, label %bb2.i79.i

panic.i111.i:                                     ; preds = %bb4.i85.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_15.i83.i, i16 %needle.1, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18776 to %"panic::Location"*)), !noalias !1419
  unreachable

panic1.i112.i:                                    ; preds = %bb5.i90.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_24.i88.i, i16 %needle.1, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18778 to %"panic::Location"*)), !noalias !1419
  unreachable

_ZN4core3str7pattern14TwoWaySearcher22reverse_maximal_suffix17h0bdf013e5b5d3481E.exit113.i: ; preds = %bb27.i109.i, %bb2.i79.i
  %left.2.i110.i = phi i16 [ %left.1.i107.i, %bb27.i109.i ], [ %left.0.i76.i, %bb2.i79.i ]
  br label %bb2.i.i

bb2.i.i:                                          ; preds = %bb27.i.i, %_ZN4core3str7pattern14TwoWaySearcher22reverse_maximal_suffix17h0bdf013e5b5d3481E.exit113.i
  %period.0.i.i = phi i16 [ 1, %_ZN4core3str7pattern14TwoWaySearcher22reverse_maximal_suffix17h0bdf013e5b5d3481E.exit113.i ], [ %period.1.i68.i, %bb27.i.i ]
  %offset.0.i.i = phi i16 [ 0, %_ZN4core3str7pattern14TwoWaySearcher22reverse_maximal_suffix17h0bdf013e5b5d3481E.exit113.i ], [ %offset.1.i69.i, %bb27.i.i ]
  %right.0.i.i = phi i16 [ 1, %_ZN4core3str7pattern14TwoWaySearcher22reverse_maximal_suffix17h0bdf013e5b5d3481E.exit113.i ], [ %right.1.i70.i, %bb27.i.i ]
  %left.0.i.i = phi i16 [ 0, %_ZN4core3str7pattern14TwoWaySearcher22reverse_maximal_suffix17h0bdf013e5b5d3481E.exit113.i ], [ %left.1.i71.i, %bb27.i.i ]
  %_10.i.i = add i16 %right.0.i.i, %offset.0.i.i
  %_9.i58.i = icmp ult i16 %_10.i.i, %needle.1
  br i1 %_9.i58.i, label %bb4.i61.i, label %_ZN4core3str7pattern14TwoWaySearcher22reverse_maximal_suffix17h0bdf013e5b5d3481E.exit.i

bb4.i61.i:                                        ; preds = %bb2.i.i
  %_18.i.i = add i16 %right.0.i.i, 1
  %_18.neg.i.i = xor i16 %right.0.i.i, -1
  %_17.neg.i.i = sub i16 %needle.1, %offset.0.i.i
  %_15.i59.i = add i16 %_17.neg.i.i, %_18.neg.i.i
  %_22.i60.i = icmp ult i16 %_15.i59.i, %needle.1
  br i1 %_22.i60.i, label %bb5.i63.i, label %panic.i72.i, !prof !4, !misexpect !5

bb5.i63.i:                                        ; preds = %bb4.i61.i
  %28 = getelementptr inbounds [0 x i8], [0 x i8]* %needle.0, i16 0, i16 %_15.i59.i
  %a.i62.i = load i8, i8* %28, align 1, !alias.scope !1420, !noalias !1406
  %29 = xor i16 %offset.0.i.i, -1
  %_26.neg.i.i = add i16 %29, %needle.1
  %_24.i.i = sub i16 %_26.neg.i.i, %left.0.i.i
  %_31.i.i = icmp ult i16 %_24.i.i, %needle.1
  br i1 %_31.i.i, label %bb6.i.i, label %panic1.i.i, !prof !4, !misexpect !5

bb6.i.i:                                          ; preds = %bb5.i63.i
  %30 = getelementptr inbounds [0 x i8], [0 x i8]* %needle.0, i16 0, i16 %_24.i.i
  %b.i64.i = load i8, i8* %30, align 1, !alias.scope !1420, !noalias !1406
  %_40.i65.i = icmp ugt i8 %a.i62.i, %b.i64.i
  br i1 %_40.i65.i, label %bb20.i66.i, label %bb8.i.i

bb8.i.i:                                          ; preds = %bb6.i.i
  %_48.i.i = icmp eq i8 %a.i62.i, %b.i64.i
  br i1 %_48.i.i, label %bb22.i.i, label %bb27.i.i

bb20.i66.i:                                       ; preds = %bb6.i.i
  %_44.i.i = add i16 %offset.0.i.i, 1
  %31 = add i16 %_44.i.i, %right.0.i.i
  %32 = sub i16 %31, %left.0.i.i
  br label %bb27.i.i

bb22.i.i:                                         ; preds = %bb8.i.i
  %_52.i.i = add i16 %offset.0.i.i, 1
  %_51.i.i = icmp eq i16 %_52.i.i, %period.0.i.i
  %spec.select.i67.i = select i1 %_51.i.i, i16 0, i16 %_52.i.i
  %33 = select i1 %_51.i.i, i16 %_52.i.i, i16 0
  %spec.select20.i.i = add i16 %33, %right.0.i.i
  br label %bb27.i.i

bb27.i.i:                                         ; preds = %bb22.i.i, %bb20.i66.i, %bb8.i.i
  %period.1.i68.i = phi i16 [ %32, %bb20.i66.i ], [ 1, %bb8.i.i ], [ %period.0.i.i, %bb22.i.i ]
  %offset.1.i69.i = phi i16 [ 0, %bb20.i66.i ], [ 0, %bb8.i.i ], [ %spec.select.i67.i, %bb22.i.i ]
  %right.1.i70.i = phi i16 [ %31, %bb20.i66.i ], [ %_18.i.i, %bb8.i.i ], [ %spec.select20.i.i, %bb22.i.i ]
  %left.1.i71.i = phi i16 [ %left.0.i.i, %bb20.i66.i ], [ %right.0.i.i, %bb8.i.i ], [ %left.0.i.i, %bb22.i.i ]
  %_58.i.i = icmp eq i16 %period.1.i68.i, %_13.sroa.5.0.i
  br i1 %_58.i.i, label %_ZN4core3str7pattern14TwoWaySearcher22reverse_maximal_suffix17h0bdf013e5b5d3481E.exit.i, label %bb2.i.i

panic.i72.i:                                      ; preds = %bb4.i61.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_15.i59.i, i16 %needle.1, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18776 to %"panic::Location"*)), !noalias !1423
  unreachable

panic1.i.i:                                       ; preds = %bb5.i63.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_24.i.i, i16 %needle.1, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18778 to %"panic::Location"*)), !noalias !1423
  unreachable

_ZN4core3str7pattern14TwoWaySearcher22reverse_maximal_suffix17h0bdf013e5b5d3481E.exit.i: ; preds = %bb27.i.i, %bb2.i.i
  %left.2.i.i = phi i16 [ %left.1.i71.i, %bb27.i.i ], [ %left.0.i.i, %bb2.i.i ]
  %34 = icmp ugt i16 %left.2.i110.i, %left.2.i.i
  %.0.sroa.speculated.i.i.i57.i = select i1 %34, i16 %left.2.i110.i, i16 %left.2.i.i
  %crit_pos_back.i = sub i16 %needle.1, %.0.sroa.speculated.i.i.i57.i
  %_8.i.i.i44.i = icmp ugt i16 %_13.sroa.5.0.i, %needle.1
  br i1 %_8.i.i.i44.i, label %bb5.i.i.i45.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit46.i"

bb5.i.i.i45.i:                                    ; preds = %_ZN4core3str7pattern14TwoWaySearcher22reverse_maximal_suffix17h0bdf013e5b5d3481E.exit.i
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %_13.sroa.5.0.i, i16 %needle.1, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18772 to %"panic::Location"*)), !noalias !1406
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit46.i": ; preds = %_ZN4core3str7pattern14TwoWaySearcher22reverse_maximal_suffix17h0bdf013e5b5d3481E.exit.i
  %_13.i3.i.i.i = icmp eq i16 %_13.sroa.5.0.i, 0
  br i1 %_13.i3.i.i.i, label %_ZN4core3str7pattern14TwoWaySearcher3new17h6f6ae9055342774bE.exit, label %bb7.i.preheader.i.i

bb7.i.preheader.i.i:                              ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit46.i"
  %35 = getelementptr [0 x i8], [0 x i8]* %needle.0, i16 0, i16 0
  br label %bb7.i.i.i

bb7.i.i.i:                                        ; preds = %bb7.i.i.i, %bb7.i.preheader.i.i
  %accum.05.i.i.i = phi i64 [ %39, %bb7.i.i.i ], [ 0, %bb7.i.preheader.i.i ]
  %self.sroa.0.04.i.i.i = phi i8* [ %36, %bb7.i.i.i ], [ %35, %bb7.i.preheader.i.i ]
  %36 = getelementptr inbounds i8, i8* %self.sroa.0.04.i.i.i, i16 1
  %.val.i.i.i = load i8, i8* %self.sroa.0.04.i.i.i, align 1, !alias.scope !1424, !noalias !1406
  %37 = and i8 %.val.i.i.i, 63
  %38 = zext i8 %37 to i64
  %_5.i.i.i.i = shl nuw i64 1, %38
  %39 = or i64 %_5.i.i.i.i, %accum.05.i.i.i
  %_13.i.i.i.i = icmp eq i8* %36, %13
  br i1 %_13.i.i.i.i, label %_ZN4core3str7pattern14TwoWaySearcher3new17h6f6ae9055342774bE.exit, label %bb7.i.i.i

_ZN4core3str7pattern14TwoWaySearcher3new17h6f6ae9055342774bE.exit.loopexit46: ; preds = %bb7.i.i54.i
  %_60.i = add i16 %.0.sroa.speculated.i.i.i.i, 1
  br label %_ZN4core3str7pattern14TwoWaySearcher3new17h6f6ae9055342774bE.exit

_ZN4core3str7pattern14TwoWaySearcher3new17h6f6ae9055342774bE.exit: ; preds = %bb7.i.i.i, %_ZN4core3str7pattern14TwoWaySearcher3new17h6f6ae9055342774bE.exit.loopexit46, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit46.i"
  %_14.sroa.17.0 = phi i16 [ %needle.1, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit46.i" ], [ -1, %_ZN4core3str7pattern14TwoWaySearcher3new17h6f6ae9055342774bE.exit.loopexit46 ], [ %needle.1, %bb7.i.i.i ]
  %_14.sroa.15.0 = phi i16 [ 0, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit46.i" ], [ -1, %_ZN4core3str7pattern14TwoWaySearcher3new17h6f6ae9055342774bE.exit.loopexit46 ], [ 0, %bb7.i.i.i ]
  %_14.sroa.9.0 = phi i64 [ 0, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit46.i" ], [ %21, %_ZN4core3str7pattern14TwoWaySearcher3new17h6f6ae9055342774bE.exit.loopexit46 ], [ %39, %bb7.i.i.i ]
  %_14.sroa.7.0 = phi i16 [ 0, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit46.i" ], [ %_60.i, %_ZN4core3str7pattern14TwoWaySearcher3new17h6f6ae9055342774bE.exit.loopexit46 ], [ %_13.sroa.5.0.i, %bb7.i.i.i ]
  %_14.sroa.5.0 = phi i16 [ %crit_pos_back.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit46.i" ], [ %_13.sroa.0.0.i, %_ZN4core3str7pattern14TwoWaySearcher3new17h6f6ae9055342774bE.exit.loopexit46 ], [ %crit_pos_back.i, %bb7.i.i.i ]
  %40 = bitcast %"str::pattern::StrSearcher"* %0 to [0 x i8]**
  store [0 x i8]* %haystack.0, [0 x i8]** %40, align 1
  %41 = getelementptr inbounds %"str::pattern::StrSearcher", %"str::pattern::StrSearcher"* %0, i16 0, i32 1, i32 1
  store i16 %haystack.1, i16* %41, align 1
  %42 = getelementptr inbounds %"str::pattern::StrSearcher", %"str::pattern::StrSearcher"* %0, i16 0, i32 3, i32 0
  store [0 x i8]* %needle.0, [0 x i8]** %42, align 1
  %43 = getelementptr inbounds %"str::pattern::StrSearcher", %"str::pattern::StrSearcher"* %0, i16 0, i32 3, i32 1
  store i16 %needle.1, i16* %43, align 1
  %_13.sroa.0.0..sroa_idx = getelementptr inbounds %"str::pattern::StrSearcher", %"str::pattern::StrSearcher"* %0, i16 0, i32 5, i32 0, i16 0
  store i8 1, i8* %_13.sroa.0.0..sroa_idx, align 1
  %_13.sroa.4.sroa.0.0._13.sroa.4.0..sroa_idx16.sroa_idx = getelementptr inbounds %"str::pattern::StrSearcher", %"str::pattern::StrSearcher"* %0, i16 0, i32 5, i32 2
  %_13.sroa.4.sroa.0.0._13.sroa.4.0..sroa_idx16.sroa_cast = bitcast [22 x i8]* %_13.sroa.4.sroa.0.0._13.sroa.4.0..sroa_idx16.sroa_idx to i16*
  store i16 %_13.sroa.0.0.i, i16* %_13.sroa.4.sroa.0.0._13.sroa.4.0..sroa_idx16.sroa_cast, align 1
  %_13.sroa.4.sroa.4.0._13.sroa.4.0..sroa_idx16.sroa_idx = getelementptr inbounds %"str::pattern::StrSearcher", %"str::pattern::StrSearcher"* %0, i16 0, i32 5, i32 2, i16 2
  %_13.sroa.4.sroa.4.0._13.sroa.4.0..sroa_idx16.sroa_cast = bitcast i8* %_13.sroa.4.sroa.4.0._13.sroa.4.0..sroa_idx16.sroa_idx to i16*
  store i16 %_14.sroa.5.0, i16* %_13.sroa.4.sroa.4.0._13.sroa.4.0..sroa_idx16.sroa_cast, align 1
  %_13.sroa.4.sroa.5.0._13.sroa.4.0..sroa_idx16.sroa_idx = getelementptr inbounds %"str::pattern::StrSearcher", %"str::pattern::StrSearcher"* %0, i16 0, i32 5, i32 2, i16 4
  %_13.sroa.4.sroa.5.0._13.sroa.4.0..sroa_idx16.sroa_cast = bitcast i8* %_13.sroa.4.sroa.5.0._13.sroa.4.0..sroa_idx16.sroa_idx to i16*
  store i16 %_14.sroa.7.0, i16* %_13.sroa.4.sroa.5.0._13.sroa.4.0..sroa_idx16.sroa_cast, align 1
  %_13.sroa.4.sroa.6.0._13.sroa.4.0..sroa_idx16.sroa_idx = getelementptr inbounds %"str::pattern::StrSearcher", %"str::pattern::StrSearcher"* %0, i16 0, i32 5, i32 2, i16 6
  %_13.sroa.4.sroa.6.0._13.sroa.4.0..sroa_idx16.sroa_cast = bitcast i8* %_13.sroa.4.sroa.6.0._13.sroa.4.0..sroa_idx16.sroa_idx to i64*
  store i64 %_14.sroa.9.0, i64* %_13.sroa.4.sroa.6.0._13.sroa.4.0..sroa_idx16.sroa_cast, align 1
  %_13.sroa.4.sroa.7.0._13.sroa.4.0..sroa_idx16.sroa_idx = getelementptr inbounds %"str::pattern::StrSearcher", %"str::pattern::StrSearcher"* %0, i16 0, i32 5, i32 2, i16 14
  %_13.sroa.4.sroa.7.0._13.sroa.4.0..sroa_idx16.sroa_cast = bitcast i8* %_13.sroa.4.sroa.7.0._13.sroa.4.0..sroa_idx16.sroa_idx to i16*
  store i16 0, i16* %_13.sroa.4.sroa.7.0._13.sroa.4.0..sroa_idx16.sroa_cast, align 1
  %_13.sroa.4.sroa.8.0._13.sroa.4.0..sroa_idx16.sroa_idx = getelementptr inbounds %"str::pattern::StrSearcher", %"str::pattern::StrSearcher"* %0, i16 0, i32 5, i32 2, i16 16
  %_13.sroa.4.sroa.8.0._13.sroa.4.0..sroa_idx16.sroa_cast = bitcast i8* %_13.sroa.4.sroa.8.0._13.sroa.4.0..sroa_idx16.sroa_idx to i16*
  store i16 %haystack.1, i16* %_13.sroa.4.sroa.8.0._13.sroa.4.0..sroa_idx16.sroa_cast, align 1
  %_13.sroa.4.sroa.9.0._13.sroa.4.0..sroa_idx16.sroa_idx = getelementptr inbounds %"str::pattern::StrSearcher", %"str::pattern::StrSearcher"* %0, i16 0, i32 5, i32 2, i16 18
  %_13.sroa.4.sroa.9.0._13.sroa.4.0..sroa_idx16.sroa_cast = bitcast i8* %_13.sroa.4.sroa.9.0._13.sroa.4.0..sroa_idx16.sroa_idx to i16*
  store i16 %_14.sroa.15.0, i16* %_13.sroa.4.sroa.9.0._13.sroa.4.0..sroa_idx16.sroa_cast, align 1
  %_13.sroa.4.sroa.10.0._13.sroa.4.0..sroa_idx16.sroa_idx = getelementptr inbounds %"str::pattern::StrSearcher", %"str::pattern::StrSearcher"* %0, i16 0, i32 5, i32 2, i16 20
  %_13.sroa.4.sroa.10.0._13.sroa.4.0..sroa_idx16.sroa_cast = bitcast i8* %_13.sroa.4.sroa.10.0._13.sroa.4.0..sroa_idx16.sroa_idx to i16*
  store i16 %_14.sroa.17.0, i16* %_13.sroa.4.sroa.10.0._13.sroa.4.0..sroa_idx16.sroa_cast, align 1
  br label %bb8

bb3:                                              ; preds = %start
  %44 = bitcast %"str::pattern::StrSearcher"* %0 to [0 x i8]**
  store [0 x i8]* %haystack.0, [0 x i8]** %44, align 1
  %45 = getelementptr inbounds %"str::pattern::StrSearcher", %"str::pattern::StrSearcher"* %0, i16 0, i32 1, i32 1
  store i16 %haystack.1, i16* %45, align 1
  %46 = getelementptr inbounds %"str::pattern::StrSearcher", %"str::pattern::StrSearcher"* %0, i16 0, i32 3, i32 0
  store [0 x i8]* %needle.0, [0 x i8]** %46, align 1
  %47 = getelementptr inbounds %"str::pattern::StrSearcher", %"str::pattern::StrSearcher"* %0, i16 0, i32 3, i32 1
  store i16 0, i16* %47, align 1
  %_7.sroa.0.0..sroa_idx = getelementptr inbounds %"str::pattern::StrSearcher", %"str::pattern::StrSearcher"* %0, i16 0, i32 5, i32 0, i16 0
  store i8 0, i8* %_7.sroa.0.0..sroa_idx, align 1
  %_7.sroa.4.sroa.0.0._7.sroa.4.0..sroa_idx1.sroa_idx = getelementptr inbounds %"str::pattern::StrSearcher", %"str::pattern::StrSearcher"* %0, i16 0, i32 5, i32 2
  %_7.sroa.4.sroa.0.0._7.sroa.4.0..sroa_idx1.sroa_cast = bitcast [22 x i8]* %_7.sroa.4.sroa.0.0._7.sroa.4.0..sroa_idx1.sroa_idx to i16*
  store i16 0, i16* %_7.sroa.4.sroa.0.0._7.sroa.4.0..sroa_idx1.sroa_cast, align 1
  %_7.sroa.4.sroa.4.0._7.sroa.4.0..sroa_idx1.sroa_idx = getelementptr inbounds %"str::pattern::StrSearcher", %"str::pattern::StrSearcher"* %0, i16 0, i32 5, i32 2, i16 2
  %_7.sroa.4.sroa.4.0._7.sroa.4.0..sroa_idx1.sroa_cast = bitcast i8* %_7.sroa.4.sroa.4.0._7.sroa.4.0..sroa_idx1.sroa_idx to i16*
  store i16 %haystack.1, i16* %_7.sroa.4.sroa.4.0._7.sroa.4.0..sroa_idx1.sroa_cast, align 1
  %_7.sroa.4.sroa.5.0._7.sroa.4.0..sroa_idx1.sroa_idx = getelementptr inbounds %"str::pattern::StrSearcher", %"str::pattern::StrSearcher"* %0, i16 0, i32 5, i32 2, i16 4
  store i8 1, i8* %_7.sroa.4.sroa.5.0._7.sroa.4.0..sroa_idx1.sroa_idx, align 1
  %_7.sroa.4.sroa.6.0._7.sroa.4.0..sroa_idx1.sroa_idx = getelementptr inbounds %"str::pattern::StrSearcher", %"str::pattern::StrSearcher"* %0, i16 0, i32 5, i32 2, i16 5
  store i8 1, i8* %_7.sroa.4.sroa.6.0._7.sroa.4.0..sroa_idx1.sroa_idx, align 1
  br label %bb8

bb8:                                              ; preds = %_ZN4core3str7pattern14TwoWaySearcher3new17h6f6ae9055342774bE.exit, %bb3
  ret void
}

; core::str::lossy::Utf8Lossy::from_bytes
; Function Attrs: norecurse nounwind readnone uwtable
define { %"str::lossy::Utf8Lossy"*, i16 } @_ZN4core3str5lossy9Utf8Lossy10from_bytes17h1517e2a04734d2ecE([0 x i8]* noalias nonnull readonly align 1 %bytes.0, i16 %bytes.1) unnamed_addr addrspace(1) #1 {
start:
  %0 = bitcast [0 x i8]* %bytes.0 to %"str::lossy::Utf8Lossy"*
  %1 = insertvalue { %"str::lossy::Utf8Lossy"*, i16 } undef, %"str::lossy::Utf8Lossy"* %0, 0
  %2 = insertvalue { %"str::lossy::Utf8Lossy"*, i16 } %1, i16 %bytes.1, 1
  ret { %"str::lossy::Utf8Lossy"*, i16 } %2
}

; core::str::lossy::Utf8Lossy::chunks
; Function Attrs: norecurse nounwind readnone uwtable
define { i8*, i16 } @_ZN4core3str5lossy9Utf8Lossy6chunks17h7dbc6866c497aa51E(%"str::lossy::Utf8Lossy"* noalias nonnull readonly align 1 %self.0, i16 %self.1) unnamed_addr addrspace(1) #1 {
start:
  %0 = getelementptr %"str::lossy::Utf8Lossy", %"str::lossy::Utf8Lossy"* %self.0, i16 0, i32 0, i16 0
  %1 = insertvalue { i8*, i16 } undef, i8* %0, 0
  %2 = insertvalue { i8*, i16 } %1, i16 %self.1, 1
  ret { i8*, i16 } %2
}

; <core::str::lossy::Utf8LossyChunksIter as core::iter::traits::iterator::Iterator>::next
; Function Attrs: uwtable
define void @"_ZN96_$LT$core..str..lossy..Utf8LossyChunksIter$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hc5d233dae66f7b3cE"(%"option::Option<str::lossy::Utf8LossyChunk>"* noalias nocapture sret dereferenceable(8) %0, { i8*, i16 }* align 1 dereferenceable(4) %self) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %1 = bitcast { i8*, i16 }* %self to [0 x i8]**
  %2 = getelementptr inbounds { i8*, i16 }, { i8*, i16 }* %self, i16 0, i32 1
  %_3.1 = load i16, i16* %2, align 1
  %3 = icmp eq i16 %_3.1, 0
  br i1 %3, label %bb3, label %bb8.lr.ph

bb8.lr.ph:                                        ; preds = %start
  %_12.0400 = load [0 x i8]*, [0 x i8]** %1, align 1, !nonnull !568
  br label %bb8

bb3:                                              ; preds = %start
  %4 = bitcast %"option::Option<str::lossy::Utf8LossyChunk>"* %0 to {}**
  store {}* null, {}** %4, align 1
  br label %bb4

bb4:                                              ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit264", %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit240", %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit", %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit326", %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit338", %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit307", %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit282", %bb7, %bb3
  ret void

bb7:                                              ; preds = %bb85
  store [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), [0 x i8]** %1, align 1
  store i16 0, i16* %2, align 1
  %_238.sroa.0.0..sroa_cast212 = bitcast %"option::Option<str::lossy::Utf8LossyChunk>"* %0 to [0 x i8]**
  store [0 x i8]* %_12.0400, [0 x i8]** %_238.sroa.0.0..sroa_cast212, align 1
  %_238.sroa.4.0..sroa_idx214 = getelementptr inbounds %"option::Option<str::lossy::Utf8LossyChunk>", %"option::Option<str::lossy::Utf8LossyChunk>"* %0, i16 0, i32 2
  %5 = bitcast [6 x i8]* %_238.sroa.4.0..sroa_idx214 to i16*
  store i16 %_3.1, i16* %5, align 1
  %_238.sroa.5.0..sroa_idx216 = getelementptr inbounds %"option::Option<str::lossy::Utf8LossyChunk>", %"option::Option<str::lossy::Utf8LossyChunk>"* %0, i16 0, i32 2, i16 2
  %6 = bitcast i8* %_238.sroa.5.0..sroa_idx216 to [0 x i8]**
  store [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), [0 x i8]** %6, align 1
  %_238.sroa.6.0..sroa_idx218 = getelementptr inbounds %"option::Option<str::lossy::Utf8LossyChunk>", %"option::Option<str::lossy::Utf8LossyChunk>"* %0, i16 0, i32 2, i16 4
  %7 = bitcast i8* %_238.sroa.6.0..sroa_idx218 to i16*
  store i16 0, i16* %7, align 1
  br label %bb4

bb8:                                              ; preds = %bb8.lr.ph, %bb85
  %i.0401 = phi i16 [ 0, %bb8.lr.ph ], [ %i.1, %bb85 ]
  %8 = getelementptr inbounds [0 x i8], [0 x i8]* %_12.0400, i16 0, i16 %i.0401
  %byte = load i8, i8* %8, align 1
  %9 = add nuw i16 %i.0401, 1
  %_14 = icmp sgt i8 %byte, -1
  br i1 %_14, label %bb85, label %bb10

bb10:                                             ; preds = %bb8
  %_4.i = zext i8 %byte to i16
  %10 = getelementptr inbounds <{ [256 x i8] }>, <{ [256 x i8] }>* @_ZN4core3str15UTF8_CHAR_WIDTH17h3fdb01b2890429f3E, i16 0, i32 0, i16 %_4.i
  %_2.i354 = load i8, i8* %10, align 1
  switch i8 %_2.i354, label %bb13 [
    i8 2, label %bb14
    i8 3, label %bb23
    i8 4, label %bb50
  ]

bb13:                                             ; preds = %bb10
  %_8.i.i241 = icmp ult i16 %_3.1, %i.0401
  br i1 %_8.i.i241, label %bb5.i.i243, label %bb1.i.i255

bb5.i.i243:                                       ; preds = %bb13
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %i.0401, i16 %_3.1, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18780 to %"panic::Location"*))
  unreachable

bb1.i.i255:                                       ; preds = %bb13
  %_8.i.i254 = icmp ugt i16 %_3.1, %i.0401
  br i1 %_8.i.i254, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit264", label %bb5.i.i257

bb5.i.i257:                                       ; preds = %bb1.i.i255
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %9, i16 %_3.1, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18780 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit264": ; preds = %bb1.i.i255
  %11 = getelementptr inbounds [0 x i8], [0 x i8]* %_12.0400, i16 0, i16 %9
  %_7.i.i.i.i262 = sub i16 %_3.1, %9
  %12 = getelementptr inbounds { i8*, i16 }, { i8*, i16 }* %self, i16 0, i32 0
  store i8* %11, i8** %12, align 1
  store i16 %_7.i.i.i.i262, i16* %2, align 1
  %_228.sroa.0.0..sroa_cast196 = bitcast %"option::Option<str::lossy::Utf8LossyChunk>"* %0 to [0 x i8]**
  store [0 x i8]* %_12.0400, [0 x i8]** %_228.sroa.0.0..sroa_cast196, align 1
  %_228.sroa.4.0..sroa_idx198 = getelementptr inbounds %"option::Option<str::lossy::Utf8LossyChunk>", %"option::Option<str::lossy::Utf8LossyChunk>"* %0, i16 0, i32 2
  %13 = bitcast [6 x i8]* %_228.sroa.4.0..sroa_idx198 to i16*
  store i16 %i.0401, i16* %13, align 1
  %_228.sroa.5.0..sroa_idx200 = getelementptr inbounds %"option::Option<str::lossy::Utf8LossyChunk>", %"option::Option<str::lossy::Utf8LossyChunk>"* %0, i16 0, i32 2, i16 2
  %14 = bitcast i8* %_228.sroa.5.0..sroa_idx200 to i8**
  store i8* %8, i8** %14, align 1
  %_228.sroa.6.0..sroa_idx202 = getelementptr inbounds %"option::Option<str::lossy::Utf8LossyChunk>", %"option::Option<str::lossy::Utf8LossyChunk>"* %0, i16 0, i32 2, i16 4
  %15 = bitcast i8* %_228.sroa.6.0..sroa_idx202 to i16*
  store i16 1, i16* %15, align 1
  br label %bb4

bb14:                                             ; preds = %bb10
  %_3.i.i.i265 = icmp ugt i16 %_3.1, %9
  %16 = getelementptr inbounds [0 x i8], [0 x i8]* %_12.0400, i16 0, i16 %9
  %spec.select.i.i.i = select i1 %_3.i.i.i265, i8* %16, i8* null
  %17 = icmp eq i8* %spec.select.i.i.i, null
  %..i.i = select i1 %17, i8* getelementptr inbounds (<{ [1 x i8] }>, <{ [1 x i8] }>* @alloc16693, i16 0, i32 0, i16 0), i8* %spec.select.i.i.i
  %18 = load i8, i8* %..i.i, align 1
  %_19 = and i8 %18, -64
  %_18 = icmp eq i8 %_19, -128
  br i1 %_18, label %bb16, label %bb17

bb16:                                             ; preds = %bb14
  %19 = add i16 %i.0401, 2
  br label %bb85

bb17:                                             ; preds = %bb14
  %_8.i.i266 = icmp ult i16 %_3.1, %i.0401
  br i1 %_8.i.i266, label %bb5.i.i268, label %bb1.i.i273

bb5.i.i268:                                       ; preds = %bb17
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %i.0401, i16 %_3.1, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18792 to %"panic::Location"*))
  unreachable

bb1.i.i273:                                       ; preds = %bb17
  %_8.i.i272 = icmp ugt i16 %_3.1, %i.0401
  br i1 %_8.i.i272, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit282", label %bb5.i.i275

bb5.i.i275:                                       ; preds = %bb1.i.i273
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %9, i16 %_3.1, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18792 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit282": ; preds = %bb1.i.i273
  %_7.i.i.i.i280 = sub i16 %_3.1, %9
  %20 = getelementptr inbounds { i8*, i16 }, { i8*, i16 }* %self, i16 0, i32 0
  store i8* %16, i8** %20, align 1
  store i16 %_7.i.i.i.i280, i16* %2, align 1
  %_45.sroa.0.0..sroa_cast52 = bitcast %"option::Option<str::lossy::Utf8LossyChunk>"* %0 to [0 x i8]**
  store [0 x i8]* %_12.0400, [0 x i8]** %_45.sroa.0.0..sroa_cast52, align 1
  %_45.sroa.4.0..sroa_idx54 = getelementptr inbounds %"option::Option<str::lossy::Utf8LossyChunk>", %"option::Option<str::lossy::Utf8LossyChunk>"* %0, i16 0, i32 2
  %21 = bitcast [6 x i8]* %_45.sroa.4.0..sroa_idx54 to i16*
  store i16 %i.0401, i16* %21, align 1
  %_45.sroa.5.0..sroa_idx56 = getelementptr inbounds %"option::Option<str::lossy::Utf8LossyChunk>", %"option::Option<str::lossy::Utf8LossyChunk>"* %0, i16 0, i32 2, i16 2
  %22 = bitcast i8* %_45.sroa.5.0..sroa_idx56 to i8**
  store i8* %8, i8** %22, align 1
  %_45.sroa.6.0..sroa_idx58 = getelementptr inbounds %"option::Option<str::lossy::Utf8LossyChunk>", %"option::Option<str::lossy::Utf8LossyChunk>"* %0, i16 0, i32 2, i16 4
  %23 = bitcast i8* %_45.sroa.6.0..sroa_idx58 to i16*
  store i16 1, i16* %23, align 1
  br label %bb4

bb23:                                             ; preds = %bb10
  %_3.i.i.i283 = icmp ugt i16 %_3.1, %9
  %24 = getelementptr inbounds [0 x i8], [0 x i8]* %_12.0400, i16 0, i16 %9
  %spec.select.i.i.i284 = select i1 %_3.i.i.i283, i8* %24, i8* null
  %25 = icmp eq i8* %spec.select.i.i.i284, null
  %..i.i285 = select i1 %25, i8* getelementptr inbounds (<{ [1 x i8] }>, <{ [1 x i8] }>* @alloc16693, i16 0, i32 0, i16 0), i8* %spec.select.i.i.i284
  %26 = load i8, i8* %..i.i285, align 1
  switch i8 %byte, label %bb30 [
    i8 -32, label %bb25
    i8 -19, label %bb28
  ]

bb25:                                             ; preds = %bb23
  %27 = and i8 %26, -32
  %28 = icmp eq i8 %27, -96
  br i1 %28, label %bb42, label %bb27

bb27:                                             ; preds = %bb25, %bb28, %bb34, %bb32
  %_8.i.i286 = icmp ult i16 %_3.1, %i.0401
  br i1 %_8.i.i286, label %bb5.i.i288, label %bb1.i.i298

bb5.i.i288:                                       ; preds = %bb27
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %i.0401, i16 %_3.1, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18790 to %"panic::Location"*))
  unreachable

bb1.i.i298:                                       ; preds = %bb27
  %_8.i.i297 = icmp ugt i16 %_3.1, %i.0401
  br i1 %_8.i.i297, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit307", label %bb5.i.i300

bb5.i.i300:                                       ; preds = %bb1.i.i298
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %9, i16 %_3.1, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18790 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit307": ; preds = %bb1.i.i298
  %_7.i.i.i.i305 = sub i16 %_3.1, %9
  %29 = getelementptr inbounds { i8*, i16 }, { i8*, i16 }* %self, i16 0, i32 0
  store i8* %24, i8** %29, align 1
  store i16 %_7.i.i.i.i305, i16* %2, align 1
  %_85.sroa.0.0..sroa_cast84 = bitcast %"option::Option<str::lossy::Utf8LossyChunk>"* %0 to [0 x i8]**
  store [0 x i8]* %_12.0400, [0 x i8]** %_85.sroa.0.0..sroa_cast84, align 1
  %_85.sroa.4.0..sroa_idx86 = getelementptr inbounds %"option::Option<str::lossy::Utf8LossyChunk>", %"option::Option<str::lossy::Utf8LossyChunk>"* %0, i16 0, i32 2
  %30 = bitcast [6 x i8]* %_85.sroa.4.0..sroa_idx86 to i16*
  store i16 %i.0401, i16* %30, align 1
  %_85.sroa.5.0..sroa_idx88 = getelementptr inbounds %"option::Option<str::lossy::Utf8LossyChunk>", %"option::Option<str::lossy::Utf8LossyChunk>"* %0, i16 0, i32 2, i16 2
  %31 = bitcast i8* %_85.sroa.5.0..sroa_idx88 to i8**
  store i8* %8, i8** %31, align 1
  %_85.sroa.6.0..sroa_idx90 = getelementptr inbounds %"option::Option<str::lossy::Utf8LossyChunk>", %"option::Option<str::lossy::Utf8LossyChunk>"* %0, i16 0, i32 2, i16 4
  %32 = bitcast i8* %_85.sroa.6.0..sroa_idx90 to i16*
  store i16 1, i16* %32, align 1
  br label %bb4

bb28:                                             ; preds = %bb23
  %_53 = icmp slt i8 %26, 0
  %_54 = icmp ult i8 %26, -96
  %or.cond220 = and i1 %_53, %_54
  br i1 %or.cond220, label %bb42, label %bb27

bb30:                                             ; preds = %bb23
  %byte.off356 = add nsw i8 %byte, 31
  %33 = icmp ult i8 %byte.off356, 12
  br i1 %33, label %bb32, label %bb34

bb32:                                             ; preds = %bb30
  %_55 = icmp slt i8 %26, 0
  %_56 = icmp ult i8 %26, -64
  %or.cond222 = and i1 %_55, %_56
  br i1 %or.cond222, label %bb42, label %bb27

bb34:                                             ; preds = %bb30
  %34 = and i8 %byte, -2
  %35 = icmp eq i8 %34, -18
  %_57 = icmp slt i8 %26, 0
  %or.cond224 = and i1 %35, %_57
  %_58 = icmp ult i8 %26, -64
  %or.cond225 = and i1 %_58, %or.cond224
  br i1 %or.cond225, label %bb42, label %bb27

bb42:                                             ; preds = %bb34, %bb32, %bb28, %bb25
  %36 = add i16 %i.0401, 2
  %_3.i.i.i308 = icmp ugt i16 %_3.1, %36
  %37 = getelementptr inbounds [0 x i8], [0 x i8]* %_12.0400, i16 0, i16 %36
  %spec.select.i.i.i309 = select i1 %_3.i.i.i308, i8* %37, i8* null
  %38 = icmp eq i8* %spec.select.i.i.i309, null
  %..i.i310 = select i1 %38, i8* getelementptr inbounds (<{ [1 x i8] }>, <{ [1 x i8] }>* @alloc16693, i16 0, i32 0, i16 0), i8* %spec.select.i.i.i309
  %39 = load i8, i8* %..i.i310, align 1
  %_87 = and i8 %39, -64
  %_86 = icmp eq i8 %_87, -128
  br i1 %_86, label %bb44, label %bb45

bb44:                                             ; preds = %bb42
  %40 = add i16 %i.0401, 3
  br label %bb85

bb45:                                             ; preds = %bb42
  %_8.i.i311 = icmp ult i16 %_3.1, %i.0401
  br i1 %_8.i.i311, label %bb5.i.i313, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h349d9c187345980eE.exit315"

bb5.i.i313:                                       ; preds = %bb45
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %i.0401, i16 %_3.1, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18788 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h349d9c187345980eE.exit315": ; preds = %bb45
  %_3.i.i327 = icmp ugt i16 %i.0401, -3
  br i1 %_3.i.i327, label %bb2.i.i330, label %bb1.i.i329

bb1.i.i329:                                       ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h349d9c187345980eE.exit315"
  %_8.i.i328 = icmp ult i16 %_3.1, %36
  br i1 %_8.i.i328, label %bb5.i.i331, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit338"

bb2.i.i330:                                       ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h349d9c187345980eE.exit315"
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %i.0401, i16 %36, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18788 to %"panic::Location"*))
  unreachable

bb5.i.i331:                                       ; preds = %bb1.i.i329
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %36, i16 %_3.1, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18788 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit338": ; preds = %bb1.i.i329
  %_7.i.i.i.i336 = sub i16 %_3.1, %36
  %41 = getelementptr inbounds { i8*, i16 }, { i8*, i16 }* %self, i16 0, i32 0
  store i8* %37, i8** %41, align 1
  store i16 %_7.i.i.i.i336, i16* %2, align 1
  %_113.sroa.0.0..sroa_cast105 = bitcast %"option::Option<str::lossy::Utf8LossyChunk>"* %0 to [0 x i8]**
  store [0 x i8]* %_12.0400, [0 x i8]** %_113.sroa.0.0..sroa_cast105, align 1
  %_113.sroa.4.0..sroa_idx107 = getelementptr inbounds %"option::Option<str::lossy::Utf8LossyChunk>", %"option::Option<str::lossy::Utf8LossyChunk>"* %0, i16 0, i32 2
  %42 = bitcast [6 x i8]* %_113.sroa.4.0..sroa_idx107 to i16*
  store i16 %i.0401, i16* %42, align 1
  %_113.sroa.5.0..sroa_idx109 = getelementptr inbounds %"option::Option<str::lossy::Utf8LossyChunk>", %"option::Option<str::lossy::Utf8LossyChunk>"* %0, i16 0, i32 2, i16 2
  %43 = bitcast i8* %_113.sroa.5.0..sroa_idx109 to i8**
  store i8* %8, i8** %43, align 1
  %_113.sroa.6.0..sroa_idx111 = getelementptr inbounds %"option::Option<str::lossy::Utf8LossyChunk>", %"option::Option<str::lossy::Utf8LossyChunk>"* %0, i16 0, i32 2, i16 4
  %44 = bitcast i8* %_113.sroa.6.0..sroa_idx111 to i16*
  store i16 2, i16* %44, align 1
  br label %bb4

bb50:                                             ; preds = %bb10
  %_3.i.i.i339 = icmp ugt i16 %_3.1, %9
  %45 = getelementptr inbounds [0 x i8], [0 x i8]* %_12.0400, i16 0, i16 %9
  %spec.select.i.i.i340 = select i1 %_3.i.i.i339, i8* %45, i8* null
  %46 = icmp eq i8* %spec.select.i.i.i340, null
  %..i.i341 = select i1 %46, i8* getelementptr inbounds (<{ [1 x i8] }>, <{ [1 x i8] }>* @alloc16693, i16 0, i32 0, i16 0), i8* %spec.select.i.i.i340
  %47 = load i8, i8* %..i.i341, align 1
  switch i8 %byte, label %bb57 [
    i8 -16, label %bb52
    i8 -12, label %bb55
  ]

bb52:                                             ; preds = %bb50
  %.off = add i8 %47, 112
  %48 = icmp ult i8 %.off, 48
  br i1 %48, label %bb65, label %bb54

bb54:                                             ; preds = %bb52, %bb55, %bb57
  %_8.i.i342 = icmp ult i16 %_3.1, %i.0401
  br i1 %_8.i.i342, label %bb5.i.i344, label %bb1.i.i349

bb5.i.i344:                                       ; preds = %bb54
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %i.0401, i16 %_3.1, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18786 to %"panic::Location"*))
  unreachable

bb1.i.i349:                                       ; preds = %bb54
  %_8.i.i348 = icmp ugt i16 %_3.1, %i.0401
  br i1 %_8.i.i348, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit326", label %bb5.i.i351

bb5.i.i351:                                       ; preds = %bb1.i.i349
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %9, i16 %_3.1, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18786 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit326": ; preds = %bb1.i.i349
  %_7.i.i.i.i324 = sub i16 %_3.1, %9
  %49 = getelementptr inbounds { i8*, i16 }, { i8*, i16 }* %self, i16 0, i32 0
  store i8* %45, i8** %49, align 1
  store i16 %_7.i.i.i.i324, i16* %2, align 1
  %_149.sroa.0.0..sroa_cast133 = bitcast %"option::Option<str::lossy::Utf8LossyChunk>"* %0 to [0 x i8]**
  store [0 x i8]* %_12.0400, [0 x i8]** %_149.sroa.0.0..sroa_cast133, align 1
  %_149.sroa.4.0..sroa_idx135 = getelementptr inbounds %"option::Option<str::lossy::Utf8LossyChunk>", %"option::Option<str::lossy::Utf8LossyChunk>"* %0, i16 0, i32 2
  %50 = bitcast [6 x i8]* %_149.sroa.4.0..sroa_idx135 to i16*
  store i16 %i.0401, i16* %50, align 1
  %_149.sroa.5.0..sroa_idx137 = getelementptr inbounds %"option::Option<str::lossy::Utf8LossyChunk>", %"option::Option<str::lossy::Utf8LossyChunk>"* %0, i16 0, i32 2, i16 2
  %51 = bitcast i8* %_149.sroa.5.0..sroa_idx137 to i8**
  store i8* %8, i8** %51, align 1
  %_149.sroa.6.0..sroa_idx139 = getelementptr inbounds %"option::Option<str::lossy::Utf8LossyChunk>", %"option::Option<str::lossy::Utf8LossyChunk>"* %0, i16 0, i32 2, i16 4
  %52 = bitcast i8* %_149.sroa.6.0..sroa_idx139 to i16*
  store i16 1, i16* %52, align 1
  br label %bb4

bb55:                                             ; preds = %bb50
  %_121 = icmp slt i8 %47, 0
  %_122 = icmp ult i8 %47, -112
  %or.cond227 = and i1 %_121, %_122
  br i1 %or.cond227, label %bb65, label %bb54

bb57:                                             ; preds = %bb50
  %byte.off = add nsw i8 %byte, 15
  %53 = icmp ult i8 %byte.off, 3
  %_123 = icmp slt i8 %47, 0
  %or.cond229 = and i1 %53, %_123
  %_124 = icmp ult i8 %47, -64
  %or.cond230 = and i1 %_124, %or.cond229
  br i1 %or.cond230, label %bb65, label %bb54

bb65:                                             ; preds = %bb57, %bb55, %bb52
  %54 = add i16 %i.0401, 2
  %_3.i.i.i319 = icmp ugt i16 %_3.1, %54
  %55 = getelementptr inbounds [0 x i8], [0 x i8]* %_12.0400, i16 0, i16 %54
  %spec.select.i.i.i320 = select i1 %_3.i.i.i319, i8* %55, i8* null
  %56 = icmp eq i8* %spec.select.i.i.i320, null
  %..i.i321 = select i1 %56, i8* getelementptr inbounds (<{ [1 x i8] }>, <{ [1 x i8] }>* @alloc16693, i16 0, i32 0, i16 0), i8* %spec.select.i.i.i320
  %57 = load i8, i8* %..i.i321, align 1
  %_151 = and i8 %57, -64
  %_150 = icmp eq i8 %_151, -128
  br i1 %_150, label %bb67, label %bb68

bb67:                                             ; preds = %bb65
  %58 = add i16 %i.0401, 3
  %_3.i.i.i316 = icmp ugt i16 %_3.1, %58
  %59 = getelementptr inbounds [0 x i8], [0 x i8]* %_12.0400, i16 0, i16 %58
  %spec.select.i.i.i317 = select i1 %_3.i.i.i316, i8* %59, i8* null
  %60 = icmp eq i8* %spec.select.i.i.i317, null
  %..i.i318 = select i1 %60, i8* getelementptr inbounds (<{ [1 x i8] }>, <{ [1 x i8] }>* @alloc16693, i16 0, i32 0, i16 0), i8* %spec.select.i.i.i317
  %61 = load i8, i8* %..i.i318, align 1
  %_179 = and i8 %61, -64
  %_178 = icmp eq i8 %_179, -128
  br i1 %_178, label %bb74, label %bb75

bb68:                                             ; preds = %bb65
  %_8.i.i291 = icmp ult i16 %_3.1, %i.0401
  br i1 %_8.i.i291, label %bb5.i.i293, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h349d9c187345980eE.exit295"

bb5.i.i293:                                       ; preds = %bb68
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %i.0401, i16 %_3.1, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18782 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h349d9c187345980eE.exit295": ; preds = %bb68
  %_3.i.i246 = icmp ugt i16 %i.0401, -3
  br i1 %_3.i.i246, label %bb2.i.i249, label %bb1.i.i248

bb1.i.i248:                                       ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h349d9c187345980eE.exit295"
  %_8.i.i247 = icmp ult i16 %_3.1, %54
  br i1 %_8.i.i247, label %bb5.i.i250, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit240"

bb2.i.i249:                                       ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h349d9c187345980eE.exit295"
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %i.0401, i16 %54, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18782 to %"panic::Location"*))
  unreachable

bb5.i.i250:                                       ; preds = %bb1.i.i248
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %54, i16 %_3.1, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18782 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit240": ; preds = %bb1.i.i248
  %_7.i.i.i.i238 = sub i16 %_3.1, %54
  %62 = getelementptr inbounds { i8*, i16 }, { i8*, i16 }* %self, i16 0, i32 0
  store i8* %55, i8** %62, align 1
  store i16 %_7.i.i.i.i238, i16* %2, align 1
  %_177.sroa.0.0..sroa_cast154 = bitcast %"option::Option<str::lossy::Utf8LossyChunk>"* %0 to [0 x i8]**
  store [0 x i8]* %_12.0400, [0 x i8]** %_177.sroa.0.0..sroa_cast154, align 1
  %_177.sroa.4.0..sroa_idx156 = getelementptr inbounds %"option::Option<str::lossy::Utf8LossyChunk>", %"option::Option<str::lossy::Utf8LossyChunk>"* %0, i16 0, i32 2
  %63 = bitcast [6 x i8]* %_177.sroa.4.0..sroa_idx156 to i16*
  store i16 %i.0401, i16* %63, align 1
  %_177.sroa.5.0..sroa_idx158 = getelementptr inbounds %"option::Option<str::lossy::Utf8LossyChunk>", %"option::Option<str::lossy::Utf8LossyChunk>"* %0, i16 0, i32 2, i16 2
  %64 = bitcast i8* %_177.sroa.5.0..sroa_idx158 to i8**
  store i8* %8, i8** %64, align 1
  %_177.sroa.6.0..sroa_idx160 = getelementptr inbounds %"option::Option<str::lossy::Utf8LossyChunk>", %"option::Option<str::lossy::Utf8LossyChunk>"* %0, i16 0, i32 2, i16 4
  %65 = bitcast i8* %_177.sroa.6.0..sroa_idx160 to i16*
  store i16 2, i16* %65, align 1
  br label %bb4

bb74:                                             ; preds = %bb67
  %66 = add i16 %i.0401, 4
  br label %bb85

bb75:                                             ; preds = %bb67
  %_8.i.i231 = icmp ult i16 %_3.1, %i.0401
  br i1 %_8.i.i231, label %bb5.i.i233, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h349d9c187345980eE.exit235"

bb5.i.i233:                                       ; preds = %bb75
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %i.0401, i16 %_3.1, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18784 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h349d9c187345980eE.exit235": ; preds = %bb75
  %_3.i.i = icmp ugt i16 %i.0401, -4
  br i1 %_3.i.i, label %bb2.i.i, label %bb1.i.i

bb1.i.i:                                          ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h349d9c187345980eE.exit235"
  %_8.i.i = icmp ult i16 %_3.1, %58
  br i1 %_8.i.i, label %bb5.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit"

bb2.i.i:                                          ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h349d9c187345980eE.exit235"
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %i.0401, i16 %58, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18784 to %"panic::Location"*))
  unreachable

bb5.i.i:                                          ; preds = %bb1.i.i
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %58, i16 %_3.1, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18784 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit": ; preds = %bb1.i.i
  %_7.i.i.i.i = sub i16 %_3.1, %58
  %67 = getelementptr inbounds { i8*, i16 }, { i8*, i16 }* %self, i16 0, i32 0
  store i8* %59, i8** %67, align 1
  store i16 %_7.i.i.i.i, i16* %2, align 1
  %_205.sroa.0.0..sroa_cast175 = bitcast %"option::Option<str::lossy::Utf8LossyChunk>"* %0 to [0 x i8]**
  store [0 x i8]* %_12.0400, [0 x i8]** %_205.sroa.0.0..sroa_cast175, align 1
  %_205.sroa.4.0..sroa_idx177 = getelementptr inbounds %"option::Option<str::lossy::Utf8LossyChunk>", %"option::Option<str::lossy::Utf8LossyChunk>"* %0, i16 0, i32 2
  %68 = bitcast [6 x i8]* %_205.sroa.4.0..sroa_idx177 to i16*
  store i16 %i.0401, i16* %68, align 1
  %_205.sroa.5.0..sroa_idx179 = getelementptr inbounds %"option::Option<str::lossy::Utf8LossyChunk>", %"option::Option<str::lossy::Utf8LossyChunk>"* %0, i16 0, i32 2, i16 2
  %69 = bitcast i8* %_205.sroa.5.0..sroa_idx179 to i8**
  store i8* %8, i8** %69, align 1
  %_205.sroa.6.0..sroa_idx181 = getelementptr inbounds %"option::Option<str::lossy::Utf8LossyChunk>", %"option::Option<str::lossy::Utf8LossyChunk>"* %0, i16 0, i32 2, i16 4
  %70 = bitcast i8* %_205.sroa.6.0..sroa_idx181 to i16*
  store i16 3, i16* %70, align 1
  br label %bb4

bb85:                                             ; preds = %bb74, %bb44, %bb16, %bb8
  %i.1 = phi i16 [ %9, %bb8 ], [ %66, %bb74 ], [ %40, %bb44 ], [ %19, %bb16 ]
  %_5 = icmp ult i16 %i.1, %_3.1
  br i1 %_5, label %bb8, label %bb7
}

; <core::str::lossy::Utf8Lossy as core::fmt::Display>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN66_$LT$core..str..lossy..Utf8Lossy$u20$as$u20$core..fmt..Display$GT$3fmt17h1acdd6241f0462abE"(%"str::lossy::Utf8Lossy"* noalias nonnull readonly align 1 %self.0, i16 %self.1, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_13 = alloca %"option::Option<str::lossy::Utf8LossyChunk>", align 1
  %iter = alloca { i8*, i16 }, align 1
  %0 = icmp eq i16 %self.1, 0
  br i1 %0, label %bb3, label %bb2

bb2:                                              ; preds = %start
  %1 = getelementptr %"str::lossy::Utf8Lossy", %"str::lossy::Utf8Lossy"* %self.0, i16 0, i32 0, i16 0
  %2 = bitcast { i8*, i16 }* %iter to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %2)
  %3 = getelementptr inbounds { i8*, i16 }, { i8*, i16 }* %iter, i16 0, i32 0
  store i8* %1, i8** %3, align 1
  %4 = getelementptr inbounds { i8*, i16 }, { i8*, i16 }* %iter, i16 0, i32 1
  store i16 %self.1, i16* %4, align 1
  %5 = getelementptr inbounds %"option::Option<str::lossy::Utf8LossyChunk>", %"option::Option<str::lossy::Utf8LossyChunk>"* %_13, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %5)
; call <core::str::lossy::Utf8LossyChunksIter as core::iter::traits::iterator::Iterator>::next
  call addrspace(1) void @"_ZN96_$LT$core..str..lossy..Utf8LossyChunksIter$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hc5d233dae66f7b3cE"(%"option::Option<str::lossy::Utf8LossyChunk>"* noalias nocapture nonnull sret dereferenceable(8) %_13, { i8*, i16 }* nonnull align 1 dereferenceable(4) %iter)
  %6 = bitcast %"option::Option<str::lossy::Utf8LossyChunk>"* %_13 to {}**
  %7 = load {}*, {}** %6, align 1
  %8 = icmp eq {}* %7, null
  br i1 %8, label %bb10, label %bb12.lr.ph

bb12.lr.ph:                                       ; preds = %bb2
  %val.sroa.4.0..sroa_idx30 = getelementptr inbounds %"option::Option<str::lossy::Utf8LossyChunk>", %"option::Option<str::lossy::Utf8LossyChunk>"* %_13, i16 0, i32 2
  %9 = bitcast [6 x i8]* %val.sroa.4.0..sroa_idx30 to i16*
  %val.sroa.5.0..sroa_idx32 = getelementptr inbounds %"option::Option<str::lossy::Utf8LossyChunk>", %"option::Option<str::lossy::Utf8LossyChunk>"* %_13, i16 0, i32 2, i16 2
  %10 = bitcast i8* %val.sroa.5.0..sroa_idx32 to [0 x i8]**
  %val.sroa.6.0..sroa_idx34 = getelementptr inbounds %"option::Option<str::lossy::Utf8LossyChunk>", %"option::Option<str::lossy::Utf8LossyChunk>"* %_13, i16 0, i32 2, i16 4
  %11 = bitcast i8* %val.sroa.6.0..sroa_idx34 to i16*
  %12 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %13 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %14 = bitcast [3 x i16]** %13 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %15 = bitcast [3 x i16]** %13 to i1 ({}*, i32) addrspace(1)***
  br label %bb12

bb3:                                              ; preds = %start
; call core::fmt::Formatter::pad
  %16 = tail call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter3pad17h307fb261f2dc8a5eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, [0 x i8]* noalias nonnull readonly align 1 getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), i16 0)
  br label %bb4

bb4:                                              ; preds = %bb10, %bb22, %bb3
  %.0 = phi i1 [ %16, %bb3 ], [ false, %bb10 ], [ %.1, %bb22 ]
  ret i1 %.0

bb10:                                             ; preds = %bb40, %bb2
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 8, i8* nonnull %5)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %2)
  br label %bb4

bb12:                                             ; preds = %bb12.lr.ph, %bb40
  %val.sroa.0.0.copyload.in = phi {}* [ %7, %bb12.lr.ph ], [ %27, %bb40 ]
  %val.sroa.4.0.copyload = load i16, i16* %9, align 1
  %val.sroa.5.0.copyload = load [0 x i8]*, [0 x i8]** %10, align 1
  %val.sroa.6.0.copyload = load i16, i16* %11, align 1
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 8, i8* nonnull %5)
  %17 = icmp ne [0 x i8]* %val.sroa.5.0.copyload, null
  call addrspace(1) void @llvm.assume(i1 %17)
  %_21 = icmp eq i16 %val.sroa.4.0.copyload, %self.1
  br i1 %_21, label %bb16, label %bb15

bb15:                                             ; preds = %bb12
  %val.sroa.0.0.copyload = bitcast {}* %val.sroa.0.0.copyload.in to [0 x i8]*
  %_3.0.i36 = load {}*, {}** %12, align 1, !noalias !1427, !nonnull !568
  %_3.11.i37 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %14, align 1, !noalias !1427, !nonnull !568
  %18 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i37, i16 3
  %19 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %18, align 1, !invariant.load !568, !noalias !1427, !nonnull !568
  %20 = call zeroext addrspace(1) i1 %19({}* nonnull align 1 %_3.0.i36, [0 x i8]* noalias nonnull readonly align 1 %val.sroa.0.0.copyload, i16 %val.sroa.4.0.copyload)
  br i1 %20, label %bb22, label %bb25

bb16:                                             ; preds = %bb12
  %21 = icmp eq i16 %val.sroa.6.0.copyload, 0
  br i1 %21, label %bb18, label %bb19

bb18:                                             ; preds = %bb16
  %val.sroa.0.0.copyload.le = bitcast {}* %val.sroa.0.0.copyload.in to [0 x i8]*
; call core::fmt::Formatter::pad
  %22 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter3pad17h307fb261f2dc8a5eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, [0 x i8]* noalias nonnull readonly align 1 %val.sroa.0.0.copyload.le, i16 %self.1)
  br label %bb22

bb19:                                             ; preds = %bb16
; call core::panicking::panic
  call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [35 x i8] }>* @alloc18794 to [0 x i8]*), i16 35, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18796 to %"panic::Location"*))
  unreachable

bb22:                                             ; preds = %bb32, %bb15, %bb18
  %.1 = phi i1 [ %22, %bb18 ], [ true, %bb15 ], [ true, %bb32 ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %2)
  br label %bb4

bb25:                                             ; preds = %bb15
  %23 = icmp eq i16 %val.sroa.6.0.copyload, 0
  br i1 %23, label %bb40, label %bb32

bb32:                                             ; preds = %bb25
  %_3.0.i = load {}*, {}** %12, align 1, !nonnull !568
  %_3.11.i = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %15, align 1, !nonnull !568
  %24 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11.i, i16 4
  %25 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %24, align 1, !invariant.load !568, !nonnull !568
  %26 = call zeroext addrspace(1) i1 %25({}* nonnull align 1 %_3.0.i, i32 65533)
  br i1 %26, label %bb22, label %bb40

bb40:                                             ; preds = %bb32, %bb25
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %5)
; call <core::str::lossy::Utf8LossyChunksIter as core::iter::traits::iterator::Iterator>::next
  call addrspace(1) void @"_ZN96_$LT$core..str..lossy..Utf8LossyChunksIter$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hc5d233dae66f7b3cE"(%"option::Option<str::lossy::Utf8LossyChunk>"* noalias nocapture nonnull sret dereferenceable(8) %_13, { i8*, i16 }* nonnull align 1 dereferenceable(4) %iter)
  %27 = load {}*, {}** %6, align 1
  %28 = icmp eq {}* %27, null
  br i1 %28, label %bb10, label %bb12
}

; <core::str::lossy::Utf8Lossy as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN64_$LT$core..str..lossy..Utf8Lossy$u20$as$u20$core..fmt..Debug$GT$3fmt17h55eae9ec78a8505aE"(%"str::lossy::Utf8Lossy"* noalias nonnull readonly align 1 %self.0, i16 %self.1, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_5.i1.i.i = alloca %"str::traits::{{impl}}::index::{{closure}}.0", align 1
  %end.i.i = alloca i16, align 1
  %start1.i.i = alloca i16, align 1
  %slice.i.i = alloca { [0 x i8]*, i16 }, align 1
  %_5.i = alloca %"fmt::Arguments", align 1
  %_116 = alloca [1 x { i8*, i8 addrspace(1)* }], align 1
  %b = alloca i8, align 1
  %_16 = alloca %"option::Option<str::lossy::Utf8LossyChunk>", align 1
  %iter = alloca { i8*, i16 }, align 1
  %0 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i = load {}*, {}** %0, align 1, !nonnull !568
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %2 = bitcast [3 x i16]** %1 to i1 ({}*, i32) addrspace(1)***
  %_3.11.i = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %2, align 1, !nonnull !568
  %3 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11.i, i16 4
  %4 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %3, align 1, !invariant.load !568, !nonnull !568
  %5 = tail call zeroext addrspace(1) i1 %4({}* nonnull align 1 %_3.0.i, i32 34)
  br i1 %5, label %bb6, label %bb3

bb3:                                              ; preds = %start
  %6 = getelementptr %"str::lossy::Utf8Lossy", %"str::lossy::Utf8Lossy"* %self.0, i16 0, i32 0, i16 0
  %7 = bitcast { i8*, i16 }* %iter to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %7)
  %8 = getelementptr inbounds { i8*, i16 }, { i8*, i16 }* %iter, i16 0, i32 0
  store i8* %6, i8** %8, align 1
  %9 = getelementptr inbounds { i8*, i16 }, { i8*, i16 }* %iter, i16 0, i32 1
  store i16 %self.1, i16* %9, align 1
  %10 = getelementptr inbounds %"option::Option<str::lossy::Utf8LossyChunk>", %"option::Option<str::lossy::Utf8LossyChunk>"* %_16, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %10)
; call <core::str::lossy::Utf8LossyChunksIter as core::iter::traits::iterator::Iterator>::next
  call addrspace(1) void @"_ZN96_$LT$core..str..lossy..Utf8LossyChunksIter$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hc5d233dae66f7b3cE"(%"option::Option<str::lossy::Utf8LossyChunk>"* noalias nocapture nonnull sret dereferenceable(8) %_16, { i8*, i16 }* nonnull align 1 dereferenceable(4) %iter)
  %11 = bitcast %"option::Option<str::lossy::Utf8LossyChunk>"* %_16 to {}**
  %12 = load {}*, {}** %11, align 1
  %13 = icmp eq {}* %12, null
  br i1 %13, label %bb13, label %bb15.lr.ph

bb15.lr.ph:                                       ; preds = %bb3
  %val.sroa.4.0..sroa_idx44 = getelementptr inbounds %"option::Option<str::lossy::Utf8LossyChunk>", %"option::Option<str::lossy::Utf8LossyChunk>"* %_16, i16 0, i32 2
  %14 = bitcast [6 x i8]* %val.sroa.4.0..sroa_idx44 to i16*
  %val.sroa.5.0..sroa_idx46 = getelementptr inbounds %"option::Option<str::lossy::Utf8LossyChunk>", %"option::Option<str::lossy::Utf8LossyChunk>"* %_16, i16 0, i32 2, i16 2
  %15 = bitcast i8* %val.sroa.5.0..sroa_idx46 to [0 x i8]**
  %val.sroa.6.0..sroa_idx48 = getelementptr inbounds %"option::Option<str::lossy::Utf8LossyChunk>", %"option::Option<str::lossy::Utf8LossyChunk>"* %_16, i16 0, i32 2, i16 4
  %16 = bitcast i8* %val.sroa.6.0..sroa_idx48 to i16*
  %17 = bitcast { [0 x i8]*, i16 }* %slice.i.i to i8*
  %18 = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %slice.i.i, i16 0, i32 1
  %19 = bitcast i16* %start1.i.i to i8*
  %20 = bitcast i16* %end.i.i to i8*
  %21 = bitcast [3 x i16]** %1 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %22 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_116 to i8*
  %23 = getelementptr inbounds [1 x { i8*, i8 addrspace(1)* }], [1 x { i8*, i8 addrspace(1)* }]* %_116, i16 0, i16 0, i32 0
  %24 = getelementptr inbounds [1 x { i8*, i8 addrspace(1)* }], [1 x { i8*, i8 addrspace(1)* }]* %_116, i16 0, i16 0, i32 1
  %25 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 0, i16 0
  %_109.sroa.0.0..sroa_cast131 = bitcast %"fmt::Arguments"* %_5.i to [0 x { [0 x i8]*, i16 }]**
  %_109.sroa.4.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 1, i32 1
  %_109.sroa.5.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 3, i32 0
  %_109.sroa.6.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 3, i32 1
  %_109.sroa.7.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 5, i32 0
  %26 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %_109.sroa.7.0..sroa_idx to [1 x { i8*, i8 addrspace(1)* }]**
  %_109.sroa.8.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 5, i32 1
  %27 = bitcast { [0 x i8]*, i16 }* %slice.i.i to {}**
  br label %bb15

bb6:                                              ; preds = %start, %bb13, %bb37
  %.0 = phi i1 [ %32, %bb13 ], [ true, %bb37 ], [ true, %start ]
  ret i1 %.0

bb11.loopexit:                                    ; preds = %bb62
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %10)
; call <core::str::lossy::Utf8LossyChunksIter as core::iter::traits::iterator::Iterator>::next
  call addrspace(1) void @"_ZN96_$LT$core..str..lossy..Utf8LossyChunksIter$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hc5d233dae66f7b3cE"(%"option::Option<str::lossy::Utf8LossyChunk>"* noalias nocapture nonnull sret dereferenceable(8) %_16, { i8*, i16 }* nonnull align 1 dereferenceable(4) %iter)
  %28 = load {}*, {}** %11, align 1
  %29 = icmp eq {}* %28, null
  br i1 %29, label %bb13, label %bb15

bb13:                                             ; preds = %bb11.loopexit, %bb3
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 8, i8* nonnull %10)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %7)
  %_3.0.i80 = load {}*, {}** %0, align 1, !nonnull !568
  %_3.11.i81 = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %2, align 1, !nonnull !568
  %30 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11.i81, i16 4
  %31 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %30, align 1, !invariant.load !568, !nonnull !568
  %32 = call zeroext addrspace(1) i1 %31({}* nonnull align 1 %_3.0.i80, i32 34)
  br label %bb6

bb15:                                             ; preds = %bb15.lr.ph, %bb11.loopexit
  %val.sroa.0.0.copyload.in = phi {}* [ %12, %bb15.lr.ph ], [ %28, %bb11.loopexit ]
  %val.sroa.0.0.copyload = bitcast {}* %val.sroa.0.0.copyload.in to [0 x i8]*
  %val.sroa.4.0.copyload = load i16, i16* %14, align 1
  %val.sroa.5.0.copyload = load [0 x i8]*, [0 x i8]** %15, align 1, !nonnull !568
  %val.sroa.6.0.copyload = load i16, i16* %16, align 1
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 8, i8* nonnull %10)
  %33 = getelementptr inbounds [0 x i8], [0 x i8]* %val.sroa.0.0.copyload, i16 0, i16 %val.sroa.4.0.copyload
  %_13.i.i.i.i238 = icmp eq i16 %val.sroa.4.0.copyload, 0
  br i1 %_13.i.i.i.i238, label %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E.exit", label %bb3.i.i.i83.preheader

bb3.i.i.i83.preheader:                            ; preds = %bb15
  %_16.i.i.i.cast.i237 = bitcast {}* %val.sroa.0.0.copyload.in to i8*
  %34 = ptrtoint {}* %val.sroa.0.0.copyload.in to i16
  br label %bb3.i.i.i83

bb3.i.i.i83:                                      ; preds = %bb3.i.i.i83.preheader, %bb52
  %_16.i.i.i.cast.i246 = phi i8* [ %_16.i.i.i.cast.i, %bb52 ], [ %_16.i.i.i.cast.i237, %bb3.i.i.i83.preheader ]
  %from.0241 = phi i16 [ %from.1, %bb52 ], [ 0, %bb3.i.i.i83.preheader ]
  %iter1.sroa.6.0240 = phi i16 [ %iter1.sroa.6.4, %bb52 ], [ %34, %bb3.i.i.i83.preheader ]
  %iter1.sroa.0.0239 = phi i16 [ %57, %bb52 ], [ 0, %bb3.i.i.i83.preheader ]
  %35 = getelementptr inbounds i8, i8* %_16.i.i.i.cast.i246, i16 1
  %36 = ptrtoint i8* %35 to i16
  %x.i.i.i = load i8, i8* %_16.i.i.i.cast.i246, align 1
  %_12.i.i.i82 = icmp sgt i8 %x.i.i.i, -1
  br i1 %_12.i.i.i82, label %bb11.i.i.i, label %bb10.i.i.i84

bb10.i.i.i84:                                     ; preds = %bb3.i.i.i83
  %_3.i37.i.i.i = and i8 %x.i.i.i, 31
  %37 = zext i8 %_3.i37.i.i.i to i32
  %_13.i33.i.i.i = icmp eq i8* %35, %33
  br i1 %_13.i33.i.i.i, label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i, label %bb3.i28.i.i.i

bb3.i28.i.i.i:                                    ; preds = %bb10.i.i.i84
  %38 = getelementptr inbounds i8, i8* %_16.i.i.i.cast.i246, i16 2
  %39 = ptrtoint i8* %38 to i16
  %byte.i27.i.i.i = load i8, i8* %35, align 1, !alias.scope !1430
  %phitmp.i.i.i = and i8 %byte.i27.i.i.i, 63
  %phitmp42.i.i.i = zext i8 %phitmp.i.i.i to i32
  br label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i

_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i: ; preds = %bb3.i28.i.i.i, %bb10.i.i.i84
  %iter1.sroa.6.1 = phi i16 [ %36, %bb10.i.i.i84 ], [ %39, %bb3.i28.i.i.i ]
  %_16.i19.i.i.i = phi i8* [ %33, %bb10.i.i.i84 ], [ %38, %bb3.i28.i.i.i ]
  %.0.i29.i.i.i = phi i32 [ 0, %bb10.i.i.i84 ], [ %phitmp42.i.i.i, %bb3.i28.i.i.i ]
  %_3.i24.i.i.i = shl nuw nsw i32 %37, 6
  %40 = or i32 %.0.i29.i.i.i, %_3.i24.i.i.i
  %_24.i.i.i = icmp ugt i8 %x.i.i.i, -33
  br i1 %_24.i.i.i, label %bb17.i.i.i, label %bb22

bb11.i.i.i:                                       ; preds = %bb3.i.i.i83
  %_14.i.i.i = zext i8 %x.i.i.i to i32
  br label %bb22

bb17.i.i.i:                                       ; preds = %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i
  %_13.i20.i.i.i = icmp eq i8* %_16.i19.i.i.i, %33
  br i1 %_13.i20.i.i.i, label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i, label %bb3.i15.i.i.i

bb3.i15.i.i.i:                                    ; preds = %bb17.i.i.i
  %41 = getelementptr inbounds i8, i8* %_16.i19.i.i.i, i16 1
  %42 = ptrtoint i8* %41 to i16
  %byte.i14.i.i.i = load i8, i8* %_16.i19.i.i.i, align 1, !alias.scope !1433
  %phitmp43.i.i.i = and i8 %byte.i14.i.i.i, 63
  %phitmp44.i.i.i = zext i8 %phitmp43.i.i.i to i32
  br label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i

_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i: ; preds = %bb3.i15.i.i.i, %bb17.i.i.i
  %iter1.sroa.6.2 = phi i16 [ %iter1.sroa.6.1, %bb17.i.i.i ], [ %42, %bb3.i15.i.i.i ]
  %_16.i6.i.i.i = phi i8* [ %33, %bb17.i.i.i ], [ %41, %bb3.i15.i.i.i ]
  %.0.i16.i.i.i = phi i32 [ 0, %bb17.i.i.i ], [ %phitmp44.i.i.i, %bb3.i15.i.i.i ]
  %_3.i11.i.i.i = shl nuw nsw i32 %.0.i29.i.i.i, 6
  %43 = or i32 %.0.i16.i.i.i, %_3.i11.i.i.i
  %_34.i.i.i = shl nuw nsw i32 %37, 12
  %44 = or i32 %43, %_34.i.i.i
  %_37.i.i.i = icmp ugt i8 %x.i.i.i, -17
  br i1 %_37.i.i.i, label %bb22.i.i.i, label %bb22

bb22.i.i.i:                                       ; preds = %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i
  %_13.i7.i.i.i = icmp eq i8* %_16.i6.i.i.i, %33
  br i1 %_13.i7.i.i.i, label %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i", label %bb3.i.i.i.i

bb3.i.i.i.i:                                      ; preds = %bb22.i.i.i
  %45 = getelementptr inbounds i8, i8* %_16.i6.i.i.i, i16 1
  %46 = ptrtoint i8* %45 to i16
  %byte.i.i.i.i = load i8, i8* %_16.i6.i.i.i, align 1, !alias.scope !1436
  %phitmp45.i.i.i = and i8 %byte.i.i.i.i, 63
  %phitmp46.i.i.i = zext i8 %phitmp45.i.i.i to i32
  br label %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i"

"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i": ; preds = %bb3.i.i.i.i, %bb22.i.i.i
  %iter1.sroa.6.3 = phi i16 [ %iter1.sroa.6.2, %bb22.i.i.i ], [ %46, %bb3.i.i.i.i ]
  %.0.i4.i.i.i = phi i32 [ 0, %bb22.i.i.i ], [ %phitmp46.i.i.i, %bb3.i.i.i.i ]
  %_43.i.i.i = shl nuw nsw i32 %37, 18
  %_42.i.i.i = and i32 %_43.i.i.i, 1835008
  %_3.i.i.i.i = shl nuw nsw i32 %43, 6
  %47 = or i32 %_3.i.i.i.i, %_42.i.i.i
  %48 = or i32 %47, %.0.i4.i.i.i
  %49 = icmp eq i32 %48, 1114112
  br i1 %49, label %bb20, label %bb22

bb20:                                             ; preds = %bb52, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i"
  %from.0.lcssa = phi i16 [ %from.1, %bb52 ], [ %from.0241, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i" ]
  %_4.i.i.i.i87 = icmp eq i16 %from.0.lcssa, 0
  %_6.i.i.i.i88 = icmp eq i16 %val.sroa.4.0.copyload, %from.0.lcssa
  %or.cond.i.i.i.i89 = or i1 %_4.i.i.i.i87, %_6.i.i.i.i88
  br i1 %or.cond.i.i.i.i89, label %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E.exit", label %bb6.i.i.i.i91

bb6.i.i.i.i91:                                    ; preds = %bb20
  %_3.i.i.i.i.i.i90 = icmp ugt i16 %val.sroa.4.0.copyload, %from.0.lcssa
  br i1 %_3.i.i.i.i.i.i90, label %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i93", label %bb1.i.i.i94

"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i93": ; preds = %bb6.i.i.i.i91
  %50 = getelementptr inbounds [0 x i8], [0 x i8]* %val.sroa.0.0.copyload, i16 0, i16 %from.0.lcssa
  %b.i.i.i.i92 = load i8, i8* %50, align 1, !alias.scope !1439
  %51 = icmp sgt i8 %b.i.i.i.i92, -65
  br i1 %51, label %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E.exit", label %bb1.i.i.i94

bb1.i.i.i94:                                      ; preds = %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i93", %bb6.i.i.i.i91
  %val.sroa.0.0.copyload.le = bitcast {}* %val.sroa.0.0.copyload.in to [0 x i8]*
; call core::str::slice_error_fail
  call addrspace(1) void @_ZN4core3str16slice_error_fail17h31442c6f648259d9E([0 x i8]* noalias nonnull readonly align 1 %val.sroa.0.0.copyload.le, i16 %val.sroa.4.0.copyload, i16 %from.0.lcssa, i16 %val.sroa.4.0.copyload, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18842 to %"panic::Location"*)), !noalias !1446
  unreachable

"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E.exit": ; preds = %bb15, %bb20, %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i93"
  %from.0.lcssa288 = phi i16 [ %from.0.lcssa, %bb20 ], [ %from.0.lcssa, %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i93" ], [ 0, %bb15 ]
  %52 = getelementptr inbounds [0 x i8], [0 x i8]* %val.sroa.0.0.copyload, i16 0, i16 %from.0.lcssa288
  %len.i.i.i.i95 = sub i16 %val.sroa.4.0.copyload, %from.0.lcssa288
  %53 = bitcast i8* %52 to [0 x i8]*
  %_3.0.i85 = load {}*, {}** %0, align 1, !noalias !1451, !nonnull !568
  %_3.11.i86 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %21, align 1, !noalias !1451, !nonnull !568
  %54 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i86, i16 3
  %55 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %54, align 1, !invariant.load !568, !noalias !1451, !nonnull !568
  %56 = call zeroext addrspace(1) i1 %55({}* nonnull align 1 %_3.0.i85, [0 x i8]* noalias nonnull readonly align 1 %53, i16 %len.i.i.i.i95)
  br i1 %56, label %bb37, label %bb56

bb22:                                             ; preds = %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i", %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i, %bb11.i.i.i, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i
  %iter1.sroa.6.4 = phi i16 [ %36, %bb11.i.i.i ], [ %iter1.sroa.6.3, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i" ], [ %iter1.sroa.6.2, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i ], [ %iter1.sroa.6.1, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i ]
  %.sroa.0.0.i.i8.i = phi i32 [ %_14.i.i.i, %bb11.i.i.i ], [ %48, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i" ], [ %44, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i ], [ %40, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i ]
  %_11.i = sub i16 %iter1.sroa.0.0239, %iter1.sroa.6.0240
  %57 = add i16 %_11.i, %iter1.sroa.6.4
  switch i32 %.sroa.0.0.i.i8.i, label %bb5.i.i [
    i32 9, label %bb26
    i32 13, label %bb2.i.i76
    i32 10, label %bb3.i.i77
    i32 92, label %bb4.i.i78
    i32 39, label %bb4.i.i78
    i32 34, label %bb4.i.i78
  ]

bb2.i.i76:                                        ; preds = %bb22
  br label %bb26

bb3.i.i77:                                        ; preds = %bb22
  br label %bb26

bb4.i.i78:                                        ; preds = %bb22, %bb22, %bb22
  br label %bb26

bb5.i.i:                                          ; preds = %bb22
; call core::unicode::unicode_data::grapheme_extend::lookup
  %58 = call zeroext addrspace(1) i1 @_ZN4core7unicode12unicode_data15grapheme_extend6lookup17h1efbd4bf685b4a0bE(i32 %.sroa.0.0.i.i8.i), !noalias !1454
  %59 = icmp ult i32 %.sroa.0.0.i.i8.i, 1114112
  br i1 %58, label %bb11.i.i, label %bb7.i.i

bb7.i.i:                                          ; preds = %bb5.i.i
  call addrspace(1) void @llvm.assume(i1 %59)
  %lower.i = trunc i32 %.sroa.0.0.i.i8.i to i16
  %_6.i = icmp ult i32 %.sroa.0.0.i.i8.i, 65536
  br i1 %_6.i, label %bb2.i, label %bb1.i

bb1.i:                                            ; preds = %bb7.i.i
  %_15.i = icmp ult i32 %.sroa.0.0.i.i8.i, 131072
  br i1 %_15.i, label %_ZN4core7unicode9printable12is_printable17h91d3b28d6b01d70eE.exit, label %bb4.i

bb2.i:                                            ; preds = %bb7.i.i
; call core::unicode::printable::check
  %60 = call fastcc zeroext addrspace(1) i1 @_ZN4core7unicode9printable5check17h2dcb736e2dcd86e6E(i16 %lower.i, [0 x { i8, i8 }]* noalias nonnull readonly align 1 bitcast (<{ [82 x i8] }>* @alloc748 to [0 x { i8, i8 }]*), i16 41, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [290 x i8] }>* @alloc18889 to [0 x i8]*), i16 290, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [309 x i8] }>* @alloc18890 to [0 x i8]*), i16 309)
  br i1 %60, label %bb52, label %_ZN4core4iter6traits10exact_size17ExactSizeIterator3len17h9659b6209929deafE.exit

bb4.i:                                            ; preds = %bb1.i
  %x.off.i = add nsw i32 %.sroa.0.0.i.i8.i, -173790
  %61 = icmp ult i32 %x.off.i, 34
  %x.off9.i = add nsw i32 %.sroa.0.0.i.i8.i, -177973
  %62 = icmp ult i32 %x.off9.i, 11
  %or.cond.i = or i1 %61, %62
  %63 = and i32 %.sroa.0.0.i.i8.i, 2097150
  %64 = icmp eq i32 %63, 178206
  %or.cond25.i = or i1 %64, %or.cond.i
  %x.off11.i = add nsw i32 %.sroa.0.0.i.i8.i, -183970
  %65 = icmp ult i32 %x.off11.i, 14
  %or.cond27.i = or i1 %65, %or.cond25.i
  %x.off12.i = add nsw i32 %.sroa.0.0.i.i8.i, -191457
  %66 = icmp ult i32 %x.off12.i, 3103
  %or.cond29.i = or i1 %66, %or.cond27.i
  %x.off13.i = add nsw i32 %.sroa.0.0.i.i8.i, -195102
  %67 = icmp ult i32 %x.off13.i, 1506
  %or.cond31.i = or i1 %67, %or.cond29.i
  %x.off14.i = add nsw i32 %.sroa.0.0.i.i8.i, -201547
  %68 = icmp ult i32 %x.off14.i, 716213
  %or.cond33.i = or i1 %68, %or.cond31.i
  %or.cond33.i.not = xor i1 %or.cond33.i, true
  %x.off15.i = add nsw i32 %.sroa.0.0.i.i8.i, -918000
  %69 = icmp ugt i32 %x.off15.i, 196111
  %or.cond = and i1 %69, %or.cond33.i.not
  br i1 %or.cond, label %bb52, label %_ZN4core4iter6traits10exact_size17ExactSizeIterator3len17h9659b6209929deafE.exit

_ZN4core7unicode9printable12is_printable17h91d3b28d6b01d70eE.exit: ; preds = %bb1.i
; call core::unicode::printable::check
  %70 = call fastcc zeroext addrspace(1) i1 @_ZN4core7unicode9printable5check17h2dcb736e2dcd86e6E(i16 %lower.i, [0 x { i8, i8 }]* noalias nonnull readonly align 1 bitcast (<{ [76 x i8] }>* @alloc794 to [0 x { i8, i8 }]*), i16 38, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [175 x i8] }>* @alloc18891 to [0 x i8]*), i16 175, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [419 x i8] }>* @alloc18892 to [0 x i8]*), i16 419)
  br i1 %70, label %bb52, label %_ZN4core4iter6traits10exact_size17ExactSizeIterator3len17h9659b6209929deafE.exit

bb11.i.i:                                         ; preds = %bb5.i.i
  call addrspace(1) void @llvm.assume(i1 %59) #20, !noalias !1459
  br label %_ZN4core4iter6traits10exact_size17ExactSizeIterator3len17h9659b6209929deafE.exit

_ZN4core4iter6traits10exact_size17ExactSizeIterator3len17h9659b6209929deafE.exit: ; preds = %_ZN4core7unicode9printable12is_printable17h91d3b28d6b01d70eE.exit, %bb2.i, %bb4.i, %bb11.i.i
  %_6.i34.i.i = or i32 %.sroa.0.0.i.i8.i, 1
  %71 = call addrspace(1) i32 @llvm.ctlz.i32(i32 %_6.i34.i.i, i1 true) #20, !range !1299
  %msb.i35.i.i = lshr i32 %71, 2
  %72 = trunc i32 %msb.i35.i.i to i16
  %init_state.sroa.17.sroa.5.0.i.i = xor i16 %72, 7
  br label %bb26

bb26:                                             ; preds = %_ZN4core4iter6traits10exact_size17ExactSizeIterator3len17h9659b6209929deafE.exit, %bb22, %bb2.i.i76, %bb3.i.i77, %bb4.i.i78
  %init_state.sroa.17.sroa.5.0.i.i153178 = phi i16 [ %init_state.sroa.17.sroa.5.0.i.i, %_ZN4core4iter6traits10exact_size17ExactSizeIterator3len17h9659b6209929deafE.exit ], [ undef, %bb4.i.i78 ], [ undef, %bb3.i.i77 ], [ undef, %bb2.i.i76 ], [ undef, %bb22 ]
  %init_state.sroa.10.0.i.i156177 = phi i32 [ %.sroa.0.0.i.i8.i, %_ZN4core4iter6traits10exact_size17ExactSizeIterator3len17h9659b6209929deafE.exit ], [ %.sroa.0.0.i.i8.i, %bb4.i.i78 ], [ 110, %bb3.i.i77 ], [ 114, %bb2.i.i76 ], [ 116, %bb22 ]
  %init_state.sroa.0.0.i.i158176.off0 = phi i8 [ 3, %_ZN4core4iter6traits10exact_size17ExactSizeIterator3len17h9659b6209929deafE.exit ], [ 2, %bb4.i.i78 ], [ 2, %bb3.i.i77 ], [ 2, %bb2.i.i76 ], [ 2, %bb22 ]
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %17), !noalias !1462
  store {}* %val.sroa.0.0.copyload.in, {}** %27, align 1, !noalias !1465
  store i16 %val.sroa.4.0.copyload, i16* %18, align 1, !noalias !1465
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %19), !noalias !1465
  store i16 %from.0241, i16* %start1.i.i, align 1, !noalias !1465
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %20), !noalias !1465
  store i16 %iter1.sroa.0.0239, i16* %end.i.i, align 1, !noalias !1465
  %_5.i.i.i = icmp ult i16 %iter1.sroa.0.0239, %from.0241
  br i1 %_5.i.i.i, label %bb1.i.i.i, label %bb7.i.i.i

bb3.i.i.i75:                                      ; preds = %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit9.i.i.i", %bb7.i.i.i
  %_4.i.i.i.i = icmp eq i16 %iter1.sroa.0.0239, 0
  %_6.i.i.i.i = icmp eq i16 %val.sroa.4.0.copyload, %iter1.sroa.0.0239
  %or.cond.i.i.i.i = or i1 %_4.i.i.i.i, %_6.i.i.i.i
  br i1 %or.cond.i.i.i.i, label %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h16d959e9eb68186dE.exit", label %bb6.i.i.i.i

bb6.i.i.i.i:                                      ; preds = %bb3.i.i.i75
  %_3.i.i.i.i.i.i = icmp ugt i16 %val.sroa.4.0.copyload, %iter1.sroa.0.0239
  br i1 %_3.i.i.i.i.i.i, label %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i", label %bb1.i.i.i

"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i": ; preds = %bb6.i.i.i.i
  %73 = getelementptr inbounds [0 x i8], [0 x i8]* %val.sroa.0.0.copyload, i16 0, i16 %iter1.sroa.0.0239
  %b.i.i.i.i = load i8, i8* %73, align 1, !alias.scope !1468
  %74 = icmp sgt i8 %b.i.i.i.i, -65
  br i1 %74, label %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h16d959e9eb68186dE.exit", label %bb1.i.i.i

bb7.i.i.i:                                        ; preds = %bb26
  %_4.i1.i.i.i = icmp eq i16 %from.0241, 0
  %_6.i2.i.i.i = icmp eq i16 %val.sroa.4.0.copyload, %from.0241
  %or.cond.i3.i.i.i = or i1 %_4.i1.i.i.i, %_6.i2.i.i.i
  br i1 %or.cond.i3.i.i.i, label %bb3.i.i.i75, label %bb6.i5.i.i.i

bb6.i5.i.i.i:                                     ; preds = %bb7.i.i.i
  %_3.i.i.i4.i.i.i = icmp ugt i16 %val.sroa.4.0.copyload, %from.0241
  br i1 %_3.i.i.i4.i.i.i, label %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit9.i.i.i", label %bb1.i.i.i

"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit9.i.i.i": ; preds = %bb6.i5.i.i.i
  %75 = getelementptr inbounds [0 x i8], [0 x i8]* %val.sroa.0.0.copyload, i16 0, i16 %from.0241
  %b.i7.i.i.i = load i8, i8* %75, align 1, !alias.scope !1473
  %76 = icmp sgt i8 %b.i7.i.i.i, -65
  br i1 %76, label %bb3.i.i.i75, label %bb1.i.i.i

bb1.i.i.i:                                        ; preds = %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit9.i.i.i", %bb6.i5.i.i.i, %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i", %bb6.i.i.i.i, %bb26
  %77 = getelementptr inbounds %"str::traits::{{impl}}::index::{{closure}}.0", %"str::traits::{{impl}}::index::{{closure}}.0"* %_5.i1.i.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %77), !noalias !1476
  %_11.sroa.0.0..sroa_cast3.i.i = bitcast %"str::traits::{{impl}}::index::{{closure}}.0"* %_5.i1.i.i to { [0 x i8]*, i16 }**
  store { [0 x i8]*, i16 }* %slice.i.i, { [0 x i8]*, i16 }** %_11.sroa.0.0..sroa_cast3.i.i, align 1, !noalias !1480
  %_11.sroa.4.0..sroa_idx.i.i = getelementptr inbounds %"str::traits::{{impl}}::index::{{closure}}.0", %"str::traits::{{impl}}::index::{{closure}}.0"* %_5.i1.i.i, i16 0, i32 3
  store i16* %start1.i.i, i16** %_11.sroa.4.0..sroa_idx.i.i, align 1, !noalias !1480
  %_11.sroa.5.0..sroa_idx.i.i = getelementptr inbounds %"str::traits::{{impl}}::index::{{closure}}.0", %"str::traits::{{impl}}::index::{{closure}}.0"* %_5.i1.i.i, i16 0, i32 5
  store i16* %end.i.i, i16** %_11.sroa.5.0..sroa_idx.i.i, align 1, !noalias !1480
; call core::str::traits::<impl core::slice::SliceIndex<str> for core::ops::range::Range<usize>>::index::{{closure}}
  call fastcc addrspace(1) void @"_ZN4core3str6traits101_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..Range$LT$usize$GT$$GT$5index28_$u7b$$u7b$closure$u7d$$u7d$17h881ad5f1ad649d6aE"(%"str::traits::{{impl}}::index::{{closure}}.0"* noalias nocapture nonnull dereferenceable(6) %_5.i1.i.i), !noalias !1481
  unreachable

"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h16d959e9eb68186dE.exit": ; preds = %bb3.i.i.i75, %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i.i"
  %78 = getelementptr inbounds [0 x i8], [0 x i8]* %val.sroa.0.0.copyload, i16 0, i16 %from.0241
  %len.i.i.i.i = sub i16 %iter1.sroa.0.0239, %from.0241
  %79 = bitcast i8* %78 to [0 x i8]*
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %20), !noalias !1465
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %19), !noalias !1465
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %17), !noalias !1462
  %_3.0.i73 = load {}*, {}** %0, align 1, !noalias !1482, !nonnull !568
  %_3.11.i74 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %21, align 1, !noalias !1482, !nonnull !568
  %80 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i74, i16 3
  %81 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %80, align 1, !invariant.load !568, !noalias !1482, !nonnull !568
  %82 = call zeroext addrspace(1) i1 %81({}* nonnull align 1 %_3.0.i73, [0 x i8]* noalias nonnull readonly align 1 %79, i16 %len.i.i.i.i)
  br i1 %82, label %bb37, label %bb39

bb37:                                             ; preds = %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E.exit", %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h16d959e9eb68186dE.exit", %bb66, %bb43
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %7)
  br label %bb6

bb39:                                             ; preds = %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h16d959e9eb68186dE.exit", %bb43
  %iter2.sroa.0.0 = phi i8 [ %iter2.sroa.0.1192, %bb43 ], [ %init_state.sroa.0.0.i.i158176.off0, %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h16d959e9eb68186dE.exit" ]
  %iter2.sroa.9.0 = phi i8 [ %iter2.sroa.9.1193, %bb43 ], [ 5, %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h16d959e9eb68186dE.exit" ]
  %iter2.sroa.15.0 = phi i16 [ %iter2.sroa.15.1194, %bb43 ], [ %init_state.sroa.17.sroa.5.0.i.i153178, %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h16d959e9eb68186dE.exit" ]
  %trunc.i.i = trunc i8 %iter2.sroa.0.0 to i2
  switch i2 %trunc.i.i, label %bb2.i.i.us-lcssa250 [
    i2 0, label %bb41
    i2 1, label %"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit"
    i2 -2, label %bb43
    i2 -1, label %bb1.i.i70
  ]

bb1.i.i70:                                        ; preds = %bb39
  %trunc.i.i.i = trunc i8 %iter2.sroa.9.0 to i3
  switch i3 %trunc.i.i.i, label %bb2.i.i.i [
    i3 0, label %bb41
    i3 1, label %bb12.i.i.i
    i3 2, label %bb6.i.i.i
    i3 3, label %bb5.i.i.i
    i3 -4, label %bb4.i.i.i
    i3 -3, label %bb43
  ]

bb2.i.i.i:                                        ; preds = %bb1.i.i70
  unreachable

bb4.i.i.i:                                        ; preds = %bb1.i.i70
  br label %bb43

bb5.i.i.i:                                        ; preds = %bb1.i.i70
  br label %bb43

bb6.i.i.i:                                        ; preds = %bb1.i.i70
  %_10.i.i.i = shl i16 %iter2.sroa.15.0, 2
  %83 = and i16 %_10.i.i.i, 28
  %84 = zext i16 %83 to i32
  %_7.i.i.i = lshr i32 %init_state.sroa.10.0.i.i156177, %84
  %85 = trunc i32 %_7.i.i.i to i8
  %num1.i.i.i.i = and i8 %85, 15
  %_12.i.i.i.i = icmp ult i8 %num1.i.i.i.i, 10
  %_15.i.i.i.i = or i8 %num1.i.i.i.i, 48
  %_18.i.i.i.i = add nuw nsw i8 %num1.i.i.i.i, 87
  %.0.i.v.i.i.i = select i1 %_12.i.i.i.i, i8 %_15.i.i.i.i, i8 %_18.i.i.i.i
  %.0.i.i.i.i = zext i8 %.0.i.v.i.i.i to i32
  %_15.i.i.i = icmp eq i16 %iter2.sroa.15.0, 0
  %86 = add i16 %iter2.sroa.15.0, -1
  %spec.select = select i1 %_15.i.i.i, i16 0, i16 %86
  %spec.select205 = select i1 %_15.i.i.i, i8 1, i8 %iter2.sroa.9.0
  br label %bb43

bb12.i.i.i:                                       ; preds = %bb1.i.i70
  br label %bb43

bb2.i.i.us-lcssa250:                              ; preds = %bb39
  unreachable

"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit": ; preds = %bb39
  br label %bb43

bb41:                                             ; preds = %bb1.i.i70, %bb39
  %87 = icmp ult i32 %.sroa.0.0.i.i8.i, 1114112
  call addrspace(1) void @llvm.assume(i1 %87) #20
  %_2.i.i = icmp ult i32 %.sroa.0.0.i.i8.i, 128
  br i1 %_2.i.i, label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8len_utf817h008cd1f0b227ba0fE.exit", label %bb1.i.i

bb1.i.i:                                          ; preds = %bb41
  %_4.i.i = icmp ult i32 %.sroa.0.0.i.i8.i, 2048
  br i1 %_4.i.i, label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8len_utf817h008cd1f0b227ba0fE.exit", label %bb3.i.i

bb3.i.i:                                          ; preds = %bb1.i.i
  %_6.i.i = icmp ult i32 %.sroa.0.0.i.i8.i, 65536
  %..i.i = select i1 %_6.i.i, i16 3, i16 4
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8len_utf817h008cd1f0b227ba0fE.exit"

"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8len_utf817h008cd1f0b227ba0fE.exit": ; preds = %bb41, %bb1.i.i, %bb3.i.i
  %.0.i.i = phi i16 [ 1, %bb41 ], [ %..i.i, %bb3.i.i ], [ 2, %bb1.i.i ]
  %88 = add i16 %.0.i.i, %iter1.sroa.0.0239
  br label %bb52

bb43:                                             ; preds = %"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit", %bb6.i.i.i, %bb39, %bb1.i.i70, %bb12.i.i.i, %bb5.i.i.i, %bb4.i.i.i
  %.0.i.i72195 = phi i32 [ %init_state.sroa.10.0.i.i156177, %"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit" ], [ 125, %bb12.i.i.i ], [ 123, %bb5.i.i.i ], [ 117, %bb4.i.i.i ], [ 92, %bb1.i.i70 ], [ 92, %bb39 ], [ %.0.i.i.i.i, %bb6.i.i.i ]
  %iter2.sroa.15.1194 = phi i16 [ %iter2.sroa.15.0, %"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit" ], [ %iter2.sroa.15.0, %bb12.i.i.i ], [ %iter2.sroa.15.0, %bb5.i.i.i ], [ %iter2.sroa.15.0, %bb4.i.i.i ], [ %iter2.sroa.15.0, %bb1.i.i70 ], [ %iter2.sroa.15.0, %bb39 ], [ %spec.select, %bb6.i.i.i ]
  %iter2.sroa.9.1193 = phi i8 [ %iter2.sroa.9.0, %"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit" ], [ 0, %bb12.i.i.i ], [ 2, %bb5.i.i.i ], [ 3, %bb4.i.i.i ], [ 4, %bb1.i.i70 ], [ %iter2.sroa.9.0, %bb39 ], [ %spec.select205, %bb6.i.i.i ]
  %iter2.sroa.0.1192 = phi i8 [ 0, %"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit" ], [ %iter2.sroa.0.0, %bb12.i.i.i ], [ %iter2.sroa.0.0, %bb5.i.i.i ], [ %iter2.sroa.0.0, %bb4.i.i.i ], [ %iter2.sroa.0.0, %bb1.i.i70 ], [ 1, %bb39 ], [ %iter2.sroa.0.0, %bb6.i.i.i ]
  %_3.0.i68 = load {}*, {}** %0, align 1, !nonnull !568
  %_3.11.i69 = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %2, align 1, !nonnull !568
  %89 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11.i69, i16 4
  %90 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %89, align 1, !invariant.load !568, !nonnull !568
  %91 = call zeroext addrspace(1) i1 %90({}* nonnull align 1 %_3.0.i68, i32 %.0.i.i72195)
  br i1 %91, label %bb37, label %bb39

bb52:                                             ; preds = %bb4.i, %bb2.i, %_ZN4core7unicode9printable12is_printable17h91d3b28d6b01d70eE.exit, %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8len_utf817h008cd1f0b227ba0fE.exit"
  %from.1 = phi i16 [ %88, %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8len_utf817h008cd1f0b227ba0fE.exit" ], [ %from.0241, %_ZN4core7unicode9printable12is_printable17h91d3b28d6b01d70eE.exit ], [ %from.0241, %bb2.i ], [ %from.0241, %bb4.i ]
  %_16.i.i.i.cast.i = inttoptr i16 %iter1.sroa.6.4 to i8*
  %_13.i.i.i.i = icmp eq i8* %33, %_16.i.i.i.cast.i
  br i1 %_13.i.i.i.i, label %bb20, label %bb3.i.i.i83

bb56:                                             ; preds = %"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E.exit"
  %92 = getelementptr [0 x i8], [0 x i8]* %val.sroa.5.0.copyload, i16 0, i16 0
  %93 = getelementptr inbounds [0 x i8], [0 x i8]* %val.sroa.5.0.copyload, i16 0, i16 %val.sroa.6.0.copyload
  br label %bb62

bb62:                                             ; preds = %bb66, %bb56
  %iter3.sroa.0.0 = phi i8* [ %92, %bb56 ], [ %94, %bb66 ]
  %_13.i = icmp eq i8* %iter3.sroa.0.0, %93
  br i1 %_13.i, label %bb11.loopexit, label %bb66

bb66:                                             ; preds = %bb62
  %94 = getelementptr inbounds i8, i8* %iter3.sroa.0.0, i16 1
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 1, i8* nonnull %b)
  %95 = load i8, i8* %iter3.sroa.0.0, align 1
  store i8 %95, i8* %b, align 1
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %22)
  store i8* %b, i8** %23, align 1
  store i8 addrspace(1)* bitcast (i1 (i8*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i8$GT$3fmt17h7943257fc24ac32eE" to i8 addrspace(1)*), i8 addrspace(1)** %24, align 1
  %_4.0.i = load {}*, {}** %0, align 1, !noalias !1485, !nonnull !568
  %_4.1.i = load [3 x i16]*, [3 x i16]** %1, align 1, !noalias !1485, !nonnull !568
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %25), !noalias !1485
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8] }>* @alloc16705 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %_109.sroa.0.0..sroa_cast131, align 1
  store i16 1, i16* %_109.sroa.4.0..sroa_idx, align 1
  store i8* getelementptr inbounds (<{ [17 x i8] }>, <{ [17 x i8] }>* @alloc16715, i16 0, i32 0, i16 0), i8** %_109.sroa.5.0..sroa_idx, align 1
  store i16 1, i16* %_109.sroa.6.0..sroa_idx, align 1
  store [1 x { i8*, i8 addrspace(1)* }]* %_116, [1 x { i8*, i8 addrspace(1)* }]** %26, align 1
  store i16 1, i16* %_109.sroa.8.0..sroa_idx, align 1
; call core::fmt::write
  %96 = call zeroext addrspace(1) i1 @_ZN4core3fmt5write17hf4cd163abe69055cE({}* nonnull align 1 %_4.0.i, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) %_4.1.i, %"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_5.i), !noalias !1485
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 12, i8* nonnull %25), !noalias !1485
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %22)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 1, i8* nonnull %b)
  br i1 %96, label %bb37, label %bb62
}

; <core::str::ParseBoolError as core::fmt::Display>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN64_$LT$core..str..ParseBoolError$u20$as$u20$core..fmt..Display$GT$3fmt17h5495a6a4a302fb40E"(%"str::ParseBoolError"* noalias nocapture nonnull readonly align 1 %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
; call core::fmt::Formatter::pad
  %0 = tail call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter3pad17h307fb261f2dc8a5eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [41 x i8] }>* @alloc18801 to [0 x i8]*), i16 41)
  ret i1 %0
}

; core::str::Utf8Error::valid_up_to
; Function Attrs: norecurse nounwind readonly uwtable
define i16 @_ZN4core3str9Utf8Error11valid_up_to17h707d937bdca18a03E(%"str::Utf8Error"* noalias nocapture readonly align 1 dereferenceable(4) %self) unnamed_addr addrspace(1) #5 {
start:
  %0 = bitcast %"str::Utf8Error"* %self to i16*
  %1 = load i16, i16* %0, align 1
  ret i16 %1
}

; core::str::Utf8Error::error_len
; Function Attrs: norecurse nounwind readonly uwtable
define { i8, i16 } @_ZN4core3str9Utf8Error9error_len17h648a6e98130489f1E(%"str::Utf8Error"* noalias nocapture readonly align 1 dereferenceable(4) %self) unnamed_addr addrspace(1) #5 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = getelementptr inbounds %"str::Utf8Error", %"str::Utf8Error"* %self, i16 0, i32 3, i32 0
  %1 = load i8, i8* %0, align 1, !range !87
  %2 = getelementptr inbounds %"str::Utf8Error", %"str::Utf8Error"* %self, i16 0, i32 3, i32 1
  %_2.1 = load i8, i8* %2, align 1
  %3 = zext i8 %_2.1 to i16
  %4 = insertvalue { i8, i16 } undef, i8 %1, 0
  %5 = insertvalue { i8, i16 } %4, i16 %3, 1
  ret { i8, i16 } %5
}

; core::str::from_utf8
; Function Attrs: nounwind uwtable
define void @_ZN4core3str9from_utf817h6afe58600f58cf71E(%"result::Result<&str, str::Utf8Error>"* noalias nocapture sret dereferenceable(5) %0, [0 x i8]* noalias nonnull readonly align 1 %v.0, i16 %v.1) unnamed_addr addrspace(1) #9 {
start:
  %1 = tail call addrspace(1) i16 @llvm.usub.sat.i16(i16 %v.1, i16 3)
  %_7.i.i.i = ptrtoint [0 x i8]* %v.0 to i16
  %pmoda.i.i.i = and i16 %_7.i.i.i, 1
  %_10.i.i.i = icmp eq i16 %pmoda.i.i.i, 0
  %spec.select.i.i.i = select i1 %_10.i.i.i, i16 0, i16 %_7.i.i.i
  %_19126.i = icmp eq i16 %v.1, 0
  br i1 %_19126.i, label %bb3, label %bb11.i

bb11.i:                                           ; preds = %start, %bb105.i
  %index.0127.i = phi i16 [ %index.5.i, %bb105.i ], [ 0, %start ]
  %2 = getelementptr inbounds [0 x i8], [0 x i8]* %v.0, i16 0, i16 %index.0127.i
  %first.i = load i8, i8* %2, align 1, !alias.scope !1488, !noalias !1491
  %_27.i = icmp slt i8 %first.i, 0
  br i1 %_27.i, label %bb14.i, label %bb78.i

bb14.i:                                           ; preds = %bb11.i
  %_31.i = zext i8 %first.i to i16
  %3 = getelementptr inbounds <{ [256 x i8] }>, <{ [256 x i8] }>* @_ZN4core3str15UTF8_CHAR_WIDTH17h3fdb01b2890429f3E, i16 0, i32 0, i16 %_31.i
  %w.i = load i8, i8* %3, align 1
  switch i8 %w.i, label %bb5 [
    i8 2, label %bb16.i
    i8 3, label %bb25.i
    i8 4, label %bb49.i
  ]

bb16.i:                                           ; preds = %bb14.i
  %4 = add nuw i16 %index.0127.i, 1
  %_38.i = icmp ult i16 %4, %v.1
  br i1 %_38.i, label %bb22.i, label %bb5

bb22.i:                                           ; preds = %bb16.i
  %5 = getelementptr inbounds [0 x i8], [0 x i8]* %v.0, i16 0, i16 %4
  %_37.i = load i8, i8* %5, align 1, !alias.scope !1488, !noalias !1491
  %_36.i = and i8 %_37.i, -64
  %_35.i = icmp eq i8 %_36.i, -128
  br i1 %_35.i, label %bb75.i, label %bb5

bb25.i:                                           ; preds = %bb14.i
  %6 = add nuw i16 %index.0127.i, 1
  %_54.i = icmp ult i16 %6, %v.1
  br i1 %_54.i, label %bb28.i, label %bb5

bb28.i:                                           ; preds = %bb25.i
  %7 = getelementptr inbounds [0 x i8], [0 x i8]* %v.0, i16 0, i16 %6
  %_53.i = load i8, i8* %7, align 1, !alias.scope !1488, !noalias !1491
  switch i8 %first.i, label %bb34.i [
    i8 -32, label %bb29.i
    i8 -19, label %bb32.i
  ]

bb29.i:                                           ; preds = %bb28.i
  %8 = and i8 %_53.i, -32
  %9 = icmp eq i8 %8, -96
  br i1 %9, label %bb42.i, label %bb5

bb32.i:                                           ; preds = %bb28.i
  %_65.i = icmp slt i8 %_53.i, 0
  %_66.i = icmp ult i8 %_53.i, -96
  %or.cond92.i = and i1 %_65.i, %_66.i
  br i1 %or.cond92.i, label %bb42.i, label %bb5

bb34.i:                                           ; preds = %bb28.i
  %first.off104.i = add nsw i8 %first.i, 31
  %10 = icmp ult i8 %first.off104.i, 12
  br i1 %10, label %bb36.i, label %bb38.i

bb36.i:                                           ; preds = %bb34.i
  %_67.i = icmp slt i8 %_53.i, 0
  %_68.i = icmp ult i8 %_53.i, -64
  %or.cond94.i = and i1 %_67.i, %_68.i
  br i1 %or.cond94.i, label %bb42.i, label %bb5

bb38.i:                                           ; preds = %bb34.i
  %11 = and i8 %first.i, -2
  %12 = icmp eq i8 %11, -18
  %_69.i = icmp slt i8 %_53.i, 0
  %or.cond96.i = and i1 %12, %_69.i
  %_70.i = icmp ult i8 %_53.i, -64
  %or.cond97.i = and i1 %_70.i, %or.cond96.i
  br i1 %or.cond97.i, label %bb42.i, label %bb5

bb42.i:                                           ; preds = %bb38.i, %bb36.i, %bb32.i, %bb29.i
  %13 = add nuw i16 %index.0127.i, 2
  %_81.i = icmp ult i16 %13, %v.1
  br i1 %_81.i, label %bb46.i, label %bb5

bb46.i:                                           ; preds = %bb42.i
  %14 = getelementptr inbounds [0 x i8], [0 x i8]* %v.0, i16 0, i16 %13
  %_80.i = load i8, i8* %14, align 1, !alias.scope !1488, !noalias !1491
  %_79.i = and i8 %_80.i, -64
  %_78.i = icmp eq i8 %_79.i, -128
  br i1 %_78.i, label %bb75.i, label %bb5

bb49.i:                                           ; preds = %bb14.i
  %15 = add nuw i16 %index.0127.i, 1
  %_97.i = icmp ult i16 %15, %v.1
  br i1 %_97.i, label %bb52.i, label %bb5

bb52.i:                                           ; preds = %bb49.i
  %16 = getelementptr inbounds [0 x i8], [0 x i8]* %v.0, i16 0, i16 %15
  %_96.i = load i8, i8* %16, align 1, !alias.scope !1488, !noalias !1491
  switch i8 %first.i, label %bb58.i [
    i8 -16, label %bb53.i
    i8 -12, label %bb56.i
  ]

bb53.i:                                           ; preds = %bb52.i
  %_96.off.i = add i8 %_96.i, 112
  %17 = icmp ult i8 %_96.off.i, 48
  br i1 %17, label %bb62.i, label %bb5

bb56.i:                                           ; preds = %bb52.i
  %_108.i = icmp slt i8 %_96.i, 0
  %_109.i = icmp ult i8 %_96.i, -112
  %or.cond99.i = and i1 %_108.i, %_109.i
  br i1 %or.cond99.i, label %bb62.i, label %bb5

bb58.i:                                           ; preds = %bb52.i
  %first.off.i = add nsw i8 %first.i, 15
  %18 = icmp ult i8 %first.off.i, 3
  %_110.i = icmp slt i8 %_96.i, 0
  %or.cond101.i = and i1 %18, %_110.i
  %_111.i = icmp ult i8 %_96.i, -64
  %or.cond102.i = and i1 %_111.i, %or.cond101.i
  br i1 %or.cond102.i, label %bb62.i, label %bb5

bb62.i:                                           ; preds = %bb58.i, %bb56.i, %bb53.i
  %19 = add nuw i16 %index.0127.i, 2
  %_120.i = icmp ult i16 %19, %v.1
  br i1 %_120.i, label %bb66.i, label %bb5

bb66.i:                                           ; preds = %bb62.i
  %20 = getelementptr inbounds [0 x i8], [0 x i8]* %v.0, i16 0, i16 %19
  %_119.i = load i8, i8* %20, align 1, !alias.scope !1488, !noalias !1491
  %_118.i = and i8 %_119.i, -64
  %_117.i = icmp eq i8 %_118.i, -128
  br i1 %_117.i, label %bb67.i, label %bb5

bb67.i:                                           ; preds = %bb66.i
  %21 = add nuw i16 %index.0127.i, 3
  %_136.i = icmp ult i16 %21, %v.1
  br i1 %_136.i, label %bb72.i, label %bb5

bb72.i:                                           ; preds = %bb67.i
  %22 = getelementptr inbounds [0 x i8], [0 x i8]* %v.0, i16 0, i16 %21
  %_135.i = load i8, i8* %22, align 1, !alias.scope !1488, !noalias !1491
  %_134.i = and i8 %_135.i, -64
  %_133.i = icmp eq i8 %_134.i, -128
  br i1 %_133.i, label %bb75.i, label %bb5

bb75.i:                                           ; preds = %bb72.i, %bb46.i, %bb22.i
  %index.1.i = phi i16 [ %21, %bb72.i ], [ %13, %bb46.i ], [ %4, %bb22.i ]
  %23 = add nuw i16 %index.1.i, 1
  br label %bb105.i

bb77.i:                                           ; preds = %bb78.i
  %24 = add nuw i16 %index.0127.i, 1
  br label %bb105.i

bb78.i:                                           ; preds = %bb11.i
  %25 = sub i16 %spec.select.i.i.i, %index.0127.i
  %_157.i = and i16 %25, 1
  %_156.i = icmp eq i16 %_157.i, 0
  br i1 %_156.i, label %bb86.preheader.i, label %bb77.i

bb86.preheader.i:                                 ; preds = %bb78.i
  %_165119.i = icmp ult i16 %index.0127.i, %1
  br i1 %_165119.i, label %bb88.i, label %bb95.i

bb88.i:                                           ; preds = %bb86.preheader.i, %bb93.i
  %index.2120.i = phi i16 [ %32, %bb93.i ], [ %index.0127.i, %bb86.preheader.i ]
  %26 = getelementptr inbounds [0 x i8], [0 x i8]* %v.0, i16 0, i16 %index.2120.i
  %block.i = bitcast i8* %26 to i16*
  %_173.i = load i16, i16* %block.i, align 1, !alias.scope !1488, !noalias !1491
  %27 = getelementptr inbounds i8, i8* %26, i16 2
  %28 = bitcast i8* %27 to i16*
  %_175.i = load i16, i16* %28, align 1, !alias.scope !1488, !noalias !1491
  %29 = or i16 %_175.i, %_173.i
  %30 = and i16 %29, -32640
  %31 = icmp eq i16 %30, 0
  br i1 %31, label %bb93.i, label %bb95.i

bb93.i:                                           ; preds = %bb88.i
  %32 = add i16 %index.2120.i, 4
  %_165.i = icmp ult i16 %32, %1
  br i1 %_165.i, label %bb88.i, label %bb95.i

bb95.i:                                           ; preds = %bb93.i, %bb88.i, %bb86.preheader.i
  %index.2.lcssa.i = phi i16 [ %index.0127.i, %bb86.preheader.i ], [ %32, %bb93.i ], [ %index.2120.i, %bb88.i ]
  %_183122.i = icmp ult i16 %index.2.lcssa.i, %v.1
  br i1 %_183122.i, label %bb101.i, label %bb105.i

bb101.i:                                          ; preds = %bb95.i, %bb103.i
  %index.3123.i = phi i16 [ %34, %bb103.i ], [ %index.2.lcssa.i, %bb95.i ]
  %33 = getelementptr inbounds [0 x i8], [0 x i8]* %v.0, i16 0, i16 %index.3123.i
  %_187.i = load i8, i8* %33, align 1, !alias.scope !1488, !noalias !1491
  %_186.i = icmp sgt i8 %_187.i, -1
  br i1 %_186.i, label %bb103.i, label %bb105.i

bb103.i:                                          ; preds = %bb101.i
  %34 = add nuw i16 %index.3123.i, 1
  %_183.i = icmp ult i16 %34, %v.1
  br i1 %_183.i, label %bb101.i, label %bb3

bb105.i:                                          ; preds = %bb101.i, %bb95.i, %bb77.i, %bb75.i
  %index.5.i = phi i16 [ %23, %bb75.i ], [ %24, %bb77.i ], [ %index.2.lcssa.i, %bb95.i ], [ %index.3123.i, %bb101.i ]
  %_19.i = icmp ult i16 %index.5.i, %v.1
  br i1 %_19.i, label %bb11.i, label %bb3

bb3:                                              ; preds = %bb105.i, %bb103.i, %start
  %35 = getelementptr inbounds %"result::Result<&str, str::Utf8Error>", %"result::Result<&str, str::Utf8Error>"* %0, i16 0, i32 2
  %36 = bitcast [4 x i8]* %35 to [0 x i8]**
  store [0 x i8]* %v.0, [0 x i8]** %36, align 1
  %37 = getelementptr inbounds %"result::Result<&str, str::Utf8Error>", %"result::Result<&str, str::Utf8Error>"* %0, i16 0, i32 2, i16 2
  %38 = bitcast i8* %37 to i16*
  store i16 %v.1, i16* %38, align 1
  br label %bb6

bb5:                                              ; preds = %bb14.i, %bb16.i, %bb22.i, %bb25.i, %bb38.i, %bb36.i, %bb32.i, %bb29.i, %bb42.i, %bb46.i, %bb49.i, %bb58.i, %bb56.i, %bb53.i, %bb62.i, %bb66.i, %bb67.i, %bb72.i
  %_3.sroa.16.0.ph = phi i32 [ 65536, %bb72.i ], [ 0, %bb67.i ], [ 65536, %bb66.i ], [ 0, %bb62.i ], [ 65536, %bb53.i ], [ 65536, %bb56.i ], [ 65536, %bb58.i ], [ 0, %bb49.i ], [ 65536, %bb46.i ], [ 0, %bb42.i ], [ 65536, %bb29.i ], [ 65536, %bb32.i ], [ 65536, %bb36.i ], [ 65536, %bb38.i ], [ 0, %bb25.i ], [ 65536, %bb22.i ], [ 0, %bb16.i ], [ 65536, %bb14.i ]
  %_3.sroa.30.0.ph = phi i32 [ 50331648, %bb72.i ], [ 0, %bb67.i ], [ 33554432, %bb66.i ], [ 0, %bb62.i ], [ 16777216, %bb53.i ], [ 16777216, %bb56.i ], [ 16777216, %bb58.i ], [ 0, %bb49.i ], [ 33554432, %bb46.i ], [ 0, %bb42.i ], [ 16777216, %bb29.i ], [ 16777216, %bb32.i ], [ 16777216, %bb36.i ], [ 16777216, %bb38.i ], [ 0, %bb25.i ], [ 16777216, %bb22.i ], [ 0, %bb16.i ], [ 16777216, %bb14.i ]
  %_2.sroa.0.0.insert.ext = zext i16 %index.0127.i to i32
  %_2.sroa.5.0.insert.insert = or i32 %_3.sroa.16.0.ph, %_2.sroa.0.0.insert.ext
  %_2.sroa.0.0.insert.insert = or i32 %_2.sroa.5.0.insert.insert, %_3.sroa.30.0.ph
  %39 = getelementptr inbounds %"result::Result<&str, str::Utf8Error>", %"result::Result<&str, str::Utf8Error>"* %0, i16 0, i32 2, i16 0
  %40 = bitcast i8* %39 to i32*
  store i32 %_2.sroa.0.0.insert.insert, i32* %40, align 1, !alias.scope !1493, !noalias !1496
  br label %bb6

bb6:                                              ; preds = %bb3, %bb5
  %.sink = phi i8 [ 0, %bb3 ], [ 1, %bb5 ]
  %41 = getelementptr inbounds %"result::Result<&str, str::Utf8Error>", %"result::Result<&str, str::Utf8Error>"* %0, i16 0, i32 0, i16 0
  store i8 %.sink, i8* %41, align 1
  ret void
}

; core::str::from_utf8_mut
; Function Attrs: nounwind uwtable
define void @_ZN4core3str13from_utf8_mut17hed512885a8ed2ca0E(%"result::Result<&mut str, str::Utf8Error>"* noalias nocapture sret dereferenceable(5) %0, [0 x i8]* nonnull align 1 %v.0, i16 %v.1) unnamed_addr addrspace(1) #9 {
start:
  %1 = tail call addrspace(1) i16 @llvm.usub.sat.i16(i16 %v.1, i16 3)
  %_7.i.i.i = ptrtoint [0 x i8]* %v.0 to i16
  %pmoda.i.i.i = and i16 %_7.i.i.i, 1
  %_10.i.i.i = icmp eq i16 %pmoda.i.i.i, 0
  %spec.select.i.i.i = select i1 %_10.i.i.i, i16 0, i16 %_7.i.i.i
  %_19126.i = icmp eq i16 %v.1, 0
  br i1 %_19126.i, label %bb3, label %bb11.i

bb11.i:                                           ; preds = %start, %bb105.i
  %index.0127.i = phi i16 [ %index.5.i, %bb105.i ], [ 0, %start ]
  %2 = getelementptr inbounds [0 x i8], [0 x i8]* %v.0, i16 0, i16 %index.0127.i
  %first.i = load i8, i8* %2, align 1, !alias.scope !1498, !noalias !1501
  %_27.i = icmp slt i8 %first.i, 0
  br i1 %_27.i, label %bb14.i, label %bb78.i

bb14.i:                                           ; preds = %bb11.i
  %_31.i = zext i8 %first.i to i16
  %3 = getelementptr inbounds <{ [256 x i8] }>, <{ [256 x i8] }>* @_ZN4core3str15UTF8_CHAR_WIDTH17h3fdb01b2890429f3E, i16 0, i32 0, i16 %_31.i
  %w.i = load i8, i8* %3, align 1
  switch i8 %w.i, label %bb5 [
    i8 2, label %bb16.i
    i8 3, label %bb25.i
    i8 4, label %bb49.i
  ]

bb16.i:                                           ; preds = %bb14.i
  %4 = add nuw i16 %index.0127.i, 1
  %_38.i = icmp ult i16 %4, %v.1
  br i1 %_38.i, label %bb22.i, label %bb5

bb22.i:                                           ; preds = %bb16.i
  %5 = getelementptr inbounds [0 x i8], [0 x i8]* %v.0, i16 0, i16 %4
  %_37.i = load i8, i8* %5, align 1, !alias.scope !1498, !noalias !1501
  %_36.i = and i8 %_37.i, -64
  %_35.i = icmp eq i8 %_36.i, -128
  br i1 %_35.i, label %bb75.i, label %bb5

bb25.i:                                           ; preds = %bb14.i
  %6 = add nuw i16 %index.0127.i, 1
  %_54.i = icmp ult i16 %6, %v.1
  br i1 %_54.i, label %bb28.i, label %bb5

bb28.i:                                           ; preds = %bb25.i
  %7 = getelementptr inbounds [0 x i8], [0 x i8]* %v.0, i16 0, i16 %6
  %_53.i = load i8, i8* %7, align 1, !alias.scope !1498, !noalias !1501
  switch i8 %first.i, label %bb34.i [
    i8 -32, label %bb29.i
    i8 -19, label %bb32.i
  ]

bb29.i:                                           ; preds = %bb28.i
  %8 = and i8 %_53.i, -32
  %9 = icmp eq i8 %8, -96
  br i1 %9, label %bb42.i, label %bb5

bb32.i:                                           ; preds = %bb28.i
  %_65.i = icmp slt i8 %_53.i, 0
  %_66.i = icmp ult i8 %_53.i, -96
  %or.cond92.i = and i1 %_65.i, %_66.i
  br i1 %or.cond92.i, label %bb42.i, label %bb5

bb34.i:                                           ; preds = %bb28.i
  %first.off104.i = add nsw i8 %first.i, 31
  %10 = icmp ult i8 %first.off104.i, 12
  br i1 %10, label %bb36.i, label %bb38.i

bb36.i:                                           ; preds = %bb34.i
  %_67.i = icmp slt i8 %_53.i, 0
  %_68.i = icmp ult i8 %_53.i, -64
  %or.cond94.i = and i1 %_67.i, %_68.i
  br i1 %or.cond94.i, label %bb42.i, label %bb5

bb38.i:                                           ; preds = %bb34.i
  %11 = and i8 %first.i, -2
  %12 = icmp eq i8 %11, -18
  %_69.i = icmp slt i8 %_53.i, 0
  %or.cond96.i = and i1 %12, %_69.i
  %_70.i = icmp ult i8 %_53.i, -64
  %or.cond97.i = and i1 %_70.i, %or.cond96.i
  br i1 %or.cond97.i, label %bb42.i, label %bb5

bb42.i:                                           ; preds = %bb38.i, %bb36.i, %bb32.i, %bb29.i
  %13 = add nuw i16 %index.0127.i, 2
  %_81.i = icmp ult i16 %13, %v.1
  br i1 %_81.i, label %bb46.i, label %bb5

bb46.i:                                           ; preds = %bb42.i
  %14 = getelementptr inbounds [0 x i8], [0 x i8]* %v.0, i16 0, i16 %13
  %_80.i = load i8, i8* %14, align 1, !alias.scope !1498, !noalias !1501
  %_79.i = and i8 %_80.i, -64
  %_78.i = icmp eq i8 %_79.i, -128
  br i1 %_78.i, label %bb75.i, label %bb5

bb49.i:                                           ; preds = %bb14.i
  %15 = add nuw i16 %index.0127.i, 1
  %_97.i = icmp ult i16 %15, %v.1
  br i1 %_97.i, label %bb52.i, label %bb5

bb52.i:                                           ; preds = %bb49.i
  %16 = getelementptr inbounds [0 x i8], [0 x i8]* %v.0, i16 0, i16 %15
  %_96.i = load i8, i8* %16, align 1, !alias.scope !1498, !noalias !1501
  switch i8 %first.i, label %bb58.i [
    i8 -16, label %bb53.i
    i8 -12, label %bb56.i
  ]

bb53.i:                                           ; preds = %bb52.i
  %_96.off.i = add i8 %_96.i, 112
  %17 = icmp ult i8 %_96.off.i, 48
  br i1 %17, label %bb62.i, label %bb5

bb56.i:                                           ; preds = %bb52.i
  %_108.i = icmp slt i8 %_96.i, 0
  %_109.i = icmp ult i8 %_96.i, -112
  %or.cond99.i = and i1 %_108.i, %_109.i
  br i1 %or.cond99.i, label %bb62.i, label %bb5

bb58.i:                                           ; preds = %bb52.i
  %first.off.i = add nsw i8 %first.i, 15
  %18 = icmp ult i8 %first.off.i, 3
  %_110.i = icmp slt i8 %_96.i, 0
  %or.cond101.i = and i1 %18, %_110.i
  %_111.i = icmp ult i8 %_96.i, -64
  %or.cond102.i = and i1 %_111.i, %or.cond101.i
  br i1 %or.cond102.i, label %bb62.i, label %bb5

bb62.i:                                           ; preds = %bb58.i, %bb56.i, %bb53.i
  %19 = add nuw i16 %index.0127.i, 2
  %_120.i = icmp ult i16 %19, %v.1
  br i1 %_120.i, label %bb66.i, label %bb5

bb66.i:                                           ; preds = %bb62.i
  %20 = getelementptr inbounds [0 x i8], [0 x i8]* %v.0, i16 0, i16 %19
  %_119.i = load i8, i8* %20, align 1, !alias.scope !1498, !noalias !1501
  %_118.i = and i8 %_119.i, -64
  %_117.i = icmp eq i8 %_118.i, -128
  br i1 %_117.i, label %bb67.i, label %bb5

bb67.i:                                           ; preds = %bb66.i
  %21 = add nuw i16 %index.0127.i, 3
  %_136.i = icmp ult i16 %21, %v.1
  br i1 %_136.i, label %bb72.i, label %bb5

bb72.i:                                           ; preds = %bb67.i
  %22 = getelementptr inbounds [0 x i8], [0 x i8]* %v.0, i16 0, i16 %21
  %_135.i = load i8, i8* %22, align 1, !alias.scope !1498, !noalias !1501
  %_134.i = and i8 %_135.i, -64
  %_133.i = icmp eq i8 %_134.i, -128
  br i1 %_133.i, label %bb75.i, label %bb5

bb75.i:                                           ; preds = %bb72.i, %bb46.i, %bb22.i
  %index.1.i = phi i16 [ %21, %bb72.i ], [ %13, %bb46.i ], [ %4, %bb22.i ]
  %23 = add nuw i16 %index.1.i, 1
  br label %bb105.i

bb77.i:                                           ; preds = %bb78.i
  %24 = add nuw i16 %index.0127.i, 1
  br label %bb105.i

bb78.i:                                           ; preds = %bb11.i
  %25 = sub i16 %spec.select.i.i.i, %index.0127.i
  %_157.i = and i16 %25, 1
  %_156.i = icmp eq i16 %_157.i, 0
  br i1 %_156.i, label %bb86.preheader.i, label %bb77.i

bb86.preheader.i:                                 ; preds = %bb78.i
  %_165119.i = icmp ult i16 %index.0127.i, %1
  br i1 %_165119.i, label %bb88.i, label %bb95.i

bb88.i:                                           ; preds = %bb86.preheader.i, %bb93.i
  %index.2120.i = phi i16 [ %32, %bb93.i ], [ %index.0127.i, %bb86.preheader.i ]
  %26 = getelementptr inbounds [0 x i8], [0 x i8]* %v.0, i16 0, i16 %index.2120.i
  %block.i = bitcast i8* %26 to i16*
  %_173.i = load i16, i16* %block.i, align 1, !alias.scope !1498, !noalias !1501
  %27 = getelementptr inbounds i8, i8* %26, i16 2
  %28 = bitcast i8* %27 to i16*
  %_175.i = load i16, i16* %28, align 1, !alias.scope !1498, !noalias !1501
  %29 = or i16 %_175.i, %_173.i
  %30 = and i16 %29, -32640
  %31 = icmp eq i16 %30, 0
  br i1 %31, label %bb93.i, label %bb95.i

bb93.i:                                           ; preds = %bb88.i
  %32 = add i16 %index.2120.i, 4
  %_165.i = icmp ult i16 %32, %1
  br i1 %_165.i, label %bb88.i, label %bb95.i

bb95.i:                                           ; preds = %bb93.i, %bb88.i, %bb86.preheader.i
  %index.2.lcssa.i = phi i16 [ %index.0127.i, %bb86.preheader.i ], [ %32, %bb93.i ], [ %index.2120.i, %bb88.i ]
  %_183122.i = icmp ult i16 %index.2.lcssa.i, %v.1
  br i1 %_183122.i, label %bb101.i, label %bb105.i

bb101.i:                                          ; preds = %bb95.i, %bb103.i
  %index.3123.i = phi i16 [ %34, %bb103.i ], [ %index.2.lcssa.i, %bb95.i ]
  %33 = getelementptr inbounds [0 x i8], [0 x i8]* %v.0, i16 0, i16 %index.3123.i
  %_187.i = load i8, i8* %33, align 1, !alias.scope !1498, !noalias !1501
  %_186.i = icmp sgt i8 %_187.i, -1
  br i1 %_186.i, label %bb103.i, label %bb105.i

bb103.i:                                          ; preds = %bb101.i
  %34 = add nuw i16 %index.3123.i, 1
  %_183.i = icmp ult i16 %34, %v.1
  br i1 %_183.i, label %bb101.i, label %bb3

bb105.i:                                          ; preds = %bb101.i, %bb95.i, %bb77.i, %bb75.i
  %index.5.i = phi i16 [ %23, %bb75.i ], [ %24, %bb77.i ], [ %index.2.lcssa.i, %bb95.i ], [ %index.3123.i, %bb101.i ]
  %_19.i = icmp ult i16 %index.5.i, %v.1
  br i1 %_19.i, label %bb11.i, label %bb3

bb3:                                              ; preds = %bb105.i, %bb103.i, %start
  %35 = getelementptr inbounds %"result::Result<&mut str, str::Utf8Error>", %"result::Result<&mut str, str::Utf8Error>"* %0, i16 0, i32 2
  %36 = bitcast [4 x i8]* %35 to [0 x i8]**
  store [0 x i8]* %v.0, [0 x i8]** %36, align 1
  %37 = getelementptr inbounds %"result::Result<&mut str, str::Utf8Error>", %"result::Result<&mut str, str::Utf8Error>"* %0, i16 0, i32 2, i16 2
  %38 = bitcast i8* %37 to i16*
  store i16 %v.1, i16* %38, align 1
  br label %bb6

bb5:                                              ; preds = %bb14.i, %bb16.i, %bb22.i, %bb25.i, %bb38.i, %bb36.i, %bb32.i, %bb29.i, %bb42.i, %bb46.i, %bb49.i, %bb58.i, %bb56.i, %bb53.i, %bb62.i, %bb66.i, %bb67.i, %bb72.i
  %_3.sroa.16.0.ph = phi i32 [ 65536, %bb72.i ], [ 0, %bb67.i ], [ 65536, %bb66.i ], [ 0, %bb62.i ], [ 65536, %bb53.i ], [ 65536, %bb56.i ], [ 65536, %bb58.i ], [ 0, %bb49.i ], [ 65536, %bb46.i ], [ 0, %bb42.i ], [ 65536, %bb29.i ], [ 65536, %bb32.i ], [ 65536, %bb36.i ], [ 65536, %bb38.i ], [ 0, %bb25.i ], [ 65536, %bb22.i ], [ 0, %bb16.i ], [ 65536, %bb14.i ]
  %_3.sroa.30.0.ph = phi i32 [ 50331648, %bb72.i ], [ 0, %bb67.i ], [ 33554432, %bb66.i ], [ 0, %bb62.i ], [ 16777216, %bb53.i ], [ 16777216, %bb56.i ], [ 16777216, %bb58.i ], [ 0, %bb49.i ], [ 33554432, %bb46.i ], [ 0, %bb42.i ], [ 16777216, %bb29.i ], [ 16777216, %bb32.i ], [ 16777216, %bb36.i ], [ 16777216, %bb38.i ], [ 0, %bb25.i ], [ 16777216, %bb22.i ], [ 0, %bb16.i ], [ 16777216, %bb14.i ]
  %_2.sroa.0.0.insert.ext = zext i16 %index.0127.i to i32
  %_2.sroa.5.0.insert.insert = or i32 %_3.sroa.16.0.ph, %_2.sroa.0.0.insert.ext
  %_2.sroa.0.0.insert.insert = or i32 %_2.sroa.5.0.insert.insert, %_3.sroa.30.0.ph
  %39 = getelementptr inbounds %"result::Result<&mut str, str::Utf8Error>", %"result::Result<&mut str, str::Utf8Error>"* %0, i16 0, i32 2, i16 0
  %40 = bitcast i8* %39 to i32*
  store i32 %_2.sroa.0.0.insert.insert, i32* %40, align 1, !alias.scope !1503, !noalias !1506
  br label %bb6

bb6:                                              ; preds = %bb3, %bb5
  %.sink = phi i8 [ 0, %bb3 ], [ 1, %bb5 ]
  %41 = getelementptr inbounds %"result::Result<&mut str, str::Utf8Error>", %"result::Result<&mut str, str::Utf8Error>"* %0, i16 0, i32 0, i16 0
  store i8 %.sink, i8* %41, align 1
  ret void
}

; <core::str::Utf8Error as core::fmt::Display>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN59_$LT$core..str..Utf8Error$u20$as$u20$core..fmt..Display$GT$3fmt17h4f94f24afaf5c496E"(%"str::Utf8Error"* noalias readonly align 1 dereferenceable(4) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_5.i5 = alloca %"fmt::Arguments", align 1
  %_5.i = alloca %"fmt::Arguments", align 1
  %_33 = alloca [1 x { i8*, i8 addrspace(1)* }], align 1
  %_13 = alloca [2 x { i8*, i8 addrspace(1)* }], align 1
  %error_len = alloca i8, align 1
  %0 = getelementptr inbounds %"str::Utf8Error", %"str::Utf8Error"* %self, i16 0, i32 3, i32 0
  %1 = load i8, i8* %0, align 1, !range !87
  %2 = icmp eq i8 %1, 0
  br i1 %2, label %bb1, label %bb2

bb1:                                              ; preds = %start
  %3 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_33 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %3)
  %4 = getelementptr inbounds %"str::Utf8Error", %"str::Utf8Error"* %self, i16 0, i32 0, i16 0
  %5 = getelementptr inbounds [1 x { i8*, i8 addrspace(1)* }], [1 x { i8*, i8 addrspace(1)* }]* %_33, i16 0, i16 0, i32 0
  store i8* %4, i8** %5, align 1
  %6 = getelementptr inbounds [1 x { i8*, i8 addrspace(1)* }], [1 x { i8*, i8 addrspace(1)* }]* %_33, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u16$GT$3fmt17ha65397985f1509e1E" to i8 addrspace(1)*), i8 addrspace(1)** %6, align 1
  %7 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_4.0.i6 = load {}*, {}** %7, align 1, !noalias !1508, !nonnull !568
  %8 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %_4.1.i7 = load [3 x i16]*, [3 x i16]** %8, align 1, !noalias !1508, !nonnull !568
  %9 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i5, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %9), !noalias !1508
  %_26.sroa.0.0..sroa_cast17 = bitcast %"fmt::Arguments"* %_5.i5 to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8] }>* @alloc16734 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %_26.sroa.0.0..sroa_cast17, align 1
  %_26.sroa.4.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i5, i16 0, i32 1, i32 1
  store i16 1, i16* %_26.sroa.4.0..sroa_idx, align 1
  %_26.sroa.5.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i5, i16 0, i32 3, i32 0
  store i8* null, i8** %_26.sroa.5.0..sroa_idx, align 1
  %_26.sroa.621.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i5, i16 0, i32 5, i32 0
  %10 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %_26.sroa.621.0..sroa_idx to [1 x { i8*, i8 addrspace(1)* }]**
  store [1 x { i8*, i8 addrspace(1)* }]* %_33, [1 x { i8*, i8 addrspace(1)* }]** %10, align 1
  %_26.sroa.7.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i5, i16 0, i32 5, i32 1
  store i16 1, i16* %_26.sroa.7.0..sroa_idx, align 1
; call core::fmt::write
  %11 = call zeroext addrspace(1) i1 @_ZN4core3fmt5write17hf4cd163abe69055cE({}* nonnull align 1 %_4.0.i6, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) %_4.1.i7, %"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_5.i5), !noalias !1508
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 12, i8* nonnull %9), !noalias !1508
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %3)
  br label %bb10

bb2:                                              ; preds = %start
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 1, i8* nonnull %error_len)
  %12 = getelementptr inbounds %"str::Utf8Error", %"str::Utf8Error"* %self, i16 0, i32 3, i32 1
  %13 = load i8, i8* %12, align 1
  store i8 %13, i8* %error_len, align 1
  %14 = bitcast [2 x { i8*, i8 addrspace(1)* }]* %_13 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %14)
  %15 = getelementptr inbounds %"str::Utf8Error", %"str::Utf8Error"* %self, i16 0, i32 0, i16 0
  %16 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_13, i16 0, i16 0, i32 0
  store i8* %error_len, i8** %16, align 1
  %17 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_13, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 (i8*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp51_$LT$impl$u20$core..fmt..Display$u20$for$u20$u8$GT$3fmt17h15a9d9444c491f95E" to i8 addrspace(1)*), i8 addrspace(1)** %17, align 1
  %18 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_13, i16 0, i16 1, i32 0
  store i8* %15, i8** %18, align 1
  %19 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_13, i16 0, i16 1, i32 1
  store i8 addrspace(1)* bitcast (i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u16$GT$3fmt17ha65397985f1509e1E" to i8 addrspace(1)*), i8 addrspace(1)** %19, align 1
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_4.0.i = load {}*, {}** %20, align 1, !noalias !1511, !nonnull !568
  %21 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %_4.1.i = load [3 x i16]*, [3 x i16]** %21, align 1, !noalias !1511, !nonnull !568
  %22 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %22), !noalias !1511
  %_6.sroa.0.0..sroa_cast9 = bitcast %"fmt::Arguments"* %_5.i to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8], i8*, [2 x i8] }>* @alloc16740 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %_6.sroa.0.0..sroa_cast9, align 1
  %_6.sroa.4.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 1, i32 1
  store i16 2, i16* %_6.sroa.4.0..sroa_idx, align 1
  %_6.sroa.5.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 3, i32 0
  store i8* null, i8** %_6.sroa.5.0..sroa_idx, align 1
  %_6.sroa.613.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 5, i32 0
  %23 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %_6.sroa.613.0..sroa_idx to [2 x { i8*, i8 addrspace(1)* }]**
  store [2 x { i8*, i8 addrspace(1)* }]* %_13, [2 x { i8*, i8 addrspace(1)* }]** %23, align 1
  %_6.sroa.7.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 5, i32 1
  store i16 2, i16* %_6.sroa.7.0..sroa_idx, align 1
; call core::fmt::write
  %24 = call zeroext addrspace(1) i1 @_ZN4core3fmt5write17hf4cd163abe69055cE({}* nonnull align 1 %_4.0.i, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) %_4.1.i, %"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_5.i), !noalias !1511
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 12, i8* nonnull %22), !noalias !1511
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 8, i8* nonnull %14)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 1, i8* nonnull %error_len)
  br label %bb10

bb10:                                             ; preds = %bb2, %bb1
  %.0.in = phi i1 [ %24, %bb2 ], [ %11, %bb1 ]
  ret i1 %.0.in
}

; <core::str::Chars as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN53_$LT$core..str..Chars$u20$as$u20$core..fmt..Debug$GT$3fmt17h7a177a57fd49dd77E"({ i8*, i8* }* noalias nocapture readonly align 1 dereferenceable(4) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %entry.i = alloca i32, align 1
  %_5.i7 = alloca %"fmt::Arguments", align 1
  %_5.i = alloca %"fmt::Arguments", align 1
  %_23 = alloca %"fmt::builders::DebugList", align 1
  %0 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_4.0.i8 = load {}*, {}** %0, align 1, !noalias !1514, !nonnull !568
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %_4.1.i9 = load [3 x i16]*, [3 x i16]** %1, align 1, !noalias !1514, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i7, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %2), !noalias !1514
  %_6.sroa.0.0..sroa_cast11 = bitcast %"fmt::Arguments"* %_5.i7 to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8] }>* @alloc16746 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %_6.sroa.0.0..sroa_cast11, align 1
  %_6.sroa.4.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i7, i16 0, i32 1, i32 1
  store i16 1, i16* %_6.sroa.4.0..sroa_idx, align 1
  %_6.sroa.5.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i7, i16 0, i32 3, i32 0
  store i8* null, i8** %_6.sroa.5.0..sroa_idx, align 1
  %_6.sroa.615.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i7, i16 0, i32 5, i32 0
  store [0 x { i8*, i8 addrspace(1)* }]* bitcast (<{ [0 x i8] }>* @alloc19125 to [0 x { i8*, i8 addrspace(1)* }]*), [0 x { i8*, i8 addrspace(1)* }]** %_6.sroa.615.0..sroa_idx, align 1
  %_6.sroa.7.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i7, i16 0, i32 5, i32 1
  store i16 0, i16* %_6.sroa.7.0..sroa_idx, align 1
; call core::fmt::write
  %3 = call zeroext addrspace(1) i1 @_ZN4core3fmt5write17hf4cd163abe69055cE({}* nonnull align 1 %_4.0.i8, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) %_4.1.i9, %"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_5.i7), !noalias !1514
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 12, i8* nonnull %2), !noalias !1514
  br i1 %3, label %bb7, label %bb4

bb4:                                              ; preds = %start
  %4 = getelementptr inbounds %"fmt::builders::DebugList", %"fmt::builders::DebugList"* %_23, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %4)
  %_3.0.i.i.i = load {}*, {}** %0, align 1, !noalias !1517, !nonnull !568
  %5 = bitcast [3 x i16]** %1 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %5, align 1, !noalias !1517, !nonnull !568
  %6 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %7 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %6, align 1, !invariant.load !568, !noalias !1517, !nonnull !568
  %8 = tail call zeroext addrspace(1) i1 %7({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18664 to [0 x i8]*), i16 1), !noalias !1524
  %9 = zext i1 %8 to i8
  %_6.sroa.0.0..sroa_cast1.i.i = bitcast %"fmt::builders::DebugList"* %_23 to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %_6.sroa.0.0..sroa_cast1.i.i, align 1, !alias.scope !1524
  %10 = getelementptr inbounds %"fmt::builders::DebugList", %"fmt::builders::DebugList"* %_23, i16 0, i32 1, i32 3
  store i8 %9, i8* %10, align 1, !alias.scope !1524
  %11 = getelementptr inbounds %"fmt::builders::DebugList", %"fmt::builders::DebugList"* %_23, i16 0, i32 1, i32 5
  store i8 0, i8* %11, align 1, !alias.scope !1524
  %self.idx = getelementptr { i8*, i8* }, { i8*, i8* }* %self, i16 0, i32 0
  %self.idx.val = load i8*, i8** %self.idx, align 1, !nonnull !568
  %self.idx6 = getelementptr { i8*, i8* }, { i8*, i8* }* %self, i16 0, i32 1
  %self.idx6.val = load i8*, i8** %self.idx6, align 1, !nonnull !568
  %_13.i.i.i18.i = icmp eq i8* %self.idx.val, %self.idx6.val
  br i1 %_13.i.i.i18.i, label %_ZN4core3fmt8builders9DebugList7entries17h1a4dff4874e20218E.exit, label %bb3.i.i.lr.ph.i

bb3.i.i.lr.ph.i:                                  ; preds = %bb4
  %12 = bitcast i32* %entry.i to i8*
  %_17.0.i = bitcast i32* %entry.i to {}*
  %_5.i.i = bitcast %"fmt::builders::DebugList"* %_23 to %"fmt::builders::DebugInner"*
  br label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb8.i, %bb3.i.i.lr.ph.i
  %iter.sroa.0.019.i = phi i8* [ %self.idx.val, %bb3.i.i.lr.ph.i ], [ %iter.sroa.0.413.i, %bb8.i ]
  %13 = getelementptr inbounds i8, i8* %iter.sroa.0.019.i, i16 1
  %x.i.i.i = load i8, i8* %iter.sroa.0.019.i, align 1
  %_12.i.i.i = icmp sgt i8 %x.i.i.i, -1
  br i1 %_12.i.i.i, label %bb11.i.i.i, label %bb10.i.i.i

bb10.i.i.i:                                       ; preds = %bb3.i.i.i
  %_3.i37.i.i.i = and i8 %x.i.i.i, 31
  %14 = zext i8 %_3.i37.i.i.i to i32
  %_13.i33.i.i.i = icmp eq i8* %13, %self.idx6.val
  br i1 %_13.i33.i.i.i, label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i, label %bb3.i28.i.i.i

bb3.i28.i.i.i:                                    ; preds = %bb10.i.i.i
  %15 = getelementptr inbounds i8, i8* %iter.sroa.0.019.i, i16 2
  %byte.i27.i.i.i = load i8, i8* %13, align 1, !alias.scope !1525
  %phitmp.i.i.i = and i8 %byte.i27.i.i.i, 63
  %phitmp42.i.i.i = zext i8 %phitmp.i.i.i to i32
  br label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i

_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i: ; preds = %bb3.i28.i.i.i, %bb10.i.i.i
  %iter.sroa.0.1.i = phi i8* [ %self.idx6.val, %bb10.i.i.i ], [ %15, %bb3.i28.i.i.i ]
  %.0.i29.i.i.i = phi i32 [ 0, %bb10.i.i.i ], [ %phitmp42.i.i.i, %bb3.i28.i.i.i ]
  %_3.i24.i.i.i = shl nuw nsw i32 %14, 6
  %16 = or i32 %.0.i29.i.i.i, %_3.i24.i.i.i
  %_24.i.i.i = icmp ugt i8 %x.i.i.i, -33
  br i1 %_24.i.i.i, label %bb17.i.i.i, label %bb8.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %_14.i.i.i = zext i8 %x.i.i.i to i32
  br label %bb8.i

bb17.i.i.i:                                       ; preds = %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i
  %_13.i20.i.i.i = icmp eq i8* %iter.sroa.0.1.i, %self.idx6.val
  br i1 %_13.i20.i.i.i, label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i, label %bb3.i15.i.i.i

bb3.i15.i.i.i:                                    ; preds = %bb17.i.i.i
  %17 = getelementptr inbounds i8, i8* %iter.sroa.0.1.i, i16 1
  %byte.i14.i.i.i = load i8, i8* %iter.sroa.0.1.i, align 1, !alias.scope !1528
  %phitmp43.i.i.i = and i8 %byte.i14.i.i.i, 63
  %phitmp44.i.i.i = zext i8 %phitmp43.i.i.i to i32
  br label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i

_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i: ; preds = %bb3.i15.i.i.i, %bb17.i.i.i
  %iter.sroa.0.2.i = phi i8* [ %self.idx6.val, %bb17.i.i.i ], [ %17, %bb3.i15.i.i.i ]
  %.0.i16.i.i.i = phi i32 [ 0, %bb17.i.i.i ], [ %phitmp44.i.i.i, %bb3.i15.i.i.i ]
  %_3.i11.i.i.i = shl nuw nsw i32 %.0.i29.i.i.i, 6
  %18 = or i32 %.0.i16.i.i.i, %_3.i11.i.i.i
  %_34.i.i.i = shl nuw nsw i32 %14, 12
  %19 = or i32 %18, %_34.i.i.i
  %_37.i.i.i = icmp ugt i8 %x.i.i.i, -17
  br i1 %_37.i.i.i, label %bb22.i.i.i, label %bb8.i

bb22.i.i.i:                                       ; preds = %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i
  %_13.i7.i.i.i = icmp eq i8* %iter.sroa.0.2.i, %self.idx6.val
  br i1 %_13.i7.i.i.i, label %bb5.i, label %bb3.i.i.i.i

bb3.i.i.i.i:                                      ; preds = %bb22.i.i.i
  %20 = getelementptr inbounds i8, i8* %iter.sroa.0.2.i, i16 1
  %byte.i.i.i.i = load i8, i8* %iter.sroa.0.2.i, align 1, !alias.scope !1531
  %phitmp45.i.i.i = and i8 %byte.i.i.i.i, 63
  %phitmp46.i.i.i = zext i8 %phitmp45.i.i.i to i32
  br label %bb5.i

bb5.i:                                            ; preds = %bb3.i.i.i.i, %bb22.i.i.i
  %iter.sroa.0.3.i = phi i8* [ %iter.sroa.0.2.i, %bb22.i.i.i ], [ %20, %bb3.i.i.i.i ]
  %.0.i4.i.i.i = phi i32 [ 0, %bb22.i.i.i ], [ %phitmp46.i.i.i, %bb3.i.i.i.i ]
  %_43.i.i.i = shl nuw nsw i32 %14, 18
  %_42.i.i.i = and i32 %_43.i.i.i, 1835008
  %_3.i.i.i.i = shl nuw nsw i32 %18, 6
  %21 = or i32 %_3.i.i.i.i, %_42.i.i.i
  %22 = or i32 %21, %.0.i4.i.i.i
  %23 = icmp eq i32 %22, 1114112
  br i1 %23, label %_ZN4core3fmt8builders9DebugList7entries17h1a4dff4874e20218E.exit.loopexit, label %bb8.i

bb8.i:                                            ; preds = %bb5.i, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i, %bb11.i.i.i, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i
  %.sroa.0.0.i.i14.i = phi i32 [ %22, %bb5.i ], [ %16, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i ], [ %19, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i ], [ %_14.i.i.i, %bb11.i.i.i ]
  %iter.sroa.0.413.i = phi i8* [ %iter.sroa.0.3.i, %bb5.i ], [ %iter.sroa.0.1.i, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i ], [ %iter.sroa.0.2.i, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i ], [ %13, %bb11.i.i.i ]
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %12)
  store i32 %.sroa.0.0.i.i14.i, i32* %entry.i, align 1
; call core::fmt::builders::DebugInner::entry
  call fastcc addrspace(1) void @_ZN4core3fmt8builders10DebugInner5entry17h8e131ef85fccf0c6E(%"fmt::builders::DebugInner"* nonnull align 1 dereferenceable(4) %_5.i.i, {}* nonnull align 1 %_17.0.i, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) bitcast ({ void (i32*) addrspace(1)*, i16, i16, i1 (i32*, %"fmt::Formatter"*) addrspace(1)* }* @vtable.f to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %12)
  %_13.i.i.i.i = icmp eq i8* %iter.sroa.0.413.i, %self.idx6.val
  br i1 %_13.i.i.i.i, label %_ZN4core3fmt8builders9DebugList7entries17h1a4dff4874e20218E.exit.loopexit, label %bb3.i.i.i

_ZN4core3fmt8builders9DebugList7entries17h1a4dff4874e20218E.exit.loopexit: ; preds = %bb8.i, %bb5.i
  %.pre = load i8, i8* %10, align 1, !range !87
  br label %_ZN4core3fmt8builders9DebugList7entries17h1a4dff4874e20218E.exit

_ZN4core3fmt8builders9DebugList7entries17h1a4dff4874e20218E.exit: ; preds = %_ZN4core3fmt8builders9DebugList7entries17h1a4dff4874e20218E.exit.loopexit, %bb4
  %24 = phi i8 [ %.pre, %_ZN4core3fmt8builders9DebugList7entries17h1a4dff4874e20218E.exit.loopexit ], [ %9, %bb4 ]
  %_2.i = icmp eq i8 %24, 0
  br i1 %_2.i, label %_ZN4core3fmt8builders9DebugList6finish17h07689b215ce36709E.exit, label %bb17

_ZN4core3fmt8builders9DebugList6finish17h07689b215ce36709E.exit: ; preds = %_ZN4core3fmt8builders9DebugList7entries17h1a4dff4874e20218E.exit
  %_3.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %_6.sroa.0.0..sroa_cast1.i.i, align 1, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_3.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %25, align 1, !noalias !1534, !nonnull !568
  %26 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_3.i.i.i, i16 0, i32 11, i32 1
  %27 = bitcast [3 x i16]** %26 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %27, align 1, !noalias !1534, !nonnull !568
  %28 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %29 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %28, align 1, !invariant.load !568, !noalias !1534, !nonnull !568
  %30 = call zeroext addrspace(1) i1 %29({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18665 to [0 x i8]*), i16 1)
  br i1 %30, label %bb17, label %bb15

bb7:                                              ; preds = %start, %bb17
  ret i1 true

bb15:                                             ; preds = %_ZN4core3fmt8builders9DebugList6finish17h07689b215ce36709E.exit
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %4)
  %_4.0.i = load {}*, {}** %0, align 1, !noalias !1537, !nonnull !568
  %_4.1.i = load [3 x i16]*, [3 x i16]** %1, align 1, !noalias !1537, !nonnull !568
  %31 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %31), !noalias !1537
  %_35.sroa.0.0..sroa_cast19 = bitcast %"fmt::Arguments"* %_5.i to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8] }>* @alloc16755 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %_35.sroa.0.0..sroa_cast19, align 1
  %_35.sroa.4.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 1, i32 1
  store i16 1, i16* %_35.sroa.4.0..sroa_idx, align 1
  %_35.sroa.5.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 3, i32 0
  store i8* null, i8** %_35.sroa.5.0..sroa_idx, align 1
  %_35.sroa.623.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 5, i32 0
  store [0 x { i8*, i8 addrspace(1)* }]* bitcast (<{ [0 x i8] }>* @alloc19125 to [0 x { i8*, i8 addrspace(1)* }]*), [0 x { i8*, i8 addrspace(1)* }]** %_35.sroa.623.0..sroa_idx, align 1
  %_35.sroa.7.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 5, i32 1
  store i16 0, i16* %_35.sroa.7.0..sroa_idx, align 1
; call core::fmt::write
  %32 = call zeroext addrspace(1) i1 @_ZN4core3fmt5write17hf4cd163abe69055cE({}* nonnull align 1 %_4.0.i, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) %_4.1.i, %"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_5.i), !noalias !1537
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 12, i8* nonnull %31), !noalias !1537
  ret i1 %32

bb17:                                             ; preds = %_ZN4core3fmt8builders9DebugList7entries17h1a4dff4874e20218E.exit, %_ZN4core3fmt8builders9DebugList6finish17h07689b215ce36709E.exit
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %4)
  br label %bb7
}

; <core::str::Bytes as core::iter::adapters::zip::TrustedRandomAccess>::get_unchecked
; Function Attrs: norecurse nounwind readonly uwtable
define i8 @"_ZN83_$LT$core..str..Bytes$u20$as$u20$core..iter..adapters..zip..TrustedRandomAccess$GT$13get_unchecked17hcf0d1aa9a482cb40E"({ i8*, i8* }* nocapture readonly align 1 dereferenceable(4) %self, i16 %i) unnamed_addr addrspace(1) #5 {
start:
  %self.idx = getelementptr { i8*, i8* }, { i8*, i8* }* %self, i16 0, i32 0
  %self.idx.val = load i8*, i8** %self.idx, align 1
  %0 = getelementptr inbounds i8, i8* %self.idx.val, i16 %i
  %1 = load i8, i8* %0, align 1
  ret i8 %1
}

; <core::str::SplitInternal<P> as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN70_$LT$core..str..SplitInternal$LT$P$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h3b4efde1f6117057E"(%"str::SplitInternal<char>"* noalias readonly align 1 dereferenceable(24) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_14 = alloca %"fmt::builders::DebugStruct", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_14, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !1540, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !1540, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !1540, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [13 x i8] }>* @alloc18808 to [0 x i8]*), i16 13), !noalias !1549
  %7 = bitcast %"fmt::builders::DebugStruct"* %_14 to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !1549, !noalias !1550
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_14, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !1549, !noalias !1550
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_14, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !1549, !noalias !1550
  %_20.0 = bitcast %"str::SplitInternal<char>"* %self to {}*
; call core::fmt::builders::DebugStruct::field
  %_12 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %_14, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc18809 to [0 x i8]*), i16 5, {}* nonnull align 1 %_20.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16*) addrspace(1)*, i16, i16, i1 (i16*, %"fmt::Formatter"*) addrspace(1)* }* @vtable.n to [3 x i16]*))
  %_27 = getelementptr inbounds %"str::SplitInternal<char>", %"str::SplitInternal<char>"* %self, i16 0, i32 3
  %_25.0 = bitcast i16* %_27 to {}*
; call core::fmt::builders::DebugStruct::field
  %_10 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %_12, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [3 x i8] }>* @alloc19190 to [0 x i8]*), i16 3, {}* nonnull align 1 %_25.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16*) addrspace(1)*, i16, i16, i1 (i16*, %"fmt::Formatter"*) addrspace(1)* }* @vtable.n to [3 x i16]*))
  %_32 = getelementptr inbounds %"str::SplitInternal<char>", %"str::SplitInternal<char>"* %self, i16 0, i32 5
  %_30.0 = bitcast %"str::pattern::CharSearcher"* %_32 to {}*
; call core::fmt::builders::DebugStruct::field
  %_8 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %_10, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [7 x i8] }>* @alloc18811 to [0 x i8]*), i16 7, {}* nonnull align 1 %_30.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"str::pattern::CharSearcher"*) addrspace(1)*, i16, i16, i1 (%"str::pattern::CharSearcher"*, %"fmt::Formatter"*) addrspace(1)* }* @vtable.o to [3 x i16]*))
  %_37 = getelementptr inbounds %"str::SplitInternal<char>", %"str::SplitInternal<char>"* %self, i16 0, i32 7
  %_35.0 = bitcast i8* %_37 to {}*
; call core::fmt::builders::DebugStruct::field
  %_6 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %_8, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [20 x i8] }>* @alloc18812 to [0 x i8]*), i16 20, {}* nonnull align 1 %_35.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8*) addrspace(1)*, i16, i16, i1 (i8*, %"fmt::Formatter"*) addrspace(1)* }* @vtable.k to [3 x i16]*))
  %_42 = getelementptr inbounds %"str::SplitInternal<char>", %"str::SplitInternal<char>"* %self, i16 0, i32 9
  %_40.0 = bitcast i8* %_42 to {}*
; call core::fmt::builders::DebugStruct::field
  %_4 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %_6, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [8 x i8] }>* @alloc18813 to [0 x i8]*), i16 8, {}* nonnull align 1 %_40.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8*) addrspace(1)*, i16, i16, i1 (i8*, %"fmt::Formatter"*) addrspace(1)* }* @vtable.k to [3 x i16]*))
  %11 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_4, i16 0, i32 5
  %12 = load i8, i8* %11, align 1, !range !87
  %_2.i = icmp eq i8 %12, 0
  %.phi.trans.insert.i = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_4, i16 0, i32 3
  %.pre.i = load i8, i8* %.phi.trans.insert.i, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %13 = bitcast %"fmt::builders::DebugStruct"* %_4 to i32**
  %_21.i.i.i.i = load i32*, i32** %13, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !1551, !noalias !1554
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %14 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %15 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %15, align 1, !nonnull !568
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %17 = bitcast [3 x i16]** %16 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %17, align 1, !nonnull !568
  %18 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %19 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %18, align 1, !invariant.load !568, !nonnull !568
  br i1 %14, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %20 = call zeroext addrspace(1) i1 %19({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %21 = call zeroext addrspace(1) i1 %19({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %21, %bb3.i.i.i ], [ %20, %bb2.i.i.i ]
  %22 = zext i1 %.0.i.i to i8
  store i8 %22, i8* %.phi.trans.insert.i, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %23 = phi i8 [ %22, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %24 = icmp ne i8 %23, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %24
}

; <core::str::SplitInternal<P> as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN70_$LT$core..str..SplitInternal$LT$P$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h4e2c8103f248fbfeE"(%"str::SplitInternal<str::IsWhitespace>"* noalias readonly align 1 dereferenceable(16) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_14 = alloca %"fmt::builders::DebugStruct", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_14, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !1557, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !1557, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !1557, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [13 x i8] }>* @alloc18808 to [0 x i8]*), i16 13), !noalias !1566
  %7 = bitcast %"fmt::builders::DebugStruct"* %_14 to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !1566, !noalias !1567
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_14, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !1566, !noalias !1567
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_14, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !1566, !noalias !1567
  %_20.0 = bitcast %"str::SplitInternal<str::IsWhitespace>"* %self to {}*
; call core::fmt::builders::DebugStruct::field
  %_12 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %_14, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc18809 to [0 x i8]*), i16 5, {}* nonnull align 1 %_20.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16*) addrspace(1)*, i16, i16, i1 (i16*, %"fmt::Formatter"*) addrspace(1)* }* @vtable.n to [3 x i16]*))
  %_27 = getelementptr inbounds %"str::SplitInternal<str::IsWhitespace>", %"str::SplitInternal<str::IsWhitespace>"* %self, i16 0, i32 3
  %_25.0 = bitcast i16* %_27 to {}*
; call core::fmt::builders::DebugStruct::field
  %_10 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %_12, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [3 x i8] }>* @alloc19190 to [0 x i8]*), i16 3, {}* nonnull align 1 %_25.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16*) addrspace(1)*, i16, i16, i1 (i16*, %"fmt::Formatter"*) addrspace(1)* }* @vtable.n to [3 x i16]*))
  %_32 = getelementptr inbounds %"str::SplitInternal<str::IsWhitespace>", %"str::SplitInternal<str::IsWhitespace>"* %self, i16 0, i32 5
  %_30.0 = bitcast %"str::pattern::CharPredicateSearcher<str::IsWhitespace>"* %_32 to {}*
; call core::fmt::builders::DebugStruct::field
  %_8 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %_10, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [7 x i8] }>* @alloc18811 to [0 x i8]*), i16 7, {}* nonnull align 1 %_30.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"str::pattern::CharPredicateSearcher<str::IsWhitespace>"*) addrspace(1)*, i16, i16, i1 (%"str::pattern::CharPredicateSearcher<str::IsWhitespace>"*, %"fmt::Formatter"*) addrspace(1)* }* @vtable.p to [3 x i16]*))
  %_37 = getelementptr inbounds %"str::SplitInternal<str::IsWhitespace>", %"str::SplitInternal<str::IsWhitespace>"* %self, i16 0, i32 7
  %_35.0 = bitcast i8* %_37 to {}*
; call core::fmt::builders::DebugStruct::field
  %_6 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %_8, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [20 x i8] }>* @alloc18812 to [0 x i8]*), i16 20, {}* nonnull align 1 %_35.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8*) addrspace(1)*, i16, i16, i1 (i8*, %"fmt::Formatter"*) addrspace(1)* }* @vtable.k to [3 x i16]*))
  %_42 = getelementptr inbounds %"str::SplitInternal<str::IsWhitespace>", %"str::SplitInternal<str::IsWhitespace>"* %self, i16 0, i32 9
  %_40.0 = bitcast i8* %_42 to {}*
; call core::fmt::builders::DebugStruct::field
  %_4 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %_6, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [8 x i8] }>* @alloc18813 to [0 x i8]*), i16 8, {}* nonnull align 1 %_40.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8*) addrspace(1)*, i16, i16, i1 (i8*, %"fmt::Formatter"*) addrspace(1)* }* @vtable.k to [3 x i16]*))
  %11 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_4, i16 0, i32 5
  %12 = load i8, i8* %11, align 1, !range !87
  %_2.i = icmp eq i8 %12, 0
  %.phi.trans.insert.i = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_4, i16 0, i32 3
  %.pre.i = load i8, i8* %.phi.trans.insert.i, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %13 = bitcast %"fmt::builders::DebugStruct"* %_4 to i32**
  %_21.i.i.i.i = load i32*, i32** %13, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !1568, !noalias !1571
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %14 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %15 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %15, align 1, !nonnull !568
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %17 = bitcast [3 x i16]** %16 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %17, align 1, !nonnull !568
  %18 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %19 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %18, align 1, !invariant.load !568, !nonnull !568
  br i1 %14, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %20 = call zeroext addrspace(1) i1 %19({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %21 = call zeroext addrspace(1) i1 %19({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %21, %bb3.i.i.i ], [ %20, %bb2.i.i.i ]
  %22 = zext i1 %.0.i.i to i8
  store i8 %22, i8* %.phi.trans.insert.i, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %23 = phi i8 [ %22, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %24 = icmp ne i8 %23, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %24
}

; core::str::traits::str_index_overflow_fail
; Function Attrs: cold noinline noreturn uwtable
define void @_ZN4core3str6traits23str_index_overflow_fail17h86506fa2b82e3a7aE(%"panic::Location"* noalias readonly align 1 dereferenceable(12) %0) unnamed_addr addrspace(1) #10 {
start:
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [42 x i8] }>* @alloc18836 to [0 x i8]*), i16 42, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) %0)
  unreachable
}

; core::str::traits::<impl core::slice::SliceIndex<str> for core::ops::range::Range<usize>>::index::{{closure}}
; Function Attrs: noreturn uwtable
define internal fastcc void @"_ZN4core3str6traits101_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..Range$LT$usize$GT$$GT$5index28_$u7b$$u7b$closure$u7d$$u7d$17h881ad5f1ad649d6aE"(%"str::traits::{{impl}}::index::{{closure}}.0"* noalias nocapture readonly dereferenceable(6) %_1) unnamed_addr addrspace(1) #13 {
start:
  %0 = bitcast %"str::traits::{{impl}}::index::{{closure}}.0"* %_1 to { [0 x i8]*, i16 }**
  %1 = load { [0 x i8]*, i16 }*, { [0 x i8]*, i16 }** %0, align 1, !nonnull !568
  %2 = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %1, i16 0, i32 0
  %_2.0 = load [0 x i8]*, [0 x i8]** %2, align 1, !nonnull !568
  %3 = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %1, i16 0, i32 1
  %_2.1 = load i16, i16* %3, align 1
  %4 = getelementptr inbounds %"str::traits::{{impl}}::index::{{closure}}.0", %"str::traits::{{impl}}::index::{{closure}}.0"* %_1, i16 0, i32 3
  %5 = load i16*, i16** %4, align 1, !nonnull !568
  %_3 = load i16, i16* %5, align 1
  %6 = getelementptr inbounds %"str::traits::{{impl}}::index::{{closure}}.0", %"str::traits::{{impl}}::index::{{closure}}.0"* %_1, i16 0, i32 5
  %7 = load i16*, i16** %6, align 1, !nonnull !568
  %_4 = load i16, i16* %7, align 1
; call core::str::slice_error_fail
  tail call addrspace(1) void @_ZN4core3str16slice_error_fail17h31442c6f648259d9E([0 x i8]* noalias nonnull readonly align 1 %_2.0, i16 %_2.1, i16 %_3, i16 %_4, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18838 to %"panic::Location"*))
  unreachable
}

; core::str::slice_error_fail
; Function Attrs: cold noinline noreturn uwtable
define void @_ZN4core3str16slice_error_fail17h31442c6f648259d9E([0 x i8]* noalias nonnull readonly align 1 %s.0, i16 %s.1, i16 %0, i16 %1, %"panic::Location"* noalias readonly align 1 dereferenceable(12) %2) unnamed_addr addrspace(1) #10 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_114 = alloca [5 x { i8*, i8 addrspace(1)* }], align 1
  %_107 = alloca %"fmt::Arguments", align 1
  %char_range = alloca { i16, i16 }, align 1
  %ch = alloca i32, align 1
  %index = alloca i16, align 1
  %_60 = alloca [4 x { i8*, i8 addrspace(1)* }], align 1
  %_53 = alloca %"fmt::Arguments", align 1
  %_32 = alloca [3 x { i8*, i8 addrspace(1)* }], align 1
  %_25 = alloca %"fmt::Arguments", align 1
  %oob_index = alloca i16, align 1
  %ellipsis = alloca { [0 x i8]*, i16 }, align 1
  %s_trunc = alloca { [0 x i8]*, i16 }, align 1
  %end = alloca i16, align 1
  %begin = alloca i16, align 1
  store i16 %0, i16* %begin, align 1
  store i16 %1, i16* %end, align 1
  %_3.i = icmp ult i16 %s.1, 257
  br i1 %_3.i, label %_ZN4core3str25truncate_to_char_boundary17ha2d3bee2e3956333E.exit, label %bb6.i.i

bb6.i.i:                                          ; preds = %start, %bb7.i
  %max.0.i85 = phi i16 [ %5, %bb7.i ], [ 256, %start ]
  %_3.i.i.i.i = icmp ult i16 %max.0.i85, %s.1
  br i1 %_3.i.i.i.i, label %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i", label %bb7.i

"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i": ; preds = %bb6.i.i
  %3 = getelementptr inbounds [0 x i8], [0 x i8]* %s.0, i16 0, i16 %max.0.i85
  %b.i.i = load i8, i8* %3, align 1, !alias.scope !1574, !noalias !1579
  %4 = icmp sgt i8 %b.i.i, -65
  br i1 %4, label %_ZN4core3str25truncate_to_char_boundary17ha2d3bee2e3956333E.exit, label %bb7.i

bb7.i:                                            ; preds = %bb6.i.i, %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i"
  %5 = add nsw i16 %max.0.i85, -1
  %_4.i.i30 = icmp eq i16 %5, 0
  %_6.i.i31 = icmp eq i16 %5, %s.1
  %or.cond.i.i = or i1 %_4.i.i30, %_6.i.i31
  br i1 %or.cond.i.i, label %_ZN4core3str25truncate_to_char_boundary17ha2d3bee2e3956333E.exit, label %bb6.i.i

_ZN4core3str25truncate_to_char_boundary17ha2d3bee2e3956333E.exit: ; preds = %bb7.i, %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i", %start
  %_6.sroa.8.0 = phi i16 [ %s.1, %start ], [ %5, %bb7.i ], [ %max.0.i85, %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i" ]
  %_6.sroa.0.0 = phi i1 [ true, %start ], [ false, %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i" ], [ false, %bb7.i ]
  %6 = bitcast { [0 x i8]*, i16 }* %s_trunc to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %6)
  %7 = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %s_trunc, i16 0, i32 0
  store [0 x i8]* %s.0, [0 x i8]** %7, align 1
  %8 = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %s_trunc, i16 0, i32 1
  store i16 %_6.sroa.8.0, i16* %8, align 1
  %9 = bitcast { [0 x i8]*, i16 }* %ellipsis to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %9)
  %10 = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %ellipsis, i16 0, i32 0
  %spec.select = select i1 %_6.sroa.0.0, [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), [0 x i8]* bitcast (<{ [5 x i8] }>* @alloc18845 to [0 x i8]*)
  %spec.select95 = select i1 %_6.sroa.0.0, i16 0, i16 5
  store [0 x i8]* %spec.select, [0 x i8]** %10, align 1
  %11 = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %ellipsis, i16 0, i32 1
  store i16 %spec.select95, i16* %11, align 1
  %_12 = icmp ugt i16 %0, %s.1
  %_16 = icmp ugt i16 %1, %s.1
  %or.cond = or i1 %_12, %_16
  br i1 %or.cond, label %bb12, label %bb11

bb11:                                             ; preds = %_ZN4core3str25truncate_to_char_boundary17ha2d3bee2e3956333E.exit
  %_50 = icmp ugt i16 %0, %1
  br i1 %_50, label %bb22, label %bb21

bb12:                                             ; preds = %_ZN4core3str25truncate_to_char_boundary17ha2d3bee2e3956333E.exit
  %12 = bitcast i16* %oob_index to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  %storemerge20 = select i1 %_12, i16 %0, i16 %1
  store i16 %storemerge20, i16* %oob_index, align 1
  %13 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_25, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %13)
  %14 = bitcast [3 x { i8*, i8 addrspace(1)* }]* %_32 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %14)
  %15 = bitcast [3 x { i8*, i8 addrspace(1)* }]* %_32 to i16**
  store i16* %oob_index, i16** %15, align 1
  %16 = getelementptr inbounds [3 x { i8*, i8 addrspace(1)* }], [3 x { i8*, i8 addrspace(1)* }]* %_32, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u16$GT$3fmt17ha65397985f1509e1E" to i8 addrspace(1)*), i8 addrspace(1)** %16, align 1
  %17 = getelementptr inbounds [3 x { i8*, i8 addrspace(1)* }], [3 x { i8*, i8 addrspace(1)* }]* %_32, i16 0, i16 1, i32 0
  %18 = bitcast i8** %17 to { [0 x i8]*, i16 }**
  store { [0 x i8]*, i16 }* %s_trunc, { [0 x i8]*, i16 }** %18, align 1
  %19 = getelementptr inbounds [3 x { i8*, i8 addrspace(1)* }], [3 x { i8*, i8 addrspace(1)* }]* %_32, i16 0, i16 1, i32 1
  store i8 addrspace(1)* bitcast (i1 ({ [0 x i8]*, i16 }*, %"fmt::Formatter"*) addrspace(1)* @"_ZN44_$LT$$RF$T$u20$as$u20$core..fmt..Display$GT$3fmt17h4c33253c245fb34cE" to i8 addrspace(1)*), i8 addrspace(1)** %19, align 1
  %20 = getelementptr inbounds [3 x { i8*, i8 addrspace(1)* }], [3 x { i8*, i8 addrspace(1)* }]* %_32, i16 0, i16 2, i32 0
  %21 = bitcast i8** %20 to { [0 x i8]*, i16 }**
  store { [0 x i8]*, i16 }* %ellipsis, { [0 x i8]*, i16 }** %21, align 1
  %22 = getelementptr inbounds [3 x { i8*, i8 addrspace(1)* }], [3 x { i8*, i8 addrspace(1)* }]* %_32, i16 0, i16 2, i32 1
  store i8 addrspace(1)* bitcast (i1 ({ [0 x i8]*, i16 }*, %"fmt::Formatter"*) addrspace(1)* @"_ZN44_$LT$$RF$T$u20$as$u20$core..fmt..Display$GT$3fmt17h4c33253c245fb34cE" to i8 addrspace(1)*), i8 addrspace(1)** %22, align 1
  %23 = bitcast %"fmt::Arguments"* %_25 to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8], i8*, [2 x i8], i8*, [2 x i8] }>* @alloc15810 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %23, align 1, !alias.scope !1581, !noalias !1584
  %24 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_25, i16 0, i32 1, i32 1
  store i16 3, i16* %24, align 1, !alias.scope !1581, !noalias !1584
  %25 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_25, i16 0, i32 3, i32 0
  store i8* null, i8** %25, align 1, !alias.scope !1581, !noalias !1584
  %26 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_25, i16 0, i32 5, i32 0
  %27 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %26 to [3 x { i8*, i8 addrspace(1)* }]**
  store [3 x { i8*, i8 addrspace(1)* }]* %_32, [3 x { i8*, i8 addrspace(1)* }]** %27, align 1, !alias.scope !1581, !noalias !1584
  %28 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_25, i16 0, i32 5, i32 1
  store i16 3, i16* %28, align 1, !alias.scope !1581, !noalias !1584
; call core::panicking::panic_fmt
  call addrspace(1) void @_ZN4core9panicking9panic_fmt17hb7ee2cb815ea49cfE(%"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_25, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) %2)
  unreachable

bb21:                                             ; preds = %bb11
  %29 = bitcast i16* %index to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %29)
  %_4.i = icmp eq i16 %0, 0
  %_6.i = icmp eq i16 %s.1, %0
  %or.cond.i = or i1 %_4.i, %_6.i
  br i1 %or.cond.i, label %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.thread", label %bb6.i

bb6.i:                                            ; preds = %bb21
  %_3.i.i.i = icmp ugt i16 %s.1, %0
  br i1 %_3.i.i.i, label %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit", label %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.thread60"

"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit": ; preds = %bb6.i
  %30 = getelementptr inbounds [0 x i8], [0 x i8]* %s.0, i16 0, i16 %0
  %b.i = load i8, i8* %30, align 1, !alias.scope !1587
  %31 = icmp sgt i8 %b.i, -65
  br i1 %31, label %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.thread", label %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.thread60"

"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.thread": ; preds = %bb21, %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit"
  br label %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.thread60"

"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.thread60": ; preds = %bb6.i, %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit", %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.thread"
  %storemerge = phi i16 [ %1, %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.thread" ], [ %0, %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit" ], [ %0, %bb6.i ]
  store i16 %storemerge, i16* %index, align 1
  %_4.i2178 = icmp eq i16 %storemerge, 0
  %_6.i2279 = icmp eq i16 %storemerge, %s.1
  %or.cond.i2380 = or i1 %_4.i2178, %_6.i2279
  br i1 %or.cond.i2380, label %"_ZN4core3str6traits105_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeFrom$LT$usize$GT$$GT$5index17ha0ef1b51ddf75fd9E.exit.critedge", label %bb6.i25

bb22:                                             ; preds = %bb11
  %32 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_53, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %32)
  %33 = bitcast [4 x { i8*, i8 addrspace(1)* }]* %_60 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 16, i8* nonnull %33)
  %34 = bitcast [4 x { i8*, i8 addrspace(1)* }]* %_60 to i16**
  store i16* %begin, i16** %34, align 1
  %35 = getelementptr inbounds [4 x { i8*, i8 addrspace(1)* }], [4 x { i8*, i8 addrspace(1)* }]* %_60, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u16$GT$3fmt17ha65397985f1509e1E" to i8 addrspace(1)*), i8 addrspace(1)** %35, align 1
  %36 = getelementptr inbounds [4 x { i8*, i8 addrspace(1)* }], [4 x { i8*, i8 addrspace(1)* }]* %_60, i16 0, i16 1, i32 0
  %37 = bitcast i8** %36 to i16**
  store i16* %end, i16** %37, align 1
  %38 = getelementptr inbounds [4 x { i8*, i8 addrspace(1)* }], [4 x { i8*, i8 addrspace(1)* }]* %_60, i16 0, i16 1, i32 1
  store i8 addrspace(1)* bitcast (i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u16$GT$3fmt17ha65397985f1509e1E" to i8 addrspace(1)*), i8 addrspace(1)** %38, align 1
  %39 = getelementptr inbounds [4 x { i8*, i8 addrspace(1)* }], [4 x { i8*, i8 addrspace(1)* }]* %_60, i16 0, i16 2, i32 0
  %40 = bitcast i8** %39 to { [0 x i8]*, i16 }**
  store { [0 x i8]*, i16 }* %s_trunc, { [0 x i8]*, i16 }** %40, align 1
  %41 = getelementptr inbounds [4 x { i8*, i8 addrspace(1)* }], [4 x { i8*, i8 addrspace(1)* }]* %_60, i16 0, i16 2, i32 1
  store i8 addrspace(1)* bitcast (i1 ({ [0 x i8]*, i16 }*, %"fmt::Formatter"*) addrspace(1)* @"_ZN44_$LT$$RF$T$u20$as$u20$core..fmt..Display$GT$3fmt17h4c33253c245fb34cE" to i8 addrspace(1)*), i8 addrspace(1)** %41, align 1
  %42 = getelementptr inbounds [4 x { i8*, i8 addrspace(1)* }], [4 x { i8*, i8 addrspace(1)* }]* %_60, i16 0, i16 3, i32 0
  %43 = bitcast i8** %42 to { [0 x i8]*, i16 }**
  store { [0 x i8]*, i16 }* %ellipsis, { [0 x i8]*, i16 }** %43, align 1
  %44 = getelementptr inbounds [4 x { i8*, i8 addrspace(1)* }], [4 x { i8*, i8 addrspace(1)* }]* %_60, i16 0, i16 3, i32 1
  store i8 addrspace(1)* bitcast (i1 ({ [0 x i8]*, i16 }*, %"fmt::Formatter"*) addrspace(1)* @"_ZN44_$LT$$RF$T$u20$as$u20$core..fmt..Display$GT$3fmt17h4c33253c245fb34cE" to i8 addrspace(1)*), i8 addrspace(1)** %44, align 1
  %45 = bitcast %"fmt::Arguments"* %_53 to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8], i8*, [2 x i8], i8*, [2 x i8], i8*, [2 x i8] }>* @alloc15820 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %45, align 1, !alias.scope !1590, !noalias !1593
  %46 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_53, i16 0, i32 1, i32 1
  store i16 4, i16* %46, align 1, !alias.scope !1590, !noalias !1593
  %47 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_53, i16 0, i32 3, i32 0
  store i8* null, i8** %47, align 1, !alias.scope !1590, !noalias !1593
  %48 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_53, i16 0, i32 5, i32 0
  %49 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %48 to [4 x { i8*, i8 addrspace(1)* }]**
  store [4 x { i8*, i8 addrspace(1)* }]* %_60, [4 x { i8*, i8 addrspace(1)* }]** %49, align 1, !alias.scope !1590, !noalias !1593
  %50 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_53, i16 0, i32 5, i32 1
  store i16 4, i16* %50, align 1, !alias.scope !1590, !noalias !1593
; call core::panicking::panic_fmt
  call addrspace(1) void @_ZN4core9panicking9panic_fmt17hb7ee2cb815ea49cfE(%"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_53, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) %2)
  unreachable

bb6.i25:                                          ; preds = %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.thread60", %bb35
  %char_start.081 = phi i16 [ %93, %bb35 ], [ %storemerge, %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.thread60" ]
  %_3.i.i.i24 = icmp ult i16 %char_start.081, %s.1
  br i1 %_3.i.i.i24, label %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit29", label %bb35

"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit29": ; preds = %bb6.i25
  %51 = getelementptr inbounds [0 x i8], [0 x i8]* %s.0, i16 0, i16 %char_start.081
  %b.i27 = load i8, i8* %51, align 1, !alias.scope !1596
  %52 = icmp sgt i8 %b.i27, -65
  br i1 %52, label %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i", label %bb35

"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i": ; preds = %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit29"
  %53 = bitcast i32* %ch to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %53)
  br label %"_ZN4core3str6traits105_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeFrom$LT$usize$GT$$GT$5index17ha0ef1b51ddf75fd9E.exit"

"_ZN4core3str6traits105_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeFrom$LT$usize$GT$$GT$5index17ha0ef1b51ddf75fd9E.exit.critedge": ; preds = %bb35, %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.thread60"
  %char_start.0.lcssa = phi i16 [ %storemerge, %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.thread60" ], [ %93, %bb35 ]
  %54 = bitcast i32* %ch to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %54)
  br label %"_ZN4core3str6traits105_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeFrom$LT$usize$GT$$GT$5index17ha0ef1b51ddf75fd9E.exit"

"_ZN4core3str6traits105_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeFrom$LT$usize$GT$$GT$5index17ha0ef1b51ddf75fd9E.exit": ; preds = %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i", %"_ZN4core3str6traits105_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeFrom$LT$usize$GT$$GT$5index17ha0ef1b51ddf75fd9E.exit.critedge"
  %char_start.075 = phi i16 [ %char_start.0.lcssa, %"_ZN4core3str6traits105_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeFrom$LT$usize$GT$$GT$5index17ha0ef1b51ddf75fd9E.exit.critedge" ], [ %char_start.081, %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit.i.i" ]
  %55 = getelementptr inbounds [0 x i8], [0 x i8]* %s.0, i16 0, i16 %char_start.075
  %56 = getelementptr inbounds [0 x i8], [0 x i8]* %s.0, i16 0, i16 %s.1
  %_13.i.i.i = icmp eq i16 %char_start.075, %s.1
  br i1 %_13.i.i.i, label %bb2.i, label %bb3.i.i38

bb3.i.i38:                                        ; preds = %"_ZN4core3str6traits105_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeFrom$LT$usize$GT$$GT$5index17ha0ef1b51ddf75fd9E.exit"
  %57 = getelementptr inbounds i8, i8* %55, i16 1
  %x.i.i = load i8, i8* %55, align 1
  %_12.i.i = icmp sgt i8 %x.i.i, -1
  br i1 %_12.i.i, label %"_ZN4core6option15Option$LT$T$GT$6unwrap17hcdbee842cc8c15afE.exit.thread", label %bb10.i.i

bb10.i.i:                                         ; preds = %bb3.i.i38
  %_3.i37.i.i = and i8 %x.i.i, 31
  %58 = zext i8 %_3.i37.i.i to i32
  %_13.i33.i.i = icmp eq i8* %57, %56
  br i1 %_13.i33.i.i, label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i, label %bb3.i28.i.i

bb3.i28.i.i:                                      ; preds = %bb10.i.i
  %59 = getelementptr inbounds i8, i8* %55, i16 2
  %byte.i27.i.i = load i8, i8* %57, align 1, !alias.scope !1599
  %phitmp.i.i = and i8 %byte.i27.i.i, 63
  %phitmp42.i.i = zext i8 %phitmp.i.i to i32
  br label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i

_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i: ; preds = %bb3.i28.i.i, %bb10.i.i
  %_16.i19.i.i = phi i8* [ %59, %bb3.i28.i.i ], [ %56, %bb10.i.i ]
  %.0.i29.i.i = phi i32 [ %phitmp42.i.i, %bb3.i28.i.i ], [ 0, %bb10.i.i ]
  %_3.i24.i.i = shl nuw nsw i32 %58, 6
  %60 = or i32 %.0.i29.i.i, %_3.i24.i.i
  %_24.i.i = icmp ugt i8 %x.i.i, -33
  br i1 %_24.i.i, label %bb17.i.i, label %"_ZN4core6option15Option$LT$T$GT$6unwrap17hcdbee842cc8c15afE.exit"

"_ZN4core6option15Option$LT$T$GT$6unwrap17hcdbee842cc8c15afE.exit.thread": ; preds = %bb3.i.i38
  %_14.i.i = zext i8 %x.i.i to i32
  store i32 %_14.i.i, i32* %ch, align 1
  %61 = bitcast { i16, i16 }* %char_range to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %61)
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8len_utf817h008cd1f0b227ba0fE.exit"

bb17.i.i:                                         ; preds = %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i
  %_13.i20.i.i = icmp eq i8* %_16.i19.i.i, %56
  br i1 %_13.i20.i.i, label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i, label %bb3.i15.i.i

bb3.i15.i.i:                                      ; preds = %bb17.i.i
  %62 = getelementptr inbounds i8, i8* %_16.i19.i.i, i16 1
  %byte.i14.i.i = load i8, i8* %_16.i19.i.i, align 1, !alias.scope !1602
  %phitmp43.i.i = and i8 %byte.i14.i.i, 63
  %phitmp44.i.i = zext i8 %phitmp43.i.i to i32
  br label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i

_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i: ; preds = %bb3.i15.i.i, %bb17.i.i
  %_16.i6.i.i = phi i8* [ %62, %bb3.i15.i.i ], [ %56, %bb17.i.i ]
  %.0.i16.i.i = phi i32 [ %phitmp44.i.i, %bb3.i15.i.i ], [ 0, %bb17.i.i ]
  %_3.i11.i.i = shl nuw nsw i32 %.0.i29.i.i, 6
  %63 = or i32 %.0.i16.i.i, %_3.i11.i.i
  %_34.i.i = shl nuw nsw i32 %58, 12
  %64 = or i32 %63, %_34.i.i
  %_37.i.i = icmp ugt i8 %x.i.i, -17
  br i1 %_37.i.i, label %bb22.i.i, label %"_ZN4core6option15Option$LT$T$GT$6unwrap17hcdbee842cc8c15afE.exit"

bb22.i.i:                                         ; preds = %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i
  %_13.i7.i.i = icmp eq i8* %_16.i6.i.i, %56
  br i1 %_13.i7.i.i, label %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit", label %bb3.i.i.i40

bb3.i.i.i40:                                      ; preds = %bb22.i.i
  %byte.i.i.i = load i8, i8* %_16.i6.i.i, align 1, !alias.scope !1605
  %phitmp45.i.i = and i8 %byte.i.i.i, 63
  %phitmp46.i.i = zext i8 %phitmp45.i.i to i32
  br label %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit"

"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit": ; preds = %bb22.i.i, %bb3.i.i.i40
  %.0.i4.i.i = phi i32 [ %phitmp46.i.i, %bb3.i.i.i40 ], [ 0, %bb22.i.i ]
  %_43.i.i = shl nuw nsw i32 %58, 18
  %_42.i.i = and i32 %_43.i.i, 1835008
  %_3.i.i.i41 = shl nuw nsw i32 %63, 6
  %65 = or i32 %_3.i.i.i41, %_42.i.i
  %66 = or i32 %65, %.0.i4.i.i
  %67 = icmp eq i32 %66, 1114112
  br i1 %67, label %bb2.i, label %"_ZN4core6option15Option$LT$T$GT$6unwrap17hcdbee842cc8c15afE.exit"

bb2.i:                                            ; preds = %"_ZN4core3str6traits105_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeFrom$LT$usize$GT$$GT$5index17ha0ef1b51ddf75fd9E.exit", %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit"
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [43 x i8] }>* @alloc18613 to [0 x i8]*), i16 43, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) %2)
  unreachable

"_ZN4core6option15Option$LT$T$GT$6unwrap17hcdbee842cc8c15afE.exit": ; preds = %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit"
  %.sroa.0.0.i.i4268 = phi i32 [ %66, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit" ], [ %60, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i ], [ %64, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i ]
  store i32 %.sroa.0.0.i.i4268, i32* %ch, align 1
  %68 = bitcast { i16, i16 }* %char_range to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %68)
  %_2.i.i = icmp ult i32 %.sroa.0.0.i.i4268, 128
  br i1 %_2.i.i, label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8len_utf817h008cd1f0b227ba0fE.exit", label %bb1.i.i

bb1.i.i:                                          ; preds = %"_ZN4core6option15Option$LT$T$GT$6unwrap17hcdbee842cc8c15afE.exit"
  %_4.i.i = icmp ult i32 %.sroa.0.0.i.i4268, 2048
  br i1 %_4.i.i, label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8len_utf817h008cd1f0b227ba0fE.exit", label %bb3.i.i

bb3.i.i:                                          ; preds = %bb1.i.i
  %_6.i.i = icmp ult i32 %.sroa.0.0.i.i4268, 65536
  %..i.i = select i1 %_6.i.i, i16 3, i16 4
  br label %"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8len_utf817h008cd1f0b227ba0fE.exit"

"_ZN4core4char7methods22_$LT$impl$u20$char$GT$8len_utf817h008cd1f0b227ba0fE.exit": ; preds = %"_ZN4core6option15Option$LT$T$GT$6unwrap17hcdbee842cc8c15afE.exit.thread", %"_ZN4core6option15Option$LT$T$GT$6unwrap17hcdbee842cc8c15afE.exit", %bb1.i.i, %bb3.i.i
  %69 = phi i8* [ %68, %"_ZN4core6option15Option$LT$T$GT$6unwrap17hcdbee842cc8c15afE.exit" ], [ %68, %bb3.i.i ], [ %68, %bb1.i.i ], [ %61, %"_ZN4core6option15Option$LT$T$GT$6unwrap17hcdbee842cc8c15afE.exit.thread" ]
  %.0.i.i = phi i16 [ 1, %"_ZN4core6option15Option$LT$T$GT$6unwrap17hcdbee842cc8c15afE.exit" ], [ %..i.i, %bb3.i.i ], [ 2, %bb1.i.i ], [ 1, %"_ZN4core6option15Option$LT$T$GT$6unwrap17hcdbee842cc8c15afE.exit.thread" ]
  %_103 = add i16 %.0.i.i, %char_start.075
  %70 = getelementptr inbounds { i16, i16 }, { i16, i16 }* %char_range, i16 0, i32 0
  store i16 %char_start.075, i16* %70, align 1
  %71 = getelementptr inbounds { i16, i16 }, { i16, i16 }* %char_range, i16 0, i32 1
  store i16 %_103, i16* %71, align 1
  %72 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_107, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %72)
  %73 = bitcast [5 x { i8*, i8 addrspace(1)* }]* %_114 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 20, i8* nonnull %73)
  %74 = bitcast [5 x { i8*, i8 addrspace(1)* }]* %_114 to i16**
  store i16* %index, i16** %74, align 1
  %75 = getelementptr inbounds [5 x { i8*, i8 addrspace(1)* }], [5 x { i8*, i8 addrspace(1)* }]* %_114, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u16$GT$3fmt17ha65397985f1509e1E" to i8 addrspace(1)*), i8 addrspace(1)** %75, align 1
  %76 = getelementptr inbounds [5 x { i8*, i8 addrspace(1)* }], [5 x { i8*, i8 addrspace(1)* }]* %_114, i16 0, i16 1, i32 0
  %77 = bitcast i8** %76 to i32**
  store i32* %ch, i32** %77, align 1
  %78 = getelementptr inbounds [5 x { i8*, i8 addrspace(1)* }], [5 x { i8*, i8 addrspace(1)* }]* %_114, i16 0, i16 1, i32 1
  store i8 addrspace(1)* bitcast (i1 (i32*, %"fmt::Formatter"*) addrspace(1)* @"_ZN41_$LT$char$u20$as$u20$core..fmt..Debug$GT$3fmt17h03e3d18dd45a0945E" to i8 addrspace(1)*), i8 addrspace(1)** %78, align 1
  %79 = getelementptr inbounds [5 x { i8*, i8 addrspace(1)* }], [5 x { i8*, i8 addrspace(1)* }]* %_114, i16 0, i16 2, i32 0
  store i8* %69, i8** %79, align 1
  %80 = getelementptr inbounds [5 x { i8*, i8 addrspace(1)* }], [5 x { i8*, i8 addrspace(1)* }]* %_114, i16 0, i16 2, i32 1
  store i8 addrspace(1)* bitcast (i1 ({ i16, i16 }*, %"fmt::Formatter"*) addrspace(1)* @"_ZN71_$LT$core..ops..range..Range$LT$Idx$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h484ecd95e4b8c5f0E" to i8 addrspace(1)*), i8 addrspace(1)** %80, align 1
  %81 = getelementptr inbounds [5 x { i8*, i8 addrspace(1)* }], [5 x { i8*, i8 addrspace(1)* }]* %_114, i16 0, i16 3, i32 0
  %82 = bitcast i8** %81 to { [0 x i8]*, i16 }**
  store { [0 x i8]*, i16 }* %s_trunc, { [0 x i8]*, i16 }** %82, align 1
  %83 = getelementptr inbounds [5 x { i8*, i8 addrspace(1)* }], [5 x { i8*, i8 addrspace(1)* }]* %_114, i16 0, i16 3, i32 1
  store i8 addrspace(1)* bitcast (i1 ({ [0 x i8]*, i16 }*, %"fmt::Formatter"*) addrspace(1)* @"_ZN44_$LT$$RF$T$u20$as$u20$core..fmt..Display$GT$3fmt17h4c33253c245fb34cE" to i8 addrspace(1)*), i8 addrspace(1)** %83, align 1
  %84 = getelementptr inbounds [5 x { i8*, i8 addrspace(1)* }], [5 x { i8*, i8 addrspace(1)* }]* %_114, i16 0, i16 4, i32 0
  %85 = bitcast i8** %84 to { [0 x i8]*, i16 }**
  store { [0 x i8]*, i16 }* %ellipsis, { [0 x i8]*, i16 }** %85, align 1
  %86 = getelementptr inbounds [5 x { i8*, i8 addrspace(1)* }], [5 x { i8*, i8 addrspace(1)* }]* %_114, i16 0, i16 4, i32 1
  store i8 addrspace(1)* bitcast (i1 ({ [0 x i8]*, i16 }*, %"fmt::Formatter"*) addrspace(1)* @"_ZN44_$LT$$RF$T$u20$as$u20$core..fmt..Display$GT$3fmt17h4c33253c245fb34cE" to i8 addrspace(1)*), i8 addrspace(1)** %86, align 1
  %87 = bitcast %"fmt::Arguments"* %_107 to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8], i8*, [2 x i8], i8*, [2 x i8], i8*, [2 x i8], i8*, [2 x i8] }>* @alloc15831 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %87, align 1, !alias.scope !1608, !noalias !1611
  %88 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_107, i16 0, i32 1, i32 1
  store i16 5, i16* %88, align 1, !alias.scope !1608, !noalias !1611
  %89 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_107, i16 0, i32 3, i32 0
  store i8* null, i8** %89, align 1, !alias.scope !1608, !noalias !1611
  %90 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_107, i16 0, i32 5, i32 0
  %91 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %90 to [5 x { i8*, i8 addrspace(1)* }]**
  store [5 x { i8*, i8 addrspace(1)* }]* %_114, [5 x { i8*, i8 addrspace(1)* }]** %91, align 1, !alias.scope !1608, !noalias !1611
  %92 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_107, i16 0, i32 5, i32 1
  store i16 5, i16* %92, align 1, !alias.scope !1608, !noalias !1611
; call core::panicking::panic_fmt
  call addrspace(1) void @_ZN4core9panicking9panic_fmt17hb7ee2cb815ea49cfE(%"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_107, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) %2)
  unreachable

bb35:                                             ; preds = %bb6.i25, %"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E.exit29"
  %93 = add i16 %char_start.081, -1
  %_4.i21 = icmp eq i16 %93, 0
  %_6.i22 = icmp eq i16 %93, %s.1
  %or.cond.i23 = or i1 %_4.i21, %_6.i22
  br i1 %or.cond.i23, label %"_ZN4core3str6traits105_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeFrom$LT$usize$GT$$GT$5index17ha0ef1b51ddf75fd9E.exit.critedge", label %bb6.i25
}

; core::str::<impl str>::encode_utf16
; Function Attrs: nofree norecurse nounwind uwtable writeonly
define void @"_ZN4core3str21_$LT$impl$u20$str$GT$12encode_utf1617hb8e348c8e394456aE"(%"str::EncodeUtf16"* noalias nocapture sret dereferenceable(6) %0, [0 x i8]* noalias nonnull readonly align 1 %self.0, i16 %self.1) unnamed_addr addrspace(1) #3 {
start:
  %1 = getelementptr [0 x i8], [0 x i8]* %self.0, i16 0, i16 0
  %2 = getelementptr inbounds [0 x i8], [0 x i8]* %self.0, i16 0, i16 %self.1
  %3 = bitcast %"str::EncodeUtf16"* %0 to i8**
  store i8* %1, i8** %3, align 1
  %4 = getelementptr inbounds %"str::EncodeUtf16", %"str::EncodeUtf16"* %0, i16 0, i32 1, i32 1
  store i8* %2, i8** %4, align 1
  %5 = getelementptr inbounds %"str::EncodeUtf16", %"str::EncodeUtf16"* %0, i16 0, i32 3
  store i16 0, i16* %5, align 1
  ret void
}

; core::str::<impl str>::trim
; Function Attrs: uwtable
define { [0 x i8]*, i16 } @"_ZN4core3str21_$LT$impl$u20$str$GT$4trim17hc67d43d3f34fd00fE"([0 x i8]* noalias nonnull readonly align 1 %self.0, i16 %self.1) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = getelementptr inbounds [0 x i8], [0 x i8]* %self.0, i16 0, i16 %self.1
  %1 = ptrtoint [0 x i8]* %self.0 to i16
  %2 = ptrtoint i8* %0 to i16
  %_13.i.i.i.i.i22.i.i.i = icmp eq i16 %self.1, 0
  br i1 %_13.i.i.i.i.i22.i.i.i, label %"_ZN99_$LT$core..str..pattern..CharPredicateSearcher$LT$F$GT$$u20$as$u20$core..str..pattern..Searcher$GT$11next_reject17hd09809038dfa30aaE.exit.i", label %bb3.i.i.i6.i.i.i10.preheader.i

bb3.i.i.i6.i.i.i10.preheader.i:                   ; preds = %start
  %3 = getelementptr [0 x i8], [0 x i8]* %self.0, i16 0, i16 0
  br label %bb3.i.i.i6.i.i.i10.i

bb3.i.i.i6.i.i.i10.i:                             ; preds = %bb6.i.i29.i, %bb3.i.i.i6.i.i.i10.preheader.i
  %matcher.sroa.4.0.i = phi i16 [ %19, %bb6.i.i29.i ], [ 0, %bb3.i.i.i6.i.i.i10.preheader.i ]
  %_16.i.i.i.cast.i.i25.i.i.i = phi i8* [ %_16.i.i.i.cast.i.i.i.i.i, %bb6.i.i29.i ], [ %3, %bb3.i.i.i6.i.i.i10.preheader.i ]
  %start15.i.i17.pn.i.i.i = phi i16 [ %matcher.sroa.8.3.i, %bb6.i.i29.i ], [ %1, %bb3.i.i.i6.i.i.i10.preheader.i ]
  %4 = getelementptr inbounds i8, i8* %_16.i.i.i.cast.i.i25.i.i.i, i16 1
  %5 = ptrtoint i8* %4 to i16
  %x.i.i.i.i.i.i.i = load i8, i8* %_16.i.i.i.cast.i.i25.i.i.i, align 1, !noalias !1614
  %_12.i.i.i.i.i.i.i = icmp sgt i8 %x.i.i.i.i.i.i.i, -1
  br i1 %_12.i.i.i.i.i.i.i, label %bb11.i.i.i.i.i.i13.i, label %bb10.i.i.i.i.i.i.i

bb10.i.i.i.i.i.i.i:                               ; preds = %bb3.i.i.i6.i.i.i10.i
  %_3.i37.i.i.i.i.i.i.i = and i8 %x.i.i.i.i.i.i.i, 31
  %6 = zext i8 %_3.i37.i.i.i.i.i.i.i to i32
  %_13.i33.i.i.i.i.i.i.i = icmp eq i8* %4, %0
  br i1 %_13.i33.i.i.i.i.i.i.i, label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i, label %bb3.i28.i.i.i.i.i.i.i

bb3.i28.i.i.i.i.i.i.i:                            ; preds = %bb10.i.i.i.i.i.i.i
  %7 = getelementptr inbounds i8, i8* %_16.i.i.i.cast.i.i25.i.i.i, i16 2
  %8 = ptrtoint i8* %7 to i16
  %byte.i27.i.i.i.i.i.i.i = load i8, i8* %4, align 1, !alias.scope !1621, !noalias !1614
  %phitmp.i.i.i.i.i.i11.i = and i8 %byte.i27.i.i.i.i.i.i.i, 63
  %phitmp42.i.i.i.i.i.i.i = zext i8 %phitmp.i.i.i.i.i.i11.i to i32
  br label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i

_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i: ; preds = %bb3.i28.i.i.i.i.i.i.i, %bb10.i.i.i.i.i.i.i
  %matcher.sroa.8.0.i = phi i16 [ %5, %bb10.i.i.i.i.i.i.i ], [ %8, %bb3.i28.i.i.i.i.i.i.i ]
  %_16.i19.i.i.i.i.i.i.i = phi i8* [ %0, %bb10.i.i.i.i.i.i.i ], [ %7, %bb3.i28.i.i.i.i.i.i.i ]
  %.0.i29.i.i.i.i.i.i.i = phi i32 [ 0, %bb10.i.i.i.i.i.i.i ], [ %phitmp42.i.i.i.i.i.i.i, %bb3.i28.i.i.i.i.i.i.i ]
  %_3.i24.i.i.i.i.i.i.i = shl nuw nsw i32 %6, 6
  %9 = or i32 %.0.i29.i.i.i.i.i.i.i, %_3.i24.i.i.i.i.i.i.i
  %_24.i.i.i.i.i.i.i = icmp ugt i8 %x.i.i.i.i.i.i.i, -33
  br i1 %_24.i.i.i.i.i.i.i, label %bb17.i.i.i.i.i.i14.i, label %bb4.i.i.i18.i

bb11.i.i.i.i.i.i13.i:                             ; preds = %bb3.i.i.i6.i.i.i10.i
  %_14.i.i.i.i.i.i12.i = zext i8 %x.i.i.i.i.i.i.i to i32
  br label %bb4.i.i.i18.i

bb17.i.i.i.i.i.i14.i:                             ; preds = %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i
  %_13.i20.i.i.i.i.i.i.i = icmp eq i8* %_16.i19.i.i.i.i.i.i.i, %0
  br i1 %_13.i20.i.i.i.i.i.i.i, label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i, label %bb3.i15.i.i.i.i.i.i.i

bb3.i15.i.i.i.i.i.i.i:                            ; preds = %bb17.i.i.i.i.i.i14.i
  %10 = getelementptr inbounds i8, i8* %_16.i19.i.i.i.i.i.i.i, i16 1
  %11 = ptrtoint i8* %10 to i16
  %byte.i14.i.i.i.i.i.i.i = load i8, i8* %_16.i19.i.i.i.i.i.i.i, align 1, !alias.scope !1624, !noalias !1614
  %phitmp43.i.i.i.i.i.i.i = and i8 %byte.i14.i.i.i.i.i.i.i, 63
  %phitmp44.i.i.i.i.i.i.i = zext i8 %phitmp43.i.i.i.i.i.i.i to i32
  br label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i

_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i: ; preds = %bb3.i15.i.i.i.i.i.i.i, %bb17.i.i.i.i.i.i14.i
  %matcher.sroa.8.1.i = phi i16 [ %matcher.sroa.8.0.i, %bb17.i.i.i.i.i.i14.i ], [ %11, %bb3.i15.i.i.i.i.i.i.i ]
  %_16.i6.i.i.i.i.i.i.i = phi i8* [ %0, %bb17.i.i.i.i.i.i14.i ], [ %10, %bb3.i15.i.i.i.i.i.i.i ]
  %.0.i16.i.i.i.i.i.i.i = phi i32 [ 0, %bb17.i.i.i.i.i.i14.i ], [ %phitmp44.i.i.i.i.i.i.i, %bb3.i15.i.i.i.i.i.i.i ]
  %_3.i11.i.i.i.i.i.i.i = shl nuw nsw i32 %.0.i29.i.i.i.i.i.i.i, 6
  %12 = or i32 %.0.i16.i.i.i.i.i.i.i, %_3.i11.i.i.i.i.i.i.i
  %_34.i.i.i.i.i.i.i = shl nuw nsw i32 %6, 12
  %13 = or i32 %12, %_34.i.i.i.i.i.i.i
  %_37.i.i.i.i.i.i.i = icmp ugt i8 %x.i.i.i.i.i.i.i, -17
  br i1 %_37.i.i.i.i.i.i.i, label %bb22.i.i.i.i.i.i.i, label %bb4.i.i.i18.i

bb22.i.i.i.i.i.i.i:                               ; preds = %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i
  %_13.i7.i.i.i.i.i.i.i = icmp eq i8* %_16.i6.i.i.i.i.i.i.i, %0
  br i1 %_13.i7.i.i.i.i.i.i.i, label %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i.i.i.i.i", label %bb3.i.i.i.i.i.i.i16.i

bb3.i.i.i.i.i.i.i16.i:                            ; preds = %bb22.i.i.i.i.i.i.i
  %14 = getelementptr inbounds i8, i8* %_16.i6.i.i.i.i.i.i.i, i16 1
  %15 = ptrtoint i8* %14 to i16
  %byte.i.i.i.i.i.i.i15.i = load i8, i8* %_16.i6.i.i.i.i.i.i.i, align 1, !alias.scope !1627, !noalias !1614
  %phitmp45.i.i.i.i.i.i.i = and i8 %byte.i.i.i.i.i.i.i15.i, 63
  %phitmp46.i.i.i.i.i.i.i = zext i8 %phitmp45.i.i.i.i.i.i.i to i32
  br label %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i.i.i.i.i"

"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i.i.i.i.i": ; preds = %bb3.i.i.i.i.i.i.i16.i, %bb22.i.i.i.i.i.i.i
  %matcher.sroa.8.2.i = phi i16 [ %matcher.sroa.8.1.i, %bb22.i.i.i.i.i.i.i ], [ %15, %bb3.i.i.i.i.i.i.i16.i ]
  %.0.i4.i.i.i.i.i.i.i = phi i32 [ 0, %bb22.i.i.i.i.i.i.i ], [ %phitmp46.i.i.i.i.i.i.i, %bb3.i.i.i.i.i.i.i16.i ]
  %_43.i.i.i.i.i.i.i = shl nuw nsw i32 %6, 18
  %_42.i.i.i.i.i.i.i = and i32 %_43.i.i.i.i.i.i.i, 1835008
  %_3.i.i.i.i.i.i.i17.i = shl nuw nsw i32 %12, 6
  %16 = or i32 %_3.i.i.i.i.i.i.i17.i, %_42.i.i.i.i.i.i.i
  %17 = or i32 %16, %.0.i4.i.i.i.i.i.i.i
  %18 = icmp eq i32 %17, 1114112
  br i1 %18, label %"_ZN99_$LT$core..str..pattern..CharPredicateSearcher$LT$F$GT$$u20$as$u20$core..str..pattern..Searcher$GT$11next_reject17hd09809038dfa30aaE.exit.i", label %bb4.i.i.i18.i

bb4.i.i.i18.i:                                    ; preds = %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i.i.i.i.i", %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i, %bb11.i.i.i.i.i.i13.i, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i
  %matcher.sroa.8.3.i = phi i16 [ %5, %bb11.i.i.i.i.i.i13.i ], [ %matcher.sroa.8.2.i, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i.i.i.i.i" ], [ %matcher.sroa.8.1.i, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i ], [ %matcher.sroa.8.0.i, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i ]
  %.sroa.0.0.i.i8.i.i.i.i.i = phi i32 [ %_14.i.i.i.i.i.i12.i, %bb11.i.i.i.i.i.i13.i ], [ %17, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i.i.i.i.i" ], [ %13, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i ], [ %9, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i ]
  %_11.i.i.i.i.i = sub i16 %matcher.sroa.8.3.i, %start15.i.i17.pn.i.i.i
  %19 = add i16 %_11.i.i.i.i.i, %matcher.sroa.4.0.i
  switch i32 %.sroa.0.0.i.i8.i.i.i.i.i, label %bb3.i.i.i.i.i.i20.i [
    i32 32, label %bb6.i.i29.i
    i32 13, label %bb6.i.i29.i
    i32 12, label %bb6.i.i29.i
    i32 11, label %bb6.i.i29.i
    i32 10, label %bb6.i.i29.i
    i32 9, label %bb6.i.i29.i
  ]

bb3.i.i.i.i.i.i20.i:                              ; preds = %bb4.i.i.i18.i
  %_5.i.i.i.i.i.i19.i = icmp ugt i32 %.sroa.0.0.i.i8.i.i.i.i.i, 127
  br i1 %_5.i.i.i.i.i.i19.i, label %bb7.i.i.i.i.i.i22.i, label %"_ZN99_$LT$core..str..pattern..CharPredicateSearcher$LT$F$GT$$u20$as$u20$core..str..pattern..Searcher$GT$11next_reject17hd09809038dfa30aaE.exit.i"

bb7.i.i.i.i.i.i22.i:                              ; preds = %bb3.i.i.i.i.i.i20.i
; call core::unicode::unicode_data::white_space::lookup
  %_7.i.i.i.i.i.i21.i = tail call zeroext addrspace(1) i1 @_ZN4core7unicode12unicode_data11white_space6lookup17hb25ac8ada5802067E(i32 %.sroa.0.0.i.i8.i.i.i.i.i), !noalias !1614
  br i1 %_7.i.i.i.i.i.i21.i, label %bb6.i.i29.i, label %"_ZN99_$LT$core..str..pattern..CharPredicateSearcher$LT$F$GT$$u20$as$u20$core..str..pattern..Searcher$GT$11next_reject17hd09809038dfa30aaE.exit.i"

bb6.i.i29.i:                                      ; preds = %bb7.i.i.i.i.i.i22.i, %bb4.i.i.i18.i, %bb4.i.i.i18.i, %bb4.i.i.i18.i, %bb4.i.i.i18.i, %bb4.i.i.i18.i, %bb4.i.i.i18.i
  %_16.i.i.i.cast.i.i.i.i.i = inttoptr i16 %matcher.sroa.8.3.i to i8*
  %_13.i.i.i.i.i.i.i28.i = icmp eq i8* %0, %_16.i.i.i.cast.i.i.i.i.i
  br i1 %_13.i.i.i.i.i.i.i28.i, label %"_ZN99_$LT$core..str..pattern..CharPredicateSearcher$LT$F$GT$$u20$as$u20$core..str..pattern..Searcher$GT$11next_reject17hd09809038dfa30aaE.exit.i", label %bb3.i.i.i6.i.i.i10.i

"_ZN99_$LT$core..str..pattern..CharPredicateSearcher$LT$F$GT$$u20$as$u20$core..str..pattern..Searcher$GT$11next_reject17hd09809038dfa30aaE.exit.i": ; preds = %bb6.i.i29.i, %bb7.i.i.i.i.i.i22.i, %bb3.i.i.i.i.i.i20.i, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i.i.i.i.i", %start
  %20 = phi i16 [ 0, %start ], [ %19, %bb7.i.i.i.i.i.i22.i ], [ %19, %bb3.i.i.i.i.i.i20.i ], [ 0, %bb6.i.i29.i ], [ 0, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i.i.i.i.i" ]
  %matcher.sroa.8.55365.i = phi i16 [ %1, %start ], [ %matcher.sroa.8.3.i, %bb7.i.i.i.i.i.i22.i ], [ %matcher.sroa.8.3.i, %bb3.i.i.i.i.i.i20.i ], [ %matcher.sroa.8.3.i, %bb6.i.i29.i ], [ %matcher.sroa.8.2.i, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i.i.i.i.i" ]
  %matcher.sroa.4.25563.i = phi i16 [ 0, %start ], [ %19, %bb7.i.i.i.i.i.i22.i ], [ %19, %bb3.i.i.i.i.i.i20.i ], [ %19, %bb6.i.i29.i ], [ %matcher.sroa.4.0.i, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i.i.i.i.i" ]
  %21 = phi i16 [ 0, %start ], [ %matcher.sroa.4.0.i, %bb7.i.i.i.i.i.i22.i ], [ %matcher.sroa.4.0.i, %bb3.i.i.i.i.i.i20.i ], [ 0, %bb6.i.i29.i ], [ 0, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i.i.i.i.i" ]
  %22 = inttoptr i16 %matcher.sroa.8.55365.i to i8*
  %_13.i.i.i.i.i21.i.i.i = icmp eq i8* %0, %22
  br i1 %_13.i.i.i.i.i21.i.i.i, label %"_ZN4core3str21_$LT$impl$u20$str$GT$12trim_matches17hf7f196b95c189545E.exit", label %bb3.i.i.i6.i.lr.ph.i.i.i

bb3.i.i.i6.i.lr.ph.i.i.i:                         ; preds = %"_ZN99_$LT$core..str..pattern..CharPredicateSearcher$LT$F$GT$$u20$as$u20$core..str..pattern..Searcher$GT$11next_reject17hd09809038dfa30aaE.exit.i"
  %23 = sub i16 %2, %matcher.sroa.8.55365.i
  br label %bb3.i.i.i6.i.i.i.i

bb3.i.i.i6.i.i.i.i:                               ; preds = %bb6.i.i.i, %bb3.i.i.i6.i.lr.ph.i.i.i
  %start15.i.i27.i.i.i = phi i16 [ %matcher.sroa.8.55365.i, %bb3.i.i.i6.i.lr.ph.i.i.i ], [ %start15.i.i.i.i.i, %bb6.i.i.i ]
  %24 = phi i8* [ %22, %bb3.i.i.i6.i.lr.ph.i.i.i ], [ %43, %bb6.i.i.i ]
  %_12.i.i.i.i.cast.i23.i.i.i = phi i8* [ %0, %bb3.i.i.i6.i.lr.ph.i.i.i ], [ %_12.i.i.i.i.cast.i.i.i.i, %bb6.i.i.i ]
  %25 = phi i16 [ %23, %bb3.i.i.i6.i.lr.ph.i.i.i ], [ %42, %bb6.i.i.i ]
  %26 = getelementptr inbounds i8, i8* %_12.i.i.i.i.cast.i23.i.i.i, i16 -1
  %27 = ptrtoint i8* %26 to i16
  %_15.i.i.i.i.i.i.i = load i8, i8* %26, align 1, !noalias !1630
  %_14.i.i.i.i.i.i.i = icmp sgt i8 %_15.i.i.i.i.i.i.i, -1
  br i1 %_14.i.i.i.i.i.i.i, label %"_ZN90_$LT$core..str..Chars$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back17h66859d9fe72ef88aE.exit.thread4.i.i.i.i.i", label %bb11.i.i.i.i.i.i.i

"_ZN90_$LT$core..str..Chars$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back17h66859d9fe72ef88aE.exit.thread4.i.i.i.i.i": ; preds = %bb3.i.i.i6.i.i.i.i
  %_16.i.i.i.i.i.i.i = zext i8 %_15.i.i.i.i.i.i.i to i32
  br label %bb4.i.i.i.i

bb11.i.i.i.i.i.i.i:                               ; preds = %bb3.i.i.i6.i.i.i.i
  %_13.i40.i.i.i.i.i.i.i = icmp eq i8* %26, %24
  br i1 %_13.i40.i.i.i.i.i.i.i, label %"_ZN90_$LT$core..str..Chars$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back17h66859d9fe72ef88aE.exit.i.i.i.i.i", label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit37.i.i.i.i.i.i.i

_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit37.i.i.i.i.i.i.i: ; preds = %bb11.i.i.i.i.i.i.i
  %28 = getelementptr inbounds i8, i8* %_12.i.i.i.i.cast.i23.i.i.i, i16 -2
  %29 = ptrtoint i8* %28 to i16
  %byte.i34.i.i.i.i.i.i.i = load i8, i8* %28, align 1, !alias.scope !1637, !noalias !1630
  %_3.i33.i.i.i.i.i.i.i = and i8 %byte.i34.i.i.i.i.i.i.i, 31
  %30 = zext i8 %_3.i33.i.i.i.i.i.i.i to i32
  %_2.i32.i.i.i.i.i.i.i = and i8 %byte.i34.i.i.i.i.i.i.i, -64
  %31 = icmp eq i8 %_2.i32.i.i.i.i.i.i.i, -128
  br i1 %31, label %bb17.i.i.i.i.i.i.i, label %"_ZN90_$LT$core..str..Chars$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back17h66859d9fe72ef88aE.exit.i.i.i.i.i"

bb17.i.i.i.i.i.i.i:                               ; preds = %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit37.i.i.i.i.i.i.i
  %_13.i28.i.i.i.i.i.i.i = icmp eq i8* %28, %24
  br i1 %_13.i28.i.i.i.i.i.i.i, label %bb28.i.i.i.i.i.i.i, label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit25.i.i.i.i.i.i.i

_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit25.i.i.i.i.i.i.i: ; preds = %bb17.i.i.i.i.i.i.i
  %32 = getelementptr inbounds i8, i8* %_12.i.i.i.i.cast.i23.i.i.i, i16 -3
  %33 = ptrtoint i8* %32 to i16
  %byte.i22.i.i.i.i.i.i.i = load i8, i8* %32, align 1, !alias.scope !1640, !noalias !1630
  %_3.i21.i.i.i.i.i.i.i = and i8 %byte.i22.i.i.i.i.i.i.i, 15
  %34 = zext i8 %_3.i21.i.i.i.i.i.i.i to i32
  %_2.i.i.i.i.i.i.i.i = and i8 %byte.i22.i.i.i.i.i.i.i, -64
  %35 = icmp eq i8 %_2.i.i.i.i.i.i.i.i, -128
  br i1 %35, label %bb23.i.i.i.i.i.i.i, label %bb28.i.i.i.i.i.i.i

bb23.i.i.i.i.i.i.i:                               ; preds = %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit25.i.i.i.i.i.i.i
  %_13.i17.i.i.i.i.i.i.i = icmp eq i8* %32, %24
  br i1 %_13.i17.i.i.i.i.i.i.i, label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit.i.i.i.i.i.i.i, label %bb3.i.i.i.i.i.i.i.i

bb3.i.i.i.i.i.i.i.i:                              ; preds = %bb23.i.i.i.i.i.i.i
  %36 = getelementptr inbounds i8, i8* %_12.i.i.i.i.cast.i23.i.i.i, i16 -4
  %37 = ptrtoint i8* %36 to i16
  %byte.i.i.i.i.i.i.i.i = load i8, i8* %36, align 1, !alias.scope !1643, !noalias !1630
  %phitmp.i.i.i.i.i.i.i = and i8 %byte.i.i.i.i.i.i.i.i, 7
  %phitmp54.i.i.i.i.i.i.i = zext i8 %phitmp.i.i.i.i.i.i.i to i32
  %phitmp55.i.i.i.i.i.i.i = shl nuw nsw i32 %phitmp54.i.i.i.i.i.i.i, 6
  br label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit.i.i.i.i.i.i.i

_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit.i.i.i.i.i.i.i: ; preds = %bb3.i.i.i.i.i.i.i.i, %bb23.i.i.i.i.i.i.i
  %matcher.sroa.17.0.i = phi i16 [ %33, %bb23.i.i.i.i.i.i.i ], [ %37, %bb3.i.i.i.i.i.i.i.i ]
  %.0.i14.i.i.i.i.i.i.i = phi i32 [ 0, %bb23.i.i.i.i.i.i.i ], [ %phitmp55.i.i.i.i.i.i.i, %bb3.i.i.i.i.i.i.i.i ]
  %_6.i11.i.i.i.i.i.i.i = and i8 %byte.i22.i.i.i.i.i.i.i, 63
  %_5.i12.i.i.i.i.i.i.i = zext i8 %_6.i11.i.i.i.i.i.i.i to i32
  %38 = or i32 %.0.i14.i.i.i.i.i.i.i, %_5.i12.i.i.i.i.i.i.i
  br label %bb28.i.i.i.i.i.i.i

bb28.i.i.i.i.i.i.i:                               ; preds = %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit.i.i.i.i.i.i.i, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit25.i.i.i.i.i.i.i, %bb17.i.i.i.i.i.i.i
  %matcher.sroa.17.1.i = phi i16 [ %29, %bb17.i.i.i.i.i.i.i ], [ %matcher.sroa.17.0.i, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit.i.i.i.i.i.i.i ], [ %33, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit25.i.i.i.i.i.i.i ]
  %ch.0.i.i.i.i.i.i.i = phi i32 [ 0, %bb17.i.i.i.i.i.i.i ], [ %38, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit.i.i.i.i.i.i.i ], [ %34, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit25.i.i.i.i.i.i.i ]
  %_3.i7.i.i.i.i.i.i.i = shl nsw i32 %ch.0.i.i.i.i.i.i.i, 6
  %_6.i8.i.i.i.i.i.i.i = and i8 %byte.i34.i.i.i.i.i.i.i, 63
  %_5.i9.i.i.i.i.i.i.i = zext i8 %_6.i8.i.i.i.i.i.i.i to i32
  %39 = or i32 %_3.i7.i.i.i.i.i.i.i, %_5.i9.i.i.i.i.i.i.i
  br label %"_ZN90_$LT$core..str..Chars$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back17h66859d9fe72ef88aE.exit.i.i.i.i.i"

"_ZN90_$LT$core..str..Chars$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back17h66859d9fe72ef88aE.exit.i.i.i.i.i": ; preds = %bb28.i.i.i.i.i.i.i, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit37.i.i.i.i.i.i.i, %bb11.i.i.i.i.i.i.i
  %matcher.sroa.17.2.i = phi i16 [ %27, %bb11.i.i.i.i.i.i.i ], [ %matcher.sroa.17.1.i, %bb28.i.i.i.i.i.i.i ], [ %29, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit37.i.i.i.i.i.i.i ]
  %ch.1.i.i.i.i.i.i.i = phi i32 [ 0, %bb11.i.i.i.i.i.i.i ], [ %39, %bb28.i.i.i.i.i.i.i ], [ %30, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit37.i.i.i.i.i.i.i ]
  %_3.i.i.i.i.i.i.i.i = shl i32 %ch.1.i.i.i.i.i.i.i, 6
  %_6.i.i.i.i.i.i.i.i = and i8 %_15.i.i.i.i.i.i.i, 63
  %_5.i.i.i.i.i.i.i.i = zext i8 %_6.i.i.i.i.i.i.i.i to i32
  %40 = or i32 %_3.i.i.i.i.i.i.i.i, %_5.i.i.i.i.i.i.i.i
  %41 = icmp eq i32 %40, 1114112
  br i1 %41, label %"_ZN4core3str21_$LT$impl$u20$str$GT$12trim_matches17hf7f196b95c189545E.exit", label %bb4.i.i.i.i

bb4.i.i.i.i:                                      ; preds = %"_ZN90_$LT$core..str..Chars$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back17h66859d9fe72ef88aE.exit.i.i.i.i.i", %"_ZN90_$LT$core..str..Chars$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back17h66859d9fe72ef88aE.exit.thread4.i.i.i.i.i"
  %matcher.sroa.17.3.i = phi i16 [ %27, %"_ZN90_$LT$core..str..Chars$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back17h66859d9fe72ef88aE.exit.thread4.i.i.i.i.i" ], [ %matcher.sroa.17.2.i, %"_ZN90_$LT$core..str..Chars$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back17h66859d9fe72ef88aE.exit.i.i.i.i.i" ]
  %.sroa.0.0.i.i6.i.i.i.i.i = phi i32 [ %_16.i.i.i.i.i.i.i, %"_ZN90_$LT$core..str..Chars$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back17h66859d9fe72ef88aE.exit.thread4.i.i.i.i.i" ], [ %40, %"_ZN90_$LT$core..str..Chars$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back17h66859d9fe72ef88aE.exit.i.i.i.i.i" ]
  switch i32 %.sroa.0.0.i.i6.i.i.i.i.i, label %bb3.i.i.i.i.i.i.i [
    i32 32, label %bb6.i.i.i
    i32 13, label %bb6.i.i.i
    i32 12, label %bb6.i.i.i
    i32 11, label %bb6.i.i.i
    i32 10, label %bb6.i.i.i
    i32 9, label %bb6.i.i.i
  ]

bb3.i.i.i.i.i.i.i:                                ; preds = %bb4.i.i.i.i
  %_5.i.i.i.i.i.i.i = icmp ugt i32 %.sroa.0.0.i.i6.i.i.i.i.i, 127
  br i1 %_5.i.i.i.i.i.i.i, label %bb7.i.i.i.i.i.i.i, label %"_ZN106_$LT$core..str..pattern..CharPredicateSearcher$LT$F$GT$$u20$as$u20$core..str..pattern..ReverseSearcher$GT$16next_reject_back17hcc41d4fe9c9b6834E.exit.i"

bb7.i.i.i.i.i.i.i:                                ; preds = %bb3.i.i.i.i.i.i.i
; call core::unicode::unicode_data::white_space::lookup
  %_7.i.i.i.i.i.i.i = tail call zeroext addrspace(1) i1 @_ZN4core7unicode12unicode_data11white_space6lookup17hb25ac8ada5802067E(i32 %.sroa.0.0.i.i6.i.i.i.i.i), !noalias !1630
  br i1 %_7.i.i.i.i.i.i.i, label %bb6.i.i.i, label %"_ZN106_$LT$core..str..pattern..CharPredicateSearcher$LT$F$GT$$u20$as$u20$core..str..pattern..ReverseSearcher$GT$16next_reject_back17hcc41d4fe9c9b6834E.exit.i"

bb6.i.i.i:                                        ; preds = %bb7.i.i.i.i.i.i.i, %bb4.i.i.i.i, %bb4.i.i.i.i, %bb4.i.i.i.i, %bb4.i.i.i.i, %bb4.i.i.i.i, %bb4.i.i.i.i
  %start15.i.i.i.i.i = phi i16 [ %start15.i.i27.i.i.i, %bb4.i.i.i.i ], [ %start15.i.i27.i.i.i, %bb4.i.i.i.i ], [ %start15.i.i27.i.i.i, %bb4.i.i.i.i ], [ %start15.i.i27.i.i.i, %bb4.i.i.i.i ], [ %start15.i.i27.i.i.i, %bb4.i.i.i.i ], [ %start15.i.i27.i.i.i, %bb4.i.i.i.i ], [ %matcher.sroa.8.55365.i, %bb7.i.i.i.i.i.i.i ]
  %42 = sub i16 %matcher.sroa.17.3.i, %start15.i.i.i.i.i
  %_12.i.i.i.i.cast.i.i.i.i = inttoptr i16 %matcher.sroa.17.3.i to i8*
  %43 = inttoptr i16 %start15.i.i.i.i.i to i8*
  %_13.i.i.i.i.i.i.i.i = icmp eq i8* %43, %_12.i.i.i.i.cast.i.i.i.i
  br i1 %_13.i.i.i.i.i.i.i.i, label %"_ZN4core3str21_$LT$impl$u20$str$GT$12trim_matches17hf7f196b95c189545E.exit", label %bb3.i.i.i6.i.i.i.i

"_ZN106_$LT$core..str..pattern..CharPredicateSearcher$LT$F$GT$$u20$as$u20$core..str..pattern..ReverseSearcher$GT$16next_reject_back17hcc41d4fe9c9b6834E.exit.i": ; preds = %bb7.i.i.i.i.i.i.i, %bb3.i.i.i.i.i.i.i
  %_19.i.i.i.i = add i16 %25, %matcher.sroa.4.25563.i
  br label %"_ZN4core3str21_$LT$impl$u20$str$GT$12trim_matches17hf7f196b95c189545E.exit"

"_ZN4core3str21_$LT$impl$u20$str$GT$12trim_matches17hf7f196b95c189545E.exit": ; preds = %"_ZN90_$LT$core..str..Chars$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back17h66859d9fe72ef88aE.exit.i.i.i.i.i", %bb6.i.i.i, %"_ZN99_$LT$core..str..pattern..CharPredicateSearcher$LT$F$GT$$u20$as$u20$core..str..pattern..Searcher$GT$11next_reject17hd09809038dfa30aaE.exit.i", %"_ZN106_$LT$core..str..pattern..CharPredicateSearcher$LT$F$GT$$u20$as$u20$core..str..pattern..ReverseSearcher$GT$16next_reject_back17hcc41d4fe9c9b6834E.exit.i"
  %44 = phi i16 [ %_19.i.i.i.i, %"_ZN106_$LT$core..str..pattern..CharPredicateSearcher$LT$F$GT$$u20$as$u20$core..str..pattern..ReverseSearcher$GT$16next_reject_back17hcc41d4fe9c9b6834E.exit.i" ], [ %20, %"_ZN99_$LT$core..str..pattern..CharPredicateSearcher$LT$F$GT$$u20$as$u20$core..str..pattern..Searcher$GT$11next_reject17hd09809038dfa30aaE.exit.i" ], [ %20, %bb6.i.i.i ], [ %20, %"_ZN90_$LT$core..str..Chars$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back17h66859d9fe72ef88aE.exit.i.i.i.i.i" ]
  %45 = getelementptr inbounds [0 x i8], [0 x i8]* %self.0, i16 0, i16 %21
  %len.i.i.i = sub i16 %44, %21
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i = bitcast i8* %45 to [0 x i8]*
  %46 = insertvalue { [0 x i8]*, i16 } undef, [0 x i8]* %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i, 0
  %47 = insertvalue { [0 x i8]*, i16 } %46, i16 %len.i.i.i, 1
  ret { [0 x i8]*, i16 } %47
}

; core::str::<impl str>::trim_start
; Function Attrs: uwtable
define { [0 x i8]*, i16 } @"_ZN4core3str21_$LT$impl$u20$str$GT$10trim_start17h369878d00b5623b7E"([0 x i8]* noalias nonnull readonly align 1 %self.0, i16 %self.1) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = getelementptr inbounds [0 x i8], [0 x i8]* %self.0, i16 0, i16 %self.1
  %_13.i.i.i.i.i22.i.i.i = icmp eq i16 %self.1, 0
  br i1 %_13.i.i.i.i.i22.i.i.i, label %"_ZN4core3str21_$LT$impl$u20$str$GT$18trim_start_matches17h759db6608d093d39E.exit", label %bb3.i.i.i6.i.i.i.preheader.i

bb3.i.i.i6.i.i.i.preheader.i:                     ; preds = %start
  %1 = ptrtoint [0 x i8]* %self.0 to i16
  %2 = getelementptr [0 x i8], [0 x i8]* %self.0, i16 0, i16 0
  br label %bb3.i.i.i6.i.i.i.i

bb3.i.i.i6.i.i.i.i:                               ; preds = %bb6.i.i.i, %bb3.i.i.i6.i.i.i.preheader.i
  %matcher.sroa.4.0.i = phi i16 [ %18, %bb6.i.i.i ], [ 0, %bb3.i.i.i6.i.i.i.preheader.i ]
  %_16.i.i.i.cast.i.i25.i.i.i = phi i8* [ %_16.i.i.i.cast.i.i.i.i.i, %bb6.i.i.i ], [ %2, %bb3.i.i.i6.i.i.i.preheader.i ]
  %start15.i.i17.pn.i.i.i = phi i16 [ %matcher.sroa.7.3.i, %bb6.i.i.i ], [ %1, %bb3.i.i.i6.i.i.i.preheader.i ]
  %3 = getelementptr inbounds i8, i8* %_16.i.i.i.cast.i.i25.i.i.i, i16 1
  %4 = ptrtoint i8* %3 to i16
  %x.i.i.i.i.i.i.i = load i8, i8* %_16.i.i.i.cast.i.i25.i.i.i, align 1, !noalias !1646
  %_12.i.i.i.i.i.i.i = icmp sgt i8 %x.i.i.i.i.i.i.i, -1
  br i1 %_12.i.i.i.i.i.i.i, label %bb11.i.i.i.i.i.i.i, label %bb10.i.i.i.i.i.i.i

bb10.i.i.i.i.i.i.i:                               ; preds = %bb3.i.i.i6.i.i.i.i
  %_3.i37.i.i.i.i.i.i.i = and i8 %x.i.i.i.i.i.i.i, 31
  %5 = zext i8 %_3.i37.i.i.i.i.i.i.i to i32
  %_13.i33.i.i.i.i.i.i.i = icmp eq i8* %3, %0
  br i1 %_13.i33.i.i.i.i.i.i.i, label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i, label %bb3.i28.i.i.i.i.i.i.i

bb3.i28.i.i.i.i.i.i.i:                            ; preds = %bb10.i.i.i.i.i.i.i
  %6 = getelementptr inbounds i8, i8* %_16.i.i.i.cast.i.i25.i.i.i, i16 2
  %7 = ptrtoint i8* %6 to i16
  %byte.i27.i.i.i.i.i.i.i = load i8, i8* %3, align 1, !alias.scope !1653, !noalias !1646
  %phitmp.i.i.i.i.i.i.i = and i8 %byte.i27.i.i.i.i.i.i.i, 63
  %phitmp42.i.i.i.i.i.i.i = zext i8 %phitmp.i.i.i.i.i.i.i to i32
  br label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i

_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i: ; preds = %bb3.i28.i.i.i.i.i.i.i, %bb10.i.i.i.i.i.i.i
  %matcher.sroa.7.0.i = phi i16 [ %4, %bb10.i.i.i.i.i.i.i ], [ %7, %bb3.i28.i.i.i.i.i.i.i ]
  %_16.i19.i.i.i.i.i.i.i = phi i8* [ %0, %bb10.i.i.i.i.i.i.i ], [ %6, %bb3.i28.i.i.i.i.i.i.i ]
  %.0.i29.i.i.i.i.i.i.i = phi i32 [ 0, %bb10.i.i.i.i.i.i.i ], [ %phitmp42.i.i.i.i.i.i.i, %bb3.i28.i.i.i.i.i.i.i ]
  %_3.i24.i.i.i.i.i.i.i = shl nuw nsw i32 %5, 6
  %8 = or i32 %.0.i29.i.i.i.i.i.i.i, %_3.i24.i.i.i.i.i.i.i
  %_24.i.i.i.i.i.i.i = icmp ugt i8 %x.i.i.i.i.i.i.i, -33
  br i1 %_24.i.i.i.i.i.i.i, label %bb17.i.i.i.i.i.i.i, label %bb4.i.i.i.i

bb11.i.i.i.i.i.i.i:                               ; preds = %bb3.i.i.i6.i.i.i.i
  %_14.i.i.i.i.i.i.i = zext i8 %x.i.i.i.i.i.i.i to i32
  br label %bb4.i.i.i.i

bb17.i.i.i.i.i.i.i:                               ; preds = %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i
  %_13.i20.i.i.i.i.i.i.i = icmp eq i8* %_16.i19.i.i.i.i.i.i.i, %0
  br i1 %_13.i20.i.i.i.i.i.i.i, label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i, label %bb3.i15.i.i.i.i.i.i.i

bb3.i15.i.i.i.i.i.i.i:                            ; preds = %bb17.i.i.i.i.i.i.i
  %9 = getelementptr inbounds i8, i8* %_16.i19.i.i.i.i.i.i.i, i16 1
  %10 = ptrtoint i8* %9 to i16
  %byte.i14.i.i.i.i.i.i.i = load i8, i8* %_16.i19.i.i.i.i.i.i.i, align 1, !alias.scope !1656, !noalias !1646
  %phitmp43.i.i.i.i.i.i.i = and i8 %byte.i14.i.i.i.i.i.i.i, 63
  %phitmp44.i.i.i.i.i.i.i = zext i8 %phitmp43.i.i.i.i.i.i.i to i32
  br label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i

_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i: ; preds = %bb3.i15.i.i.i.i.i.i.i, %bb17.i.i.i.i.i.i.i
  %matcher.sroa.7.1.i = phi i16 [ %matcher.sroa.7.0.i, %bb17.i.i.i.i.i.i.i ], [ %10, %bb3.i15.i.i.i.i.i.i.i ]
  %_16.i6.i.i.i.i.i.i.i = phi i8* [ %0, %bb17.i.i.i.i.i.i.i ], [ %9, %bb3.i15.i.i.i.i.i.i.i ]
  %.0.i16.i.i.i.i.i.i.i = phi i32 [ 0, %bb17.i.i.i.i.i.i.i ], [ %phitmp44.i.i.i.i.i.i.i, %bb3.i15.i.i.i.i.i.i.i ]
  %_3.i11.i.i.i.i.i.i.i = shl nuw nsw i32 %.0.i29.i.i.i.i.i.i.i, 6
  %11 = or i32 %.0.i16.i.i.i.i.i.i.i, %_3.i11.i.i.i.i.i.i.i
  %_34.i.i.i.i.i.i.i = shl nuw nsw i32 %5, 12
  %12 = or i32 %11, %_34.i.i.i.i.i.i.i
  %_37.i.i.i.i.i.i.i = icmp ugt i8 %x.i.i.i.i.i.i.i, -17
  br i1 %_37.i.i.i.i.i.i.i, label %bb22.i.i.i.i.i.i.i, label %bb4.i.i.i.i

bb22.i.i.i.i.i.i.i:                               ; preds = %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i
  %_13.i7.i.i.i.i.i.i.i = icmp eq i8* %_16.i6.i.i.i.i.i.i.i, %0
  br i1 %_13.i7.i.i.i.i.i.i.i, label %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i.i.i.i.i", label %bb3.i.i.i.i.i.i.i.i

bb3.i.i.i.i.i.i.i.i:                              ; preds = %bb22.i.i.i.i.i.i.i
  %13 = getelementptr inbounds i8, i8* %_16.i6.i.i.i.i.i.i.i, i16 1
  %14 = ptrtoint i8* %13 to i16
  %byte.i.i.i.i.i.i.i.i = load i8, i8* %_16.i6.i.i.i.i.i.i.i, align 1, !alias.scope !1659, !noalias !1646
  %phitmp45.i.i.i.i.i.i.i = and i8 %byte.i.i.i.i.i.i.i.i, 63
  %phitmp46.i.i.i.i.i.i.i = zext i8 %phitmp45.i.i.i.i.i.i.i to i32
  br label %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i.i.i.i.i"

"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i.i.i.i.i": ; preds = %bb3.i.i.i.i.i.i.i.i, %bb22.i.i.i.i.i.i.i
  %matcher.sroa.7.2.i = phi i16 [ %matcher.sroa.7.1.i, %bb22.i.i.i.i.i.i.i ], [ %14, %bb3.i.i.i.i.i.i.i.i ]
  %.0.i4.i.i.i.i.i.i.i = phi i32 [ 0, %bb22.i.i.i.i.i.i.i ], [ %phitmp46.i.i.i.i.i.i.i, %bb3.i.i.i.i.i.i.i.i ]
  %_43.i.i.i.i.i.i.i = shl nuw nsw i32 %5, 18
  %_42.i.i.i.i.i.i.i = and i32 %_43.i.i.i.i.i.i.i, 1835008
  %_3.i.i.i.i.i.i.i.i = shl nuw nsw i32 %11, 6
  %15 = or i32 %_3.i.i.i.i.i.i.i.i, %_42.i.i.i.i.i.i.i
  %16 = or i32 %15, %.0.i4.i.i.i.i.i.i.i
  %17 = icmp eq i32 %16, 1114112
  br i1 %17, label %"_ZN4core3str21_$LT$impl$u20$str$GT$18trim_start_matches17h759db6608d093d39E.exit", label %bb4.i.i.i.i

bb4.i.i.i.i:                                      ; preds = %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i.i.i.i.i", %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i, %bb11.i.i.i.i.i.i.i, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i
  %matcher.sroa.7.3.i = phi i16 [ %4, %bb11.i.i.i.i.i.i.i ], [ %matcher.sroa.7.2.i, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i.i.i.i.i" ], [ %matcher.sroa.7.1.i, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i ], [ %matcher.sroa.7.0.i, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i ]
  %.sroa.0.0.i.i8.i.i.i.i.i = phi i32 [ %_14.i.i.i.i.i.i.i, %bb11.i.i.i.i.i.i.i ], [ %16, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i.i.i.i.i" ], [ %12, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i ], [ %8, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i ]
  %_11.i.i.i.i.i = sub i16 %matcher.sroa.4.0.i, %start15.i.i17.pn.i.i.i
  %18 = add i16 %_11.i.i.i.i.i, %matcher.sroa.7.3.i
  switch i32 %.sroa.0.0.i.i8.i.i.i.i.i, label %bb3.i.i.i.i.i.i.i [
    i32 32, label %bb6.i.i.i
    i32 13, label %bb6.i.i.i
    i32 12, label %bb6.i.i.i
    i32 11, label %bb6.i.i.i
    i32 10, label %bb6.i.i.i
    i32 9, label %bb6.i.i.i
  ]

bb3.i.i.i.i.i.i.i:                                ; preds = %bb4.i.i.i.i
  %_5.i.i.i.i.i.i.i = icmp ugt i32 %.sroa.0.0.i.i8.i.i.i.i.i, 127
  br i1 %_5.i.i.i.i.i.i.i, label %bb7.i.i.i.i.i.i.i, label %"_ZN4core3str21_$LT$impl$u20$str$GT$18trim_start_matches17h759db6608d093d39E.exit"

bb7.i.i.i.i.i.i.i:                                ; preds = %bb3.i.i.i.i.i.i.i
; call core::unicode::unicode_data::white_space::lookup
  %_7.i.i.i.i.i.i9.i = tail call zeroext addrspace(1) i1 @_ZN4core7unicode12unicode_data11white_space6lookup17hb25ac8ada5802067E(i32 %.sroa.0.0.i.i8.i.i.i.i.i)
  br i1 %_7.i.i.i.i.i.i9.i, label %bb6.i.i.i, label %"_ZN4core3str21_$LT$impl$u20$str$GT$18trim_start_matches17h759db6608d093d39E.exit"

bb6.i.i.i:                                        ; preds = %bb7.i.i.i.i.i.i.i, %bb4.i.i.i.i, %bb4.i.i.i.i, %bb4.i.i.i.i, %bb4.i.i.i.i, %bb4.i.i.i.i, %bb4.i.i.i.i
  %_16.i.i.i.cast.i.i.i.i.i = inttoptr i16 %matcher.sroa.7.3.i to i8*
  %_13.i.i.i.i.i.i.i.i = icmp eq i8* %0, %_16.i.i.i.cast.i.i.i.i.i
  br i1 %_13.i.i.i.i.i.i.i.i, label %"_ZN4core3str21_$LT$impl$u20$str$GT$18trim_start_matches17h759db6608d093d39E.exit", label %bb3.i.i.i6.i.i.i.i

"_ZN4core3str21_$LT$impl$u20$str$GT$18trim_start_matches17h759db6608d093d39E.exit": ; preds = %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i.i.i.i.i", %bb3.i.i.i.i.i.i.i, %bb7.i.i.i.i.i.i.i, %bb6.i.i.i, %start
  %19 = phi i16 [ 0, %start ], [ %matcher.sroa.4.0.i, %bb7.i.i.i.i.i.i.i ], [ %matcher.sroa.4.0.i, %bb3.i.i.i.i.i.i.i ], [ %self.1, %bb6.i.i.i ], [ %self.1, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit.i.i.i.i.i" ]
  %20 = getelementptr inbounds [0 x i8], [0 x i8]* %self.0, i16 0, i16 %19
  %len.i.i.i = sub i16 %self.1, %19
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i = bitcast i8* %20 to [0 x i8]*
  %21 = insertvalue { [0 x i8]*, i16 } undef, [0 x i8]* %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i, 0
  %22 = insertvalue { [0 x i8]*, i16 } %21, i16 %len.i.i.i, 1
  ret { [0 x i8]*, i16 } %22
}

; core::str::<impl str>::trim_end
; Function Attrs: uwtable
define { [0 x i8]*, i16 } @"_ZN4core3str21_$LT$impl$u20$str$GT$8trim_end17hbf833d5610ed0388E"([0 x i8]* noalias nonnull readonly align 1 %self.0, i16 %self.1) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = ptrtoint [0 x i8]* %self.0 to i16
  %_13.i.i.i.i.i21.i.i.i = icmp eq i16 %self.1, 0
  br i1 %_13.i.i.i.i.i21.i.i.i, label %"_ZN4core3str21_$LT$impl$u20$str$GT$16trim_end_matches17h2d40675882610316E.exit", label %bb3.i.i.i6.i.lr.ph.i.i.i

bb3.i.i.i6.i.lr.ph.i.i.i:                         ; preds = %start
  %1 = getelementptr [0 x i8], [0 x i8]* %self.0, i16 0, i16 0
  %2 = getelementptr inbounds [0 x i8], [0 x i8]* %self.0, i16 0, i16 %self.1
  br label %bb3.i.i.i6.i.i.i.i

bb3.i.i.i6.i.i.i.i:                               ; preds = %bb6.i.i.i, %bb3.i.i.i6.i.lr.ph.i.i.i
  %_12.i.i.i.i.cast.i23.i.i.i = phi i8* [ %2, %bb3.i.i.i6.i.lr.ph.i.i.i ], [ %_12.i.i.i.i.cast.i.i.i.i, %bb6.i.i.i ]
  %3 = phi i16 [ %self.1, %bb3.i.i.i6.i.lr.ph.i.i.i ], [ %20, %bb6.i.i.i ]
  %4 = getelementptr inbounds i8, i8* %_12.i.i.i.i.cast.i23.i.i.i, i16 -1
  %5 = ptrtoint i8* %4 to i16
  %_15.i.i.i.i.i.i.i = load i8, i8* %4, align 1, !noalias !1662
  %_14.i.i.i.i.i.i.i = icmp sgt i8 %_15.i.i.i.i.i.i.i, -1
  br i1 %_14.i.i.i.i.i.i.i, label %"_ZN90_$LT$core..str..Chars$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back17h66859d9fe72ef88aE.exit.thread4.i.i.i.i.i", label %bb11.i.i.i.i.i.i.i

"_ZN90_$LT$core..str..Chars$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back17h66859d9fe72ef88aE.exit.thread4.i.i.i.i.i": ; preds = %bb3.i.i.i6.i.i.i.i
  %_16.i.i.i.i.i.i.i = zext i8 %_15.i.i.i.i.i.i.i to i32
  br label %bb4.i.i.i.i

bb11.i.i.i.i.i.i.i:                               ; preds = %bb3.i.i.i6.i.i.i.i
  %_13.i40.i.i.i.i.i.i.i = icmp eq i8* %4, %1
  br i1 %_13.i40.i.i.i.i.i.i.i, label %"_ZN90_$LT$core..str..Chars$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back17h66859d9fe72ef88aE.exit.i.i.i.i.i", label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit37.i.i.i.i.i.i.i

_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit37.i.i.i.i.i.i.i: ; preds = %bb11.i.i.i.i.i.i.i
  %6 = getelementptr inbounds i8, i8* %_12.i.i.i.i.cast.i23.i.i.i, i16 -2
  %7 = ptrtoint i8* %6 to i16
  %byte.i34.i.i.i.i.i.i.i = load i8, i8* %6, align 1, !alias.scope !1669, !noalias !1662
  %_3.i33.i.i.i.i.i.i.i = and i8 %byte.i34.i.i.i.i.i.i.i, 31
  %8 = zext i8 %_3.i33.i.i.i.i.i.i.i to i32
  %_2.i32.i.i.i.i.i.i.i = and i8 %byte.i34.i.i.i.i.i.i.i, -64
  %9 = icmp eq i8 %_2.i32.i.i.i.i.i.i.i, -128
  br i1 %9, label %bb17.i.i.i.i.i.i.i, label %"_ZN90_$LT$core..str..Chars$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back17h66859d9fe72ef88aE.exit.i.i.i.i.i"

bb17.i.i.i.i.i.i.i:                               ; preds = %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit37.i.i.i.i.i.i.i
  %_13.i28.i.i.i.i.i.i.i = icmp eq i8* %6, %1
  br i1 %_13.i28.i.i.i.i.i.i.i, label %bb28.i.i.i.i.i.i.i, label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit25.i.i.i.i.i.i.i

_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit25.i.i.i.i.i.i.i: ; preds = %bb17.i.i.i.i.i.i.i
  %10 = getelementptr inbounds i8, i8* %_12.i.i.i.i.cast.i23.i.i.i, i16 -3
  %11 = ptrtoint i8* %10 to i16
  %byte.i22.i.i.i.i.i.i.i = load i8, i8* %10, align 1, !alias.scope !1672, !noalias !1662
  %_3.i21.i.i.i.i.i.i.i = and i8 %byte.i22.i.i.i.i.i.i.i, 15
  %12 = zext i8 %_3.i21.i.i.i.i.i.i.i to i32
  %_2.i.i.i.i.i.i.i.i = and i8 %byte.i22.i.i.i.i.i.i.i, -64
  %13 = icmp eq i8 %_2.i.i.i.i.i.i.i.i, -128
  br i1 %13, label %bb23.i.i.i.i.i.i.i, label %bb28.i.i.i.i.i.i.i

bb23.i.i.i.i.i.i.i:                               ; preds = %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit25.i.i.i.i.i.i.i
  %_13.i17.i.i.i.i.i.i.i = icmp eq i8* %10, %1
  br i1 %_13.i17.i.i.i.i.i.i.i, label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit.i.i.i.i.i.i.i, label %bb3.i.i.i.i.i.i.i.i

bb3.i.i.i.i.i.i.i.i:                              ; preds = %bb23.i.i.i.i.i.i.i
  %14 = getelementptr inbounds i8, i8* %_12.i.i.i.i.cast.i23.i.i.i, i16 -4
  %15 = ptrtoint i8* %14 to i16
  %byte.i.i.i.i.i.i.i.i = load i8, i8* %14, align 1, !alias.scope !1675, !noalias !1662
  %phitmp.i.i.i.i.i.i.i = and i8 %byte.i.i.i.i.i.i.i.i, 7
  %phitmp54.i.i.i.i.i.i.i = zext i8 %phitmp.i.i.i.i.i.i.i to i32
  %phitmp55.i.i.i.i.i.i.i = shl nuw nsw i32 %phitmp54.i.i.i.i.i.i.i, 6
  br label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit.i.i.i.i.i.i.i

_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit.i.i.i.i.i.i.i: ; preds = %bb3.i.i.i.i.i.i.i.i, %bb23.i.i.i.i.i.i.i
  %matcher.sroa.9.0.i = phi i16 [ %11, %bb23.i.i.i.i.i.i.i ], [ %15, %bb3.i.i.i.i.i.i.i.i ]
  %.0.i14.i.i.i.i.i.i.i = phi i32 [ 0, %bb23.i.i.i.i.i.i.i ], [ %phitmp55.i.i.i.i.i.i.i, %bb3.i.i.i.i.i.i.i.i ]
  %_6.i11.i.i.i.i.i.i.i = and i8 %byte.i22.i.i.i.i.i.i.i, 63
  %_5.i12.i.i.i.i.i.i.i = zext i8 %_6.i11.i.i.i.i.i.i.i to i32
  %16 = or i32 %.0.i14.i.i.i.i.i.i.i, %_5.i12.i.i.i.i.i.i.i
  br label %bb28.i.i.i.i.i.i.i

bb28.i.i.i.i.i.i.i:                               ; preds = %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit.i.i.i.i.i.i.i, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit25.i.i.i.i.i.i.i, %bb17.i.i.i.i.i.i.i
  %matcher.sroa.9.1.i = phi i16 [ %7, %bb17.i.i.i.i.i.i.i ], [ %matcher.sroa.9.0.i, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit.i.i.i.i.i.i.i ], [ %11, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit25.i.i.i.i.i.i.i ]
  %ch.0.i.i.i.i.i.i.i = phi i32 [ 0, %bb17.i.i.i.i.i.i.i ], [ %16, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit.i.i.i.i.i.i.i ], [ %12, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit25.i.i.i.i.i.i.i ]
  %_3.i7.i.i.i.i.i.i.i = shl nsw i32 %ch.0.i.i.i.i.i.i.i, 6
  %_6.i8.i.i.i.i.i.i.i = and i8 %byte.i34.i.i.i.i.i.i.i, 63
  %_5.i9.i.i.i.i.i.i.i = zext i8 %_6.i8.i.i.i.i.i.i.i to i32
  %17 = or i32 %_3.i7.i.i.i.i.i.i.i, %_5.i9.i.i.i.i.i.i.i
  br label %"_ZN90_$LT$core..str..Chars$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back17h66859d9fe72ef88aE.exit.i.i.i.i.i"

"_ZN90_$LT$core..str..Chars$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back17h66859d9fe72ef88aE.exit.i.i.i.i.i": ; preds = %bb28.i.i.i.i.i.i.i, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit37.i.i.i.i.i.i.i, %bb11.i.i.i.i.i.i.i
  %matcher.sroa.9.2.i = phi i16 [ %5, %bb11.i.i.i.i.i.i.i ], [ %matcher.sroa.9.1.i, %bb28.i.i.i.i.i.i.i ], [ %7, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit37.i.i.i.i.i.i.i ]
  %ch.1.i.i.i.i.i.i.i = phi i32 [ 0, %bb11.i.i.i.i.i.i.i ], [ %17, %bb28.i.i.i.i.i.i.i ], [ %8, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit37.i.i.i.i.i.i.i ]
  %_3.i.i.i.i.i.i.i.i = shl i32 %ch.1.i.i.i.i.i.i.i, 6
  %_6.i.i.i.i.i.i.i.i = and i8 %_15.i.i.i.i.i.i.i, 63
  %_5.i.i.i.i.i.i.i.i = zext i8 %_6.i.i.i.i.i.i.i.i to i32
  %18 = or i32 %_3.i.i.i.i.i.i.i.i, %_5.i.i.i.i.i.i.i.i
  %19 = icmp eq i32 %18, 1114112
  br i1 %19, label %"_ZN4core3str21_$LT$impl$u20$str$GT$16trim_end_matches17h2d40675882610316E.exit", label %bb4.i.i.i.i

bb4.i.i.i.i:                                      ; preds = %"_ZN90_$LT$core..str..Chars$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back17h66859d9fe72ef88aE.exit.i.i.i.i.i", %"_ZN90_$LT$core..str..Chars$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back17h66859d9fe72ef88aE.exit.thread4.i.i.i.i.i"
  %matcher.sroa.9.3.i = phi i16 [ %5, %"_ZN90_$LT$core..str..Chars$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back17h66859d9fe72ef88aE.exit.thread4.i.i.i.i.i" ], [ %matcher.sroa.9.2.i, %"_ZN90_$LT$core..str..Chars$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back17h66859d9fe72ef88aE.exit.i.i.i.i.i" ]
  %.sroa.0.0.i.i6.i.i.i.i.i = phi i32 [ %_16.i.i.i.i.i.i.i, %"_ZN90_$LT$core..str..Chars$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back17h66859d9fe72ef88aE.exit.thread4.i.i.i.i.i" ], [ %18, %"_ZN90_$LT$core..str..Chars$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back17h66859d9fe72ef88aE.exit.i.i.i.i.i" ]
  switch i32 %.sroa.0.0.i.i6.i.i.i.i.i, label %bb3.i.i.i.i.i.i.i [
    i32 32, label %bb6.i.i.i
    i32 13, label %bb6.i.i.i
    i32 12, label %bb6.i.i.i
    i32 11, label %bb6.i.i.i
    i32 10, label %bb6.i.i.i
    i32 9, label %bb6.i.i.i
  ]

bb3.i.i.i.i.i.i.i:                                ; preds = %bb4.i.i.i.i
  %_5.i.i.i.i.i.i.i = icmp ugt i32 %.sroa.0.0.i.i6.i.i.i.i.i, 127
  br i1 %_5.i.i.i.i.i.i.i, label %bb7.i.i.i.i.i.i.i, label %"_ZN4core3str21_$LT$impl$u20$str$GT$16trim_end_matches17h2d40675882610316E.exit"

bb7.i.i.i.i.i.i.i:                                ; preds = %bb3.i.i.i.i.i.i.i
; call core::unicode::unicode_data::white_space::lookup
  %_7.i.i.i.i.i.i.i = tail call zeroext addrspace(1) i1 @_ZN4core7unicode12unicode_data11white_space6lookup17hb25ac8ada5802067E(i32 %.sroa.0.0.i.i6.i.i.i.i.i), !noalias !1662
  br i1 %_7.i.i.i.i.i.i.i, label %bb6.i.i.i, label %"_ZN4core3str21_$LT$impl$u20$str$GT$16trim_end_matches17h2d40675882610316E.exit"

bb6.i.i.i:                                        ; preds = %bb7.i.i.i.i.i.i.i, %bb4.i.i.i.i, %bb4.i.i.i.i, %bb4.i.i.i.i, %bb4.i.i.i.i, %bb4.i.i.i.i, %bb4.i.i.i.i
  %20 = sub i16 %matcher.sroa.9.3.i, %0
  %_12.i.i.i.i.cast.i.i.i.i = inttoptr i16 %matcher.sroa.9.3.i to i8*
  %_13.i.i.i.i.i.i.i.i = icmp eq i8* %1, %_12.i.i.i.i.cast.i.i.i.i
  br i1 %_13.i.i.i.i.i.i.i.i, label %"_ZN4core3str21_$LT$impl$u20$str$GT$16trim_end_matches17h2d40675882610316E.exit", label %bb3.i.i.i6.i.i.i.i

"_ZN4core3str21_$LT$impl$u20$str$GT$16trim_end_matches17h2d40675882610316E.exit": ; preds = %"_ZN90_$LT$core..str..Chars$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back17h66859d9fe72ef88aE.exit.i.i.i.i.i", %bb3.i.i.i.i.i.i.i, %bb7.i.i.i.i.i.i.i, %bb6.i.i.i, %start
  %21 = phi i16 [ 0, %start ], [ 0, %bb6.i.i.i ], [ 0, %"_ZN90_$LT$core..str..Chars$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back17h66859d9fe72ef88aE.exit.i.i.i.i.i" ], [ %3, %bb3.i.i.i.i.i.i.i ], [ %3, %bb7.i.i.i.i.i.i.i ]
  %22 = insertvalue { [0 x i8]*, i16 } undef, [0 x i8]* %self.0, 0
  %23 = insertvalue { [0 x i8]*, i16 } %22, i16 %21, 1
  ret { [0 x i8]*, i16 } %23
}

; core::str::<impl str>::trim_left
; Function Attrs: uwtable
define { [0 x i8]*, i16 } @"_ZN4core3str21_$LT$impl$u20$str$GT$9trim_left17he2a3eddfd7efd61bE"([0 x i8]* noalias nonnull readonly align 1 %self.0, i16 %self.1) unnamed_addr addrspace(1) #2 {
start:
; call core::str::<impl str>::trim_start
  %0 = tail call addrspace(1) { [0 x i8]*, i16 } @"_ZN4core3str21_$LT$impl$u20$str$GT$10trim_start17h369878d00b5623b7E"([0 x i8]* noalias nonnull readonly align 1 %self.0, i16 %self.1)
  ret { [0 x i8]*, i16 } %0
}

; core::str::<impl str>::trim_right
; Function Attrs: uwtable
define { [0 x i8]*, i16 } @"_ZN4core3str21_$LT$impl$u20$str$GT$10trim_right17h1f3ccdd1be0c4125E"([0 x i8]* noalias nonnull readonly align 1 %self.0, i16 %self.1) unnamed_addr addrspace(1) #2 {
start:
; call core::str::<impl str>::trim_end
  %0 = tail call addrspace(1) { [0 x i8]*, i16 } @"_ZN4core3str21_$LT$impl$u20$str$GT$8trim_end17hbf833d5610ed0388E"([0 x i8]* noalias nonnull readonly align 1 %self.0, i16 %self.1)
  ret { [0 x i8]*, i16 } %0
}

; core::str::<impl str>::make_ascii_uppercase
; Function Attrs: nofree norecurse nounwind uwtable
define void @"_ZN4core3str21_$LT$impl$u20$str$GT$20make_ascii_uppercase17h589119b7ff0f05beE"([0 x i8]* nonnull align 1 %self.0, i16 %self.1) unnamed_addr addrspace(1) #8 {
start:
  %0 = getelementptr inbounds [0 x i8], [0 x i8]* %self.0, i16 0, i16 %self.1
  %_13.i7.i = icmp eq i16 %self.1, 0
  br i1 %_13.i7.i, label %"_ZN4core5slice30_$LT$impl$u20$$u5b$u8$u5d$$GT$20make_ascii_uppercase17hc3e2d864b0721734E.exit", label %bb6.preheader.i

bb6.preheader.i:                                  ; preds = %start
  %1 = getelementptr [0 x i8], [0 x i8]* %self.0, i16 0, i16 0
  br label %bb6.i

bb6.i:                                            ; preds = %bb6.i, %bb6.preheader.i
  %iter.sroa.0.08.i = phi i8* [ %2, %bb6.i ], [ %1, %bb6.preheader.i ]
  %2 = getelementptr inbounds i8, i8* %iter.sroa.0.08.i, i16 1
  %self.val.i.i = load i8, i8* %iter.sroa.0.08.i, align 1
  %.off.i.i.i.i = add i8 %self.val.i.i, -97
  %3 = icmp ult i8 %.off.i.i.i.i, 26
  %_3.i.i.i = select i1 %3, i8 -33, i8 -1
  %4 = and i8 %_3.i.i.i, %self.val.i.i
  store i8 %4, i8* %iter.sroa.0.08.i, align 1
  %_13.i.i = icmp eq i8* %2, %0
  br i1 %_13.i.i, label %"_ZN4core5slice30_$LT$impl$u20$$u5b$u8$u5d$$GT$20make_ascii_uppercase17hc3e2d864b0721734E.exit", label %bb6.i

"_ZN4core5slice30_$LT$impl$u20$$u5b$u8$u5d$$GT$20make_ascii_uppercase17hc3e2d864b0721734E.exit": ; preds = %bb6.i, %start
  ret void
}

; core::str::<impl str>::make_ascii_lowercase
; Function Attrs: nofree norecurse nounwind uwtable
define void @"_ZN4core3str21_$LT$impl$u20$str$GT$20make_ascii_lowercase17h16750aa66f75008dE"([0 x i8]* nonnull align 1 %self.0, i16 %self.1) unnamed_addr addrspace(1) #8 {
start:
  %0 = getelementptr inbounds [0 x i8], [0 x i8]* %self.0, i16 0, i16 %self.1
  %_13.i7.i = icmp eq i16 %self.1, 0
  br i1 %_13.i7.i, label %"_ZN4core5slice30_$LT$impl$u20$$u5b$u8$u5d$$GT$20make_ascii_lowercase17h7e68a5fcb10c0652E.exit", label %bb6.preheader.i

bb6.preheader.i:                                  ; preds = %start
  %1 = getelementptr [0 x i8], [0 x i8]* %self.0, i16 0, i16 0
  br label %bb6.i

bb6.i:                                            ; preds = %bb6.i, %bb6.preheader.i
  %iter.sroa.0.08.i = phi i8* [ %2, %bb6.i ], [ %1, %bb6.preheader.i ]
  %2 = getelementptr inbounds i8, i8* %iter.sroa.0.08.i, i16 1
  %self.val.i.i = load i8, i8* %iter.sroa.0.08.i, align 1
  %.off.i.i.i.i = add i8 %self.val.i.i, -65
  %3 = icmp ult i8 %.off.i.i.i.i, 26
  %_3.i.i.i = select i1 %3, i8 32, i8 0
  %4 = or i8 %_3.i.i.i, %self.val.i.i
  store i8 %4, i8* %iter.sroa.0.08.i, align 1
  %_13.i.i = icmp eq i8* %2, %0
  br i1 %_13.i.i, label %"_ZN4core5slice30_$LT$impl$u20$$u5b$u8$u5d$$GT$20make_ascii_lowercase17h7e68a5fcb10c0652E.exit", label %bb6.i

"_ZN4core5slice30_$LT$impl$u20$$u5b$u8$u5d$$GT$20make_ascii_lowercase17h7e68a5fcb10c0652E.exit": ; preds = %bb6.i, %start
  ret void
}

; core::str::<impl str>::escape_debug
; Function Attrs: uwtable
define void @"_ZN4core3str21_$LT$impl$u20$str$GT$12escape_debug17h92b0170a6895affcE"(%"str::EscapeDebug"* noalias nocapture sret dereferenceable(44) %0, [0 x i8]* noalias nonnull readonly align 1 %self.0, i16 %self.1) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_5.sroa.5 = alloca [7 x i8], align 1
  %_5.sroa.6 = alloca [7 x i8], align 1
  %_4.sroa.5 = alloca [7 x i8], align 1
  %_4.sroa.7 = alloca [7 x i8], align 1
  %_4.sroa.8.sroa.6 = alloca [7 x i8], align 1
  %_4.sroa.8.sroa.8 = alloca [7 x i8], align 1
  %1 = getelementptr [0 x i8], [0 x i8]* %self.0, i16 0, i16 0
  %2 = getelementptr inbounds [0 x i8], [0 x i8]* %self.0, i16 0, i16 %self.1
  %_4.sroa.5.0._4.0..sroa_idx31 = getelementptr inbounds [7 x i8], [7 x i8]* %_4.sroa.5, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 7, i8* nonnull %_4.sroa.5.0._4.0..sroa_idx31)
  %_4.sroa.7.0._4.0..sroa_idx28 = getelementptr inbounds [7 x i8], [7 x i8]* %_4.sroa.7, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 7, i8* nonnull %_4.sroa.7.0._4.0..sroa_idx28)
  %_4.sroa.8.sroa.6.0._4.0..sroa_idx56 = getelementptr inbounds [7 x i8], [7 x i8]* %_4.sroa.8.sroa.6, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 7, i8* nonnull %_4.sroa.8.sroa.6.0._4.0..sroa_idx56)
  %_4.sroa.8.sroa.8.0._4.0..sroa_idx53 = getelementptr inbounds [7 x i8], [7 x i8]* %_4.sroa.8.sroa.8, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 7, i8* nonnull %_4.sroa.8.sroa.8.0._4.0..sroa_idx53)
  %_5.sroa.5.0..sroa_idx32 = getelementptr inbounds [7 x i8], [7 x i8]* %_5.sroa.5, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 7, i8* nonnull %_5.sroa.5.0..sroa_idx32)
  %_5.sroa.6.0..sroa_idx29 = getelementptr inbounds [7 x i8], [7 x i8]* %_5.sroa.6, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 7, i8* nonnull %_5.sroa.6.0..sroa_idx29)
  %_13.i.i.i = icmp eq i16 %self.1, 0
  br i1 %_13.i.i.i, label %"_ZN4core6option15Option$LT$T$GT$3map17hbef33498478591e2E.exit", label %bb3.i.i

bb3.i.i:                                          ; preds = %start
  %3 = getelementptr inbounds [0 x i8], [0 x i8]* %self.0, i16 0, i16 1
  %x.i.i = load i8, i8* %1, align 1
  %_12.i.i = icmp sgt i8 %x.i.i, -1
  br i1 %_12.i.i, label %bb11.i.i, label %bb10.i.i

bb10.i.i:                                         ; preds = %bb3.i.i
  %_3.i37.i.i = and i8 %x.i.i, 31
  %4 = zext i8 %_3.i37.i.i to i32
  %_13.i33.i.i = icmp eq i16 %self.1, 1
  br i1 %_13.i33.i.i, label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i, label %bb3.i28.i.i

bb3.i28.i.i:                                      ; preds = %bb10.i.i
  %5 = getelementptr inbounds [0 x i8], [0 x i8]* %self.0, i16 0, i16 2
  %byte.i27.i.i = load i8, i8* %3, align 1, !alias.scope !1678
  %phitmp.i.i = and i8 %byte.i27.i.i, 63
  %phitmp42.i.i = zext i8 %phitmp.i.i to i32
  br label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i

_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i: ; preds = %bb3.i28.i.i, %bb10.i.i
  %chars.sroa.0.0 = phi i8* [ %3, %bb10.i.i ], [ %5, %bb3.i28.i.i ]
  %_16.i19.i.i = phi i8* [ %2, %bb10.i.i ], [ %5, %bb3.i28.i.i ]
  %.0.i29.i.i = phi i32 [ 0, %bb10.i.i ], [ %phitmp42.i.i, %bb3.i28.i.i ]
  %_3.i24.i.i = shl nuw nsw i32 %4, 6
  %6 = or i32 %.0.i29.i.i, %_3.i24.i.i
  %_24.i.i = icmp ugt i8 %x.i.i, -33
  br i1 %_24.i.i, label %bb17.i.i, label %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit"

bb11.i.i:                                         ; preds = %bb3.i.i
  %_14.i.i = zext i8 %x.i.i to i32
  br label %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit"

bb17.i.i:                                         ; preds = %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i
  %_13.i20.i.i = icmp eq i8* %_16.i19.i.i, %2
  br i1 %_13.i20.i.i, label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i, label %bb3.i15.i.i

bb3.i15.i.i:                                      ; preds = %bb17.i.i
  %7 = getelementptr inbounds i8, i8* %_16.i19.i.i, i16 1
  %byte.i14.i.i = load i8, i8* %_16.i19.i.i, align 1, !alias.scope !1681
  %phitmp43.i.i = and i8 %byte.i14.i.i, 63
  %phitmp44.i.i = zext i8 %phitmp43.i.i to i32
  br label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i

_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i: ; preds = %bb3.i15.i.i, %bb17.i.i
  %chars.sroa.0.1 = phi i8* [ %chars.sroa.0.0, %bb17.i.i ], [ %7, %bb3.i15.i.i ]
  %_16.i6.i.i = phi i8* [ %2, %bb17.i.i ], [ %7, %bb3.i15.i.i ]
  %.0.i16.i.i = phi i32 [ 0, %bb17.i.i ], [ %phitmp44.i.i, %bb3.i15.i.i ]
  %_3.i11.i.i = shl nuw nsw i32 %.0.i29.i.i, 6
  %8 = or i32 %.0.i16.i.i, %_3.i11.i.i
  %_34.i.i = shl nuw nsw i32 %4, 12
  %9 = or i32 %8, %_34.i.i
  %_37.i.i = icmp ugt i8 %x.i.i, -17
  br i1 %_37.i.i, label %bb22.i.i, label %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit"

bb22.i.i:                                         ; preds = %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i
  %_13.i7.i.i = icmp eq i8* %_16.i6.i.i, %2
  br i1 %_13.i7.i.i, label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit.i.i, label %bb3.i.i.i1

bb3.i.i.i1:                                       ; preds = %bb22.i.i
  %10 = getelementptr inbounds i8, i8* %_16.i6.i.i, i16 1
  %byte.i.i.i = load i8, i8* %_16.i6.i.i, align 1, !alias.scope !1684
  %phitmp45.i.i = and i8 %byte.i.i.i, 63
  %phitmp46.i.i = zext i8 %phitmp45.i.i to i32
  br label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit.i.i

_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit.i.i: ; preds = %bb3.i.i.i1, %bb22.i.i
  %chars.sroa.0.2 = phi i8* [ %chars.sroa.0.1, %bb22.i.i ], [ %10, %bb3.i.i.i1 ]
  %.0.i4.i.i = phi i32 [ 0, %bb22.i.i ], [ %phitmp46.i.i, %bb3.i.i.i1 ]
  %_43.i.i = shl nuw nsw i32 %4, 18
  %_42.i.i = and i32 %_43.i.i, 1835008
  %_3.i.i.i = shl nuw nsw i32 %8, 6
  %11 = or i32 %_3.i.i.i, %_42.i.i
  %12 = or i32 %11, %.0.i4.i.i
  br label %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit"

"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit": ; preds = %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i, %bb11.i.i, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit.i.i
  %chars.sroa.0.3 = phi i8* [ %3, %bb11.i.i ], [ %chars.sroa.0.2, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit.i.i ], [ %chars.sroa.0.1, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i ], [ %chars.sroa.0.0, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i ]
  %.sroa.0.0.i.i = phi i32 [ %_14.i.i, %bb11.i.i ], [ %12, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit.i.i ], [ %9, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i ], [ %6, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i ]
  switch i32 %.sroa.0.0.i.i, label %bb5.i.i.i [
    i32 1114112, label %"_ZN4core6option15Option$LT$T$GT$3map17hbef33498478591e2E.exit"
    i32 9, label %"_ZN4core3str21_$LT$impl$u20$str$GT$12escape_debug28_$u7b$$u7b$closure$u7d$$u7d$17he276fb313764e8b1E.exit.i"
    i32 13, label %bb2.i.i.i
    i32 10, label %bb3.i.i.i
    i32 92, label %bb4.i.i.i
    i32 39, label %bb4.i.i.i
    i32 34, label %bb4.i.i.i
  ]

bb2.i.i.i:                                        ; preds = %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit"
  br label %"_ZN4core3str21_$LT$impl$u20$str$GT$12escape_debug28_$u7b$$u7b$closure$u7d$$u7d$17he276fb313764e8b1E.exit.i"

bb3.i.i.i:                                        ; preds = %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit"
  br label %"_ZN4core3str21_$LT$impl$u20$str$GT$12escape_debug28_$u7b$$u7b$closure$u7d$$u7d$17he276fb313764e8b1E.exit.i"

bb4.i.i.i:                                        ; preds = %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit", %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit", %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit"
  br label %"_ZN4core3str21_$LT$impl$u20$str$GT$12escape_debug28_$u7b$$u7b$closure$u7d$$u7d$17he276fb313764e8b1E.exit.i"

bb5.i.i.i:                                        ; preds = %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit"
; call core::unicode::unicode_data::grapheme_extend::lookup
  %13 = tail call zeroext addrspace(1) i1 @_ZN4core7unicode12unicode_data15grapheme_extend6lookup17h1efbd4bf685b4a0bE(i32 %.sroa.0.0.i.i), !noalias !1687
  %14 = icmp ult i32 %.sroa.0.0.i.i, 1114112
  br i1 %13, label %bb11.i.i.i, label %bb7.i.i.i

bb7.i.i.i:                                        ; preds = %bb5.i.i.i
  tail call addrspace(1) void @llvm.assume(i1 %14), !noalias !1694
  %lower.i.i.i = trunc i32 %.sroa.0.0.i.i to i16
  %_6.i.i.i = icmp ult i32 %.sroa.0.0.i.i, 65536
  br i1 %_6.i.i.i, label %bb2.i1.i.i, label %bb1.i.i.i

bb1.i.i.i:                                        ; preds = %bb7.i.i.i
  %_15.i.i.i = icmp ult i32 %.sroa.0.0.i.i, 131072
  br i1 %_15.i.i.i, label %_ZN4core7unicode9printable12is_printable17h91d3b28d6b01d70eE.exit.i.i, label %bb4.i2.i.i

bb2.i1.i.i:                                       ; preds = %bb7.i.i.i
; call core::unicode::printable::check
  %15 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core7unicode9printable5check17h2dcb736e2dcd86e6E(i16 %lower.i.i.i, [0 x { i8, i8 }]* noalias nonnull readonly align 1 bitcast (<{ [82 x i8] }>* @alloc748 to [0 x { i8, i8 }]*), i16 41, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [290 x i8] }>* @alloc18889 to [0 x i8]*), i16 290, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [309 x i8] }>* @alloc18890 to [0 x i8]*), i16 309), !noalias !1694
  br i1 %15, label %"_ZN4core3str21_$LT$impl$u20$str$GT$12escape_debug28_$u7b$$u7b$closure$u7d$$u7d$17he276fb313764e8b1E.exit.i", label %bb16.i.i.i

bb4.i2.i.i:                                       ; preds = %bb1.i.i.i
  %x.off.i.i.i = add nsw i32 %.sroa.0.0.i.i, -173790
  %16 = icmp ult i32 %x.off.i.i.i, 34
  %x.off9.i.i.i = add nsw i32 %.sroa.0.0.i.i, -177973
  %17 = icmp ult i32 %x.off9.i.i.i, 11
  %or.cond.i.i.i = or i1 %16, %17
  %18 = and i32 %.sroa.0.0.i.i, 2097150
  %19 = icmp eq i32 %18, 178206
  %or.cond25.i.i.i = or i1 %19, %or.cond.i.i.i
  %x.off11.i.i.i = add nsw i32 %.sroa.0.0.i.i, -183970
  %20 = icmp ult i32 %x.off11.i.i.i, 14
  %or.cond27.i.i.i = or i1 %20, %or.cond25.i.i.i
  %x.off12.i.i.i = add nsw i32 %.sroa.0.0.i.i, -191457
  %21 = icmp ult i32 %x.off12.i.i.i, 3103
  %or.cond29.i.i.i = or i1 %21, %or.cond27.i.i.i
  %x.off13.i.i.i = add nsw i32 %.sroa.0.0.i.i, -195102
  %22 = icmp ult i32 %x.off13.i.i.i, 1506
  %or.cond31.i.i.i = or i1 %22, %or.cond29.i.i.i
  %x.off14.i.i.i = add nsw i32 %.sroa.0.0.i.i, -201547
  %23 = icmp ult i32 %x.off14.i.i.i, 716213
  %or.cond33.i.i.i = or i1 %23, %or.cond31.i.i.i
  %or.cond33.i.not.i.i = xor i1 %or.cond33.i.i.i, true
  %x.off15.i.i.i = add nsw i32 %.sroa.0.0.i.i, -918000
  %24 = icmp ugt i32 %x.off15.i.i.i, 196111
  %or.cond.i.i = and i1 %24, %or.cond33.i.not.i.i
  br i1 %or.cond.i.i, label %"_ZN4core3str21_$LT$impl$u20$str$GT$12escape_debug28_$u7b$$u7b$closure$u7d$$u7d$17he276fb313764e8b1E.exit.i", label %bb16.i.i.i

_ZN4core7unicode9printable12is_printable17h91d3b28d6b01d70eE.exit.i.i: ; preds = %bb1.i.i.i
; call core::unicode::printable::check
  %25 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core7unicode9printable5check17h2dcb736e2dcd86e6E(i16 %lower.i.i.i, [0 x { i8, i8 }]* noalias nonnull readonly align 1 bitcast (<{ [76 x i8] }>* @alloc794 to [0 x { i8, i8 }]*), i16 38, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [175 x i8] }>* @alloc18891 to [0 x i8]*), i16 175, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [419 x i8] }>* @alloc18892 to [0 x i8]*), i16 419), !noalias !1694
  br i1 %25, label %"_ZN4core3str21_$LT$impl$u20$str$GT$12escape_debug28_$u7b$$u7b$closure$u7d$$u7d$17he276fb313764e8b1E.exit.i", label %bb16.i.i.i

bb11.i.i.i:                                       ; preds = %bb5.i.i.i
  tail call addrspace(1) void @llvm.assume(i1 %14) #20, !noalias !1695
  %_6.i.i.i.i = or i32 %.sroa.0.0.i.i, 1
  %26 = tail call addrspace(1) i32 @llvm.ctlz.i32(i32 %_6.i.i.i.i, i1 true) #20, !range !1299
  %msb.i.i.i.i = lshr i32 %26, 2
  %27 = trunc i32 %msb.i.i.i.i to i16
  %_12.i.i.i.i = xor i16 %27, 7
  br label %"_ZN4core3str21_$LT$impl$u20$str$GT$12escape_debug28_$u7b$$u7b$closure$u7d$$u7d$17he276fb313764e8b1E.exit.i"

bb16.i.i.i:                                       ; preds = %_ZN4core7unicode9printable12is_printable17h91d3b28d6b01d70eE.exit.i.i, %bb4.i2.i.i, %bb2.i1.i.i
  %_6.i34.i.i.i = or i32 %.sroa.0.0.i.i, 1
  %28 = tail call addrspace(1) i32 @llvm.ctlz.i32(i32 %_6.i34.i.i.i, i1 true) #20, !range !1299
  %msb.i35.i.i.i = lshr i32 %28, 2
  %29 = trunc i32 %msb.i35.i.i.i to i16
  %_12.i36.i.i.i = xor i16 %29, 7
  br label %"_ZN4core3str21_$LT$impl$u20$str$GT$12escape_debug28_$u7b$$u7b$closure$u7d$$u7d$17he276fb313764e8b1E.exit.i"

"_ZN4core3str21_$LT$impl$u20$str$GT$12escape_debug28_$u7b$$u7b$closure$u7d$$u7d$17he276fb313764e8b1E.exit.i": ; preds = %bb16.i.i.i, %bb11.i.i.i, %_ZN4core7unicode9printable12is_printable17h91d3b28d6b01d70eE.exit.i.i, %bb4.i2.i.i, %bb2.i1.i.i, %bb4.i.i.i, %bb3.i.i.i, %bb2.i.i.i, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit"
  %init_state.sroa.17.sroa.5.0.i.i.i = phi i16 [ %_12.i.i.i.i, %bb11.i.i.i ], [ undef, %_ZN4core7unicode9printable12is_printable17h91d3b28d6b01d70eE.exit.i.i ], [ %_12.i36.i.i.i, %bb16.i.i.i ], [ undef, %bb4.i.i.i ], [ undef, %bb3.i.i.i ], [ undef, %bb2.i.i.i ], [ undef, %bb2.i1.i.i ], [ undef, %bb4.i2.i.i ], [ undef, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit" ]
  %init_state.sroa.10.0.i.i.i = phi i32 [ %.sroa.0.0.i.i, %bb11.i.i.i ], [ %.sroa.0.0.i.i, %_ZN4core7unicode9printable12is_printable17h91d3b28d6b01d70eE.exit.i.i ], [ %.sroa.0.0.i.i, %bb16.i.i.i ], [ %.sroa.0.0.i.i, %bb4.i.i.i ], [ 110, %bb3.i.i.i ], [ 114, %bb2.i.i.i ], [ %.sroa.0.0.i.i, %bb2.i1.i.i ], [ %.sroa.0.0.i.i, %bb4.i2.i.i ], [ 116, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit" ]
  %init_state.sroa.0.0.i.i.i = phi i64 [ 3, %bb11.i.i.i ], [ 1, %_ZN4core7unicode9printable12is_printable17h91d3b28d6b01d70eE.exit.i.i ], [ 3, %bb16.i.i.i ], [ 2, %bb4.i.i.i ], [ 2, %bb3.i.i.i ], [ 2, %bb2.i.i.i ], [ 1, %bb2.i1.i.i ], [ 1, %bb4.i2.i.i ], [ 2, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit" ]
  %_5.sroa.6.0.insert.ext.i = zext i16 %init_state.sroa.17.sroa.5.0.i.i.i to i56
  %_5.sroa.6.0.insert.shift.i = shl nuw i56 %_5.sroa.6.0.insert.ext.i, 40
  %_5.sroa.4.0.insert.ext.i = zext i32 %init_state.sroa.10.0.i.i.i to i56
  %_5.sroa.4.0.insert.insert.i = or i56 %_5.sroa.6.0.insert.shift.i, %_5.sroa.4.0.insert.ext.i
  %_7.sroa.5.0.extract.trunc = or i56 %_5.sroa.4.0.insert.insert.i, 21474836480
  %phitmp = zext i56 %_7.sroa.5.0.extract.trunc to i64
  %phitmp63 = shl nuw i64 %phitmp, 8
  br label %"_ZN4core6option15Option$LT$T$GT$3map17hbef33498478591e2E.exit"

"_ZN4core6option15Option$LT$T$GT$3map17hbef33498478591e2E.exit": ; preds = %start, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit", %"_ZN4core3str21_$LT$impl$u20$str$GT$12escape_debug28_$u7b$$u7b$closure$u7d$$u7d$17he276fb313764e8b1E.exit.i"
  %chars.sroa.0.360 = phi i8* [ %chars.sroa.0.3, %"_ZN4core3str21_$LT$impl$u20$str$GT$12escape_debug28_$u7b$$u7b$closure$u7d$$u7d$17he276fb313764e8b1E.exit.i" ], [ %chars.sroa.0.3, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit" ], [ %1, %start ]
  %_7.sroa.0.0 = phi i64 [ %init_state.sroa.0.0.i.i.i, %"_ZN4core3str21_$LT$impl$u20$str$GT$12escape_debug28_$u7b$$u7b$closure$u7d$$u7d$17he276fb313764e8b1E.exit.i" ], [ 4, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit" ], [ 4, %start ]
  %_7.sroa.5.sroa.0.0 = phi i64 [ %phitmp63, %"_ZN4core3str21_$LT$impl$u20$str$GT$12escape_debug28_$u7b$$u7b$closure$u7d$$u7d$17he276fb313764e8b1E.exit.i" ], [ 0, %"_ZN75_$LT$core..str..Chars$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hbcdd261ca9ff3e9bE.exit" ], [ 0, %start ]
  %_7.sroa.0.0.insert.insert = or i64 %_7.sroa.5.sroa.0.0, %_7.sroa.0.0
  %30 = icmp ne i8* %chars.sroa.0.360, null
  tail call addrspace(1) void @llvm.assume(i1 %30)
  call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 dereferenceable(7) %_4.sroa.5.0._4.0..sroa_idx31, i8* nonnull align 1 dereferenceable(7) %_5.sroa.5.0..sroa_idx32, i16 7, i1 false), !alias.scope !1698, !noalias !1702
  call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 dereferenceable(7) %_4.sroa.7.0._4.0..sroa_idx28, i8* nonnull align 1 dereferenceable(7) %_5.sroa.6.0..sroa_idx29, i16 7, i1 false), !alias.scope !1698, !noalias !1702
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 7, i8* nonnull %_5.sroa.5.0..sroa_idx32)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 7, i8* nonnull %_5.sroa.6.0..sroa_idx29)
  %_4.sroa.0.0..sroa_cast = bitcast %"str::EscapeDebug"* %0 to i64*
  store i64 %_7.sroa.0.0.insert.insert, i64* %_4.sroa.0.0..sroa_cast, align 1
  %_4.sroa.4.0..sroa_idx = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %0, i16 0, i32 1, i32 1, i32 1
  store i8 4, i8* %_4.sroa.4.0..sroa_idx, align 1
  %_4.sroa.5.0..sroa_idx = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %0, i16 0, i32 1, i32 1, i32 2, i16 0
  call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 dereferenceable(7) %_4.sroa.5.0..sroa_idx, i8* nonnull align 1 dereferenceable(7) %_4.sroa.5.0._4.0..sroa_idx31, i16 7, i1 false)
  %_4.sroa.6.0..sroa_idx = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %0, i16 0, i32 1, i32 1, i32 2, i16 7
  store i8 4, i8* %_4.sroa.6.0..sroa_idx, align 1
  %_4.sroa.7.0..sroa_idx = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %0, i16 0, i32 1, i32 1, i32 2, i16 8
  call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 dereferenceable(7) %_4.sroa.7.0..sroa_idx, i8* nonnull align 1 dereferenceable(7) %_4.sroa.7.0._4.0..sroa_idx28, i16 7, i1 false)
  %_4.sroa.8.sroa.0.0._4.sroa.8.0..sroa_idx.sroa_idx = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %0, i16 0, i32 1, i32 3
  %_4.sroa.8.sroa.0.0._4.sroa.8.0..sroa_idx.sroa_cast = bitcast %"option::Option<iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"* %_4.sroa.8.sroa.0.0._4.sroa.8.0..sroa_idx.sroa_idx to i8**
  store i8* %chars.sroa.0.360, i8** %_4.sroa.8.sroa.0.0._4.sroa.8.0..sroa_idx.sroa_cast, align 1
  %_4.sroa.8.sroa.4.0._4.sroa.8.0..sroa_idx.sroa_idx = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %0, i16 0, i32 1, i32 3, i32 0, i16 2
  %_4.sroa.8.sroa.4.0._4.sroa.8.0..sroa_idx.sroa_cast = bitcast i8* %_4.sroa.8.sroa.4.0._4.sroa.8.0..sroa_idx.sroa_idx to i8**
  store i8* %2, i8** %_4.sroa.8.sroa.4.0._4.sroa.8.0..sroa_idx.sroa_cast, align 1
  %_4.sroa.8.sroa.5.0._4.sroa.8.0..sroa_idx.sroa_idx = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %0, i16 0, i32 1, i32 3, i32 1
  store i8 4, i8* %_4.sroa.8.sroa.5.0._4.sroa.8.0..sroa_idx.sroa_idx, align 1
  %_4.sroa.8.sroa.6.0._4.sroa.8.0..sroa_idx.sroa_idx = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %0, i16 0, i32 1, i32 3, i32 2, i16 0
  call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 dereferenceable(7) %_4.sroa.8.sroa.6.0._4.sroa.8.0..sroa_idx.sroa_idx, i8* nonnull align 1 dereferenceable(7) %_4.sroa.8.sroa.6.0._4.0..sroa_idx56, i16 7, i1 false)
  %_4.sroa.8.sroa.7.0._4.sroa.8.0..sroa_idx.sroa_idx = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %0, i16 0, i32 1, i32 3, i32 2, i16 7
  store i8 4, i8* %_4.sroa.8.sroa.7.0._4.sroa.8.0..sroa_idx.sroa_idx, align 1
  %_4.sroa.8.sroa.8.0._4.sroa.8.0..sroa_idx.sroa_idx = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %0, i16 0, i32 1, i32 3, i32 2, i16 8
  call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 dereferenceable(7) %_4.sroa.8.sroa.8.0._4.sroa.8.0..sroa_idx.sroa_idx, i8* nonnull align 1 dereferenceable(7) %_4.sroa.8.sroa.8.0._4.0..sroa_idx53, i16 7, i1 false)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 7, i8* nonnull %_4.sroa.5.0._4.0..sroa_idx31)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 7, i8* nonnull %_4.sroa.7.0._4.0..sroa_idx28)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 7, i8* nonnull %_4.sroa.8.sroa.6.0._4.0..sroa_idx56)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 7, i8* nonnull %_4.sroa.8.sroa.8.0._4.0..sroa_idx53)
  ret void
}

; core::str::<impl str>::escape_default
; Function Attrs: nounwind uwtable
define void @"_ZN4core3str21_$LT$impl$u20$str$GT$14escape_default17h7a52f69a3244cc28E"(%"str::EscapeDefault"* noalias nocapture sret dereferenceable(20) %0, [0 x i8]* noalias nonnull readonly align 1 %self.0, i16 %self.1) unnamed_addr addrspace(1) #9 {
start:
  %1 = getelementptr [0 x i8], [0 x i8]* %self.0, i16 0, i16 0
  %2 = getelementptr inbounds [0 x i8], [0 x i8]* %self.0, i16 0, i16 %self.1
  %_2.sroa.0.0..sroa_cast1 = bitcast %"str::EscapeDefault"* %0 to i8**
  store i8* %1, i8** %_2.sroa.0.0..sroa_cast1, align 1
  %_2.sroa.4.0..sroa_idx = getelementptr inbounds %"str::EscapeDefault", %"str::EscapeDefault"* %0, i16 0, i32 1, i32 1, i32 1, i32 1
  store i8* %2, i8** %_2.sroa.4.0..sroa_idx, align 1
  %_2.sroa.5.0..sroa_idx = getelementptr inbounds %"str::EscapeDefault", %"str::EscapeDefault"* %0, i16 0, i32 1, i32 1, i32 3, i32 0, i16 0
  store i8 4, i8* %_2.sroa.5.0..sroa_idx, align 1
  %_2.sroa.67.0..sroa_idx = getelementptr inbounds %"str::EscapeDefault", %"str::EscapeDefault"* %0, i16 0, i32 1, i32 1, i32 5, i32 0, i16 0
  store i8 4, i8* %_2.sroa.67.0..sroa_idx, align 1
  ret void
}

; core::str::<impl str>::escape_unicode
; Function Attrs: nounwind uwtable
define void @"_ZN4core3str21_$LT$impl$u20$str$GT$14escape_unicode17h177ec2459decdd58E"(%"str::EscapeUnicode"* noalias nocapture sret dereferenceable(18) %0, [0 x i8]* noalias nonnull readonly align 1 %self.0, i16 %self.1) unnamed_addr addrspace(1) #9 {
start:
  %1 = getelementptr [0 x i8], [0 x i8]* %self.0, i16 0, i16 0
  %2 = getelementptr inbounds [0 x i8], [0 x i8]* %self.0, i16 0, i16 %self.1
  %_2.sroa.0.0..sroa_cast1 = bitcast %"str::EscapeUnicode"* %0 to i8**
  store i8* %1, i8** %_2.sroa.0.0..sroa_cast1, align 1
  %_2.sroa.4.0..sroa_idx = getelementptr inbounds %"str::EscapeUnicode", %"str::EscapeUnicode"* %0, i16 0, i32 1, i32 1, i32 1, i32 1
  store i8* %2, i8** %_2.sroa.4.0..sroa_idx, align 1
  %_2.sroa.5.0..sroa_idx = getelementptr inbounds %"str::EscapeUnicode", %"str::EscapeUnicode"* %0, i16 0, i32 1, i32 1, i32 3
  %_2.sroa.5.0..sroa_cast4 = bitcast %"option::Option<char::EscapeUnicode>"* %_2.sroa.5.0..sroa_idx to i32*
  store i32 1114112, i32* %_2.sroa.5.0..sroa_cast4, align 1
  %_2.sroa.69.0..sroa_idx = getelementptr inbounds %"str::EscapeUnicode", %"str::EscapeUnicode"* %0, i16 0, i32 1, i32 1, i32 5
  %_2.sroa.69.0..sroa_cast10 = bitcast %"option::Option<char::EscapeUnicode>"* %_2.sroa.69.0..sroa_idx to i32*
  store i32 1114112, i32* %_2.sroa.69.0..sroa_cast10, align 1
  ret void
}

; core::str::<impl core::default::Default for &str>::default
; Function Attrs: norecurse nounwind readnone uwtable
define { [0 x i8]*, i16 } @"_ZN4core3str60_$LT$impl$u20$core..default..Default$u20$for$u20$$RF$str$GT$7default17h1999413fd3a75e1aE"() unnamed_addr addrspace(1) #1 {
start:
  ret { [0 x i8]*, i16 } { [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), i16 0 }
}

; <core::str::EncodeUtf16 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN59_$LT$core..str..EncodeUtf16$u20$as$u20$core..fmt..Debug$GT$3fmt17hf62aed55e3717decE"(%"str::EncodeUtf16"* noalias nocapture readonly align 1 dereferenceable(6) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
; call core::fmt::Formatter::pad
  %0 = tail call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter3pad17h307fb261f2dc8a5eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [18 x i8] }>* @alloc18848 to [0 x i8]*), i16 18)
  ret i1 %0
}

; <core::time::Duration as core::ops::arith::Add>::add
; Function Attrs: uwtable
define { i64, i32 } @"_ZN62_$LT$core..time..Duration$u20$as$u20$core..ops..arith..Add$GT$3add17hc883037636aa7964E"(i64 %self.0, i32 %self.1, i64 %rhs.0, i32 %rhs.1) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = tail call addrspace(1) { i64, i1 } @llvm.uadd.with.overflow.i64(i64 %self.0, i64 %rhs.0) #20
  %1 = extractvalue { i64, i1 } %0, 0
  %2 = extractvalue { i64, i1 } %0, 1
  br i1 %2, label %bb2.i1, label %bb3.i

bb3.i:                                            ; preds = %start
  %3 = add i32 %rhs.1, %self.1
  %_11.i = icmp ugt i32 %3, 999999999
  br i1 %_11.i, label %bb5.i, label %"_ZN4core6option15Option$LT$T$GT$6expect17h2f170a45fa4b3ccaE.exit"

bb5.i:                                            ; preds = %bb3.i
  %4 = tail call addrspace(1) { i64, i1 } @llvm.uadd.with.overflow.i64(i64 %1, i64 1) #20
  %5 = extractvalue { i64, i1 } %4, 1
  br i1 %5, label %bb2.i1, label %bb8.i

bb8.i:                                            ; preds = %bb5.i
  %6 = extractvalue { i64, i1 } %4, 0
  %7 = add i32 %3, -1000000000
  br label %"_ZN4core6option15Option$LT$T$GT$6expect17h2f170a45fa4b3ccaE.exit"

bb2.i1:                                           ; preds = %start, %bb5.i
; call core::option::expect_failed
  tail call addrspace(1) void @_ZN4core6option13expect_failed17h801d7499d7350cb5E([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [30 x i8] }>* @alloc18855 to [0 x i8]*), i16 30, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18857 to %"panic::Location"*)), !noalias !1704
  unreachable

"_ZN4core6option15Option$LT$T$GT$6expect17h2f170a45fa4b3ccaE.exit": ; preds = %bb8.i, %bb3.i
  %_3.sroa.8.0.ph = phi i32 [ %3, %bb3.i ], [ %7, %bb8.i ]
  %_3.sroa.6.0.ph = phi i64 [ %1, %bb3.i ], [ %6, %bb8.i ]
  %8 = insertvalue { i64, i32 } undef, i64 %_3.sroa.6.0.ph, 0
  %9 = insertvalue { i64, i32 } %8, i32 %_3.sroa.8.0.ph, 1
  ret { i64, i32 } %9
}

; <core::time::Duration as core::ops::arith::AddAssign>::add_assign
; Function Attrs: uwtable
define void @"_ZN68_$LT$core..time..Duration$u20$as$u20$core..ops..arith..AddAssign$GT$10add_assign17h313d428d6c84c1abE"({ i64, i32 }* nocapture align 1 dereferenceable(12) %self, i64 %rhs.0, i32 %rhs.1) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = getelementptr inbounds { i64, i32 }, { i64, i32 }* %self, i16 0, i32 0
  %_4.0 = load i64, i64* %0, align 1
  %1 = getelementptr inbounds { i64, i32 }, { i64, i32 }* %self, i16 0, i32 1
  %2 = tail call addrspace(1) { i64, i1 } @llvm.uadd.with.overflow.i64(i64 %_4.0, i64 %rhs.0) #20
  %3 = extractvalue { i64, i1 } %2, 0
  %4 = extractvalue { i64, i1 } %2, 1
  br i1 %4, label %bb2.i1.i, label %bb3.i.i

bb3.i.i:                                          ; preds = %start
  %_4.1 = load i32, i32* %1, align 1
  %5 = add i32 %_4.1, %rhs.1
  %_11.i.i = icmp ugt i32 %5, 999999999
  br i1 %_11.i.i, label %bb5.i.i, label %"_ZN62_$LT$core..time..Duration$u20$as$u20$core..ops..arith..Add$GT$3add17hc883037636aa7964E.exit"

bb5.i.i:                                          ; preds = %bb3.i.i
  %6 = tail call addrspace(1) { i64, i1 } @llvm.uadd.with.overflow.i64(i64 %3, i64 1) #20
  %7 = extractvalue { i64, i1 } %6, 1
  br i1 %7, label %bb2.i1.i, label %bb8.i.i

bb8.i.i:                                          ; preds = %bb5.i.i
  %8 = extractvalue { i64, i1 } %6, 0
  %9 = add i32 %5, -1000000000
  br label %"_ZN62_$LT$core..time..Duration$u20$as$u20$core..ops..arith..Add$GT$3add17hc883037636aa7964E.exit"

bb2.i1.i:                                         ; preds = %bb5.i.i, %start
; call core::option::expect_failed
  tail call addrspace(1) void @_ZN4core6option13expect_failed17h801d7499d7350cb5E([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [30 x i8] }>* @alloc18855 to [0 x i8]*), i16 30, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18857 to %"panic::Location"*)), !noalias !1707
  unreachable

"_ZN62_$LT$core..time..Duration$u20$as$u20$core..ops..arith..Add$GT$3add17hc883037636aa7964E.exit": ; preds = %bb3.i.i, %bb8.i.i
  %_3.sroa.8.0.ph.i = phi i32 [ %5, %bb3.i.i ], [ %9, %bb8.i.i ]
  %_3.sroa.6.0.ph.i = phi i64 [ %3, %bb3.i.i ], [ %8, %bb8.i.i ]
  store i64 %_3.sroa.6.0.ph.i, i64* %0, align 1
  store i32 %_3.sroa.8.0.ph.i, i32* %1, align 1
  ret void
}

; <core::time::Duration as core::ops::arith::Sub>::sub
; Function Attrs: uwtable
define { i64, i32 } @"_ZN62_$LT$core..time..Duration$u20$as$u20$core..ops..arith..Sub$GT$3sub17hb248f068b8b7ddf8E"(i64 %self.0, i32 %self.1, i64 %rhs.0, i32 %rhs.1) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = tail call addrspace(1) { i64, i1 } @llvm.usub.with.overflow.i64(i64 %self.0, i64 %rhs.0) #20
  %1 = extractvalue { i64, i1 } %0, 0
  %2 = extractvalue { i64, i1 } %0, 1
  br i1 %2, label %bb2.i1, label %bb3.i

bb3.i:                                            ; preds = %start
  %_9.i = icmp ult i32 %self.1, %rhs.1
  br i1 %_9.i, label %bb4.i, label %"_ZN4core6option15Option$LT$T$GT$6expect17h2f170a45fa4b3ccaE.exit"

bb4.i:                                            ; preds = %bb3.i
  %3 = tail call addrspace(1) { i64, i1 } @llvm.usub.with.overflow.i64(i64 %1, i64 1) #20
  %4 = extractvalue { i64, i1 } %3, 1
  br i1 %4, label %bb2.i1, label %bb8.i

bb8.i:                                            ; preds = %bb4.i
  %5 = extractvalue { i64, i1 } %3, 0
  %_19.i = add i32 %self.1, 1000000000
  br label %"_ZN4core6option15Option$LT$T$GT$6expect17h2f170a45fa4b3ccaE.exit"

bb2.i1:                                           ; preds = %start, %bb4.i
; call core::option::expect_failed
  tail call addrspace(1) void @_ZN4core6option13expect_failed17h801d7499d7350cb5E([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [35 x i8] }>* @alloc18858 to [0 x i8]*), i16 35, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18860 to %"panic::Location"*)), !noalias !1710
  unreachable

"_ZN4core6option15Option$LT$T$GT$6expect17h2f170a45fa4b3ccaE.exit": ; preds = %bb8.i, %bb3.i
  %secs.0.i = phi i64 [ %5, %bb8.i ], [ %1, %bb3.i ]
  %self.1.pn.i = phi i32 [ %_19.i, %bb8.i ], [ %self.1, %bb3.i ]
  %nanos.0.i = sub i32 %self.1.pn.i, %rhs.1
  %6 = insertvalue { i64, i32 } undef, i64 %secs.0.i, 0
  %7 = insertvalue { i64, i32 } %6, i32 %nanos.0.i, 1
  ret { i64, i32 } %7
}

; <core::time::Duration as core::ops::arith::SubAssign>::sub_assign
; Function Attrs: uwtable
define void @"_ZN68_$LT$core..time..Duration$u20$as$u20$core..ops..arith..SubAssign$GT$10sub_assign17hf18cf63c94917199E"({ i64, i32 }* nocapture align 1 dereferenceable(12) %self, i64 %rhs.0, i32 %rhs.1) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = getelementptr inbounds { i64, i32 }, { i64, i32 }* %self, i16 0, i32 0
  %_4.0 = load i64, i64* %0, align 1
  %1 = getelementptr inbounds { i64, i32 }, { i64, i32 }* %self, i16 0, i32 1
  %_4.1 = load i32, i32* %1, align 1
  %2 = tail call addrspace(1) { i64, i1 } @llvm.usub.with.overflow.i64(i64 %_4.0, i64 %rhs.0) #20
  %3 = extractvalue { i64, i1 } %2, 0
  %4 = extractvalue { i64, i1 } %2, 1
  br i1 %4, label %bb2.i1.i, label %bb3.i.i

bb3.i.i:                                          ; preds = %start
  %_9.i.i = icmp ult i32 %_4.1, %rhs.1
  br i1 %_9.i.i, label %bb4.i.i, label %"_ZN62_$LT$core..time..Duration$u20$as$u20$core..ops..arith..Sub$GT$3sub17hb248f068b8b7ddf8E.exit"

bb4.i.i:                                          ; preds = %bb3.i.i
  %5 = tail call addrspace(1) { i64, i1 } @llvm.usub.with.overflow.i64(i64 %3, i64 1) #20
  %6 = extractvalue { i64, i1 } %5, 1
  br i1 %6, label %bb2.i1.i, label %bb8.i.i

bb8.i.i:                                          ; preds = %bb4.i.i
  %7 = extractvalue { i64, i1 } %5, 0
  %_19.i.i = add i32 %_4.1, 1000000000
  br label %"_ZN62_$LT$core..time..Duration$u20$as$u20$core..ops..arith..Sub$GT$3sub17hb248f068b8b7ddf8E.exit"

bb2.i1.i:                                         ; preds = %bb4.i.i, %start
; call core::option::expect_failed
  tail call addrspace(1) void @_ZN4core6option13expect_failed17h801d7499d7350cb5E([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [35 x i8] }>* @alloc18858 to [0 x i8]*), i16 35, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18860 to %"panic::Location"*)), !noalias !1713
  unreachable

"_ZN62_$LT$core..time..Duration$u20$as$u20$core..ops..arith..Sub$GT$3sub17hb248f068b8b7ddf8E.exit": ; preds = %bb3.i.i, %bb8.i.i
  %secs.0.i.i = phi i64 [ %7, %bb8.i.i ], [ %3, %bb3.i.i ]
  %self.1.pn.i.i = phi i32 [ %_19.i.i, %bb8.i.i ], [ %_4.1, %bb3.i.i ]
  %nanos.0.i.i = sub i32 %self.1.pn.i.i, %rhs.1
  store i64 %secs.0.i.i, i64* %0, align 1
  store i32 %nanos.0.i.i, i32* %1, align 1
  ret void
}

; <core::time::Duration as core::ops::arith::Mul<u32>>::mul
; Function Attrs: uwtable
define { i64, i32 } @"_ZN73_$LT$core..time..Duration$u20$as$u20$core..ops..arith..Mul$LT$u32$GT$$GT$3mul17h236c7bad9532cce4E"(i64 %self.0, i32 %self.1, i32 %rhs) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_4.i = zext i32 %self.1 to i64
  %_6.i = zext i32 %rhs to i64
  %total_nanos.i = mul nuw i64 %_6.i, %_4.i
  %0 = udiv i64 %total_nanos.i, 1000000000
  %1 = tail call addrspace(1) { i64, i1 } @llvm.umul.with.overflow.i64(i64 %self.0, i64 %_6.i) #20
  %2 = extractvalue { i64, i1 } %1, 0
  %3 = extractvalue { i64, i1 } %1, 1
  %4 = tail call addrspace(1) { i64, i1 } @llvm.uadd.with.overflow.i64(i64 %2, i64 %0) #20
  %5 = extractvalue { i64, i1 } %4, 1
  %narrow.i.demorgan.i = or i1 %3, %5
  br i1 %narrow.i.demorgan.i, label %bb2.i, label %"_ZN4core6option15Option$LT$T$GT$6expect17h2f170a45fa4b3ccaE.exit"

bb2.i:                                            ; preds = %start
; call core::option::expect_failed
  tail call addrspace(1) void @_ZN4core6option13expect_failed17h801d7499d7350cb5E([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [44 x i8] }>* @alloc18861 to [0 x i8]*), i16 44, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18863 to %"panic::Location"*)), !noalias !1716
  unreachable

"_ZN4core6option15Option$LT$T$GT$6expect17h2f170a45fa4b3ccaE.exit": ; preds = %start
  %6 = extractvalue { i64, i1 } %4, 0
  %7 = mul i64 %0, 1000000000
  %_12.i.decomposed = sub i64 %total_nanos.i, %7
  %nanos.i = trunc i64 %_12.i.decomposed to i32
  %8 = insertvalue { i64, i32 } undef, i64 %6, 0
  %9 = insertvalue { i64, i32 } %8, i32 %nanos.i, 1
  ret { i64, i32 } %9
}

; core::time::<impl core::ops::arith::Mul<core::time::Duration> for u32>::mul
; Function Attrs: uwtable
define { i64, i32 } @"_ZN4core4time83_$LT$impl$u20$core..ops..arith..Mul$LT$core..time..Duration$GT$$u20$for$u20$u32$GT$3mul17h0be8837e83932f8aE"(i32 %self, i64 %rhs.0, i32 %rhs.1) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_4.i.i = zext i32 %rhs.1 to i64
  %_6.i.i = zext i32 %self to i64
  %total_nanos.i.i = mul nuw i64 %_4.i.i, %_6.i.i
  %0 = udiv i64 %total_nanos.i.i, 1000000000
  %1 = tail call addrspace(1) { i64, i1 } @llvm.umul.with.overflow.i64(i64 %rhs.0, i64 %_6.i.i) #20
  %2 = extractvalue { i64, i1 } %1, 0
  %3 = extractvalue { i64, i1 } %1, 1
  %4 = tail call addrspace(1) { i64, i1 } @llvm.uadd.with.overflow.i64(i64 %2, i64 %0) #20
  %5 = extractvalue { i64, i1 } %4, 1
  %narrow.i.demorgan.i.i = or i1 %3, %5
  br i1 %narrow.i.demorgan.i.i, label %bb2.i.i, label %"_ZN73_$LT$core..time..Duration$u20$as$u20$core..ops..arith..Mul$LT$u32$GT$$GT$3mul17h236c7bad9532cce4E.exit"

bb2.i.i:                                          ; preds = %start
; call core::option::expect_failed
  tail call addrspace(1) void @_ZN4core6option13expect_failed17h801d7499d7350cb5E([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [44 x i8] }>* @alloc18861 to [0 x i8]*), i16 44, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18863 to %"panic::Location"*)), !noalias !1719
  unreachable

"_ZN73_$LT$core..time..Duration$u20$as$u20$core..ops..arith..Mul$LT$u32$GT$$GT$3mul17h236c7bad9532cce4E.exit": ; preds = %start
  %6 = extractvalue { i64, i1 } %4, 0
  %7 = mul i64 %0, 1000000000
  %_12.i.i.decomposed = sub i64 %total_nanos.i.i, %7
  %nanos.i.i = trunc i64 %_12.i.i.decomposed to i32
  %8 = insertvalue { i64, i32 } undef, i64 %6, 0
  %9 = insertvalue { i64, i32 } %8, i32 %nanos.i.i, 1
  ret { i64, i32 } %9
}

; <core::time::Duration as core::ops::arith::MulAssign<u32>>::mul_assign
; Function Attrs: uwtable
define void @"_ZN79_$LT$core..time..Duration$u20$as$u20$core..ops..arith..MulAssign$LT$u32$GT$$GT$10mul_assign17heeae81a155438ed0E"({ i64, i32 }* nocapture align 1 dereferenceable(12) %self, i32 %rhs) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = getelementptr inbounds { i64, i32 }, { i64, i32 }* %self, i16 0, i32 0
  %_4.0 = load i64, i64* %0, align 1
  %1 = getelementptr inbounds { i64, i32 }, { i64, i32 }* %self, i16 0, i32 1
  %_4.1 = load i32, i32* %1, align 1
  %_4.i.i = zext i32 %_4.1 to i64
  %_6.i.i = zext i32 %rhs to i64
  %total_nanos.i.i = mul nuw i64 %_4.i.i, %_6.i.i
  %2 = udiv i64 %total_nanos.i.i, 1000000000
  %3 = tail call addrspace(1) { i64, i1 } @llvm.umul.with.overflow.i64(i64 %_4.0, i64 %_6.i.i) #20
  %4 = extractvalue { i64, i1 } %3, 0
  %5 = extractvalue { i64, i1 } %3, 1
  %6 = tail call addrspace(1) { i64, i1 } @llvm.uadd.with.overflow.i64(i64 %4, i64 %2) #20
  %7 = extractvalue { i64, i1 } %6, 1
  %narrow.i.demorgan.i.i = or i1 %5, %7
  br i1 %narrow.i.demorgan.i.i, label %bb2.i.i, label %"_ZN73_$LT$core..time..Duration$u20$as$u20$core..ops..arith..Mul$LT$u32$GT$$GT$3mul17h236c7bad9532cce4E.exit"

bb2.i.i:                                          ; preds = %start
; call core::option::expect_failed
  tail call addrspace(1) void @_ZN4core6option13expect_failed17h801d7499d7350cb5E([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [44 x i8] }>* @alloc18861 to [0 x i8]*), i16 44, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18863 to %"panic::Location"*)), !noalias !1722
  unreachable

"_ZN73_$LT$core..time..Duration$u20$as$u20$core..ops..arith..Mul$LT$u32$GT$$GT$3mul17h236c7bad9532cce4E.exit": ; preds = %start
  %8 = extractvalue { i64, i1 } %6, 0
  %9 = mul i64 %2, 1000000000
  %_12.i.i.decomposed = sub i64 %total_nanos.i.i, %9
  %nanos.i.i = trunc i64 %_12.i.i.decomposed to i32
  store i64 %8, i64* %0, align 1
  store i32 %nanos.i.i, i32* %1, align 1
  ret void
}

; <core::time::Duration as core::ops::arith::Div<u32>>::div
; Function Attrs: uwtable
define { i64, i32 } @"_ZN73_$LT$core..time..Duration$u20$as$u20$core..ops..arith..Div$LT$u32$GT$$GT$3div17hc322c0fcb634e7c4E"(i64 %self.0, i32 %self.1, i32 %rhs) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_3.i = icmp eq i32 %rhs, 0
  br i1 %_3.i, label %bb2.i1, label %"_ZN4core6option15Option$LT$T$GT$6expect17h2f170a45fa4b3ccaE.exit"

bb2.i1:                                           ; preds = %start
; call core::option::expect_failed
  tail call addrspace(1) void @_ZN4core6option13expect_failed17h801d7499d7350cb5E([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [53 x i8] }>* @alloc18864 to [0 x i8]*), i16 53, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18866 to %"panic::Location"*)), !noalias !1725
  unreachable

"_ZN4core6option15Option$LT$T$GT$6expect17h2f170a45fa4b3ccaE.exit": ; preds = %start
  %_7.i = zext i32 %rhs to i64
  %secs.i = udiv i64 %self.0, %_7.i
  %_12.i = mul i64 %secs.i, %_7.i
  %carry.i = sub i64 %self.0, %_12.i
  %_17.i = mul i64 %carry.i, 1000000000
  %extra_nanos.i = udiv i64 %_17.i, %_7.i
  %_24.i = udiv i32 %self.1, %rhs
  %_28.i = trunc i64 %extra_nanos.i to i32
  %nanos.i = add i32 %_24.i, %_28.i
  %0 = insertvalue { i64, i32 } undef, i64 %secs.i, 0
  %1 = insertvalue { i64, i32 } %0, i32 %nanos.i, 1
  ret { i64, i32 } %1
}

; <core::time::Duration as core::ops::arith::DivAssign<u32>>::div_assign
; Function Attrs: uwtable
define void @"_ZN79_$LT$core..time..Duration$u20$as$u20$core..ops..arith..DivAssign$LT$u32$GT$$GT$10div_assign17h4d546b43cc9cc818E"({ i64, i32 }* nocapture align 1 dereferenceable(12) %self, i32 %rhs) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = getelementptr inbounds { i64, i32 }, { i64, i32 }* %self, i16 0, i32 0
  %_4.0 = load i64, i64* %0, align 1
  %1 = getelementptr inbounds { i64, i32 }, { i64, i32 }* %self, i16 0, i32 1
  %_3.i.i = icmp eq i32 %rhs, 0
  br i1 %_3.i.i, label %bb2.i1.i, label %"_ZN73_$LT$core..time..Duration$u20$as$u20$core..ops..arith..Div$LT$u32$GT$$GT$3div17hc322c0fcb634e7c4E.exit"

bb2.i1.i:                                         ; preds = %start
; call core::option::expect_failed
  tail call addrspace(1) void @_ZN4core6option13expect_failed17h801d7499d7350cb5E([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [53 x i8] }>* @alloc18864 to [0 x i8]*), i16 53, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18866 to %"panic::Location"*)), !noalias !1728
  unreachable

"_ZN73_$LT$core..time..Duration$u20$as$u20$core..ops..arith..Div$LT$u32$GT$$GT$3div17hc322c0fcb634e7c4E.exit": ; preds = %start
  %_4.1 = load i32, i32* %1, align 1
  %_7.i.i = zext i32 %rhs to i64
  %secs.i.i = udiv i64 %_4.0, %_7.i.i
  %_12.i.i = mul i64 %secs.i.i, %_7.i.i
  %carry.i.i = sub i64 %_4.0, %_12.i.i
  %_17.i.i = mul i64 %carry.i.i, 1000000000
  %extra_nanos.i.i = udiv i64 %_17.i.i, %_7.i.i
  %_24.i.i = udiv i32 %_4.1, %rhs
  %_28.i.i = trunc i64 %extra_nanos.i.i to i32
  %nanos.i.i = add i32 %_24.i.i, %_28.i.i
  store i64 %secs.i.i, i64* %0, align 1
  store i32 %nanos.i.i, i32* %1, align 1
  ret void
}

; <core::time::Duration as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN57_$LT$core..time..Duration$u20$as$u20$core..fmt..Debug$GT$3fmt17hc5a121423d38e62eE"({ i64, i32 }* noalias nocapture readonly align 1 dereferenceable(12) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_5.i = alloca %"fmt::Arguments", align 1
  %0 = bitcast %"fmt::Formatter"* %f to i32*
  %_3.i = load i32, i32* %0, align 1, !alias.scope !1731
  %_2.i = and i32 %_3.i, 1
  %1 = icmp eq i32 %_2.i, 0
  br i1 %1, label %bb13, label %bb3

bb3:                                              ; preds = %start
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_4.0.i = load {}*, {}** %2, align 1, !noalias !1734, !nonnull !568
  %3 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %_4.1.i = load [3 x i16]*, [3 x i16]** %3, align 1, !noalias !1734, !nonnull !568
  %4 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %4), !noalias !1734
  %_8.sroa.0.0..sroa_cast17 = bitcast %"fmt::Arguments"* %_5.i to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8] }>* @alloc16801 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %_8.sroa.0.0..sroa_cast17, align 1
  %_8.sroa.4.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 1, i32 1
  store i16 1, i16* %_8.sroa.4.0..sroa_idx, align 1
  %_8.sroa.5.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 3, i32 0
  store i8* null, i8** %_8.sroa.5.0..sroa_idx, align 1
  %_8.sroa.621.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 5, i32 0
  store [0 x { i8*, i8 addrspace(1)* }]* bitcast (<{ [0 x i8] }>* @alloc19125 to [0 x { i8*, i8 addrspace(1)* }]*), [0 x { i8*, i8 addrspace(1)* }]** %_8.sroa.621.0..sroa_idx, align 1
  %_8.sroa.7.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 5, i32 1
  store i16 0, i16* %_8.sroa.7.0..sroa_idx, align 1
; call core::fmt::write
  %5 = call zeroext addrspace(1) i1 @_ZN4core3fmt5write17hf4cd163abe69055cE({}* nonnull align 1 %_4.0.i, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) %_4.1.i, %"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_5.i), !noalias !1734
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 12, i8* nonnull %4), !noalias !1734
  br i1 %5, label %bb10, label %bb13

bb10:                                             ; preds = %bb36, %bb37, %bb26, %bb15, %bb3, %bb18, %bb40, %bb49, %bb29
  %.0.shrunk = phi i1 [ %13, %bb18 ], [ %21, %bb29 ], [ %29, %bb40 ], [ %35, %bb49 ], [ true, %bb3 ], [ true, %bb15 ], [ true, %bb26 ], [ true, %bb37 ], [ true, %bb36 ]
  ret i1 %.0.shrunk

bb13:                                             ; preds = %start, %bb3
  %6 = getelementptr inbounds { i64, i32 }, { i64, i32 }* %self, i16 0, i32 0
  %_21 = load i64, i64* %6, align 1
  %_20 = icmp eq i64 %_21, 0
  %7 = getelementptr inbounds { i64, i32 }, { i64, i32 }* %self, i16 0, i32 1
  %_36 = load i32, i32* %7, align 1
  br i1 %_20, label %bb14, label %bb15

bb14:                                             ; preds = %bb13
  %_35 = icmp ugt i32 %_36, 999999
  br i1 %_35, label %bb26, label %bb25

bb15:                                             ; preds = %bb13
; call <core::time::Duration as core::fmt::Debug>::fmt::fmt_decimal
  %_23 = tail call fastcc zeroext addrspace(1) i1 @"_ZN57_$LT$core..time..Duration$u20$as$u20$core..fmt..Debug$GT$3fmt11fmt_decimal17hefc0bcb42542f649E"(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i64 %_21, i32 %_36, i32 100000000)
  br i1 %_23, label %bb10, label %bb18

bb18:                                             ; preds = %bb15
  %8 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i14 = load {}*, {}** %8, align 1, !noalias !1737, !nonnull !568
  %9 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %10 = bitcast [3 x i16]** %9 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i15 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %10, align 1, !noalias !1737, !nonnull !568
  %11 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i15, i16 3
  %12 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %11, align 1, !invariant.load !568, !noalias !1737, !nonnull !568
  %13 = tail call zeroext addrspace(1) i1 %12({}* nonnull align 1 %_3.0.i14, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18867 to [0 x i8]*), i16 1)
  br label %bb10

bb25:                                             ; preds = %bb14
  %_53 = icmp ugt i32 %_36, 999
  br i1 %_53, label %bb37, label %bb36

bb26:                                             ; preds = %bb14
  %14 = udiv i32 %_36, 1000000
  %_40 = zext i32 %14 to i64
  %15 = mul i32 %14, 1000000
  %_43.decomposed = sub i32 %_36, %15
; call <core::time::Duration as core::fmt::Debug>::fmt::fmt_decimal
  %_38 = tail call fastcc zeroext addrspace(1) i1 @"_ZN57_$LT$core..time..Duration$u20$as$u20$core..fmt..Debug$GT$3fmt11fmt_decimal17hefc0bcb42542f649E"(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i64 %_40, i32 %_43.decomposed, i32 100000)
  br i1 %_38, label %bb10, label %bb29

bb29:                                             ; preds = %bb26
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i12 = load {}*, {}** %16, align 1, !noalias !1740, !nonnull !568
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %18 = bitcast [3 x i16]** %17 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i13 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %18, align 1, !noalias !1740, !nonnull !568
  %19 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i13, i16 3
  %20 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %19, align 1, !invariant.load !568, !noalias !1740, !nonnull !568
  %21 = tail call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i12, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18868 to [0 x i8]*), i16 2)
  br label %bb10

bb36:                                             ; preds = %bb25
  %_74 = zext i32 %_36 to i64
; call <core::time::Duration as core::fmt::Debug>::fmt::fmt_decimal
  %_72 = tail call fastcc zeroext addrspace(1) i1 @"_ZN57_$LT$core..time..Duration$u20$as$u20$core..fmt..Debug$GT$3fmt11fmt_decimal17hefc0bcb42542f649E"(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i64 %_74, i32 0, i32 1)
  br i1 %_72, label %bb10, label %bb49

bb37:                                             ; preds = %bb25
  %22 = udiv i32 %_36, 1000
  %_58 = zext i32 %22 to i64
  %23 = mul i32 %22, 1000
  %_61.decomposed = sub i32 %_36, %23
; call <core::time::Duration as core::fmt::Debug>::fmt::fmt_decimal
  %_56 = tail call fastcc zeroext addrspace(1) i1 @"_ZN57_$LT$core..time..Duration$u20$as$u20$core..fmt..Debug$GT$3fmt11fmt_decimal17hefc0bcb42542f649E"(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i64 %_58, i32 %_61.decomposed, i32 100)
  br i1 %_56, label %bb10, label %bb40

bb40:                                             ; preds = %bb37
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i10 = load {}*, {}** %24, align 1, !noalias !1743, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i11 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %26, align 1, !noalias !1743, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i11, i16 3
  %28 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !1743, !nonnull !568
  %29 = tail call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i10, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [3 x i8] }>* @alloc18869 to [0 x i8]*), i16 3)
  br label %bb10

bb49:                                             ; preds = %bb36
  %30 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i = load {}*, {}** %30, align 1, !noalias !1746, !nonnull !568
  %31 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %32 = bitcast [3 x i16]** %31 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %32, align 1, !noalias !1746, !nonnull !568
  %33 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i, i16 3
  %34 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %33, align 1, !invariant.load !568, !noalias !1746, !nonnull !568
  %35 = tail call zeroext addrspace(1) i1 %34({}* nonnull align 1 %_3.0.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18870 to [0 x i8]*), i16 2)
  br label %bb10
}

; <core::time::Duration as core::fmt::Debug>::fmt::fmt_decimal
; Function Attrs: uwtable
define internal fastcc zeroext i1 @"_ZN57_$LT$core..time..Duration$u20$as$u20$core..fmt..Debug$GT$3fmt11fmt_decimal17hefc0bcb42542f649E"(%"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f, i64 %0, i32 %1, i32 %2) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_5.i35 = alloca %"fmt::Arguments", align 1
  %_5.i = alloca %"fmt::Arguments", align 1
  %_93 = alloca [3 x { i8*, i8 addrspace(1)* }], align 1
  %w = alloca i16, align 1
  %s = alloca { [0 x i8]*, i16 }, align 1
  %_66 = alloca [1 x { i8*, i8 addrspace(1)* }], align 1
  %buf = alloca [9 x i8], align 1
  %integer_part = alloca i64, align 1
  store i64 %0, i64* %integer_part, align 1
  %3 = getelementptr inbounds [9 x i8], [9 x i8]* %buf, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 9, i8* nonnull %3)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(9) %3, i8 48, i16 9, i1 false)
  %_874 = icmp eq i32 %1, 0
  %.phi.trans.insert = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 9, i32 0
  %.pre = load i8, i8* %.phi.trans.insert, align 1, !range !87
  %.phi.trans.insert93 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 9, i32 1
  %.pre94 = load i16, i16* %.phi.trans.insert93, align 1
  br i1 %_874, label %bb35, label %bb4.lr.ph

bb4.lr.ph:                                        ; preds = %start
  %_13.0 = icmp eq i8 %.pre, 0
  %.default.i = select i1 %_13.0, i16 9, i16 %.pre94
  br label %bb4

bb4:                                              ; preds = %bb11, %bb4.lr.ph
  %fractional_part.077 = phi i32 [ %1, %bb4.lr.ph ], [ %.decomposed, %bb11 ]
  %divisor.076 = phi i32 [ %2, %bb4.lr.ph ], [ %7, %bb11 ]
  %pos.075 = phi i16 [ 0, %bb4.lr.ph ], [ %8, %bb11 ]
  %_10 = icmp ult i16 %pos.075, %.default.i
  br i1 %_10, label %bb9, label %bb8.critedge

bb8.critedge:                                     ; preds = %bb4
  %_30 = mul i32 %divisor.076, 5
  %_28 = icmp ult i32 %fractional_part.077, %_30
  br i1 %_28, label %bb35, label %bb19.preheader

bb19.preheader:                                   ; preds = %bb8.critedge
  %_3671 = icmp eq i16 %.default.i, 0
  br i1 %_3671, label %bb33, label %bb26

bb9:                                              ; preds = %bb4
  %_19 = icmp eq i32 %divisor.076, 0
  br i1 %_19, label %panic, label %bb10, !prof !91, !misexpect !550

bb10:                                             ; preds = %bb9
  %_22 = icmp ult i16 %pos.075, 9
  br i1 %_22, label %bb11, label %panic1, !prof !4, !misexpect !5

bb11:                                             ; preds = %bb10
  %_16 = udiv i32 %fractional_part.077, %divisor.076
  %_15 = trunc i32 %_16 to i8
  %4 = getelementptr inbounds [9 x i8], [9 x i8]* %buf, i16 0, i16 %pos.075
  %5 = add i8 %_15, 48
  store i8 %5, i8* %4, align 1
  %6 = mul i32 %_16, %divisor.076
  %.decomposed = sub i32 %fractional_part.077, %6
  %7 = udiv i32 %divisor.076, 10
  %8 = add nuw nsw i16 %pos.075, 1
  %_8 = icmp eq i32 %.decomposed, 0
  br i1 %_8, label %bb35, label %bb4

bb24:                                             ; preds = %bb26
  br i1 %_35, label %bb33, label %bb35

bb26:                                             ; preds = %bb19.preheader, %bb26
  %rev_pos.073 = phi i16 [ %9, %bb26 ], [ %.default.i, %bb19.preheader ]
  %carry.072 = phi i8 [ %carry.1, %bb26 ], [ 1, %bb19.preheader ]
  %9 = add nsw i16 %rev_pos.073, -1
  %10 = getelementptr inbounds [9 x i8], [9 x i8]* %buf, i16 0, i16 %9
  %_39 = load i8, i8* %10, align 1
  %_38 = icmp ult i8 %_39, 57
  %11 = add i8 %_39, 1
  %storemerge = select i1 %_38, i8 %11, i8 48
  %carry.1 = select i1 %_38, i8 0, i8 %carry.072
  store i8 %storemerge, i8* %10, align 1
  %12 = and i8 %carry.1, 1
  %_35 = icmp ne i8 %12, 0
  %_36 = icmp ne i16 %9, 0
  %or.cond = and i1 %_35, %_36
  br i1 %or.cond, label %bb26, label %bb24

bb33:                                             ; preds = %bb19.preheader, %bb24
  %13 = add i64 %0, 1
  store i64 %13, i64* %integer_part, align 1
  br label %bb35

bb35:                                             ; preds = %bb11, %start, %bb8.critedge, %bb33, %bb24
  %pos.070 = phi i16 [ %.default.i, %bb8.critedge ], [ %.default.i, %bb33 ], [ %.default.i, %bb24 ], [ 0, %start ], [ %8, %bb11 ]
  %_52.0 = icmp eq i8 %.pre, 0
  %14 = icmp ult i16 %.pre94, 9
  %.0.sroa.speculated.i.i.i.i.i = select i1 %14, i16 %.pre94, i16 9
  %.default.i34 = select i1 %_52.0, i16 %pos.070, i16 %.0.sroa.speculated.i.i.i.i.i
  %_56 = icmp eq i16 %.default.i34, 0
  br i1 %_56, label %bb40, label %bb39

bb39:                                             ; preds = %bb35
  %15 = bitcast { [0 x i8]*, i16 }* %s to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %15)
  %_8.i.i.i = icmp ugt i16 %.default.i34, 9
  br i1 %_8.i.i.i, label %bb5.i.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit"

bb5.i.i.i:                                        ; preds = %bb39
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.default.i34, i16 9, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18884 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit": ; preds = %bb39
  %16 = bitcast { [0 x i8]*, i16 }* %s to [9 x i8]**
  store [9 x i8]* %buf, [9 x i8]** %16, align 1
  %.fca.1.gep = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %s, i16 0, i32 1
  store i16 %.default.i34, i16* %.fca.1.gep, align 1
  %17 = bitcast i16* %w to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %17)
  %.default.i38 = select i1 %_52.0, i16 %pos.070, i16 %.pre94
  store i16 %.default.i38, i16* %w, align 1
  %18 = bitcast [3 x { i8*, i8 addrspace(1)* }]* %_93 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %18)
  %19 = bitcast [3 x { i8*, i8 addrspace(1)* }]* %_93 to i64**
  store i64* %integer_part, i64** %19, align 1
  %20 = getelementptr inbounds [3 x { i8*, i8 addrspace(1)* }], [3 x { i8*, i8 addrspace(1)* }]* %_93, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 (i64*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u64$GT$3fmt17h82635f2897f163daE" to i8 addrspace(1)*), i8 addrspace(1)** %20, align 1
  %21 = getelementptr inbounds [3 x { i8*, i8 addrspace(1)* }], [3 x { i8*, i8 addrspace(1)* }]* %_93, i16 0, i16 1, i32 0
  %22 = bitcast i8** %21 to { [0 x i8]*, i16 }**
  store { [0 x i8]*, i16 }* %s, { [0 x i8]*, i16 }** %22, align 1
  %23 = getelementptr inbounds [3 x { i8*, i8 addrspace(1)* }], [3 x { i8*, i8 addrspace(1)* }]* %_93, i16 0, i16 1, i32 1
  store i8 addrspace(1)* bitcast (i1 ({ [0 x i8]*, i16 }*, %"fmt::Formatter"*) addrspace(1)* @"_ZN44_$LT$$RF$T$u20$as$u20$core..fmt..Display$GT$3fmt17h4c33253c245fb34cE" to i8 addrspace(1)*), i8 addrspace(1)** %23, align 1
  %24 = getelementptr inbounds [3 x { i8*, i8 addrspace(1)* }], [3 x { i8*, i8 addrspace(1)* }]* %_93, i16 0, i16 2, i32 0
  %25 = bitcast i8** %24 to i16**
  store i16* %w, i16** %25, align 1
  %26 = getelementptr inbounds [3 x { i8*, i8 addrspace(1)* }], [3 x { i8*, i8 addrspace(1)* }]* %_93, i16 0, i16 2, i32 1
  store i8 addrspace(1)* bitcast (i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @_ZN4core3ops8function6FnOnce9call_once17h35286f7b5a1cec98E to i8 addrspace(1)*), i8 addrspace(1)** %26, align 1
  %27 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_4.0.i36 = load {}*, {}** %27, align 1, !noalias !1749, !nonnull !568
  %28 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %_4.1.i37 = load [3 x i16]*, [3 x i16]** %28, align 1, !noalias !1749, !nonnull !568
  %29 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i35, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %29), !noalias !1749
  %_86.sroa.0.0..sroa_cast48 = bitcast %"fmt::Arguments"* %_5.i35 to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8], i8*, [2 x i8] }>* @alloc16828 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %_86.sroa.0.0..sroa_cast48, align 1
  %_86.sroa.4.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i35, i16 0, i32 1, i32 1
  store i16 2, i16* %_86.sroa.4.0..sroa_idx, align 1
  %_86.sroa.5.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i35, i16 0, i32 3, i32 0
  store i8* getelementptr inbounds (<{ [34 x i8] }>, <{ [34 x i8] }>* @alloc16843, i16 0, i32 0, i16 0), i8** %_86.sroa.5.0..sroa_idx, align 1
  %_86.sroa.6.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i35, i16 0, i32 3, i32 1
  store i16 2, i16* %_86.sroa.6.0..sroa_idx, align 1
  %_86.sroa.7.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i35, i16 0, i32 5, i32 0
  %30 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %_86.sroa.7.0..sroa_idx to [3 x { i8*, i8 addrspace(1)* }]**
  store [3 x { i8*, i8 addrspace(1)* }]* %_93, [3 x { i8*, i8 addrspace(1)* }]** %30, align 1
  %_86.sroa.8.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i35, i16 0, i32 5, i32 1
  store i16 3, i16* %_86.sroa.8.0..sroa_idx, align 1
; call core::fmt::write
  %31 = call zeroext addrspace(1) i1 @_ZN4core3fmt5write17hf4cd163abe69055cE({}* nonnull align 1 %_4.0.i36, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) %_4.1.i37, %"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_5.i35), !noalias !1749
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 12, i8* nonnull %29), !noalias !1749
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %17)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %15)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 12, i8* nonnull %18)
  br label %bb53

bb40:                                             ; preds = %bb35
  %32 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_66 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %32)
  %33 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_66 to i64**
  store i64* %integer_part, i64** %33, align 1
  %34 = getelementptr inbounds [1 x { i8*, i8 addrspace(1)* }], [1 x { i8*, i8 addrspace(1)* }]* %_66, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 (i64*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u64$GT$3fmt17h82635f2897f163daE" to i8 addrspace(1)*), i8 addrspace(1)** %34, align 1
  %35 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_4.0.i = load {}*, {}** %35, align 1, !noalias !1752, !nonnull !568
  %36 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %_4.1.i = load [3 x i16]*, [3 x i16]** %36, align 1, !noalias !1752, !nonnull !568
  %37 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %37), !noalias !1752
  %_59.sroa.0.0..sroa_cast40 = bitcast %"fmt::Arguments"* %_5.i to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8] }>* @alloc17054 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %_59.sroa.0.0..sroa_cast40, align 1
  %_59.sroa.4.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 1, i32 1
  store i16 1, i16* %_59.sroa.4.0..sroa_idx, align 1
  %_59.sroa.5.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 3, i32 0
  store i8* null, i8** %_59.sroa.5.0..sroa_idx, align 1
  %_59.sroa.644.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 5, i32 0
  %38 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %_59.sroa.644.0..sroa_idx to [1 x { i8*, i8 addrspace(1)* }]**
  store [1 x { i8*, i8 addrspace(1)* }]* %_66, [1 x { i8*, i8 addrspace(1)* }]** %38, align 1
  %_59.sroa.7.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 5, i32 1
  store i16 1, i16* %_59.sroa.7.0..sroa_idx, align 1
; call core::fmt::write
  %39 = call zeroext addrspace(1) i1 @_ZN4core3fmt5write17hf4cd163abe69055cE({}* nonnull align 1 %_4.0.i, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) %_4.1.i, %"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_5.i), !noalias !1752
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 12, i8* nonnull %37), !noalias !1752
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %32)
  br label %bb53

bb53:                                             ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit", %bb40
  %.0.in = phi i1 [ %39, %bb40 ], [ %31, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit" ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 9, i8* nonnull %3)
  ret i1 %.0.in

panic:                                            ; preds = %bb9
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast ([25 x i8]* @str.1 to [0 x i8]*), i16 25, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18872 to %"panic::Location"*))
  unreachable

panic1:                                           ; preds = %bb10
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 9, i16 9, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18874 to %"panic::Location"*))
  unreachable
}

; core::unicode::printable::check
; Function Attrs: uwtable
define internal fastcc zeroext i1 @_ZN4core7unicode9printable5check17h2dcb736e2dcd86e6E(i16 %x, [0 x { i8, i8 }]* noalias nonnull readonly align 1 %singletonuppers.0, i16 %singletonuppers.1, [0 x i8]* noalias nonnull readonly align 1 %singletonlowers.0, i16 %singletonlowers.1, [0 x i8]* noalias nonnull readonly align 1 %normal.0, i16 %normal.1) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_6 = lshr i16 %x, 8
  %xupper = trunc i16 %_6 to i8
  %0 = getelementptr inbounds [0 x { i8, i8 }], [0 x { i8, i8 }]* %singletonuppers.0, i16 0, i16 %singletonuppers.1, i32 0
  %_13.i70 = icmp eq i16 %singletonuppers.1, 0
  br i1 %_13.i70, label %bb7, label %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h2c4bf3e7e5554061E.exit.lr.ph"

"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h2c4bf3e7e5554061E.exit.lr.ph": ; preds = %start
  %1 = getelementptr [0 x { i8, i8 }], [0 x { i8, i8 }]* %singletonuppers.0, i16 0, i16 0, i32 0
  %_46 = trunc i16 %x to i8
  br label %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h2c4bf3e7e5554061E.exit"

"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h2c4bf3e7e5554061E.exit": ; preds = %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h2c4bf3e7e5554061E.exit.backedge", %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h2c4bf3e7e5554061E.exit.lr.ph"
  %lowerstart.072 = phi i16 [ 0, %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h2c4bf3e7e5554061E.exit.lr.ph" ], [ %lowerend, %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h2c4bf3e7e5554061E.exit.backedge" ]
  %iter.sroa.0.071 = phi i8* [ %1, %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h2c4bf3e7e5554061E.exit.lr.ph" ], [ %2, %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h2c4bf3e7e5554061E.exit.backedge" ]
  %2 = getelementptr inbounds i8, i8* %iter.sroa.0.071, i16 2
  %upper = load i8, i8* %iter.sroa.0.071, align 1
  %3 = getelementptr inbounds i8, i8* %iter.sroa.0.071, i16 1
  %lowercount = load i8, i8* %3, align 1
  %_23 = zext i8 %lowercount to i16
  %lowerend = add i16 %lowerstart.072, %_23
  %_25 = icmp eq i8 %upper, %xupper
  br i1 %_25, label %bb9, label %bb8

bb7:                                              ; preds = %bb8, %bb22, %start
  %4 = getelementptr inbounds [0 x i8], [0 x i8]* %normal.0, i16 0, i16 %normal.1
  %_13.i.i2565 = icmp eq i16 %normal.1, 0
  br i1 %_13.i.i2565, label %bb19, label %bb28.preheader

bb28.preheader:                                   ; preds = %bb7
  %5 = getelementptr [0 x i8], [0 x i8]* %normal.0, i16 0, i16 0
  %6 = zext i16 %x to i32
  br label %bb28

bb8:                                              ; preds = %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h2c4bf3e7e5554061E.exit"
  %_48 = icmp ugt i8 %upper, %xupper
  %_13.i = icmp eq i8* %2, %0
  %or.cond = or i1 %_48, %_13.i
  br i1 %or.cond, label %bb7, label %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h2c4bf3e7e5554061E.exit.backedge"

bb9:                                              ; preds = %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h2c4bf3e7e5554061E.exit"
  %_3.i.i = icmp ult i16 %lowerend, %lowerstart.072
  br i1 %_3.i.i, label %bb2.i.i, label %bb1.i.i

bb1.i.i:                                          ; preds = %bb9
  %_8.i.i = icmp ugt i16 %lowerend, %singletonlowers.1
  br i1 %_8.i.i, label %bb5.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h349d9c187345980eE.exit"

bb2.i.i:                                          ; preds = %bb9
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %lowerstart.072, i16 %lowerend, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18886 to %"panic::Location"*))
  unreachable

bb5.i.i:                                          ; preds = %bb1.i.i
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %lowerend, i16 %singletonlowers.1, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18886 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h349d9c187345980eE.exit": ; preds = %bb1.i.i
  %7 = getelementptr inbounds [0 x i8], [0 x i8]* %singletonlowers.0, i16 0, i16 %lowerstart.072
  %8 = getelementptr inbounds i8, i8* %7, i16 %_23
  br label %bb12

bb12:                                             ; preds = %bb16, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h349d9c187345980eE.exit"
  %iter1.sroa.0.0 = phi i8* [ %7, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h349d9c187345980eE.exit" ], [ %9, %bb16 ]
  %_13.i32 = icmp eq i8* %iter1.sroa.0.0, %8
  br i1 %_13.i32, label %bb22, label %bb16

bb16:                                             ; preds = %bb12
  %9 = getelementptr inbounds i8, i8* %iter1.sroa.0.0, i16 1
  %lower = load i8, i8* %iter1.sroa.0.0, align 1
  %_44 = icmp eq i8 %lower, %_46
  br i1 %_44, label %bb19, label %bb12

bb19:                                             ; preds = %bb16, %bb33, %bb34, %bb7
  %.0 = phi i1 [ true, %bb7 ], [ %current.068, %bb33 ], [ %15, %bb34 ], [ false, %bb16 ]
  ret i1 %.0

bb22:                                             ; preds = %bb12
  %_13.i.old = icmp eq i8* %2, %0
  br i1 %_13.i.old, label %bb7, label %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h2c4bf3e7e5554061E.exit.backedge"

"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h2c4bf3e7e5554061E.exit.backedge": ; preds = %bb22, %bb8
  br label %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h2c4bf3e7e5554061E.exit"

bb28:                                             ; preds = %bb28.preheader, %bb34
  %current.068 = phi i1 [ %15, %bb34 ], [ true, %bb28.preheader ]
  %x2.067 = phi i32 [ %14, %bb34 ], [ %6, %bb28.preheader ]
  %normal.sroa.0.066 = phi i8* [ %normal.sroa.0.3, %bb34 ], [ %5, %bb28.preheader ]
  %10 = getelementptr inbounds i8, i8* %normal.sroa.0.066, i16 1
  %.val.i.i.i26 = load i8, i8* %normal.sroa.0.066, align 1, !alias.scope !1755
  %_63 = icmp slt i8 %.val.i.i.i26, 0
  br i1 %_63, label %bb30, label %bb29

bb29:                                             ; preds = %bb28
  %11 = zext i8 %.val.i.i.i26 to i32
  br label %bb33

bb30:                                             ; preds = %bb28
  %_13.i.i = icmp eq i8* %10, %4
  br i1 %_13.i.i, label %bb2.i, label %"_ZN4core6option15Option$LT$T$GT$6unwrap17h32a94c6af1c596f0E.exit"

bb2.i:                                            ; preds = %bb30
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [43 x i8] }>* @alloc18613 to [0 x i8]*), i16 43, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18888 to %"panic::Location"*))
  unreachable

"_ZN4core6option15Option$LT$T$GT$6unwrap17h32a94c6af1c596f0E.exit": ; preds = %bb30
  %_68 = and i8 %.val.i.i.i26, 127
  %_67 = zext i8 %_68 to i32
  %_66 = shl nuw nsw i32 %_67, 8
  %12 = getelementptr inbounds i8, i8* %normal.sroa.0.066, i16 2
  %.val.i.i.i = load i8, i8* %10, align 1, !alias.scope !1760
  %_70 = zext i8 %.val.i.i.i to i32
  %13 = or i32 %_66, %_70
  br label %bb33

bb33:                                             ; preds = %bb29, %"_ZN4core6option15Option$LT$T$GT$6unwrap17h32a94c6af1c596f0E.exit"
  %normal.sroa.0.3 = phi i8* [ %12, %"_ZN4core6option15Option$LT$T$GT$6unwrap17h32a94c6af1c596f0E.exit" ], [ %10, %bb29 ]
  %len.0 = phi i32 [ %13, %"_ZN4core6option15Option$LT$T$GT$6unwrap17h32a94c6af1c596f0E.exit" ], [ %11, %bb29 ]
  %14 = sub i32 %x2.067, %len.0
  %_76 = icmp slt i32 %14, 0
  br i1 %_76, label %bb19, label %bb34

bb34:                                             ; preds = %bb33
  %15 = xor i1 %current.068, true
  %_13.i.i25 = icmp eq i8* %normal.sroa.0.3, %4
  br i1 %_13.i.i25, label %bb19, label %bb28
}

; core::unicode::printable::is_printable
; Function Attrs: uwtable
define zeroext i1 @_ZN4core7unicode9printable12is_printable17h91d3b28d6b01d70eE(i32 %x) unnamed_addr addrspace(1) #2 {
start:
  %0 = icmp ult i32 %x, 1114112
  tail call addrspace(1) void @llvm.assume(i1 %0)
  %lower = trunc i32 %x to i16
  %_6 = icmp ult i32 %x, 65536
  br i1 %_6, label %bb2, label %bb1

bb1:                                              ; preds = %start
  %_15 = icmp ult i32 %x, 131072
  br i1 %_15, label %bb5, label %bb4

bb2:                                              ; preds = %start
; call core::unicode::printable::check
  %1 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core7unicode9printable5check17h2dcb736e2dcd86e6E(i16 %lower, [0 x { i8, i8 }]* noalias nonnull readonly align 1 bitcast (<{ [82 x i8] }>* @alloc748 to [0 x { i8, i8 }]*), i16 41, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [290 x i8] }>* @alloc18889 to [0 x i8]*), i16 290, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [309 x i8] }>* @alloc18890 to [0 x i8]*), i16 309)
  br label %bb13

bb4:                                              ; preds = %bb1
  %x.off = add nsw i32 %x, -173790
  %2 = icmp ult i32 %x.off, 34
  %x.off9 = add nsw i32 %x, -177973
  %3 = icmp ult i32 %x.off9, 11
  %or.cond = or i1 %2, %3
  %4 = and i32 %x, 2097150
  %5 = icmp eq i32 %4, 178206
  %or.cond25 = or i1 %5, %or.cond
  %x.off11 = add nsw i32 %x, -183970
  %6 = icmp ult i32 %x.off11, 14
  %or.cond27 = or i1 %6, %or.cond25
  %x.off12 = add nsw i32 %x, -191457
  %7 = icmp ult i32 %x.off12, 3103
  %or.cond29 = or i1 %7, %or.cond27
  %x.off13 = add nsw i32 %x, -195102
  %8 = icmp ult i32 %x.off13, 1506
  %or.cond31 = or i1 %8, %or.cond29
  %x.off14 = add nsw i32 %x, -201547
  %9 = icmp ult i32 %x.off14, 716213
  %or.cond33 = or i1 %9, %or.cond31
  br i1 %or.cond33, label %bb13, label %bb49

bb5:                                              ; preds = %bb1
; call core::unicode::printable::check
  %10 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core7unicode9printable5check17h2dcb736e2dcd86e6E(i16 %lower, [0 x { i8, i8 }]* noalias nonnull readonly align 1 bitcast (<{ [76 x i8] }>* @alloc794 to [0 x { i8, i8 }]*), i16 38, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [175 x i8] }>* @alloc18891 to [0 x i8]*), i16 175, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [419 x i8] }>* @alloc18892 to [0 x i8]*), i16 419)
  br label %bb13

bb13:                                             ; preds = %bb4, %bb2, %bb5
  %.0.shrunk = phi i1 [ %1, %bb2 ], [ %10, %bb5 ], [ false, %bb4 ]
  ret i1 %.0.shrunk

bb49:                                             ; preds = %bb4
  %x.off15 = add nsw i32 %x, -918000
  %11 = icmp ugt i32 %x.off15, 196111
  ret i1 %11
}

; core::task::wake::RawWaker::new
; Function Attrs: norecurse nounwind readnone uwtable
define { i8*, i8* } @_ZN4core4task4wake8RawWaker3new17h74fcb406001c1979E({}* %data, %"task::wake::RawWakerVTable"* noalias readonly align 1 dereferenceable(8) %vtable) unnamed_addr addrspace(1) #1 {
start:
  %0 = bitcast {}* %data to i8*
  %1 = getelementptr inbounds %"task::wake::RawWakerVTable", %"task::wake::RawWakerVTable"* %vtable, i16 0, i32 0, i16 0
  %2 = insertvalue { i8*, i8* } undef, i8* %0, 0
  %3 = insertvalue { i8*, i8* } %2, i8* %1, 1
  ret { i8*, i8* } %3
}

; core::task::wake::RawWakerVTable::new
; Function Attrs: nofree norecurse nounwind uwtable writeonly
define void @_ZN4core4task4wake14RawWakerVTable3new17hfc404894cdac5e69E(%"task::wake::RawWakerVTable"* noalias nocapture sret dereferenceable(8) %0, { i8*, i8* } ({}*) addrspace(1)* nonnull %clone, void ({}*) addrspace(1)* nonnull %wake, void ({}*) addrspace(1)* nonnull %wake_by_ref, void ({}*) addrspace(1)* nonnull %drop) unnamed_addr addrspace(1) #3 {
start:
  %1 = bitcast %"task::wake::RawWakerVTable"* %0 to { i8*, i8* } ({}*) addrspace(1)**
  store { i8*, i8* } ({}*) addrspace(1)* %clone, { i8*, i8* } ({}*) addrspace(1)** %1, align 1
  %2 = getelementptr inbounds %"task::wake::RawWakerVTable", %"task::wake::RawWakerVTable"* %0, i16 0, i32 3
  store void ({}*) addrspace(1)* %wake, void ({}*) addrspace(1)** %2, align 1
  %3 = getelementptr inbounds %"task::wake::RawWakerVTable", %"task::wake::RawWakerVTable"* %0, i16 0, i32 5
  store void ({}*) addrspace(1)* %wake_by_ref, void ({}*) addrspace(1)** %3, align 1
  %4 = getelementptr inbounds %"task::wake::RawWakerVTable", %"task::wake::RawWakerVTable"* %0, i16 0, i32 7
  store void ({}*) addrspace(1)* %drop, void ({}*) addrspace(1)** %4, align 1
  ret void
}

; <core::task::wake::Context as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN62_$LT$core..task..wake..Context$u20$as$u20$core..fmt..Debug$GT$3fmt17hb247445ab52f2018E"(i8** noalias readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_6 = alloca %"fmt::builders::DebugStruct", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_6, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !1765, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !1765, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !1765, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [7 x i8] }>* @alloc18905 to [0 x i8]*), i16 7), !noalias !1774
  %7 = bitcast %"fmt::builders::DebugStruct"* %_6 to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !1774, !noalias !1775
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_6, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !1774, !noalias !1775
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_6, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !1774, !noalias !1775
  %_12.0 = bitcast i8** %self to {}*
; call core::fmt::builders::DebugStruct::field
  %_4 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %_6, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc18906 to [0 x i8]*), i16 5, {}* nonnull align 1 %_12.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({ i8*, i8* }**) addrspace(1)*, i16, i16, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.q to [3 x i16]*))
  %11 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_4, i16 0, i32 5
  %12 = load i8, i8* %11, align 1, !range !87
  %_2.i = icmp eq i8 %12, 0
  %.phi.trans.insert.i = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_4, i16 0, i32 3
  %.pre.i = load i8, i8* %.phi.trans.insert.i, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %13 = bitcast %"fmt::builders::DebugStruct"* %_4 to i32**
  %_21.i.i.i.i = load i32*, i32** %13, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !1776, !noalias !1779
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %14 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %15 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %15, align 1, !nonnull !568
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %17 = bitcast [3 x i16]** %16 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %17, align 1, !nonnull !568
  %18 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %19 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %18, align 1, !invariant.load !568, !nonnull !568
  br i1 %14, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %20 = call zeroext addrspace(1) i1 %19({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %21 = call zeroext addrspace(1) i1 %19({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %21, %bb3.i.i.i ], [ %20, %bb2.i.i.i ]
  %22 = zext i1 %.0.i.i to i8
  store i8 %22, i8* %.phi.trans.insert.i, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %23 = phi i8 [ %22, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %24 = icmp ne i8 %23, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %24
}

; <core::task::wake::Waker as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN60_$LT$core..task..wake..Waker$u20$as$u20$core..fmt..Debug$GT$3fmt17ha7ccb9d6177dd3a0E"({ i8*, i8* }* noalias readonly align 1 dereferenceable(4) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_9 = alloca %"fmt::builders::DebugStruct", align 1
  %vtable_ptr = alloca %"task::wake::RawWakerVTable"*, align 1
  %0 = bitcast %"task::wake::RawWakerVTable"** %vtable_ptr to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %0)
  %1 = getelementptr inbounds { i8*, i8* }, { i8*, i8* }* %self, i16 0, i32 1
  %2 = bitcast i8** %1 to %"task::wake::RawWakerVTable"**
  %3 = load %"task::wake::RawWakerVTable"*, %"task::wake::RawWakerVTable"** %2, align 1, !nonnull !568
  store %"task::wake::RawWakerVTable"* %3, %"task::wake::RawWakerVTable"** %vtable_ptr, align 1
  %4 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_9, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %4)
  %5 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %5, align 1, !noalias !1782, !nonnull !568
  %6 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %7 = bitcast [3 x i16]** %6 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %7, align 1, !noalias !1782, !nonnull !568
  %8 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %9 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %8, align 1, !invariant.load !568, !noalias !1782, !nonnull !568
  %10 = tail call zeroext addrspace(1) i1 %9({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc18907 to [0 x i8]*), i16 5), !noalias !1791
  %11 = bitcast %"fmt::builders::DebugStruct"* %_9 to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %11, align 1, !alias.scope !1791, !noalias !1792
  %12 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_9, i16 0, i32 3
  %13 = zext i1 %10 to i8
  store i8 %13, i8* %12, align 1, !alias.scope !1791, !noalias !1792
  %14 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_9, i16 0, i32 5
  store i8 0, i8* %14, align 1, !alias.scope !1791, !noalias !1792
  %_15.0 = bitcast { i8*, i8* }* %self to {}*
; call core::fmt::builders::DebugStruct::field
  %_7 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %_9, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19225 to [0 x i8]*), i16 4, {}* nonnull align 1 %_15.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({}**) addrspace(1)*, i16, i16, i1 ({}**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.r to [3 x i16]*))
  %_20.0 = bitcast %"task::wake::RawWakerVTable"** %vtable_ptr to {}*
; call core::fmt::builders::DebugStruct::field
  %_5 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %_7, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc19226 to [0 x i8]*), i16 6, {}* nonnull align 1 %_20.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"task::wake::RawWakerVTable"**) addrspace(1)*, i16, i16, i1 (%"task::wake::RawWakerVTable"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.s to [3 x i16]*))
  %15 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_5, i16 0, i32 5
  %16 = load i8, i8* %15, align 1, !range !87
  %_2.i = icmp eq i8 %16, 0
  %.phi.trans.insert.i = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_5, i16 0, i32 3
  %.pre.i = load i8, i8* %.phi.trans.insert.i, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %17 = bitcast %"fmt::builders::DebugStruct"* %_5 to i32**
  %_21.i.i.i.i = load i32*, i32** %17, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !1793, !noalias !1796
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %18 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %19, align 1, !nonnull !568
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %21 = bitcast [3 x i16]** %20 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %21, align 1, !nonnull !568
  %22 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %23 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %22, align 1, !invariant.load !568, !nonnull !568
  br i1 %18, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %24 = call zeroext addrspace(1) i1 %23({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %25 = call zeroext addrspace(1) i1 %23({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %25, %bb3.i.i.i ], [ %24, %bb2.i.i.i ]
  %26 = zext i1 %.0.i.i to i8
  store i8 %26, i8* %.phi.trans.insert.i, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %27 = phi i8 [ %26, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %28 = icmp ne i8 %27, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %0)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %4)
  ret i1 %28
}

; <core::alloc::layout::LayoutErr as core::fmt::Display>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN69_$LT$core..alloc..layout..LayoutErr$u20$as$u20$core..fmt..Display$GT$3fmt17h1bf6e81e6dbe358dE"(%"alloc::layout::LayoutErr"* noalias nocapture nonnull readonly align 1 %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %0 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i = load {}*, {}** %0, align 1, !noalias !1799, !nonnull !568
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %2 = bitcast [3 x i16]** %1 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %2, align 1, !noalias !1799, !nonnull !568
  %3 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i, i16 3
  %4 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %3, align 1, !invariant.load !568, !noalias !1799, !nonnull !568
  %5 = tail call zeroext addrspace(1) i1 %4({}* nonnull align 1 %_3.0.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [45 x i8] }>* @alloc18910 to [0 x i8]*), i16 45)
  ret i1 %5
}

; <core::alloc::AllocErr as core::fmt::Display>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN60_$LT$core..alloc..AllocErr$u20$as$u20$core..fmt..Display$GT$3fmt17h659ce9c692db8385E"(%"alloc::AllocErr"* noalias nocapture nonnull readonly align 1 %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %0 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i = load {}*, {}** %0, align 1, !noalias !1802, !nonnull !568
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %2 = bitcast [3 x i16]** %1 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %2, align 1, !noalias !1802, !nonnull !568
  %3 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i, i16 3
  %4 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %3, align 1, !invariant.load !568, !noalias !1802, !nonnull !568
  %5 = tail call zeroext addrspace(1) i1 %4({}* nonnull align 1 %_3.0.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [24 x i8] }>* @alloc18911 to [0 x i8]*), i16 24)
  ret i1 %5
}

; core::num::<impl core::convert::From<core::num::NonZeroI16> for i16>::from
; Function Attrs: norecurse nounwind readnone uwtable
define i16 @"_ZN4core3num82_$LT$impl$u20$core..convert..From$LT$core..num..NonZeroI16$GT$$u20$for$u20$i16$GT$4from17ha2db8fded0754f73E"(i16 returned %nonzero) unnamed_addr addrspace(1) #1 {
start:
  ret i16 %nonzero
}

; core::num::<impl core::convert::From<core::num::NonZeroI32> for i32>::from
; Function Attrs: norecurse nounwind readnone uwtable
define i32 @"_ZN4core3num82_$LT$impl$u20$core..convert..From$LT$core..num..NonZeroI32$GT$$u20$for$u20$i32$GT$4from17h04f1f7f042d837ddE"(i32 returned %nonzero) unnamed_addr addrspace(1) #1 {
start:
  ret i32 %nonzero
}

; core::num::<impl core::convert::From<core::num::NonZeroI64> for i64>::from
; Function Attrs: norecurse nounwind readnone uwtable
define i64 @"_ZN4core3num82_$LT$impl$u20$core..convert..From$LT$core..num..NonZeroI64$GT$$u20$for$u20$i64$GT$4from17h69add7030fe88fa3E"(i64 returned %nonzero) unnamed_addr addrspace(1) #1 {
start:
  ret i64 %nonzero
}

; core::num::<impl core::convert::From<core::num::NonZeroI128> for i128>::from
; Function Attrs: norecurse nounwind readnone uwtable
define i128 @"_ZN4core3num84_$LT$impl$u20$core..convert..From$LT$core..num..NonZeroI128$GT$$u20$for$u20$i128$GT$4from17hb51029429c636000E"(i128 returned %nonzero) unnamed_addr addrspace(1) #1 {
start:
  ret i128 %nonzero
}

; <core::num::NonZeroU8 as core::str::FromStr>::from_str
; Function Attrs: nounwind uwtable
define { i8, i8 } @"_ZN59_$LT$core..num..NonZeroU8$u20$as$u20$core..str..FromStr$GT$8from_str17ha6a6f531fd6577a8E"([0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1) unnamed_addr addrspace(1) #9 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = icmp eq i16 %src.1, 0
  br i1 %0, label %_ZN4core3num14from_str_radix17h16198f62b04d08bbE.exit, label %bb17.i

bb17.i:                                           ; preds = %start
  %1 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 0
  %2 = load i8, i8* %1, align 1, !alias.scope !1805
  %cond.i = icmp eq i8 %2, 43
  br i1 %cond.i, label %bb25.i, label %bb32.split.i

bb25.i:                                           ; preds = %bb17.i
  %3 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 1
  %_7.i.i.i.i84.i = add i16 %src.1, -1
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i85.i = bitcast i8* %3 to [0 x i8]*
  %4 = icmp eq i16 %_7.i.i.i.i84.i, 0
  br i1 %4, label %_ZN4core3num14from_str_radix17h16198f62b04d08bbE.exit, label %bb32.split.i

bb32.split.i:                                     ; preds = %bb25.i, %bb17.i
  %_35.sroa.10.0102.i = phi i16 [ %_7.i.i.i.i84.i, %bb25.i ], [ %src.1, %bb17.i ]
  %_35.sroa.6.0101.i = phi [0 x i8]* [ %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i85.i, %bb25.i ], [ %src.0, %bb17.i ]
  %5 = getelementptr [0 x i8], [0 x i8]* %_35.sroa.6.0101.i, i16 0, i16 0
  %6 = getelementptr inbounds [0 x i8], [0 x i8]* %_35.sroa.6.0101.i, i16 0, i16 %_35.sroa.10.0102.i
  br label %bb34.us113.i

bb34.us113.i:                                     ; preds = %bb48.us134.i, %bb32.split.i
  %result.0.us114.i = phi i8 [ %14, %bb48.us134.i ], [ 0, %bb32.split.i ]
  %iter.sroa.0.0.us115.i = phi i8* [ %8, %bb48.us134.i ], [ %5, %bb32.split.i ]
  %7 = icmp ne i8* %iter.sroa.0.0.us115.i, null
  tail call addrspace(1) void @llvm.assume(i1 %7)
  %_13.i78.us116.i = icmp eq i8* %iter.sroa.0.0.us115.i, %6
  br i1 %_13.i78.us116.i, label %_ZN4core3num14from_str_radix17h16198f62b04d08bbE.exit, label %bb38.us117.i

bb38.us117.i:                                     ; preds = %bb34.us113.i
  %8 = getelementptr inbounds i8, i8* %iter.sroa.0.0.us115.i, i16 1
  %c.us118.i = load i8, i8* %iter.sroa.0.0.us115.i, align 1, !alias.scope !1805
  %_67.us119.i = zext i8 %c.us118.i to i32
  %self.off.i58.us121.i = add nsw i32 %_67.us119.i, -48
  %9 = icmp ult i32 %self.off.i58.us121.i, 10
  br i1 %9, label %bb42.us133.i, label %_ZN4core3num14from_str_radix17h16198f62b04d08bbE.exit

bb42.us133.i:                                     ; preds = %bb38.us117.i
  %10 = tail call addrspace(1) { i8, i1 } @llvm.umul.with.overflow.i8(i8 %result.0.us114.i, i8 10) #20
  %11 = extractvalue { i8, i1 } %10, 1
  br i1 %11, label %_ZN4core3num14from_str_radix17h16198f62b04d08bbE.exit, label %bb48.us134.i

bb48.us134.i:                                     ; preds = %bb42.us133.i
  %12 = extractvalue { i8, i1 } %10, 0
  %_4.i50.us135.i = trunc i32 %self.off.i58.us121.i to i8
  %13 = tail call addrspace(1) { i8, i1 } @llvm.uadd.with.overflow.i8(i8 %12, i8 %_4.i50.us135.i) #20
  %14 = extractvalue { i8, i1 } %13, 0
  %15 = extractvalue { i8, i1 } %13, 1
  br i1 %15, label %_ZN4core3num14from_str_radix17h16198f62b04d08bbE.exit, label %bb34.us113.i

_ZN4core3num14from_str_radix17h16198f62b04d08bbE.exit: ; preds = %bb34.us113.i, %bb38.us117.i, %bb42.us133.i, %bb48.us134.i, %start, %bb25.i
  %.sroa.10.0.i = phi i8 [ 0, %start ], [ 0, %bb25.i ], [ 2, %bb42.us133.i ], [ 2, %bb48.us134.i ], [ %result.0.us114.i, %bb34.us113.i ], [ 1, %bb38.us117.i ]
  %.sroa.0.0.i = phi i1 [ false, %start ], [ false, %bb25.i ], [ false, %bb42.us133.i ], [ false, %bb48.us134.i ], [ true, %bb34.us113.i ], [ false, %bb38.us117.i ]
  %16 = icmp eq i8 %.sroa.10.0.i, 0
  %17 = and i1 %.sroa.0.0.i, %16
  %.sroa.3.0 = select i1 %17, i8 4, i8 %.sroa.10.0.i
  %not..sroa.0.0.i = xor i1 %.sroa.0.0.i, true
  %narrow = or i1 %16, %not..sroa.0.0.i
  %.sroa.0.0 = zext i1 %narrow to i8
  %18 = insertvalue { i8, i8 } undef, i8 %.sroa.0.0, 0
  %19 = insertvalue { i8, i8 } %18, i8 %.sroa.3.0, 1
  ret { i8, i8 } %19
}

; <core::num::NonZeroU16 as core::str::FromStr>::from_str
; Function Attrs: nounwind uwtable
define void @"_ZN60_$LT$core..num..NonZeroU16$u20$as$u20$core..str..FromStr$GT$8from_str17h96ae2e95c553f314E"(%"result::Result<num::NonZeroU16, num::ParseIntError>"* noalias nocapture sret dereferenceable(3) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1) unnamed_addr addrspace(1) #9 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %1 = icmp eq i16 %src.1, 0
  br i1 %1, label %bb5, label %bb17.i

bb17.i:                                           ; preds = %start
  %2 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 0
  %3 = load i8, i8* %2, align 1, !alias.scope !1808, !noalias !1811
  %cond.i = icmp eq i8 %3, 43
  br i1 %cond.i, label %bb25.i, label %bb32.split.i

bb25.i:                                           ; preds = %bb17.i
  %4 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 1
  %_7.i.i.i.i92.i = add i16 %src.1, -1
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i93.i = bitcast i8* %4 to [0 x i8]*
  %5 = icmp eq i16 %_7.i.i.i.i92.i, 0
  br i1 %5, label %bb5, label %bb32.split.i

bb32.split.i:                                     ; preds = %bb25.i, %bb17.i
  %_35.sroa.10.0114.i = phi i16 [ %_7.i.i.i.i92.i, %bb25.i ], [ %src.1, %bb17.i ]
  %_35.sroa.6.0113.i = phi [0 x i8]* [ %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i93.i, %bb25.i ], [ %src.0, %bb17.i ]
  %6 = getelementptr [0 x i8], [0 x i8]* %_35.sroa.6.0113.i, i16 0, i16 0
  %7 = getelementptr inbounds [0 x i8], [0 x i8]* %_35.sroa.6.0113.i, i16 0, i16 %_35.sroa.10.0114.i
  br label %bb34.us129.i

bb34.us129.i:                                     ; preds = %bb48.us150.i, %bb32.split.i
  %result.0.us130.i = phi i16 [ %15, %bb48.us150.i ], [ 0, %bb32.split.i ]
  %iter.sroa.0.0.us131.i = phi i8* [ %9, %bb48.us150.i ], [ %6, %bb32.split.i ]
  %8 = icmp ne i8* %iter.sroa.0.0.us131.i, null
  tail call addrspace(1) void @llvm.assume(i1 %8), !noalias !1811
  %_13.i86.us132.i = icmp eq i8* %iter.sroa.0.0.us131.i, %7
  br i1 %_13.i86.us132.i, label %bb3, label %bb38.us133.i

bb38.us133.i:                                     ; preds = %bb34.us129.i
  %9 = getelementptr inbounds i8, i8* %iter.sroa.0.0.us131.i, i16 1
  %c.us134.i = load i8, i8* %iter.sroa.0.0.us131.i, align 1, !alias.scope !1808, !noalias !1811
  %_67.us135.i = zext i8 %c.us134.i to i32
  %self.off.i66.us137.i = add nsw i32 %_67.us135.i, -48
  %10 = icmp ult i32 %self.off.i66.us137.i, 10
  br i1 %10, label %bb42.us149.i, label %bb5

bb42.us149.i:                                     ; preds = %bb38.us133.i
  %11 = tail call addrspace(1) { i16, i1 } @llvm.umul.with.overflow.i16(i16 %result.0.us130.i, i16 10) #20
  %12 = extractvalue { i16, i1 } %11, 1
  br i1 %12, label %bb5, label %bb48.us150.i

bb48.us150.i:                                     ; preds = %bb42.us149.i
  %13 = extractvalue { i16, i1 } %11, 0
  %_4.i58.us151.i = trunc i32 %self.off.i66.us137.i to i16
  %14 = tail call addrspace(1) { i16, i1 } @llvm.uadd.with.overflow.i16(i16 %13, i16 %_4.i58.us151.i) #20
  %15 = extractvalue { i16, i1 } %14, 0
  %16 = extractvalue { i16, i1 } %14, 1
  br i1 %16, label %bb5, label %bb34.us129.i

bb3:                                              ; preds = %bb34.us129.i
  %17 = icmp eq i16 %result.0.us130.i, 0
  br i1 %17, label %bb1.i, label %bb3.i

bb1.i:                                            ; preds = %bb3
  %18 = getelementptr inbounds %"result::Result<num::NonZeroU16, num::ParseIntError>", %"result::Result<num::NonZeroU16, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 4, i8* %18, align 1, !alias.scope !1813
  br label %bb6

bb3.i:                                            ; preds = %bb3
  %19 = getelementptr inbounds %"result::Result<num::NonZeroU16, num::ParseIntError>", %"result::Result<num::NonZeroU16, num::ParseIntError>"* %0, i16 0, i32 2
  %20 = bitcast [2 x i8]* %19 to i16*
  store i16 %result.0.us130.i, i16* %20, align 1, !alias.scope !1813
  br label %bb6

bb5:                                              ; preds = %bb38.us133.i, %bb42.us149.i, %bb48.us150.i, %start, %bb25.i
  %_5.sroa.9.0.ph.off0 = phi i8 [ 0, %bb25.i ], [ 0, %start ], [ 1, %bb38.us133.i ], [ 2, %bb42.us149.i ], [ 2, %bb48.us150.i ]
  %21 = getelementptr inbounds %"result::Result<num::NonZeroU16, num::ParseIntError>", %"result::Result<num::NonZeroU16, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 %_5.sroa.9.0.ph.off0, i8* %21, align 1, !alias.scope !1816
  br label %bb6

bb6:                                              ; preds = %bb3.i, %bb1.i, %bb5
  %.sink.i.sink = phi i8 [ 1, %bb5 ], [ 1, %bb1.i ], [ 0, %bb3.i ]
  %22 = getelementptr inbounds %"result::Result<num::NonZeroU16, num::ParseIntError>", %"result::Result<num::NonZeroU16, num::ParseIntError>"* %0, i16 0, i32 0, i16 0
  store i8 %.sink.i.sink, i8* %22, align 1, !alias.scope !1819
  ret void
}

; <core::num::NonZeroU32 as core::str::FromStr>::from_str
; Function Attrs: nounwind uwtable
define void @"_ZN60_$LT$core..num..NonZeroU32$u20$as$u20$core..str..FromStr$GT$8from_str17hb0b0d75f3210cbb7E"(%"result::Result<num::NonZeroU32, num::ParseIntError>"* noalias nocapture sret dereferenceable(5) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1) unnamed_addr addrspace(1) #9 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %1 = icmp eq i16 %src.1, 0
  br i1 %1, label %bb5, label %bb17.i

bb17.i:                                           ; preds = %start
  %2 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 0
  %3 = load i8, i8* %2, align 1, !alias.scope !1820, !noalias !1823
  %cond.i = icmp eq i8 %3, 43
  br i1 %cond.i, label %bb25.i, label %bb32.split.i

bb25.i:                                           ; preds = %bb17.i
  %4 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 1
  %_7.i.i.i.i88.i = add i16 %src.1, -1
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i89.i = bitcast i8* %4 to [0 x i8]*
  %5 = icmp eq i16 %_7.i.i.i.i88.i, 0
  br i1 %5, label %bb5, label %bb32.split.i

bb32.split.i:                                     ; preds = %bb25.i, %bb17.i
  %_35.sroa.10.0110.i = phi i16 [ %_7.i.i.i.i88.i, %bb25.i ], [ %src.1, %bb17.i ]
  %_35.sroa.6.0109.i = phi [0 x i8]* [ %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i89.i, %bb25.i ], [ %src.0, %bb17.i ]
  %6 = getelementptr [0 x i8], [0 x i8]* %_35.sroa.6.0109.i, i16 0, i16 0
  %7 = getelementptr inbounds [0 x i8], [0 x i8]* %_35.sroa.6.0109.i, i16 0, i16 %_35.sroa.10.0110.i
  br label %bb34.us125.i

bb34.us125.i:                                     ; preds = %bb48.us146.i, %bb32.split.i
  %result.0.us126.i = phi i32 [ %15, %bb48.us146.i ], [ 0, %bb32.split.i ]
  %iter.sroa.0.0.us127.i = phi i8* [ %9, %bb48.us146.i ], [ %6, %bb32.split.i ]
  %8 = icmp ne i8* %iter.sroa.0.0.us127.i, null
  tail call addrspace(1) void @llvm.assume(i1 %8), !noalias !1823
  %_13.i82.us128.i = icmp eq i8* %iter.sroa.0.0.us127.i, %7
  br i1 %_13.i82.us128.i, label %bb3, label %bb38.us129.i

bb38.us129.i:                                     ; preds = %bb34.us125.i
  %9 = getelementptr inbounds i8, i8* %iter.sroa.0.0.us127.i, i16 1
  %c.us130.i = load i8, i8* %iter.sroa.0.0.us127.i, align 1, !alias.scope !1820, !noalias !1823
  %_67.us131.i = zext i8 %c.us130.i to i32
  %self.off.i62.us133.i = add nsw i32 %_67.us131.i, -48
  %10 = icmp ult i32 %self.off.i62.us133.i, 10
  br i1 %10, label %bb42.us145.i, label %bb5

bb42.us145.i:                                     ; preds = %bb38.us129.i
  %11 = tail call addrspace(1) { i32, i1 } @llvm.umul.with.overflow.i32(i32 %result.0.us126.i, i32 10) #20
  %12 = extractvalue { i32, i1 } %11, 1
  br i1 %12, label %bb5, label %bb48.us146.i

bb48.us146.i:                                     ; preds = %bb42.us145.i
  %13 = extractvalue { i32, i1 } %11, 0
  %14 = tail call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %13, i32 %self.off.i62.us133.i) #20
  %15 = extractvalue { i32, i1 } %14, 0
  %16 = extractvalue { i32, i1 } %14, 1
  br i1 %16, label %bb5, label %bb34.us125.i

bb3:                                              ; preds = %bb34.us125.i
  %17 = icmp eq i32 %result.0.us126.i, 0
  br i1 %17, label %bb1.i, label %bb3.i

bb1.i:                                            ; preds = %bb3
  %18 = getelementptr inbounds %"result::Result<num::NonZeroU32, num::ParseIntError>", %"result::Result<num::NonZeroU32, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 4, i8* %18, align 1, !alias.scope !1825
  br label %bb6

bb3.i:                                            ; preds = %bb3
  %19 = getelementptr inbounds %"result::Result<num::NonZeroU32, num::ParseIntError>", %"result::Result<num::NonZeroU32, num::ParseIntError>"* %0, i16 0, i32 2
  %20 = bitcast [4 x i8]* %19 to i32*
  store i32 %result.0.us126.i, i32* %20, align 1, !alias.scope !1825
  br label %bb6

bb5:                                              ; preds = %bb38.us129.i, %bb42.us145.i, %bb48.us146.i, %start, %bb25.i
  %_5.sroa.9.0.ph.off0 = phi i8 [ 0, %bb25.i ], [ 0, %start ], [ 1, %bb38.us129.i ], [ 2, %bb42.us145.i ], [ 2, %bb48.us146.i ]
  %21 = getelementptr inbounds %"result::Result<num::NonZeroU32, num::ParseIntError>", %"result::Result<num::NonZeroU32, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 %_5.sroa.9.0.ph.off0, i8* %21, align 1, !alias.scope !1828
  br label %bb6

bb6:                                              ; preds = %bb3.i, %bb1.i, %bb5
  %.sink.i.sink = phi i8 [ 1, %bb5 ], [ 1, %bb1.i ], [ 0, %bb3.i ]
  %22 = getelementptr inbounds %"result::Result<num::NonZeroU32, num::ParseIntError>", %"result::Result<num::NonZeroU32, num::ParseIntError>"* %0, i16 0, i32 0, i16 0
  store i8 %.sink.i.sink, i8* %22, align 1, !alias.scope !1831
  ret void
}

; <core::num::NonZeroU64 as core::str::FromStr>::from_str
; Function Attrs: nounwind uwtable
define void @"_ZN60_$LT$core..num..NonZeroU64$u20$as$u20$core..str..FromStr$GT$8from_str17h47678eae99363d65E"(%"result::Result<num::NonZeroU64, num::ParseIntError>"* noalias nocapture sret dereferenceable(9) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1) unnamed_addr addrspace(1) #9 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %1 = icmp eq i16 %src.1, 0
  br i1 %1, label %bb5, label %bb17.i

bb17.i:                                           ; preds = %start
  %2 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 0
  %3 = load i8, i8* %2, align 1, !alias.scope !1832, !noalias !1835
  %cond.i = icmp eq i8 %3, 43
  br i1 %cond.i, label %bb25.i, label %bb32.split.i

bb25.i:                                           ; preds = %bb17.i
  %4 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 1
  %_7.i.i.i.i92.i = add i16 %src.1, -1
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i93.i = bitcast i8* %4 to [0 x i8]*
  %5 = icmp eq i16 %_7.i.i.i.i92.i, 0
  br i1 %5, label %bb5, label %bb32.split.i

bb32.split.i:                                     ; preds = %bb25.i, %bb17.i
  %_35.sroa.10.0114.i = phi i16 [ %_7.i.i.i.i92.i, %bb25.i ], [ %src.1, %bb17.i ]
  %_35.sroa.6.0113.i = phi [0 x i8]* [ %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i93.i, %bb25.i ], [ %src.0, %bb17.i ]
  %6 = getelementptr [0 x i8], [0 x i8]* %_35.sroa.6.0113.i, i16 0, i16 0
  %7 = getelementptr inbounds [0 x i8], [0 x i8]* %_35.sroa.6.0113.i, i16 0, i16 %_35.sroa.10.0114.i
  br label %bb34.us129.i

bb34.us129.i:                                     ; preds = %bb48.us150.i, %bb32.split.i
  %result.0.us130.i = phi i64 [ %15, %bb48.us150.i ], [ 0, %bb32.split.i ]
  %iter.sroa.0.0.us131.i = phi i8* [ %9, %bb48.us150.i ], [ %6, %bb32.split.i ]
  %8 = icmp ne i8* %iter.sroa.0.0.us131.i, null
  tail call addrspace(1) void @llvm.assume(i1 %8), !noalias !1835
  %_13.i86.us132.i = icmp eq i8* %iter.sroa.0.0.us131.i, %7
  br i1 %_13.i86.us132.i, label %bb3, label %bb38.us133.i

bb38.us133.i:                                     ; preds = %bb34.us129.i
  %9 = getelementptr inbounds i8, i8* %iter.sroa.0.0.us131.i, i16 1
  %c.us134.i = load i8, i8* %iter.sroa.0.0.us131.i, align 1, !alias.scope !1832, !noalias !1835
  %_67.us135.i = zext i8 %c.us134.i to i32
  %self.off.i66.us137.i = add nsw i32 %_67.us135.i, -48
  %10 = icmp ult i32 %self.off.i66.us137.i, 10
  br i1 %10, label %bb42.us149.i, label %bb5

bb42.us149.i:                                     ; preds = %bb38.us133.i
  %11 = tail call addrspace(1) { i64, i1 } @llvm.umul.with.overflow.i64(i64 %result.0.us130.i, i64 10) #20
  %12 = extractvalue { i64, i1 } %11, 1
  br i1 %12, label %bb5, label %bb48.us150.i

bb48.us150.i:                                     ; preds = %bb42.us149.i
  %13 = extractvalue { i64, i1 } %11, 0
  %_4.i58.us151.i = zext i32 %self.off.i66.us137.i to i64
  %14 = tail call addrspace(1) { i64, i1 } @llvm.uadd.with.overflow.i64(i64 %13, i64 %_4.i58.us151.i) #20
  %15 = extractvalue { i64, i1 } %14, 0
  %16 = extractvalue { i64, i1 } %14, 1
  br i1 %16, label %bb5, label %bb34.us129.i

bb3:                                              ; preds = %bb34.us129.i
  %17 = icmp eq i64 %result.0.us130.i, 0
  br i1 %17, label %bb1.i, label %bb3.i

bb1.i:                                            ; preds = %bb3
  %18 = getelementptr inbounds %"result::Result<num::NonZeroU64, num::ParseIntError>", %"result::Result<num::NonZeroU64, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 4, i8* %18, align 1, !alias.scope !1837
  br label %bb6

bb3.i:                                            ; preds = %bb3
  %19 = getelementptr inbounds %"result::Result<num::NonZeroU64, num::ParseIntError>", %"result::Result<num::NonZeroU64, num::ParseIntError>"* %0, i16 0, i32 2
  %20 = bitcast [8 x i8]* %19 to i64*
  store i64 %result.0.us130.i, i64* %20, align 1, !alias.scope !1837
  br label %bb6

bb5:                                              ; preds = %bb38.us133.i, %bb42.us149.i, %bb48.us150.i, %start, %bb25.i
  %_5.sroa.9.0.ph.off0 = phi i8 [ 0, %bb25.i ], [ 0, %start ], [ 1, %bb38.us133.i ], [ 2, %bb42.us149.i ], [ 2, %bb48.us150.i ]
  %21 = getelementptr inbounds %"result::Result<num::NonZeroU64, num::ParseIntError>", %"result::Result<num::NonZeroU64, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 %_5.sroa.9.0.ph.off0, i8* %21, align 1, !alias.scope !1840
  br label %bb6

bb6:                                              ; preds = %bb3.i, %bb1.i, %bb5
  %.sink.i.sink = phi i8 [ 1, %bb5 ], [ 1, %bb1.i ], [ 0, %bb3.i ]
  %22 = getelementptr inbounds %"result::Result<num::NonZeroU64, num::ParseIntError>", %"result::Result<num::NonZeroU64, num::ParseIntError>"* %0, i16 0, i32 0, i16 0
  store i8 %.sink.i.sink, i8* %22, align 1, !alias.scope !1843
  ret void
}

; <core::num::NonZeroU128 as core::str::FromStr>::from_str
; Function Attrs: nounwind uwtable
define void @"_ZN61_$LT$core..num..NonZeroU128$u20$as$u20$core..str..FromStr$GT$8from_str17h499c7ff3d85ee786E"(%"result::Result<num::NonZeroU128, num::ParseIntError>"* noalias nocapture sret dereferenceable(17) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1) unnamed_addr addrspace(1) #9 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %1 = icmp eq i16 %src.1, 0
  br i1 %1, label %bb5, label %bb17.i

bb17.i:                                           ; preds = %start
  %2 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 0
  %3 = load i8, i8* %2, align 1, !alias.scope !1844, !noalias !1847
  %cond.i = icmp eq i8 %3, 43
  br i1 %cond.i, label %bb25.i, label %bb32.split.i

bb25.i:                                           ; preds = %bb17.i
  %4 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 1
  %_7.i.i.i.i92.i = add i16 %src.1, -1
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i93.i = bitcast i8* %4 to [0 x i8]*
  %5 = icmp eq i16 %_7.i.i.i.i92.i, 0
  br i1 %5, label %bb5, label %bb32.split.i

bb32.split.i:                                     ; preds = %bb25.i, %bb17.i
  %_35.sroa.10.0114.i = phi i16 [ %_7.i.i.i.i92.i, %bb25.i ], [ %src.1, %bb17.i ]
  %_35.sroa.6.0113.i = phi [0 x i8]* [ %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i93.i, %bb25.i ], [ %src.0, %bb17.i ]
  %6 = getelementptr [0 x i8], [0 x i8]* %_35.sroa.6.0113.i, i16 0, i16 0
  %7 = getelementptr inbounds [0 x i8], [0 x i8]* %_35.sroa.6.0113.i, i16 0, i16 %_35.sroa.10.0114.i
  br label %bb34.us129.i

bb34.us129.i:                                     ; preds = %bb48.us150.i, %bb32.split.i
  %result.0.us130.i = phi i128 [ %15, %bb48.us150.i ], [ 0, %bb32.split.i ]
  %iter.sroa.0.0.us131.i = phi i8* [ %9, %bb48.us150.i ], [ %6, %bb32.split.i ]
  %8 = icmp ne i8* %iter.sroa.0.0.us131.i, null
  tail call addrspace(1) void @llvm.assume(i1 %8), !noalias !1847
  %_13.i86.us132.i = icmp eq i8* %iter.sroa.0.0.us131.i, %7
  br i1 %_13.i86.us132.i, label %bb3, label %bb38.us133.i

bb38.us133.i:                                     ; preds = %bb34.us129.i
  %9 = getelementptr inbounds i8, i8* %iter.sroa.0.0.us131.i, i16 1
  %c.us134.i = load i8, i8* %iter.sroa.0.0.us131.i, align 1, !alias.scope !1844, !noalias !1847
  %_67.us135.i = zext i8 %c.us134.i to i32
  %self.off.i66.us137.i = add nsw i32 %_67.us135.i, -48
  %10 = icmp ult i32 %self.off.i66.us137.i, 10
  br i1 %10, label %bb42.us149.i, label %bb5

bb42.us149.i:                                     ; preds = %bb38.us133.i
  %11 = tail call addrspace(1) { i128, i1 } @llvm.umul.with.overflow.i128(i128 %result.0.us130.i, i128 10) #20
  %12 = extractvalue { i128, i1 } %11, 1
  br i1 %12, label %bb5, label %bb48.us150.i

bb48.us150.i:                                     ; preds = %bb42.us149.i
  %13 = extractvalue { i128, i1 } %11, 0
  %_4.i58.us151.i = zext i32 %self.off.i66.us137.i to i128
  %14 = tail call addrspace(1) { i128, i1 } @llvm.uadd.with.overflow.i128(i128 %13, i128 %_4.i58.us151.i) #20
  %15 = extractvalue { i128, i1 } %14, 0
  %16 = extractvalue { i128, i1 } %14, 1
  br i1 %16, label %bb5, label %bb34.us129.i

bb3:                                              ; preds = %bb34.us129.i
  %17 = icmp eq i128 %result.0.us130.i, 0
  br i1 %17, label %bb1.i, label %bb3.i

bb1.i:                                            ; preds = %bb3
  %18 = getelementptr inbounds %"result::Result<num::NonZeroU128, num::ParseIntError>", %"result::Result<num::NonZeroU128, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 4, i8* %18, align 1, !alias.scope !1849
  br label %bb6

bb3.i:                                            ; preds = %bb3
  %19 = getelementptr inbounds %"result::Result<num::NonZeroU128, num::ParseIntError>", %"result::Result<num::NonZeroU128, num::ParseIntError>"* %0, i16 0, i32 2
  %20 = bitcast [16 x i8]* %19 to i128*
  store i128 %result.0.us130.i, i128* %20, align 1, !alias.scope !1849
  br label %bb6

bb5:                                              ; preds = %bb38.us133.i, %bb42.us149.i, %bb48.us150.i, %start, %bb25.i
  %_5.sroa.9.0.ph.off0 = phi i8 [ 0, %bb25.i ], [ 0, %start ], [ 1, %bb38.us133.i ], [ 2, %bb42.us149.i ], [ 2, %bb48.us150.i ]
  %21 = getelementptr inbounds %"result::Result<num::NonZeroU128, num::ParseIntError>", %"result::Result<num::NonZeroU128, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 %_5.sroa.9.0.ph.off0, i8* %21, align 1, !alias.scope !1852
  br label %bb6

bb6:                                              ; preds = %bb3.i, %bb1.i, %bb5
  %.sink.i.sink = phi i8 [ 1, %bb5 ], [ 1, %bb1.i ], [ 0, %bb3.i ]
  %22 = getelementptr inbounds %"result::Result<num::NonZeroU128, num::ParseIntError>", %"result::Result<num::NonZeroU128, num::ParseIntError>"* %0, i16 0, i32 0, i16 0
  store i8 %.sink.i.sink, i8* %22, align 1, !alias.scope !1855
  ret void
}

; <core::num::NonZeroI8 as core::str::FromStr>::from_str
; Function Attrs: nounwind readonly uwtable
define i16 @"_ZN59_$LT$core..num..NonZeroI8$u20$as$u20$core..str..FromStr$GT$8from_str17h28e2870b37cc124bE"([0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1) unnamed_addr addrspace(1) #6 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = icmp eq i16 %src.1, 0
  br i1 %0, label %bb6, label %bb17.i

bb17.i:                                           ; preds = %start
  %1 = getelementptr [0 x i8], [0 x i8]* %src.0, i16 0, i16 0
  %2 = load i8, i8* %1, align 1, !alias.scope !1856
  switch i8 %2, label %bb27.thread.i [
    i8 43, label %bb25.i
    i8 45, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit.i"
  ]

bb27.thread.i:                                    ; preds = %bb17.i
  %3 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 %src.1
  br label %bb32.split.i

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit.i": ; preds = %bb17.i
  br label %bb25.i

bb25.i:                                           ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit.i", %bb17.i
  %_35.sroa.0.0.i = phi i1 [ false, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit.i" ], [ true, %bb17.i ]
  %_35.sroa.6.0.in.i = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 1
  %4 = icmp eq i16 %src.1, 1
  br i1 %4, label %bb6, label %bb27.i

bb27.i:                                           ; preds = %bb25.i
  %5 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 %src.1
  br i1 %_35.sroa.0.0.i, label %bb32.split.i, label %bb54.us144.i

bb54.us144.i:                                     ; preds = %bb27.i, %bb67.us165.i
  %result.1.us145.i = phi i8 [ %12, %bb67.us165.i ], [ 0, %bb27.i ]
  %iter1.sroa.0.0.us146.i = phi i8* [ %6, %bb67.us165.i ], [ %_35.sroa.6.0.in.i, %bb27.i ]
  %_13.i.us147.i = icmp eq i8* %iter1.sroa.0.0.us146.i, %5
  br i1 %_13.i.us147.i, label %bb3, label %bb58.us148.i

bb58.us148.i:                                     ; preds = %bb54.us144.i
  %6 = getelementptr inbounds i8, i8* %iter1.sroa.0.0.us146.i, i16 1
  %c7.us149.i = load i8, i8* %iter1.sroa.0.0.us146.i, align 1, !alias.scope !1856
  %_100.us150.i = zext i8 %c7.us149.i to i32
  %self.off.i.us152.i = add nsw i32 %_100.us150.i, -48
  %7 = icmp ult i32 %self.off.i.us152.i, 10
  br i1 %7, label %bb62.us164.i, label %bb6

bb62.us164.i:                                     ; preds = %bb58.us148.i
  %8 = tail call addrspace(1) { i8, i1 } @llvm.smul.with.overflow.i8(i8 %result.1.us145.i, i8 10) #20
  %9 = extractvalue { i8, i1 } %8, 1
  br i1 %9, label %bb6, label %bb67.us165.i

bb67.us165.i:                                     ; preds = %bb62.us164.i
  %10 = extractvalue { i8, i1 } %8, 0
  %_4.i.us166.i = trunc i32 %self.off.i.us152.i to i8
  %11 = tail call addrspace(1) { i8, i1 } @llvm.ssub.with.overflow.i8(i8 %10, i8 %_4.i.us166.i) #20
  %12 = extractvalue { i8, i1 } %11, 0
  %13 = extractvalue { i8, i1 } %11, 1
  br i1 %13, label %bb6, label %bb54.us144.i

bb32.split.i:                                     ; preds = %bb27.i, %bb27.thread.i
  %14 = phi i8* [ %3, %bb27.thread.i ], [ %5, %bb27.i ]
  %15 = phi i8* [ %1, %bb27.thread.i ], [ %_35.sroa.6.0.in.i, %bb27.i ]
  br label %bb34.us121.i

bb34.us121.i:                                     ; preds = %bb48.us142.i, %bb32.split.i
  %result.0.us122.i = phi i8 [ %22, %bb48.us142.i ], [ 0, %bb32.split.i ]
  %iter.sroa.0.0.us123.i = phi i8* [ %16, %bb48.us142.i ], [ %15, %bb32.split.i ]
  %_13.i78.us124.i = icmp eq i8* %iter.sroa.0.0.us123.i, %14
  br i1 %_13.i78.us124.i, label %bb3, label %bb38.us125.i

bb38.us125.i:                                     ; preds = %bb34.us121.i
  %16 = getelementptr inbounds i8, i8* %iter.sroa.0.0.us123.i, i16 1
  %c.us126.i = load i8, i8* %iter.sroa.0.0.us123.i, align 1, !alias.scope !1856
  %_67.us127.i = zext i8 %c.us126.i to i32
  %self.off.i58.us129.i = add nsw i32 %_67.us127.i, -48
  %17 = icmp ult i32 %self.off.i58.us129.i, 10
  br i1 %17, label %bb42.us141.i, label %bb6

bb42.us141.i:                                     ; preds = %bb38.us125.i
  %18 = tail call addrspace(1) { i8, i1 } @llvm.smul.with.overflow.i8(i8 %result.0.us122.i, i8 10) #20
  %19 = extractvalue { i8, i1 } %18, 1
  br i1 %19, label %bb6, label %bb48.us142.i

bb48.us142.i:                                     ; preds = %bb42.us141.i
  %20 = extractvalue { i8, i1 } %18, 0
  %_4.i50.us143.i = trunc i32 %self.off.i58.us129.i to i8
  %21 = tail call addrspace(1) { i8, i1 } @llvm.sadd.with.overflow.i8(i8 %20, i8 %_4.i50.us143.i) #20
  %22 = extractvalue { i8, i1 } %21, 0
  %23 = extractvalue { i8, i1 } %21, 1
  br i1 %23, label %bb6, label %bb34.us121.i

bb3:                                              ; preds = %bb54.us144.i, %bb34.us121.i
  %.sroa.10.0.i = phi i8 [ %result.0.us122.i, %bb34.us121.i ], [ %result.1.us145.i, %bb54.us144.i ]
  %.sroa.10.0.insert.ext.i = zext i8 %.sroa.10.0.i to i16
  %.sroa.10.0.insert.shift.i = shl nuw i16 %.sroa.10.0.insert.ext.i, 8
  %24 = icmp eq i8 %.sroa.10.0.i, 0
  %.sroa.3.0.i = select i1 %24, i16 1024, i16 %.sroa.10.0.insert.shift.i
  %.sroa.0.0.i14 = zext i1 %24 to i16
  %.sroa.0.0.insert.insert.i15 = or i16 %.sroa.3.0.i, %.sroa.0.0.i14
  br label %bb6

bb6:                                              ; preds = %bb62.us164.i, %bb67.us165.i, %bb58.us148.i, %bb42.us141.i, %bb48.us142.i, %bb38.us125.i, %bb25.i, %start, %bb3
  %.sroa.0.0 = phi i16 [ %.sroa.0.0.insert.insert.i15, %bb3 ], [ 1, %bb25.i ], [ 1, %start ], [ 257, %bb38.us125.i ], [ 513, %bb48.us142.i ], [ 513, %bb42.us141.i ], [ 257, %bb58.us148.i ], [ 769, %bb67.us165.i ], [ 769, %bb62.us164.i ]
  ret i16 %.sroa.0.0
}

; <core::num::NonZeroI16 as core::str::FromStr>::from_str
; Function Attrs: nounwind uwtable
define void @"_ZN60_$LT$core..num..NonZeroI16$u20$as$u20$core..str..FromStr$GT$8from_str17hc3751c469c278944E"(%"result::Result<num::NonZeroI16, num::ParseIntError>"* noalias nocapture sret dereferenceable(3) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1) unnamed_addr addrspace(1) #9 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %1 = icmp eq i16 %src.1, 0
  br i1 %1, label %bb5, label %bb17.i

bb17.i:                                           ; preds = %start
  %2 = getelementptr [0 x i8], [0 x i8]* %src.0, i16 0, i16 0
  %3 = load i8, i8* %2, align 1, !alias.scope !1859, !noalias !1862
  switch i8 %3, label %bb27.thread.i [
    i8 43, label %bb25.i
    i8 45, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit.i"
  ]

bb27.thread.i:                                    ; preds = %bb17.i
  %4 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 %src.1
  br label %bb32.split.i

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit.i": ; preds = %bb17.i
  br label %bb25.i

bb25.i:                                           ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit.i", %bb17.i
  %_35.sroa.0.0.i = phi i1 [ false, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit.i" ], [ true, %bb17.i ]
  %_35.sroa.6.0.in.i = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 1
  %5 = icmp eq i16 %src.1, 1
  br i1 %5, label %bb5, label %bb27.i

bb27.i:                                           ; preds = %bb25.i
  %6 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 %src.1
  br i1 %_35.sroa.0.0.i, label %bb32.split.i, label %bb54.us162.i

bb54.us162.i:                                     ; preds = %bb27.i, %bb67.us183.i
  %result.1.us163.i = phi i16 [ %13, %bb67.us183.i ], [ 0, %bb27.i ]
  %iter1.sroa.0.0.us164.i = phi i8* [ %7, %bb67.us183.i ], [ %_35.sroa.6.0.in.i, %bb27.i ]
  %_13.i.us165.i = icmp eq i8* %iter1.sroa.0.0.us164.i, %6
  br i1 %_13.i.us165.i, label %bb3, label %bb58.us166.i

bb58.us166.i:                                     ; preds = %bb54.us162.i
  %7 = getelementptr inbounds i8, i8* %iter1.sroa.0.0.us164.i, i16 1
  %c7.us167.i = load i8, i8* %iter1.sroa.0.0.us164.i, align 1, !alias.scope !1859, !noalias !1862
  %_100.us168.i = zext i8 %c7.us167.i to i32
  %self.off.i.us170.i = add nsw i32 %_100.us168.i, -48
  %8 = icmp ult i32 %self.off.i.us170.i, 10
  br i1 %8, label %bb62.us182.i, label %bb5

bb62.us182.i:                                     ; preds = %bb58.us166.i
  %9 = tail call addrspace(1) { i16, i1 } @llvm.smul.with.overflow.i16(i16 %result.1.us163.i, i16 10) #20
  %10 = extractvalue { i16, i1 } %9, 1
  br i1 %10, label %bb5, label %bb67.us183.i

bb67.us183.i:                                     ; preds = %bb62.us182.i
  %11 = extractvalue { i16, i1 } %9, 0
  %_4.i.us184.i = trunc i32 %self.off.i.us170.i to i16
  %12 = tail call addrspace(1) { i16, i1 } @llvm.ssub.with.overflow.i16(i16 %11, i16 %_4.i.us184.i) #20
  %13 = extractvalue { i16, i1 } %12, 0
  %14 = extractvalue { i16, i1 } %12, 1
  br i1 %14, label %bb5, label %bb54.us162.i

bb32.split.i:                                     ; preds = %bb27.i, %bb27.thread.i
  %15 = phi i8* [ %4, %bb27.thread.i ], [ %6, %bb27.i ]
  %16 = phi i8* [ %2, %bb27.thread.i ], [ %_35.sroa.6.0.in.i, %bb27.i ]
  br label %bb34.us139.i

bb34.us139.i:                                     ; preds = %bb48.us160.i, %bb32.split.i
  %result.0.us140.i = phi i16 [ %23, %bb48.us160.i ], [ 0, %bb32.split.i ]
  %iter.sroa.0.0.us141.i = phi i8* [ %17, %bb48.us160.i ], [ %16, %bb32.split.i ]
  %_13.i86.us142.i = icmp eq i8* %iter.sroa.0.0.us141.i, %15
  br i1 %_13.i86.us142.i, label %bb3, label %bb38.us143.i

bb38.us143.i:                                     ; preds = %bb34.us139.i
  %17 = getelementptr inbounds i8, i8* %iter.sroa.0.0.us141.i, i16 1
  %c.us144.i = load i8, i8* %iter.sroa.0.0.us141.i, align 1, !alias.scope !1859, !noalias !1862
  %_67.us145.i = zext i8 %c.us144.i to i32
  %self.off.i66.us147.i = add nsw i32 %_67.us145.i, -48
  %18 = icmp ult i32 %self.off.i66.us147.i, 10
  br i1 %18, label %bb42.us159.i, label %bb5

bb42.us159.i:                                     ; preds = %bb38.us143.i
  %19 = tail call addrspace(1) { i16, i1 } @llvm.smul.with.overflow.i16(i16 %result.0.us140.i, i16 10) #20
  %20 = extractvalue { i16, i1 } %19, 1
  br i1 %20, label %bb5, label %bb48.us160.i

bb48.us160.i:                                     ; preds = %bb42.us159.i
  %21 = extractvalue { i16, i1 } %19, 0
  %_4.i58.us161.i = trunc i32 %self.off.i66.us147.i to i16
  %22 = tail call addrspace(1) { i16, i1 } @llvm.sadd.with.overflow.i16(i16 %21, i16 %_4.i58.us161.i) #20
  %23 = extractvalue { i16, i1 } %22, 0
  %24 = extractvalue { i16, i1 } %22, 1
  br i1 %24, label %bb5, label %bb34.us139.i

bb3:                                              ; preds = %bb54.us162.i, %bb34.us139.i
  %_5.sroa.12.0 = phi i16 [ %result.0.us140.i, %bb34.us139.i ], [ %result.1.us163.i, %bb54.us162.i ]
  %25 = icmp eq i16 %_5.sroa.12.0, 0
  br i1 %25, label %bb1.i, label %bb3.i

bb1.i:                                            ; preds = %bb3
  %26 = getelementptr inbounds %"result::Result<num::NonZeroI16, num::ParseIntError>", %"result::Result<num::NonZeroI16, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 4, i8* %26, align 1, !alias.scope !1864
  br label %bb6

bb3.i:                                            ; preds = %bb3
  %27 = getelementptr inbounds %"result::Result<num::NonZeroI16, num::ParseIntError>", %"result::Result<num::NonZeroI16, num::ParseIntError>"* %0, i16 0, i32 2
  %28 = bitcast [2 x i8]* %27 to i16*
  store i16 %_5.sroa.12.0, i16* %28, align 1, !alias.scope !1864
  br label %bb6

bb5:                                              ; preds = %bb58.us166.i, %bb62.us182.i, %bb67.us183.i, %bb38.us143.i, %bb42.us159.i, %bb48.us160.i, %start, %bb25.i
  %_5.sroa.12.0.ph.off0 = phi i8 [ 0, %bb25.i ], [ 0, %start ], [ 1, %bb38.us143.i ], [ 2, %bb42.us159.i ], [ 2, %bb48.us160.i ], [ 1, %bb58.us166.i ], [ 3, %bb62.us182.i ], [ 3, %bb67.us183.i ]
  %29 = getelementptr inbounds %"result::Result<num::NonZeroI16, num::ParseIntError>", %"result::Result<num::NonZeroI16, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 %_5.sroa.12.0.ph.off0, i8* %29, align 1, !alias.scope !1867
  br label %bb6

bb6:                                              ; preds = %bb3.i, %bb1.i, %bb5
  %.sink.i.sink = phi i8 [ 1, %bb5 ], [ 1, %bb1.i ], [ 0, %bb3.i ]
  %30 = getelementptr inbounds %"result::Result<num::NonZeroI16, num::ParseIntError>", %"result::Result<num::NonZeroI16, num::ParseIntError>"* %0, i16 0, i32 0, i16 0
  store i8 %.sink.i.sink, i8* %30, align 1, !alias.scope !1870
  ret void
}

; <core::num::NonZeroI32 as core::str::FromStr>::from_str
; Function Attrs: nounwind uwtable
define void @"_ZN60_$LT$core..num..NonZeroI32$u20$as$u20$core..str..FromStr$GT$8from_str17hf9142a94cb84eaceE"(%"result::Result<num::NonZeroI32, num::ParseIntError>"* noalias nocapture sret dereferenceable(5) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1) unnamed_addr addrspace(1) #9 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %1 = icmp eq i16 %src.1, 0
  br i1 %1, label %bb5, label %bb17.i

bb17.i:                                           ; preds = %start
  %2 = getelementptr [0 x i8], [0 x i8]* %src.0, i16 0, i16 0
  %3 = load i8, i8* %2, align 1, !alias.scope !1871, !noalias !1874
  switch i8 %3, label %bb27.thread.i [
    i8 43, label %bb25.i
    i8 45, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit.i"
  ]

bb27.thread.i:                                    ; preds = %bb17.i
  %4 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 %src.1
  br label %bb32.split.i

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit.i": ; preds = %bb17.i
  br label %bb25.i

bb25.i:                                           ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit.i", %bb17.i
  %_35.sroa.0.0.i = phi i1 [ false, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit.i" ], [ true, %bb17.i ]
  %_35.sroa.6.0.in.i = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 1
  %5 = icmp eq i16 %src.1, 1
  br i1 %5, label %bb5, label %bb27.i

bb27.i:                                           ; preds = %bb25.i
  %6 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 %src.1
  br i1 %_35.sroa.0.0.i, label %bb32.split.i, label %bb54.us157.i

bb54.us157.i:                                     ; preds = %bb27.i, %bb67.us178.i
  %result.1.us158.i = phi i32 [ %13, %bb67.us178.i ], [ 0, %bb27.i ]
  %iter1.sroa.0.0.us159.i = phi i8* [ %7, %bb67.us178.i ], [ %_35.sroa.6.0.in.i, %bb27.i ]
  %_13.i.us160.i = icmp eq i8* %iter1.sroa.0.0.us159.i, %6
  br i1 %_13.i.us160.i, label %bb3, label %bb58.us161.i

bb58.us161.i:                                     ; preds = %bb54.us157.i
  %7 = getelementptr inbounds i8, i8* %iter1.sroa.0.0.us159.i, i16 1
  %c7.us162.i = load i8, i8* %iter1.sroa.0.0.us159.i, align 1, !alias.scope !1871, !noalias !1874
  %_100.us163.i = zext i8 %c7.us162.i to i32
  %self.off.i.us165.i = add nsw i32 %_100.us163.i, -48
  %8 = icmp ult i32 %self.off.i.us165.i, 10
  br i1 %8, label %bb62.us177.i, label %bb5

bb62.us177.i:                                     ; preds = %bb58.us161.i
  %9 = tail call addrspace(1) { i32, i1 } @llvm.smul.with.overflow.i32(i32 %result.1.us158.i, i32 10) #20
  %10 = extractvalue { i32, i1 } %9, 1
  br i1 %10, label %bb5, label %bb67.us178.i

bb67.us178.i:                                     ; preds = %bb62.us177.i
  %11 = extractvalue { i32, i1 } %9, 0
  %12 = tail call addrspace(1) { i32, i1 } @llvm.ssub.with.overflow.i32(i32 %11, i32 %self.off.i.us165.i) #20
  %13 = extractvalue { i32, i1 } %12, 0
  %14 = extractvalue { i32, i1 } %12, 1
  br i1 %14, label %bb5, label %bb54.us157.i

bb32.split.i:                                     ; preds = %bb27.i, %bb27.thread.i
  %15 = phi i8* [ %4, %bb27.thread.i ], [ %6, %bb27.i ]
  %16 = phi i8* [ %2, %bb27.thread.i ], [ %_35.sroa.6.0.in.i, %bb27.i ]
  br label %bb34.us135.i

bb34.us135.i:                                     ; preds = %bb48.us156.i, %bb32.split.i
  %result.0.us136.i = phi i32 [ %23, %bb48.us156.i ], [ 0, %bb32.split.i ]
  %iter.sroa.0.0.us137.i = phi i8* [ %17, %bb48.us156.i ], [ %16, %bb32.split.i ]
  %_13.i82.us138.i = icmp eq i8* %iter.sroa.0.0.us137.i, %15
  br i1 %_13.i82.us138.i, label %bb3, label %bb38.us139.i

bb38.us139.i:                                     ; preds = %bb34.us135.i
  %17 = getelementptr inbounds i8, i8* %iter.sroa.0.0.us137.i, i16 1
  %c.us140.i = load i8, i8* %iter.sroa.0.0.us137.i, align 1, !alias.scope !1871, !noalias !1874
  %_67.us141.i = zext i8 %c.us140.i to i32
  %self.off.i62.us143.i = add nsw i32 %_67.us141.i, -48
  %18 = icmp ult i32 %self.off.i62.us143.i, 10
  br i1 %18, label %bb42.us155.i, label %bb5

bb42.us155.i:                                     ; preds = %bb38.us139.i
  %19 = tail call addrspace(1) { i32, i1 } @llvm.smul.with.overflow.i32(i32 %result.0.us136.i, i32 10) #20
  %20 = extractvalue { i32, i1 } %19, 1
  br i1 %20, label %bb5, label %bb48.us156.i

bb48.us156.i:                                     ; preds = %bb42.us155.i
  %21 = extractvalue { i32, i1 } %19, 0
  %22 = tail call addrspace(1) { i32, i1 } @llvm.sadd.with.overflow.i32(i32 %21, i32 %self.off.i62.us143.i) #20
  %23 = extractvalue { i32, i1 } %22, 0
  %24 = extractvalue { i32, i1 } %22, 1
  br i1 %24, label %bb5, label %bb34.us135.i

bb3:                                              ; preds = %bb54.us157.i, %bb34.us135.i
  %_5.sroa.12.0 = phi i32 [ %result.0.us136.i, %bb34.us135.i ], [ %result.1.us158.i, %bb54.us157.i ]
  %25 = icmp eq i32 %_5.sroa.12.0, 0
  br i1 %25, label %bb1.i, label %bb3.i

bb1.i:                                            ; preds = %bb3
  %26 = getelementptr inbounds %"result::Result<num::NonZeroI32, num::ParseIntError>", %"result::Result<num::NonZeroI32, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 4, i8* %26, align 1, !alias.scope !1876
  br label %bb6

bb3.i:                                            ; preds = %bb3
  %27 = getelementptr inbounds %"result::Result<num::NonZeroI32, num::ParseIntError>", %"result::Result<num::NonZeroI32, num::ParseIntError>"* %0, i16 0, i32 2
  %28 = bitcast [4 x i8]* %27 to i32*
  store i32 %_5.sroa.12.0, i32* %28, align 1, !alias.scope !1876
  br label %bb6

bb5:                                              ; preds = %bb58.us161.i, %bb62.us177.i, %bb67.us178.i, %bb38.us139.i, %bb42.us155.i, %bb48.us156.i, %start, %bb25.i
  %_5.sroa.12.0.ph.off0 = phi i8 [ 0, %bb25.i ], [ 0, %start ], [ 1, %bb38.us139.i ], [ 2, %bb42.us155.i ], [ 2, %bb48.us156.i ], [ 1, %bb58.us161.i ], [ 3, %bb62.us177.i ], [ 3, %bb67.us178.i ]
  %29 = getelementptr inbounds %"result::Result<num::NonZeroI32, num::ParseIntError>", %"result::Result<num::NonZeroI32, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 %_5.sroa.12.0.ph.off0, i8* %29, align 1, !alias.scope !1879
  br label %bb6

bb6:                                              ; preds = %bb3.i, %bb1.i, %bb5
  %.sink.i.sink = phi i8 [ 1, %bb5 ], [ 1, %bb1.i ], [ 0, %bb3.i ]
  %30 = getelementptr inbounds %"result::Result<num::NonZeroI32, num::ParseIntError>", %"result::Result<num::NonZeroI32, num::ParseIntError>"* %0, i16 0, i32 0, i16 0
  store i8 %.sink.i.sink, i8* %30, align 1, !alias.scope !1882
  ret void
}

; <core::num::NonZeroI64 as core::str::FromStr>::from_str
; Function Attrs: nounwind uwtable
define void @"_ZN60_$LT$core..num..NonZeroI64$u20$as$u20$core..str..FromStr$GT$8from_str17hc2d169a5ac6b17ffE"(%"result::Result<num::NonZeroI64, num::ParseIntError>"* noalias nocapture sret dereferenceable(9) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1) unnamed_addr addrspace(1) #9 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %1 = icmp eq i16 %src.1, 0
  br i1 %1, label %bb5, label %bb17.i

bb17.i:                                           ; preds = %start
  %2 = getelementptr [0 x i8], [0 x i8]* %src.0, i16 0, i16 0
  %3 = load i8, i8* %2, align 1, !alias.scope !1883, !noalias !1886
  switch i8 %3, label %bb27.thread.i [
    i8 43, label %bb25.i
    i8 45, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit.i"
  ]

bb27.thread.i:                                    ; preds = %bb17.i
  %4 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 %src.1
  br label %bb32.split.i

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit.i": ; preds = %bb17.i
  br label %bb25.i

bb25.i:                                           ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit.i", %bb17.i
  %_35.sroa.0.0.i = phi i1 [ false, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit.i" ], [ true, %bb17.i ]
  %_35.sroa.6.0.in.i = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 1
  %5 = icmp eq i16 %src.1, 1
  br i1 %5, label %bb5, label %bb27.i

bb27.i:                                           ; preds = %bb25.i
  %6 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 %src.1
  br i1 %_35.sroa.0.0.i, label %bb32.split.i, label %bb54.us162.i

bb54.us162.i:                                     ; preds = %bb27.i, %bb67.us183.i
  %result.1.us163.i = phi i64 [ %13, %bb67.us183.i ], [ 0, %bb27.i ]
  %iter1.sroa.0.0.us164.i = phi i8* [ %7, %bb67.us183.i ], [ %_35.sroa.6.0.in.i, %bb27.i ]
  %_13.i.us165.i = icmp eq i8* %iter1.sroa.0.0.us164.i, %6
  br i1 %_13.i.us165.i, label %bb3, label %bb58.us166.i

bb58.us166.i:                                     ; preds = %bb54.us162.i
  %7 = getelementptr inbounds i8, i8* %iter1.sroa.0.0.us164.i, i16 1
  %c7.us167.i = load i8, i8* %iter1.sroa.0.0.us164.i, align 1, !alias.scope !1883, !noalias !1886
  %_100.us168.i = zext i8 %c7.us167.i to i32
  %self.off.i.us170.i = add nsw i32 %_100.us168.i, -48
  %8 = icmp ult i32 %self.off.i.us170.i, 10
  br i1 %8, label %bb62.us182.i, label %bb5

bb62.us182.i:                                     ; preds = %bb58.us166.i
  %9 = tail call addrspace(1) { i64, i1 } @llvm.smul.with.overflow.i64(i64 %result.1.us163.i, i64 10) #20
  %10 = extractvalue { i64, i1 } %9, 1
  br i1 %10, label %bb5, label %bb67.us183.i

bb67.us183.i:                                     ; preds = %bb62.us182.i
  %11 = extractvalue { i64, i1 } %9, 0
  %_4.i.us184.i = zext i32 %self.off.i.us170.i to i64
  %12 = tail call addrspace(1) { i64, i1 } @llvm.ssub.with.overflow.i64(i64 %11, i64 %_4.i.us184.i) #20
  %13 = extractvalue { i64, i1 } %12, 0
  %14 = extractvalue { i64, i1 } %12, 1
  br i1 %14, label %bb5, label %bb54.us162.i

bb32.split.i:                                     ; preds = %bb27.i, %bb27.thread.i
  %15 = phi i8* [ %4, %bb27.thread.i ], [ %6, %bb27.i ]
  %16 = phi i8* [ %2, %bb27.thread.i ], [ %_35.sroa.6.0.in.i, %bb27.i ]
  br label %bb34.us139.i

bb34.us139.i:                                     ; preds = %bb48.us160.i, %bb32.split.i
  %result.0.us140.i = phi i64 [ %23, %bb48.us160.i ], [ 0, %bb32.split.i ]
  %iter.sroa.0.0.us141.i = phi i8* [ %17, %bb48.us160.i ], [ %16, %bb32.split.i ]
  %_13.i86.us142.i = icmp eq i8* %iter.sroa.0.0.us141.i, %15
  br i1 %_13.i86.us142.i, label %bb3, label %bb38.us143.i

bb38.us143.i:                                     ; preds = %bb34.us139.i
  %17 = getelementptr inbounds i8, i8* %iter.sroa.0.0.us141.i, i16 1
  %c.us144.i = load i8, i8* %iter.sroa.0.0.us141.i, align 1, !alias.scope !1883, !noalias !1886
  %_67.us145.i = zext i8 %c.us144.i to i32
  %self.off.i66.us147.i = add nsw i32 %_67.us145.i, -48
  %18 = icmp ult i32 %self.off.i66.us147.i, 10
  br i1 %18, label %bb42.us159.i, label %bb5

bb42.us159.i:                                     ; preds = %bb38.us143.i
  %19 = tail call addrspace(1) { i64, i1 } @llvm.smul.with.overflow.i64(i64 %result.0.us140.i, i64 10) #20
  %20 = extractvalue { i64, i1 } %19, 1
  br i1 %20, label %bb5, label %bb48.us160.i

bb48.us160.i:                                     ; preds = %bb42.us159.i
  %21 = extractvalue { i64, i1 } %19, 0
  %_4.i58.us161.i = zext i32 %self.off.i66.us147.i to i64
  %22 = tail call addrspace(1) { i64, i1 } @llvm.sadd.with.overflow.i64(i64 %21, i64 %_4.i58.us161.i) #20
  %23 = extractvalue { i64, i1 } %22, 0
  %24 = extractvalue { i64, i1 } %22, 1
  br i1 %24, label %bb5, label %bb34.us139.i

bb3:                                              ; preds = %bb54.us162.i, %bb34.us139.i
  %_5.sroa.12.0 = phi i64 [ %result.0.us140.i, %bb34.us139.i ], [ %result.1.us163.i, %bb54.us162.i ]
  %25 = icmp eq i64 %_5.sroa.12.0, 0
  br i1 %25, label %bb1.i, label %bb3.i

bb1.i:                                            ; preds = %bb3
  %26 = getelementptr inbounds %"result::Result<num::NonZeroI64, num::ParseIntError>", %"result::Result<num::NonZeroI64, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 4, i8* %26, align 1, !alias.scope !1888
  br label %bb6

bb3.i:                                            ; preds = %bb3
  %27 = getelementptr inbounds %"result::Result<num::NonZeroI64, num::ParseIntError>", %"result::Result<num::NonZeroI64, num::ParseIntError>"* %0, i16 0, i32 2
  %28 = bitcast [8 x i8]* %27 to i64*
  store i64 %_5.sroa.12.0, i64* %28, align 1, !alias.scope !1888
  br label %bb6

bb5:                                              ; preds = %bb58.us166.i, %bb62.us182.i, %bb67.us183.i, %bb38.us143.i, %bb42.us159.i, %bb48.us160.i, %start, %bb25.i
  %_5.sroa.12.0.ph.off0 = phi i8 [ 0, %bb25.i ], [ 0, %start ], [ 1, %bb38.us143.i ], [ 2, %bb42.us159.i ], [ 2, %bb48.us160.i ], [ 1, %bb58.us166.i ], [ 3, %bb62.us182.i ], [ 3, %bb67.us183.i ]
  %29 = getelementptr inbounds %"result::Result<num::NonZeroI64, num::ParseIntError>", %"result::Result<num::NonZeroI64, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 %_5.sroa.12.0.ph.off0, i8* %29, align 1, !alias.scope !1891
  br label %bb6

bb6:                                              ; preds = %bb3.i, %bb1.i, %bb5
  %.sink.i.sink = phi i8 [ 1, %bb5 ], [ 1, %bb1.i ], [ 0, %bb3.i ]
  %30 = getelementptr inbounds %"result::Result<num::NonZeroI64, num::ParseIntError>", %"result::Result<num::NonZeroI64, num::ParseIntError>"* %0, i16 0, i32 0, i16 0
  store i8 %.sink.i.sink, i8* %30, align 1, !alias.scope !1894
  ret void
}

; <core::num::NonZeroI128 as core::str::FromStr>::from_str
; Function Attrs: nounwind uwtable
define void @"_ZN61_$LT$core..num..NonZeroI128$u20$as$u20$core..str..FromStr$GT$8from_str17hfa0391361026b8e6E"(%"result::Result<num::NonZeroI128, num::ParseIntError>"* noalias nocapture sret dereferenceable(17) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1) unnamed_addr addrspace(1) #9 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %1 = icmp eq i16 %src.1, 0
  br i1 %1, label %bb5, label %bb17.i

bb17.i:                                           ; preds = %start
  %2 = getelementptr [0 x i8], [0 x i8]* %src.0, i16 0, i16 0
  %3 = load i8, i8* %2, align 1, !alias.scope !1895, !noalias !1898
  switch i8 %3, label %bb27.thread.i [
    i8 43, label %bb25.i
    i8 45, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit.i"
  ]

bb27.thread.i:                                    ; preds = %bb17.i
  %4 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 %src.1
  br label %bb32.split.i

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit.i": ; preds = %bb17.i
  br label %bb25.i

bb25.i:                                           ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit.i", %bb17.i
  %_35.sroa.0.0.i = phi i1 [ false, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit.i" ], [ true, %bb17.i ]
  %_35.sroa.6.0.in.i = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 1
  %5 = icmp eq i16 %src.1, 1
  br i1 %5, label %bb5, label %bb27.i

bb27.i:                                           ; preds = %bb25.i
  %6 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 %src.1
  br i1 %_35.sroa.0.0.i, label %bb32.split.i, label %bb54.us162.i

bb54.us162.i:                                     ; preds = %bb27.i, %bb67.us183.i
  %result.1.us163.i = phi i128 [ %13, %bb67.us183.i ], [ 0, %bb27.i ]
  %iter1.sroa.0.0.us164.i = phi i8* [ %7, %bb67.us183.i ], [ %_35.sroa.6.0.in.i, %bb27.i ]
  %_13.i.us165.i = icmp eq i8* %iter1.sroa.0.0.us164.i, %6
  br i1 %_13.i.us165.i, label %bb3, label %bb58.us166.i

bb58.us166.i:                                     ; preds = %bb54.us162.i
  %7 = getelementptr inbounds i8, i8* %iter1.sroa.0.0.us164.i, i16 1
  %c7.us167.i = load i8, i8* %iter1.sroa.0.0.us164.i, align 1, !alias.scope !1895, !noalias !1898
  %_100.us168.i = zext i8 %c7.us167.i to i32
  %self.off.i.us170.i = add nsw i32 %_100.us168.i, -48
  %8 = icmp ult i32 %self.off.i.us170.i, 10
  br i1 %8, label %bb62.us182.i, label %bb5

bb62.us182.i:                                     ; preds = %bb58.us166.i
  %9 = tail call addrspace(1) { i128, i1 } @llvm.smul.with.overflow.i128(i128 %result.1.us163.i, i128 10) #20
  %10 = extractvalue { i128, i1 } %9, 1
  br i1 %10, label %bb5, label %bb67.us183.i

bb67.us183.i:                                     ; preds = %bb62.us182.i
  %11 = extractvalue { i128, i1 } %9, 0
  %_4.i.us184.i = zext i32 %self.off.i.us170.i to i128
  %12 = tail call addrspace(1) { i128, i1 } @llvm.ssub.with.overflow.i128(i128 %11, i128 %_4.i.us184.i) #20
  %13 = extractvalue { i128, i1 } %12, 0
  %14 = extractvalue { i128, i1 } %12, 1
  br i1 %14, label %bb5, label %bb54.us162.i

bb32.split.i:                                     ; preds = %bb27.i, %bb27.thread.i
  %15 = phi i8* [ %4, %bb27.thread.i ], [ %6, %bb27.i ]
  %16 = phi i8* [ %2, %bb27.thread.i ], [ %_35.sroa.6.0.in.i, %bb27.i ]
  br label %bb34.us139.i

bb34.us139.i:                                     ; preds = %bb48.us160.i, %bb32.split.i
  %result.0.us140.i = phi i128 [ %23, %bb48.us160.i ], [ 0, %bb32.split.i ]
  %iter.sroa.0.0.us141.i = phi i8* [ %17, %bb48.us160.i ], [ %16, %bb32.split.i ]
  %_13.i86.us142.i = icmp eq i8* %iter.sroa.0.0.us141.i, %15
  br i1 %_13.i86.us142.i, label %bb3, label %bb38.us143.i

bb38.us143.i:                                     ; preds = %bb34.us139.i
  %17 = getelementptr inbounds i8, i8* %iter.sroa.0.0.us141.i, i16 1
  %c.us144.i = load i8, i8* %iter.sroa.0.0.us141.i, align 1, !alias.scope !1895, !noalias !1898
  %_67.us145.i = zext i8 %c.us144.i to i32
  %self.off.i66.us147.i = add nsw i32 %_67.us145.i, -48
  %18 = icmp ult i32 %self.off.i66.us147.i, 10
  br i1 %18, label %bb42.us159.i, label %bb5

bb42.us159.i:                                     ; preds = %bb38.us143.i
  %19 = tail call addrspace(1) { i128, i1 } @llvm.smul.with.overflow.i128(i128 %result.0.us140.i, i128 10) #20
  %20 = extractvalue { i128, i1 } %19, 1
  br i1 %20, label %bb5, label %bb48.us160.i

bb48.us160.i:                                     ; preds = %bb42.us159.i
  %21 = extractvalue { i128, i1 } %19, 0
  %_4.i58.us161.i = zext i32 %self.off.i66.us147.i to i128
  %22 = tail call addrspace(1) { i128, i1 } @llvm.sadd.with.overflow.i128(i128 %21, i128 %_4.i58.us161.i) #20
  %23 = extractvalue { i128, i1 } %22, 0
  %24 = extractvalue { i128, i1 } %22, 1
  br i1 %24, label %bb5, label %bb34.us139.i

bb3:                                              ; preds = %bb54.us162.i, %bb34.us139.i
  %_5.sroa.12.0 = phi i128 [ %result.0.us140.i, %bb34.us139.i ], [ %result.1.us163.i, %bb54.us162.i ]
  %25 = icmp eq i128 %_5.sroa.12.0, 0
  br i1 %25, label %bb1.i, label %bb3.i

bb1.i:                                            ; preds = %bb3
  %26 = getelementptr inbounds %"result::Result<num::NonZeroI128, num::ParseIntError>", %"result::Result<num::NonZeroI128, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 4, i8* %26, align 1, !alias.scope !1900
  br label %bb6

bb3.i:                                            ; preds = %bb3
  %27 = getelementptr inbounds %"result::Result<num::NonZeroI128, num::ParseIntError>", %"result::Result<num::NonZeroI128, num::ParseIntError>"* %0, i16 0, i32 2
  %28 = bitcast [16 x i8]* %27 to i128*
  store i128 %_5.sroa.12.0, i128* %28, align 1, !alias.scope !1900
  br label %bb6

bb5:                                              ; preds = %bb58.us166.i, %bb62.us182.i, %bb67.us183.i, %bb38.us143.i, %bb42.us159.i, %bb48.us160.i, %start, %bb25.i
  %_5.sroa.12.0.ph.off0 = phi i8 [ 0, %bb25.i ], [ 0, %start ], [ 1, %bb38.us143.i ], [ 2, %bb42.us159.i ], [ 2, %bb48.us160.i ], [ 1, %bb58.us166.i ], [ 3, %bb62.us182.i ], [ 3, %bb67.us183.i ]
  %29 = getelementptr inbounds %"result::Result<num::NonZeroI128, num::ParseIntError>", %"result::Result<num::NonZeroI128, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 %_5.sroa.12.0.ph.off0, i8* %29, align 1, !alias.scope !1903
  br label %bb6

bb6:                                              ; preds = %bb3.i, %bb1.i, %bb5
  %.sink.i.sink = phi i8 [ 1, %bb5 ], [ 1, %bb1.i ], [ 0, %bb3.i ]
  %30 = getelementptr inbounds %"result::Result<num::NonZeroI128, num::ParseIntError>", %"result::Result<num::NonZeroI128, num::ParseIntError>"* %0, i16 0, i32 0, i16 0
  store i8 %.sink.i.sink, i8* %30, align 1, !alias.scope !1906
  ret void
}

; <u8 as core::num::bignum::FullOps>::full_add
; Function Attrs: nounwind readnone uwtable
define { i8, i8 } @"_ZN49_$LT$u8$u20$as$u20$core..num..bignum..FullOps$GT$8full_add17h83deb2b932ff0934E"(i8 %self, i8 %other, i1 zeroext %carry) unnamed_addr addrspace(1) #4 {
start:
  %0 = tail call addrspace(1) { i8, i1 } @llvm.uadd.with.overflow.i8(i8 %self, i8 %other)
  %1 = extractvalue { i8, i1 } %0, 0
  %2 = extractvalue { i8, i1 } %0, 1
  %. = zext i1 %carry to i8
  %3 = tail call addrspace(1) { i8, i1 } @llvm.uadd.with.overflow.i8(i8 %1, i8 %.)
  %4 = extractvalue { i8, i1 } %3, 0
  %5 = extractvalue { i8, i1 } %3, 1
  %brmerge = or i1 %2, %5
  %_15.0 = zext i1 %brmerge to i8
  %6 = insertvalue { i8, i8 } undef, i8 %_15.0, 0
  %7 = insertvalue { i8, i8 } %6, i8 %4, 1
  ret { i8, i8 } %7
}

; <u8 as core::num::bignum::FullOps>::full_mul
; Function Attrs: norecurse nounwind readnone uwtable
define { i8, i8 } @"_ZN49_$LT$u8$u20$as$u20$core..num..bignum..FullOps$GT$8full_mul17hf01f4d40e1387815E"(i8 %self, i8 %other, i8 %carry) unnamed_addr addrspace(1) #1 {
start:
  %_8 = zext i8 %self to i16
  %_10 = zext i8 %other to i16
  %_7 = mul nuw i16 %_10, %_8
  %_12 = zext i8 %carry to i16
  %v = add nuw i16 %_7, %_12
  %_15 = lshr i16 %v, 8
  %_14 = trunc i16 %_15 to i8
  %_18 = trunc i16 %v to i8
  %0 = insertvalue { i8, i8 } undef, i8 %_14, 0
  %1 = insertvalue { i8, i8 } %0, i8 %_18, 1
  ret { i8, i8 } %1
}

; <u8 as core::num::bignum::FullOps>::full_mul_add
; Function Attrs: norecurse nounwind readnone uwtable
define { i8, i8 } @"_ZN49_$LT$u8$u20$as$u20$core..num..bignum..FullOps$GT$12full_mul_add17h361e3753031c719cE"(i8 %self, i8 %other, i8 %other2, i8 %carry) unnamed_addr addrspace(1) #1 {
start:
  %_10 = zext i8 %self to i16
  %_12 = zext i8 %other to i16
  %_9 = mul nuw i16 %_12, %_10
  %_14 = zext i8 %other2 to i16
  %_8 = add nuw i16 %_9, %_14
  %_16 = zext i8 %carry to i16
  %v = add nuw i16 %_8, %_16
  %_19 = lshr i16 %v, 8
  %_18 = trunc i16 %_19 to i8
  %_22 = trunc i16 %v to i8
  %0 = insertvalue { i8, i8 } undef, i8 %_18, 0
  %1 = insertvalue { i8, i8 } %0, i8 %_22, 1
  ret { i8, i8 } %1
}

; <u8 as core::num::bignum::FullOps>::full_div_rem
; Function Attrs: uwtable
define { i8, i8 } @"_ZN49_$LT$u8$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h505ce606d409a29aE"(i8 %self, i8 %other, i8 %borrow) unnamed_addr addrspace(1) #2 {
start:
  %_8 = zext i8 %borrow to i16
  %_7 = shl nuw i16 %_8, 8
  %_11 = zext i8 %self to i16
  %lhs = or i16 %_7, %_11
  %rhs = zext i8 %other to i16
  %_19 = icmp eq i8 %other, 0
  br i1 %_19, label %panic, label %bb3, !prof !91, !misexpect !550

bb3:                                              ; preds = %start
  %_16 = udiv i16 %lhs, %rhs
  %_15 = trunc i16 %_16 to i8
  %0 = mul i16 %_16, %rhs
  %_21.decomposed = sub i16 %lhs, %0
  %_20 = trunc i16 %_21.decomposed to i8
  %1 = insertvalue { i8, i8 } undef, i8 %_15, 0
  %2 = insertvalue { i8, i8 } %1, i8 %_20, 1
  ret { i8, i8 } %2

panic:                                            ; preds = %start
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast ([25 x i8]* @str.1 to [0 x i8]*), i16 25, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18913 to %"panic::Location"*))
  unreachable
}

; <u16 as core::num::bignum::FullOps>::full_add
; Function Attrs: nounwind readnone uwtable
define { i8, i16 } @"_ZN50_$LT$u16$u20$as$u20$core..num..bignum..FullOps$GT$8full_add17h78e1ea5ab9704f71E"(i16 %self, i16 %other, i1 zeroext %carry) unnamed_addr addrspace(1) #4 {
start:
  %0 = tail call addrspace(1) { i16, i1 } @llvm.uadd.with.overflow.i16(i16 %self, i16 %other)
  %1 = extractvalue { i16, i1 } %0, 0
  %2 = extractvalue { i16, i1 } %0, 1
  %. = zext i1 %carry to i16
  %3 = tail call addrspace(1) { i16, i1 } @llvm.uadd.with.overflow.i16(i16 %1, i16 %.)
  %4 = extractvalue { i16, i1 } %3, 0
  %5 = extractvalue { i16, i1 } %3, 1
  %brmerge = or i1 %2, %5
  %_15.0 = zext i1 %brmerge to i8
  %6 = insertvalue { i8, i16 } undef, i8 %_15.0, 0
  %7 = insertvalue { i8, i16 } %6, i16 %4, 1
  ret { i8, i16 } %7
}

; <u16 as core::num::bignum::FullOps>::full_mul
; Function Attrs: norecurse nounwind readnone uwtable
define { i16, i16 } @"_ZN50_$LT$u16$u20$as$u20$core..num..bignum..FullOps$GT$8full_mul17h6d6dc0279b19b10dE"(i16 %self, i16 %other, i16 %carry) unnamed_addr addrspace(1) #1 {
start:
  %_8 = zext i16 %self to i32
  %_10 = zext i16 %other to i32
  %_7 = mul nuw i32 %_10, %_8
  %_12 = zext i16 %carry to i32
  %v = add nuw i32 %_7, %_12
  %_15 = lshr i32 %v, 16
  %_14 = trunc i32 %_15 to i16
  %_18 = trunc i32 %v to i16
  %0 = insertvalue { i16, i16 } undef, i16 %_14, 0
  %1 = insertvalue { i16, i16 } %0, i16 %_18, 1
  ret { i16, i16 } %1
}

; <u16 as core::num::bignum::FullOps>::full_mul_add
; Function Attrs: norecurse nounwind readnone uwtable
define { i16, i16 } @"_ZN50_$LT$u16$u20$as$u20$core..num..bignum..FullOps$GT$12full_mul_add17h8883d62c8382e571E"(i16 %self, i16 %other, i16 %other2, i16 %carry) unnamed_addr addrspace(1) #1 {
start:
  %_10 = zext i16 %self to i32
  %_12 = zext i16 %other to i32
  %_9 = mul nuw i32 %_12, %_10
  %_14 = zext i16 %other2 to i32
  %_8 = add nuw i32 %_9, %_14
  %_16 = zext i16 %carry to i32
  %v = add nuw i32 %_8, %_16
  %_19 = lshr i32 %v, 16
  %_18 = trunc i32 %_19 to i16
  %_22 = trunc i32 %v to i16
  %0 = insertvalue { i16, i16 } undef, i16 %_18, 0
  %1 = insertvalue { i16, i16 } %0, i16 %_22, 1
  ret { i16, i16 } %1
}

; <u16 as core::num::bignum::FullOps>::full_div_rem
; Function Attrs: uwtable
define { i16, i16 } @"_ZN50_$LT$u16$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h047d816d8fc8c5aeE"(i16 %self, i16 %other, i16 %borrow) unnamed_addr addrspace(1) #2 {
start:
  %_8 = zext i16 %borrow to i32
  %_7 = shl nuw i32 %_8, 16
  %_11 = zext i16 %self to i32
  %lhs = or i32 %_7, %_11
  %rhs = zext i16 %other to i32
  %_19 = icmp eq i16 %other, 0
  br i1 %_19, label %panic, label %bb3, !prof !91, !misexpect !550

bb3:                                              ; preds = %start
  %_16 = udiv i32 %lhs, %rhs
  %_15 = trunc i32 %_16 to i16
  %0 = mul i32 %_16, %rhs
  %_21.decomposed = sub i32 %lhs, %0
  %_20 = trunc i32 %_21.decomposed to i16
  %1 = insertvalue { i16, i16 } undef, i16 %_15, 0
  %2 = insertvalue { i16, i16 } %1, i16 %_20, 1
  ret { i16, i16 } %2

panic:                                            ; preds = %start
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast ([25 x i8]* @str.1 to [0 x i8]*), i16 25, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18913 to %"panic::Location"*))
  unreachable
}

; <u32 as core::num::bignum::FullOps>::full_add
; Function Attrs: nounwind readnone uwtable
define { i8, i32 } @"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$8full_add17h702645a355028ffbE"(i32 %self, i32 %other, i1 zeroext %carry) unnamed_addr addrspace(1) #4 {
start:
  %0 = tail call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %self, i32 %other)
  %1 = extractvalue { i32, i1 } %0, 0
  %2 = extractvalue { i32, i1 } %0, 1
  %. = zext i1 %carry to i32
  %3 = tail call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %1, i32 %.)
  %4 = extractvalue { i32, i1 } %3, 0
  %5 = extractvalue { i32, i1 } %3, 1
  %brmerge = or i1 %2, %5
  %_15.0 = zext i1 %brmerge to i8
  %6 = insertvalue { i8, i32 } undef, i8 %_15.0, 0
  %7 = insertvalue { i8, i32 } %6, i32 %4, 1
  ret { i8, i32 } %7
}

; <u32 as core::num::bignum::FullOps>::full_mul
; Function Attrs: norecurse nounwind readnone uwtable
define { i32, i32 } @"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$8full_mul17hef14856032eaf73fE"(i32 %self, i32 %other, i32 %carry) unnamed_addr addrspace(1) #1 {
start:
  %_8 = zext i32 %self to i64
  %_10 = zext i32 %other to i64
  %_7 = mul nuw i64 %_10, %_8
  %_12 = zext i32 %carry to i64
  %v = add nuw i64 %_7, %_12
  %_15 = lshr i64 %v, 32
  %_14 = trunc i64 %_15 to i32
  %_18 = trunc i64 %v to i32
  %0 = insertvalue { i32, i32 } undef, i32 %_14, 0
  %1 = insertvalue { i32, i32 } %0, i32 %_18, 1
  ret { i32, i32 } %1
}

; <u32 as core::num::bignum::FullOps>::full_mul_add
; Function Attrs: norecurse nounwind readnone uwtable
define { i32, i32 } @"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_mul_add17h6f7ed92980020b9dE"(i32 %self, i32 %other, i32 %other2, i32 %carry) unnamed_addr addrspace(1) #1 {
start:
  %_10 = zext i32 %self to i64
  %_12 = zext i32 %other to i64
  %_9 = mul nuw i64 %_12, %_10
  %_14 = zext i32 %other2 to i64
  %_8 = add nuw i64 %_9, %_14
  %_16 = zext i32 %carry to i64
  %v = add nuw i64 %_8, %_16
  %_19 = lshr i64 %v, 32
  %_18 = trunc i64 %_19 to i32
  %_22 = trunc i64 %v to i32
  %0 = insertvalue { i32, i32 } undef, i32 %_18, 0
  %1 = insertvalue { i32, i32 } %0, i32 %_22, 1
  ret { i32, i32 } %1
}

; <u32 as core::num::bignum::FullOps>::full_div_rem
; Function Attrs: uwtable
define { i32, i32 } @"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E"(i32 %self, i32 %other, i32 %borrow) unnamed_addr addrspace(1) #2 {
start:
  %_8 = zext i32 %borrow to i64
  %_7 = shl nuw i64 %_8, 32
  %_11 = zext i32 %self to i64
  %lhs = or i64 %_7, %_11
  %rhs = zext i32 %other to i64
  %_19 = icmp eq i32 %other, 0
  br i1 %_19, label %panic, label %bb3, !prof !91, !misexpect !550

bb3:                                              ; preds = %start
  %_16 = udiv i64 %lhs, %rhs
  %_15 = trunc i64 %_16 to i32
  %0 = mul i64 %_16, %rhs
  %_21.decomposed = sub i64 %lhs, %0
  %_20 = trunc i64 %_21.decomposed to i32
  %1 = insertvalue { i32, i32 } undef, i32 %_15, 0
  %2 = insertvalue { i32, i32 } %1, i32 %_20, 1
  ret { i32, i32 } %2

panic:                                            ; preds = %start
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast ([25 x i8]* @str.1 to [0 x i8]*), i16 25, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18913 to %"panic::Location"*))
  unreachable
}

; core::num::bignum::Big32x40::from_small
; Function Attrs: nounwind uwtable
define void @_ZN4core3num6bignum8Big32x4010from_small17h94c71c94acb91a97E(%"num::bignum::Big32x40"* noalias nocapture sret dereferenceable(162) %0, i32 %v) unnamed_addr addrspace(1) #9 {
start:
  %1 = bitcast %"num::bignum::Big32x40"* %0 to i16*
  store i16 1, i16* %1, align 1
  %_5.sroa.0.0..sroa_idx = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %0, i16 0, i32 3, i16 0
  store i32 %v, i32* %_5.sroa.0.0..sroa_idx, align 1
  %_5.sroa.4.0..sroa_idx = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %0, i16 0, i32 3, i16 1
  %_5.sroa.4.0..sroa_cast13 = bitcast i32* %_5.sroa.4.0..sroa_idx to i8*
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(156) %_5.sroa.4.0..sroa_cast13, i8 0, i16 156, i1 false)
  ret void
}

; core::num::bignum::Big32x40::from_u64
; Function Attrs: uwtable
define void @_ZN4core3num6bignum8Big32x408from_u6417ha925c6f2f34e00d9E(%"num::bignum::Big32x40"* noalias nocapture sret dereferenceable(162) %0, i64 %1) unnamed_addr addrspace(1) #2 {
start:
  %base = alloca [40 x i32], align 1
  %2 = bitcast [40 x i32]* %base to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 160, i8* nonnull %2)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(160) %2, i8 0, i16 160, i1 false)
  %_410 = icmp eq i64 %1, 0
  br i1 %_410, label %bb2, label %bb3

bb2:                                              ; preds = %bb4, %start
  %sz.0.lcssa = phi i16 [ 0, %start ], [ %9, %bb4 ]
  %3 = bitcast %"num::bignum::Big32x40"* %0 to i16*
  store i16 %sz.0.lcssa, i16* %3, align 1
  %4 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %0, i16 0, i32 3
  %5 = bitcast [40 x i32]* %4 to i8*
  call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 dereferenceable(160) %5, i8* nonnull align 1 dereferenceable(160) %2, i16 160, i1 false)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 160, i8* nonnull %2)
  ret void

bb3:                                              ; preds = %start, %bb4
  %v.012 = phi i64 [ %8, %bb4 ], [ %1, %start ]
  %sz.011 = phi i16 [ %9, %bb4 ], [ 0, %start ]
  %_9 = icmp ult i16 %sz.011, 40
  br i1 %_9, label %bb4, label %panic, !prof !4, !misexpect !5

bb4:                                              ; preds = %bb3
  %6 = getelementptr inbounds [40 x i32], [40 x i32]* %base, i16 0, i16 %sz.011
  %7 = trunc i64 %v.012 to i32
  store i32 %7, i32* %6, align 1
  %8 = lshr i64 %v.012, 32
  %9 = add nuw nsw i16 %sz.011, 1
  %_4 = icmp eq i64 %8, 0
  br i1 %_4, label %bb2, label %bb3

panic:                                            ; preds = %bb3
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 40, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable
}

; core::num::bignum::Big32x40::digits
; Function Attrs: uwtable
define { [0 x i32]*, i16 } @_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E(%"num::bignum::Big32x40"* noalias readonly align 1 dereferenceable(162) %self) unnamed_addr addrspace(1) #2 {
start:
  %0 = bitcast %"num::bignum::Big32x40"* %self to i16*
  %_6 = load i16, i16* %0, align 1
  %_8.i.i.i = icmp ugt i16 %_6, 40
  br i1 %_8.i.i.i, label %bb5.i.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit"

bb5.i.i.i:                                        ; preds = %start
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %_6, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit": ; preds = %start
  %_4 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3
  %_3.0 = bitcast [40 x i32]* %_4 to [0 x i32]*
  %1 = insertvalue { [0 x i32]*, i16 } undef, [0 x i32]* %_3.0, 0
  %2 = insertvalue { [0 x i32]*, i16 } %1, i16 %_6, 1
  ret { [0 x i32]*, i16 } %2
}

; core::num::bignum::Big32x40::get_bit
; Function Attrs: uwtable
define i8 @_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E(%"num::bignum::Big32x40"* noalias nocapture readonly align 1 dereferenceable(162) %self, i16 %i) unnamed_addr addrspace(1) #2 {
start:
  %d = lshr i16 %i, 5
  %_18 = icmp ult i16 %i, 1280
  br i1 %_18, label %bb4, label %panic2, !prof !4, !misexpect !5

bb4:                                              ; preds = %start
  %0 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3, i16 %d
  %_15 = load i32, i32* %0, align 1
  %1 = and i16 %i, 31
  %2 = zext i16 %1 to i32
  %_14 = lshr i32 %_15, %2
  %3 = trunc i32 %_14 to i8
  %4 = and i8 %3, 1
  ret i8 %4

panic2:                                           ; preds = %start
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %d, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable
}

; core::num::bignum::Big32x40::is_zero
; Function Attrs: uwtable
define zeroext i1 @_ZN4core3num6bignum8Big32x407is_zero17hfecd2d706fe71641E(%"num::bignum::Big32x40"* noalias readonly align 1 dereferenceable(162) %self) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = bitcast %"num::bignum::Big32x40"* %self to i16*
  %_6.i = load i16, i16* %0, align 1, !alias.scope !1907
  %_8.i.i.i.i = icmp ugt i16 %_6.i, 40
  br i1 %_8.i.i.i.i, label %bb5.i.i.i.i, label %_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E.exit

bb5.i.i.i.i:                                      ; preds = %start
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %_6.i, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E.exit: ; preds = %start
  %1 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3, i16 %_6.i
  %2 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3, i16 0
  br label %bb1.i

bb1.i:                                            ; preds = %bb6.i, %_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E.exit
  %_62.i.i = phi i32* [ %3, %bb6.i ], [ %2, %_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E.exit ]
  %_13.i.i = icmp eq i32* %_62.i.i, %1
  br i1 %_13.i.i, label %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$3all17hda71325ba087d9cfE.exit", label %bb6.i

bb6.i:                                            ; preds = %bb1.i
  %3 = getelementptr inbounds i32, i32* %_62.i.i, i16 1
  %.val.i = load i32, i32* %_62.i.i, align 1
  %4 = icmp eq i32 %.val.i, 0
  br i1 %4, label %bb1.i, label %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$3all17hda71325ba087d9cfE.exit"

"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$3all17hda71325ba087d9cfE.exit": ; preds = %bb1.i, %bb6.i
  %.0.i = phi i1 [ false, %bb6.i ], [ true, %bb1.i ]
  ret i1 %.0.i
}

; core::num::bignum::Big32x40::bit_length
; Function Attrs: uwtable
define i16 @_ZN4core3num6bignum8Big32x4010bit_length17he5a5e93bd40911c1E(%"num::bignum::Big32x40"* noalias readonly align 1 dereferenceable(162) %self) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = bitcast %"num::bignum::Big32x40"* %self to i16*
  %_6.i = load i16, i16* %0, align 1, !alias.scope !1910
  %_8.i.i.i.i = icmp ugt i16 %_6.i, 40
  br i1 %_8.i.i.i.i, label %bb5.i.i.i.i, label %bb5.i.i.i4

bb5.i.i.i.i:                                      ; preds = %start
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %_6.i, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

bb5.i.i.i4:                                       ; preds = %start
  %1 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3, i16 0
  %_13.i.i4.i.i.i.i = icmp eq i16 %_6.i, 0
  br i1 %_13.i.i4.i.i.i.i, label %bb11, label %bb6.i.i.i.i.i.preheader

bb6.i.i.i.i.i.preheader:                          ; preds = %bb5.i.i.i4
  %2 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3, i16 %_6.i
  br label %bb6.i.i.i.i.i

bb6.i.i.i.i.i:                                    ; preds = %bb6.i.i.i.i.i.preheader, %bb8.i.i.i.i.i
  %_12.i.i6.i.i.i.i = phi i32* [ %3, %bb8.i.i.i.i.i ], [ %2, %bb6.i.i.i.i.i.preheader ]
  %accum.0.i5.i.i.i.i = phi i16 [ %_5.0.i.i.i.i.i.i.i.i.i.i, %bb8.i.i.i.i.i ], [ 0, %bb6.i.i.i.i.i.preheader ]
  %3 = getelementptr inbounds i32, i32* %_12.i.i6.i.i.i.i, i16 -1
  %x.val.val.i.i.i.i.i.i = load i32, i32* %3, align 1, !alias.scope !1913, !noalias !1916
  %4 = icmp eq i32 %x.val.val.i.i.i.i.i.i, 0
  br i1 %4, label %bb8.i.i.i.i.i, label %_ZN4core4iter6traits8iterator8Iterator5count17h833b2edda10f8956E.exit

bb8.i.i.i.i.i:                                    ; preds = %bb6.i.i.i.i.i
  %_5.0.i.i.i.i.i.i.i.i.i.i = add nuw nsw i16 %accum.0.i5.i.i.i.i, 1
  %_13.i.i.i.i.i.i = icmp eq i32* %1, %3
  br i1 %_13.i.i.i.i.i.i, label %_ZN4core4iter6traits8iterator8Iterator5count17h833b2edda10f8956E.exit, label %bb6.i.i.i.i.i

_ZN4core4iter6traits8iterator8Iterator5count17h833b2edda10f8956E.exit: ; preds = %bb6.i.i.i.i.i, %bb8.i.i.i.i.i
  %.0.i.i.i = phi i16 [ %accum.0.i5.i.i.i.i, %bb6.i.i.i.i.i ], [ %_5.0.i.i.i.i.i.i.i.i.i.i, %bb8.i.i.i.i.i ]
  %end = sub i16 %_6.i, %.0.i.i.i
  %_8.i.i.i = icmp ult i16 %_6.i, %.0.i.i.i
  br i1 %_8.i.i.i, label %bb5.i.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit"

bb5.i.i.i:                                        ; preds = %_ZN4core4iter6traits8iterator8Iterator5count17h833b2edda10f8956E.exit
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %end, i16 %_6.i, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit": ; preds = %_ZN4core4iter6traits8iterator8Iterator5count17h833b2edda10f8956E.exit
  %5 = icmp eq i16 %end, 0
  br i1 %5, label %bb11, label %bb9

bb9:                                              ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit"
  %_24 = shl i16 %end, 5
  br label %bb14

bb11:                                             ; preds = %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit, %bb5.i.i.i4, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit"
  %.0 = phi i16 [ 0, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit" ], [ 0, %bb5.i.i.i4 ], [ %i.0.in, %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit ]
  ret i16 %.0

bb14:                                             ; preds = %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit, %bb9
  %i.0.in = phi i16 [ %_24, %bb9 ], [ %i.0, %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit ]
  %i.0 = add i16 %i.0.in, -1
  %d.i = lshr i16 %i.0, 5
  %_18.i = icmp ult i16 %i.0, 1280
  br i1 %_18.i, label %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit, label %panic2.i, !prof !4, !misexpect !5

panic2.i:                                         ; preds = %bb14
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %d.i, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*)), !noalias !1921
  unreachable

_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit: ; preds = %bb14
  %6 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3, i16 %d.i
  %_15.i = load i32, i32* %6, align 1, !alias.scope !1921
  %7 = and i16 %i.0, 31
  %8 = zext i16 %7 to i32
  %9 = shl nuw i32 1, %8
  %10 = and i32 %_15.i, %9
  %_28 = icmp eq i32 %10, 0
  br i1 %_28, label %bb14, label %bb11
}

; core::num::bignum::Big32x40::add
; Function Attrs: uwtable
define nonnull align 1 dereferenceable(162) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x403add17hc5fc99826d0d9f42E(%"num::bignum::Big32x40"* returned align 1 dereferenceable(162) %self, %"num::bignum::Big32x40"* noalias readonly align 1 dereferenceable(162) %other) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = bitcast %"num::bignum::Big32x40"* %self to i16*
  %_5 = load i16, i16* %0, align 1
  %1 = bitcast %"num::bignum::Big32x40"* %other to i16*
  %_6 = load i16, i16* %1, align 1
  %2 = icmp ugt i16 %_5, %_6
  %.0.sroa.speculated.i.i.i = select i1 %2, i16 %_5, i16 %_6
  %_9.i.i.i = icmp ugt i16 %.0.sroa.speculated.i.i.i, 40
  br i1 %_9.i.i.i, label %bb5.i.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit"

bb5.i.i.i:                                        ; preds = %start
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.0.sroa.speculated.i.i.i, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit": ; preds = %start
  %_2.i.i39 = icmp eq i16 %.0.sroa.speculated.i.i.i, 0
  br i1 %_2.i.i39, label %bb16, label %bb11

bb9:                                              ; preds = %bb11
  br i1 %brmerge.i, label %bb14, label %bb16

bb11:                                             ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit", %bb11
  %carry.041 = phi i8 [ %_15.0.i, %bb11 ], [ 0, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit" ]
  %iter.sroa.8.040 = phi i16 [ %3, %bb11 ], [ 0, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit" ]
  %3 = add nuw nsw i16 %iter.sroa.8.040, 1
  %4 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3, i16 %iter.sroa.8.040
  %5 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %other, i16 0, i32 3, i16 %iter.sroa.8.040
  %_36 = load i32, i32* %4, align 1
  %_37 = load i32, i32* %5, align 1
  %6 = tail call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %_36, i32 %_37) #20
  %7 = extractvalue { i32, i1 } %6, 0
  %8 = extractvalue { i32, i1 } %6, 1
  %9 = zext i8 %carry.041 to i32
  %10 = tail call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %7, i32 %9) #20
  %11 = extractvalue { i32, i1 } %10, 0
  %12 = extractvalue { i32, i1 } %10, 1
  %brmerge.i = or i1 %8, %12
  %_15.0.i = zext i1 %brmerge.i to i8
  store i32 %11, i32* %4, align 1
  %_2.i.i = icmp ult i16 %3, %.0.sroa.speculated.i.i.i
  br i1 %_2.i.i, label %bb11, label %bb9

bb14:                                             ; preds = %bb9
  %_44 = icmp ult i16 %.0.sroa.speculated.i.i.i, 40
  br i1 %_44, label %bb15, label %panic, !prof !4, !misexpect !5

bb15:                                             ; preds = %bb14
  %13 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i
  store i32 1, i32* %13, align 1
  %14 = add nuw nsw i16 %.0.sroa.speculated.i.i.i, 1
  br label %bb16

bb16:                                             ; preds = %bb9, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit", %bb15
  %sz.0 = phi i16 [ %14, %bb15 ], [ %.0.sroa.speculated.i.i.i, %bb9 ], [ 0, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit" ]
  store i16 %sz.0, i16* %0, align 1
  ret %"num::bignum::Big32x40"* %self

panic:                                            ; preds = %bb14
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %.0.sroa.speculated.i.i.i, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable
}

; core::num::bignum::Big32x40::add_small
; Function Attrs: uwtable
define nonnull align 1 dereferenceable(162) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x409add_small17hbf8ea75ef7440a49E(%"num::bignum::Big32x40"* returned align 1 dereferenceable(162) %self, i32 %other) unnamed_addr addrspace(1) #2 {
start:
  %0 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3, i16 0
  %_7 = load i32, i32* %0, align 1
  %1 = tail call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %_7, i32 %other) #20
  %2 = extractvalue { i32, i1 } %1, 0
  %3 = extractvalue { i32, i1 } %1, 1
  store i32 %2, i32* %0, align 1
  br i1 %3, label %bb4, label %bb3

bb3:                                              ; preds = %bb5, %start
  %i.0.lcssa = phi i16 [ 1, %start ], [ %9, %bb5 ]
  %4 = bitcast %"num::bignum::Big32x40"* %self to i16*
  %_29 = load i16, i16* %4, align 1
  %_27 = icmp ugt i16 %i.0.lcssa, %_29
  br i1 %_27, label %bb9, label %bb10

bb4:                                              ; preds = %start, %bb5
  %i.010 = phi i16 [ %9, %bb5 ], [ 1, %start ]
  %_20 = icmp ult i16 %i.010, 40
  br i1 %_20, label %bb5, label %panic, !prof !4, !misexpect !5

bb5:                                              ; preds = %bb4
  %5 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3, i16 %i.010
  %_17 = load i32, i32* %5, align 1
  %6 = tail call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %_17, i32 1) #20
  %7 = extractvalue { i32, i1 } %6, 0
  %8 = extractvalue { i32, i1 } %6, 1
  store i32 %7, i32* %5, align 1
  %9 = add nuw nsw i16 %i.010, 1
  br i1 %8, label %bb4, label %bb3

bb9:                                              ; preds = %bb3
  store i16 %i.0.lcssa, i16* %4, align 1
  br label %bb10

bb10:                                             ; preds = %bb3, %bb9
  ret %"num::bignum::Big32x40"* %self

panic:                                            ; preds = %bb4
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 40, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable
}

; core::num::bignum::Big32x40::sub
; Function Attrs: uwtable
define nonnull align 1 dereferenceable(162) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE(%"num::bignum::Big32x40"* returned align 1 dereferenceable(162) %self, %"num::bignum::Big32x40"* noalias readonly align 1 dereferenceable(162) %other) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = bitcast %"num::bignum::Big32x40"* %self to i16*
  %_5 = load i16, i16* %0, align 1
  %1 = bitcast %"num::bignum::Big32x40"* %other to i16*
  %_6 = load i16, i16* %1, align 1
  %2 = icmp ugt i16 %_5, %_6
  %.0.sroa.speculated.i.i.i = select i1 %2, i16 %_5, i16 %_6
  %_9.i.i.i = icmp ugt i16 %.0.sroa.speculated.i.i.i, 40
  br i1 %_9.i.i.i, label %bb5.i.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit"

bb5.i.i.i:                                        ; preds = %start
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.0.sroa.speculated.i.i.i, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit": ; preds = %start
  %_2.i.i34 = icmp eq i16 %.0.sroa.speculated.i.i.i, 0
  br i1 %_2.i.i34, label %bb13, label %bb11

bb9:                                              ; preds = %bb11
  br i1 %brmerge.i, label %bb13, label %bb14

bb11:                                             ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit", %bb11
  %noborrow.036 = phi i8 [ %_15.0.i, %bb11 ], [ 1, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit" ]
  %iter.sroa.8.035 = phi i16 [ %3, %bb11 ], [ 0, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit" ]
  %3 = add nuw nsw i16 %iter.sroa.8.035, 1
  %4 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3, i16 %iter.sroa.8.035
  %5 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %other, i16 0, i32 3, i16 %iter.sroa.8.035
  %_36 = load i32, i32* %4, align 1
  %_38 = load i32, i32* %5, align 1
  %_37 = xor i32 %_38, -1
  %6 = tail call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %_36, i32 %_37) #20
  %7 = extractvalue { i32, i1 } %6, 0
  %8 = extractvalue { i32, i1 } %6, 1
  %9 = zext i8 %noborrow.036 to i32
  %10 = tail call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %7, i32 %9) #20
  %11 = extractvalue { i32, i1 } %10, 0
  %12 = extractvalue { i32, i1 } %10, 1
  %brmerge.i = or i1 %8, %12
  %_15.0.i = zext i1 %brmerge.i to i8
  store i32 %11, i32* %4, align 1
  %_2.i.i = icmp ult i16 %3, %.0.sroa.speculated.i.i.i
  br i1 %_2.i.i, label %bb11, label %bb9

bb13:                                             ; preds = %bb9, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit"
  store i16 %.0.sroa.speculated.i.i.i, i16* %0, align 1
  ret %"num::bignum::Big32x40"* %self

bb14:                                             ; preds = %bb9
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [26 x i8] }>* @alloc18922 to [0 x i8]*), i16 26, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable
}

; core::num::bignum::Big32x40::mul_small
; Function Attrs: uwtable
define nonnull align 1 dereferenceable(162) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E(%"num::bignum::Big32x40"* returned align 1 dereferenceable(162) %self, i32 %other) unnamed_addr addrspace(1) #2 {
start:
  %0 = bitcast %"num::bignum::Big32x40"* %self to i16*
  %1 = load i16, i16* %0, align 1
  %_9.i.i.i = icmp ugt i16 %1, 40
  br i1 %_9.i.i.i, label %bb5.i.i.i, label %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit"

bb5.i.i.i:                                        ; preds = %start
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %1, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit": ; preds = %start
  %_10 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3
  %2 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3, i16 %1
  %3 = getelementptr [40 x i32], [40 x i32]* %_10, i16 0, i16 0
  %_13.i16 = icmp eq i32* %2, %3
  br i1 %_13.i16, label %bb12, label %bb7.lr.ph

bb7.lr.ph:                                        ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit"
  %4 = bitcast [40 x i32]* %_10 to i8*
  %_10.i = zext i32 %other to i64
  br label %bb7

bb5:                                              ; preds = %bb7
  %_30 = icmp eq i32 %_14.i, 0
  br i1 %_30, label %bb12, label %bb10

bb7:                                              ; preds = %bb7.lr.ph, %bb7
  %carry.018 = phi i32 [ 0, %bb7.lr.ph ], [ %_14.i, %bb7 ]
  %iter.sroa.0.017 = phi i8* [ %4, %bb7.lr.ph ], [ %5, %bb7 ]
  %5 = getelementptr inbounds i8, i8* %iter.sroa.0.017, i16 4
  %6 = bitcast i8* %iter.sroa.0.017 to i32*
  %_25 = load i32, i32* %6, align 1
  %_8.i = zext i32 %_25 to i64
  %_7.i = mul nuw i64 %_8.i, %_10.i
  %_12.i11 = zext i32 %carry.018 to i64
  %v.i = add nuw i64 %_7.i, %_12.i11
  %_15.i = lshr i64 %v.i, 32
  %_14.i = trunc i64 %_15.i to i32
  %_18.i = trunc i64 %v.i to i32
  store i32 %_18.i, i32* %6, align 1
  %7 = bitcast i8* %5 to i32*
  %_13.i = icmp eq i32* %2, %7
  br i1 %_13.i, label %bb5, label %bb7

bb10:                                             ; preds = %bb5
  %_35 = icmp ult i16 %1, 40
  br i1 %_35, label %bb11, label %panic, !prof !4, !misexpect !5

bb11:                                             ; preds = %bb10
  store i32 %_14.i, i32* %2, align 1
  %8 = add nuw nsw i16 %1, 1
  br label %bb12

bb12:                                             ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit", %bb5, %bb11
  %sz.0 = phi i16 [ %8, %bb11 ], [ %1, %bb5 ], [ %1, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit" ]
  store i16 %sz.0, i16* %0, align 1
  ret %"num::bignum::Big32x40"* %self

panic:                                            ; preds = %bb10
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %1, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable
}

; core::num::bignum::Big32x40::mul_pow2
; Function Attrs: uwtable
define nonnull align 1 dereferenceable(162) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x408mul_pow217h0cff03c1c9e177a8E(%"num::bignum::Big32x40"* returned align 1 dereferenceable(162) %self, i16 %bits) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %digits = lshr i16 %bits, 5
  %bits4 = and i16 %bits, 31
  %_15 = icmp ult i16 %bits, 1280
  br i1 %_15, label %bb4, label %bb5

bb4:                                              ; preds = %start
  %0 = bitcast %"num::bignum::Big32x40"* %self to i16*
  %_22 = load i16, i16* %0, align 1
  %1 = icmp eq i16 %_22, 0
  br i1 %1, label %bb16.preheader, label %bb12

bb5:                                              ; preds = %start
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [29 x i8] }>* @alloc18917 to [0 x i8]*), i16 29, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

bb16.preheader:                                   ; preds = %bb14, %bb4
  %2 = icmp eq i16 %digits, 0
  br i1 %2, label %bb18, label %bb20

bb12:                                             ; preds = %bb4, %bb14
  %iter.sroa.4.069 = phi i16 [ %3, %bb14 ], [ %_22, %bb4 ]
  %3 = add i16 %iter.sroa.4.069, -1
  %_35 = icmp ult i16 %3, 40
  br i1 %_35, label %bb13, label %panic5, !prof !4, !misexpect !5

bb13:                                             ; preds = %bb12
  %_36 = add i16 %3, %digits
  %_40 = icmp ult i16 %_36, 40
  br i1 %_40, label %bb14, label %panic6, !prof !4, !misexpect !5

bb14:                                             ; preds = %bb13
  %4 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3, i16 %3
  %_32 = load i32, i32* %4, align 1
  %5 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3, i16 %_36
  store i32 %_32, i32* %5, align 1
  %6 = icmp eq i16 %3, 0
  br i1 %6, label %bb16.preheader, label %bb12

bb18:                                             ; preds = %bb21, %bb16.preheader
  %_57 = load i16, i16* %0, align 1
  %7 = add i16 %_57, %digits
  %_59 = icmp eq i16 %bits4, 0
  br i1 %_59, label %bb40, label %bb23

bb20:                                             ; preds = %bb16.preheader, %bb21
  %iter1.sroa.0.068 = phi i16 [ %8, %bb21 ], [ 0, %bb16.preheader ]
  %_55 = icmp ult i16 %iter1.sroa.0.068, 40
  br i1 %_55, label %bb21, label %panic8, !prof !4, !misexpect !5

bb21:                                             ; preds = %bb20
  %8 = add nuw nsw i16 %iter1.sroa.0.068, 1
  %9 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3, i16 %iter1.sroa.0.068
  store i32 0, i32* %9, align 1
  %10 = icmp ult i16 %8, %digits
  br i1 %10, label %bb20, label %bb18

bb23:                                             ; preds = %bb18
  %_64 = add i16 %7, -1
  %_67 = icmp ult i16 %_64, 40
  br i1 %_67, label %bb24, label %panic9, !prof !4, !misexpect !5

bb24:                                             ; preds = %bb23
  %11 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3, i16 %_64
  %_63 = load i32, i32* %11, align 1
  %_68 = sub i16 0, %bits
  %12 = and i16 %_68, 31
  %13 = zext i16 %12 to i32
  %overflow = lshr i32 %_63, %13
  %_71 = icmp eq i32 %overflow, 0
  br i1 %_71, label %bb28, label %bb26

bb26:                                             ; preds = %bb24
  %_76 = icmp ult i16 %7, 40
  br i1 %_76, label %bb27, label %panic10, !prof !4, !misexpect !5

bb27:                                             ; preds = %bb26
  %14 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3, i16 %7
  store i32 %overflow, i32* %14, align 1
  %15 = add nuw nsw i16 %7, 1
  br label %bb28

bb28:                                             ; preds = %bb24, %bb27
  %sz.0 = phi i16 [ %15, %bb27 ], [ %7, %bb24 ]
  %_80 = add nuw nsw i16 %digits, 1
  %16 = icmp ult i16 %_80, %7
  %17 = zext i16 %bits4 to i32
  br i1 %16, label %bb36, label %bb39

bb36:                                             ; preds = %bb28, %bb38
  %_93 = phi i32 [ %_99, %bb38 ], [ %_63, %bb28 ]
  %iter2.sroa.4.067 = phi i16 [ %18, %bb38 ], [ %7, %bb28 ]
  %18 = add nsw i16 %iter2.sroa.4.067, -1
  %_100 = add nsw i16 %iter2.sroa.4.067, -2
  %_103 = icmp ult i16 %_100, 40
  br i1 %_103, label %bb38, label %panic13, !prof !4, !misexpect !5

bb38:                                             ; preds = %bb36
  %19 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3, i16 %18
  %_92 = shl i32 %_93, %17
  %20 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3, i16 %_100
  %_99 = load i32, i32* %20, align 1
  %_98 = lshr i32 %_99, %13
  %21 = or i32 %_98, %_92
  store i32 %21, i32* %19, align 1
  %22 = icmp ult i16 %_80, %18
  br i1 %22, label %bb36, label %bb39

bb39:                                             ; preds = %bb38, %bb28
  %23 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3, i16 %digits
  %24 = load i32, i32* %23, align 1
  %25 = shl i32 %24, %17
  store i32 %25, i32* %23, align 1
  br label %bb40

bb40:                                             ; preds = %bb18, %bb39
  %sz.1 = phi i16 [ %sz.0, %bb39 ], [ %7, %bb18 ]
  store i16 %sz.1, i16* %0, align 1
  ret %"num::bignum::Big32x40"* %self

panic5:                                           ; preds = %bb12
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %3, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

panic6:                                           ; preds = %bb13
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_36, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

panic8:                                           ; preds = %bb20
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %iter1.sroa.0.068, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

panic9:                                           ; preds = %bb23
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_64, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

panic10:                                          ; preds = %bb26
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %7, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

panic13:                                          ; preds = %bb36
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_100, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable
}

; core::num::bignum::Big32x40::mul_pow5
; Function Attrs: uwtable
define nonnull align 1 dereferenceable(162) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x408mul_pow517h15ae11d011832683E(%"num::bignum::Big32x40"* returned align 1 dereferenceable(162) %self, i16 %0) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
bb3:
  %_1549 = icmp ult i16 %0, 13
  br i1 %_1549, label %bb9.preheader, label %bb6.lr.ph

bb6.lr.ph:                                        ; preds = %bb3
  %1 = bitcast %"num::bignum::Big32x40"* %self to i16*
  %_10.i13 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3
  %2 = getelementptr [40 x i32], [40 x i32]* %_10.i13, i16 0, i16 0
  %3 = bitcast [40 x i32]* %_10.i13 to i8*
  %.pre = load i16, i16* %1, align 1
  br label %bb6

bb9.preheader:                                    ; preds = %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit37, %bb3
  %e.0.lcssa = phi i16 [ %0, %bb3 ], [ %11, %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit37 ]
  %4 = icmp eq i16 %e.0.lcssa, 0
  br i1 %4, label %bb11, label %bb13

bb6:                                              ; preds = %bb6.lr.ph, %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit37
  %5 = phi i16 [ %.pre, %bb6.lr.ph ], [ %sz.0.i35, %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit37 ]
  %e.050 = phi i16 [ %0, %bb6.lr.ph ], [ %11, %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit37 ]
  %_9.i.i.i.i11 = icmp ugt i16 %5, 40
  br i1 %_9.i.i.i.i11, label %bb5.i.i.i.i12, label %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i15"

bb5.i.i.i.i12:                                    ; preds = %bb6
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %5, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i15": ; preds = %bb6
  %6 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3, i16 %5
  %_13.i16.i14 = icmp eq i32* %6, %2
  br i1 %_13.i16.i14, label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit37, label %bb7.i31

bb5.i19:                                          ; preds = %bb7.i31
  %_30.i18 = icmp eq i32 %_14.i.i28, 0
  br i1 %_30.i18, label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit37, label %bb10.i33

bb7.i31:                                          ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i15", %bb7.i31
  %carry.018.i20 = phi i32 [ %_14.i.i28, %bb7.i31 ], [ 0, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i15" ]
  %iter.sroa.0.017.i21 = phi i8* [ %7, %bb7.i31 ], [ %3, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i15" ]
  %7 = getelementptr inbounds i8, i8* %iter.sroa.0.017.i21, i16 4
  %8 = bitcast i8* %iter.sroa.0.017.i21 to i32*
  %_25.i22 = load i32, i32* %8, align 1
  %_8.i.i23 = zext i32 %_25.i22 to i64
  %_7.i.i24 = mul nuw nsw i64 %_8.i.i23, 1220703125
  %_12.i11.i25 = zext i32 %carry.018.i20 to i64
  %v.i.i26 = add nuw nsw i64 %_7.i.i24, %_12.i11.i25
  %_15.i.i27 = lshr i64 %v.i.i26, 32
  %_14.i.i28 = trunc i64 %_15.i.i27 to i32
  %_18.i.i29 = trunc i64 %v.i.i26 to i32
  store i32 %_18.i.i29, i32* %8, align 1
  %9 = bitcast i8* %7 to i32*
  %_13.i.i30 = icmp eq i32* %6, %9
  br i1 %_13.i.i30, label %bb5.i19, label %bb7.i31

bb10.i33:                                         ; preds = %bb5.i19
  %_35.i32 = icmp ult i16 %5, 40
  br i1 %_35.i32, label %bb11.i34, label %panic.i36, !prof !4, !misexpect !5

bb11.i34:                                         ; preds = %bb10.i33
  store i32 %_14.i.i28, i32* %6, align 1
  %10 = add nuw nsw i16 %5, 1
  br label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit37

panic.i36:                                        ; preds = %bb10.i33
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %5, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit37: ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i15", %bb5.i19, %bb11.i34
  %sz.0.i35 = phi i16 [ %10, %bb11.i34 ], [ %5, %bb5.i19 ], [ %5, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i15" ]
  store i16 %sz.0.i35, i16* %1, align 1
  %11 = add i16 %e.050, -13
  %_15 = icmp ult i16 %11, 13
  br i1 %_15, label %bb9.preheader, label %bb6

bb11.loopexit:                                    ; preds = %bb13
  %phitmp = zext i32 %22 to i64
  br label %bb11

bb11:                                             ; preds = %bb11.loopexit, %bb9.preheader
  %rest_power.0.lcssa = phi i64 [ 1, %bb9.preheader ], [ %phitmp, %bb11.loopexit ]
  %12 = bitcast %"num::bignum::Big32x40"* %self to i16*
  %13 = load i16, i16* %12, align 1
  %_9.i.i.i.i = icmp ugt i16 %13, 40
  br i1 %_9.i.i.i.i, label %bb5.i.i.i.i, label %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i"

bb5.i.i.i.i:                                      ; preds = %bb11
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %13, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i": ; preds = %bb11
  %_10.i = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3
  %14 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3, i16 %13
  %15 = getelementptr [40 x i32], [40 x i32]* %_10.i, i16 0, i16 0
  %_13.i16.i = icmp eq i32* %14, %15
  br i1 %_13.i16.i, label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit, label %bb7.lr.ph.i

bb7.lr.ph.i:                                      ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i"
  %16 = bitcast [40 x i32]* %_10.i to i8*
  br label %bb7.i

bb5.i:                                            ; preds = %bb7.i
  %_30.i = icmp eq i32 %_14.i.i, 0
  br i1 %_30.i, label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit, label %bb10.i

bb7.i:                                            ; preds = %bb7.i, %bb7.lr.ph.i
  %carry.018.i = phi i32 [ 0, %bb7.lr.ph.i ], [ %_14.i.i, %bb7.i ]
  %iter.sroa.0.017.i = phi i8* [ %16, %bb7.lr.ph.i ], [ %17, %bb7.i ]
  %17 = getelementptr inbounds i8, i8* %iter.sroa.0.017.i, i16 4
  %18 = bitcast i8* %iter.sroa.0.017.i to i32*
  %_25.i = load i32, i32* %18, align 1
  %_8.i.i = zext i32 %_25.i to i64
  %_7.i.i = mul nuw i64 %rest_power.0.lcssa, %_8.i.i
  %_12.i11.i = zext i32 %carry.018.i to i64
  %v.i.i = add nuw i64 %_7.i.i, %_12.i11.i
  %_15.i.i = lshr i64 %v.i.i, 32
  %_14.i.i = trunc i64 %_15.i.i to i32
  %_18.i.i = trunc i64 %v.i.i to i32
  store i32 %_18.i.i, i32* %18, align 1
  %19 = bitcast i8* %17 to i32*
  %_13.i.i = icmp eq i32* %14, %19
  br i1 %_13.i.i, label %bb5.i, label %bb7.i

bb10.i:                                           ; preds = %bb5.i
  %_35.i = icmp ult i16 %13, 40
  br i1 %_35.i, label %bb11.i, label %panic.i, !prof !4, !misexpect !5

bb11.i:                                           ; preds = %bb10.i
  store i32 %_14.i.i, i32* %14, align 1
  %20 = add nuw nsw i16 %13, 1
  br label %_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit

panic.i:                                          ; preds = %bb10.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %13, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

_ZN4core3num6bignum8Big32x409mul_small17h18937901a28af5f4E.exit: ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i", %bb5.i, %bb11.i
  %sz.0.i = phi i16 [ %20, %bb11.i ], [ %13, %bb5.i ], [ %13, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit.i" ]
  store i16 %sz.0.i, i16* %12, align 1
  ret %"num::bignum::Big32x40"* %self

bb13:                                             ; preds = %bb9.preheader, %bb13
  %rest_power.048 = phi i32 [ %22, %bb13 ], [ 1, %bb9.preheader ]
  %iter.sroa.0.047 = phi i16 [ %21, %bb13 ], [ 0, %bb9.preheader ]
  %21 = add nuw i16 %iter.sroa.0.047, 1
  %22 = mul i32 %rest_power.048, 5
  %23 = icmp ult i16 %21, %e.0.lcssa
  br i1 %23, label %bb13, label %bb11.loopexit
}

; core::num::bignum::Big32x40::mul_digits
; Function Attrs: uwtable
define nonnull align 1 dereferenceable(162) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x4010mul_digits17hbd72180d49f6c94bE(%"num::bignum::Big32x40"* returned align 1 dereferenceable(162) %self, [0 x i32]* noalias nonnull readonly align 1 %other.0, i16 %other.1) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %ret = alloca [40 x i32], align 1
  %0 = bitcast [40 x i32]* %ret to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 160, i8* nonnull %0)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(160) %0, i8 0, i16 160, i1 false)
  %1 = bitcast %"num::bignum::Big32x40"* %self to i16*
  %_7 = load i16, i16* %1, align 1
  %_8.i.i.i.i = icmp ugt i16 %_7, 40
  br i1 %_8.i.i.i.i, label %bb5.i.i.i.i, label %_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E.exit

bb5.i.i.i.i:                                      ; preds = %start
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %_7, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E.exit: ; preds = %start
  %_6 = icmp ult i16 %_7, %other.1
  %_4.i = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3
  br i1 %_6, label %bb3, label %bb2

bb2:                                              ; preds = %_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E.exit
  %2 = getelementptr inbounds [0 x i32], [0 x i32]* %other.0, i16 0, i16 %other.1
  %3 = bitcast [0 x i32]* %other.0 to i8*
  %4 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3, i16 %_7
  %5 = bitcast [40 x i32]* %_4.i to i8*
  %_13.i.i65.i10 = icmp eq i16 %_7, 0
  %6 = add nuw nsw i16 %_7, 1
  br i1 %_13.i.i65.i10, label %bb4.outer.us.i14, label %bb4.outer.i29

bb4.outer.us.i14:                                 ; preds = %bb2, %bb26.us.i21
  %iter.sroa.0.0.ph.us.i11 = phi i8* [ %7, %bb26.us.i21 ], [ %3, %bb2 ]
  %iter.sroa.7.0.ph.us.i12 = phi i16 [ %_4.0.i.i28.us.i15, %bb26.us.i21 ], [ 0, %bb2 ]
  %retsz.0.ph.us.i13 = phi i16 [ %spec.select.us.i20, %bb26.us.i21 ], [ 0, %bb2 ]
  br label %bb4.us.i25

"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit32.us.i18": ; preds = %bb4.us.i25
  %7 = getelementptr inbounds i8, i8* %iter.sroa.0.0.us.i22, i16 4
  %_4.0.i.i28.us.i15 = add i16 %iter.sroa.7.0.us.i23, 1
  %a.us.i16 = load i32, i32* %8, align 1, !alias.scope !1924, !noalias !1927
  %_18.us.i17 = icmp eq i32 %a.us.i16, 0
  br i1 %_18.us.i17, label %bb4.us.i25, label %bb26.us.i21

bb26.us.i21:                                      ; preds = %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit32.us.i18"
  %_64.us.i19 = icmp ult i16 %retsz.0.ph.us.i13, %iter.sroa.7.0.us.i23
  %spec.select.us.i20 = select i1 %_64.us.i19, i16 %iter.sroa.7.0.us.i23, i16 %retsz.0.ph.us.i13
  br label %bb4.outer.us.i14

bb4.us.i25:                                       ; preds = %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit32.us.i18", %bb4.outer.us.i14
  %iter.sroa.0.0.us.i22 = phi i8* [ %7, %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit32.us.i18" ], [ %iter.sroa.0.0.ph.us.i11, %bb4.outer.us.i14 ]
  %iter.sroa.7.0.us.i23 = phi i16 [ %_4.0.i.i28.us.i15, %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit32.us.i18" ], [ %iter.sroa.7.0.ph.us.i12, %bb4.outer.us.i14 ]
  %8 = bitcast i8* %iter.sroa.0.0.us.i22 to i32*
  %_13.i.i26.us.i24 = icmp eq i32* %2, %8
  br i1 %_13.i.i26.us.i24, label %bb8, label %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit32.us.i18"

bb4.outer.i29:                                    ; preds = %bb2, %bb26.i71
  %iter.sroa.0.0.ph.i26 = phi i8* [ %10, %bb26.i71 ], [ %3, %bb2 ]
  %iter.sroa.7.0.ph.i27 = phi i16 [ %_4.0.i.i28.i34, %bb26.i71 ], [ 0, %bb2 ]
  %retsz.0.ph.i28 = phi i16 [ %spec.select.i70, %bb26.i71 ], [ 0, %bb2 ]
  br label %bb4.i33

bb4.i33:                                          ; preds = %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit32.i37", %bb4.outer.i29
  %iter.sroa.0.0.i30 = phi i8* [ %10, %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit32.i37" ], [ %iter.sroa.0.0.ph.i26, %bb4.outer.i29 ]
  %iter.sroa.7.0.i31 = phi i16 [ %_4.0.i.i28.i34, %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit32.i37" ], [ %iter.sroa.7.0.ph.i27, %bb4.outer.i29 ]
  %9 = bitcast i8* %iter.sroa.0.0.i30 to i32*
  %_13.i.i26.i32 = icmp eq i32* %2, %9
  br i1 %_13.i.i26.i32, label %bb8, label %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit32.i37"

"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit32.i37": ; preds = %bb4.i33
  %10 = getelementptr inbounds i8, i8* %iter.sroa.0.0.i30, i16 4
  %_4.0.i.i28.i34 = add i16 %iter.sroa.7.0.i31, 1
  %a.i35 = load i32, i32* %9, align 1, !alias.scope !1924, !noalias !1927
  %_18.i36 = icmp eq i32 %a.i35, 0
  br i1 %_18.i36, label %bb4.i33, label %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit.lr.ph.i40"

"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit.lr.ph.i40": ; preds = %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit32.i37"
  %_10.i.i39 = zext i32 %a.i35 to i64
  br label %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit.i46"

"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit.i46": ; preds = %bb20.i62, %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit.lr.ph.i40"
  %carry.068.i41 = phi i32 [ 0, %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit.lr.ph.i40" ], [ %_18.i.i59, %bb20.i62 ]
  %iter1.sroa.7.067.i42 = phi i16 [ 0, %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit.lr.ph.i40" ], [ %_4.0.i.i.i49, %bb20.i62 ]
  %iter1.sroa.0.066.i43 = phi i8* [ %5, %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit.lr.ph.i40" ], [ %11, %bb20.i62 ]
  %11 = getelementptr inbounds i8, i8* %iter1.sroa.0.066.i43, i16 4
  %_43.i44 = add nuw nsw i16 %iter1.sroa.7.067.i42, %iter.sroa.7.0.i31
  %_47.i45 = icmp ult i16 %_43.i44, 40
  br i1 %_47.i45, label %bb20.i62, label %panic.i72, !prof !4, !misexpect !5

bb17.i48:                                         ; preds = %bb20.i62
  %_56.i47 = icmp eq i32 %_18.i.i59, 0
  br i1 %_56.i47, label %bb26.i71, label %bb24.i65

bb20.i62:                                         ; preds = %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit.i46"
  %_4.0.i.i.i49 = add nuw nsw i16 %iter1.sroa.7.067.i42, 1
  %12 = bitcast i8* %iter1.sroa.0.066.i43 to i32*
  %b.i50 = load i32, i32* %12, align 1, !alias.scope !1927, !noalias !1924
  %13 = getelementptr inbounds [40 x i32], [40 x i32]* %ret, i16 0, i16 %_43.i44
  %_42.i51 = load i32, i32* %13, align 1, !noalias !1929
  %_12.i.i52 = zext i32 %b.i50 to i64
  %_9.i.i53 = mul nuw i64 %_12.i.i52, %_10.i.i39
  %_14.i.i54 = zext i32 %_42.i51 to i64
  %_16.i.i55 = zext i32 %carry.068.i41 to i64
  %_8.i.i56 = add nuw nsw i64 %_14.i.i54, %_16.i.i55
  %v.i.i57 = add i64 %_8.i.i56, %_9.i.i53
  %_19.i.i58 = lshr i64 %v.i.i57, 32
  %_18.i.i59 = trunc i64 %_19.i.i58 to i32
  %_22.i.i60 = trunc i64 %v.i.i57 to i32
  store i32 %_22.i.i60, i32* %13, align 1, !noalias !1929
  %14 = bitcast i8* %11 to i32*
  %_13.i.i.i61 = icmp eq i32* %4, %14
  br i1 %_13.i.i.i61, label %bb17.i48, label %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit.i46"

bb24.i65:                                         ; preds = %bb17.i48
  %_59.i63 = add i16 %iter.sroa.7.0.i31, %_7
  %_63.i64 = icmp ult i16 %_59.i63, 40
  br i1 %_63.i64, label %bb25.i66, label %panic5.i73, !prof !4, !misexpect !5

bb25.i66:                                         ; preds = %bb24.i65
  %15 = getelementptr inbounds [40 x i32], [40 x i32]* %ret, i16 0, i16 %_59.i63
  store i32 %_18.i.i59, i32* %15, align 1, !noalias !1929
  br label %bb26.i71

bb26.i71:                                         ; preds = %bb25.i66, %bb17.i48
  %sz.0.i67 = phi i16 [ %6, %bb25.i66 ], [ %_7, %bb17.i48 ]
  %_66.i68 = add i16 %sz.0.i67, %iter.sroa.7.0.i31
  %_64.i69 = icmp ult i16 %retsz.0.ph.i28, %_66.i68
  %spec.select.i70 = select i1 %_64.i69, i16 %_66.i68, i16 %retsz.0.ph.i28
  br label %bb4.outer.i29

panic.i72:                                        ; preds = %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit.i46"
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_43.i44, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

panic5.i73:                                       ; preds = %bb24.i65
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_59.i63, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

bb3:                                              ; preds = %_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E.exit
  %16 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3, i16 %_7
  %17 = bitcast [40 x i32]* %_4.i to i8*
  %18 = getelementptr inbounds [0 x i32], [0 x i32]* %other.0, i16 0, i16 %other.1
  %19 = bitcast [0 x i32]* %other.0 to i8*
  %20 = add i16 %other.1, 1
  br label %bb4.outer.i

bb4.outer.i:                                      ; preds = %bb3, %bb26.i
  %iter.sroa.0.0.ph.i = phi i8* [ %22, %bb26.i ], [ %17, %bb3 ]
  %iter.sroa.7.0.ph.i = phi i16 [ %_4.0.i.i28.i, %bb26.i ], [ 0, %bb3 ]
  %retsz.0.ph.i = phi i16 [ %spec.select.i, %bb26.i ], [ 0, %bb3 ]
  br label %bb4.i

bb4.i:                                            ; preds = %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit32.i", %bb4.outer.i
  %iter.sroa.0.0.i = phi i8* [ %22, %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit32.i" ], [ %iter.sroa.0.0.ph.i, %bb4.outer.i ]
  %iter.sroa.7.0.i = phi i16 [ %_4.0.i.i28.i, %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit32.i" ], [ %iter.sroa.7.0.ph.i, %bb4.outer.i ]
  %21 = bitcast i8* %iter.sroa.0.0.i to i32*
  %_13.i.i26.i = icmp eq i32* %16, %21
  br i1 %_13.i.i26.i, label %bb8, label %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit32.i"

"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit32.i": ; preds = %bb4.i
  %22 = getelementptr inbounds i8, i8* %iter.sroa.0.0.i, i16 4
  %_4.0.i.i28.i = add i16 %iter.sroa.7.0.i, 1
  %a.i = load i32, i32* %21, align 1, !alias.scope !1930, !noalias !1933
  %_18.i = icmp eq i32 %a.i, 0
  br i1 %_18.i, label %bb4.i, label %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit.lr.ph.i"

"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit.lr.ph.i": ; preds = %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit32.i"
  %_10.i.i = zext i32 %a.i to i64
  br label %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit.i"

"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit.i": ; preds = %bb20.i, %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit.lr.ph.i"
  %carry.068.i = phi i32 [ 0, %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit.lr.ph.i" ], [ %_18.i.i, %bb20.i ]
  %iter1.sroa.7.067.i = phi i16 [ 0, %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit.lr.ph.i" ], [ %_4.0.i.i.i, %bb20.i ]
  %iter1.sroa.0.066.i = phi i8* [ %19, %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit.lr.ph.i" ], [ %23, %bb20.i ]
  %23 = getelementptr inbounds i8, i8* %iter1.sroa.0.066.i, i16 4
  %_43.i = add nuw nsw i16 %iter1.sroa.7.067.i, %iter.sroa.7.0.i
  %_47.i = icmp ult i16 %_43.i, 40
  br i1 %_47.i, label %bb20.i, label %panic.i, !prof !4, !misexpect !5

bb17.i:                                           ; preds = %bb20.i
  %_56.i = icmp eq i32 %_18.i.i, 0
  br i1 %_56.i, label %bb26.i, label %bb24.i

bb20.i:                                           ; preds = %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit.i"
  %_4.0.i.i.i = add nuw nsw i16 %iter1.sroa.7.067.i, 1
  %24 = bitcast i8* %iter1.sroa.0.066.i to i32*
  %b.i = load i32, i32* %24, align 1, !alias.scope !1933, !noalias !1930
  %25 = getelementptr inbounds [40 x i32], [40 x i32]* %ret, i16 0, i16 %_43.i
  %_42.i = load i32, i32* %25, align 1, !noalias !1935
  %_12.i.i = zext i32 %b.i to i64
  %_9.i.i = mul nuw i64 %_12.i.i, %_10.i.i
  %_14.i.i = zext i32 %_42.i to i64
  %_16.i.i = zext i32 %carry.068.i to i64
  %_8.i.i = add nuw nsw i64 %_14.i.i, %_16.i.i
  %v.i.i = add i64 %_8.i.i, %_9.i.i
  %_19.i.i = lshr i64 %v.i.i, 32
  %_18.i.i = trunc i64 %_19.i.i to i32
  %_22.i.i = trunc i64 %v.i.i to i32
  store i32 %_22.i.i, i32* %25, align 1, !noalias !1935
  %26 = bitcast i8* %23 to i32*
  %_13.i.i.i = icmp eq i32* %18, %26
  br i1 %_13.i.i.i, label %bb17.i, label %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit.i"

bb24.i:                                           ; preds = %bb17.i
  %_59.i = add i16 %iter.sroa.7.0.i, %other.1
  %_63.i = icmp ult i16 %_59.i, 40
  br i1 %_63.i, label %bb25.i, label %panic5.i, !prof !4, !misexpect !5

bb25.i:                                           ; preds = %bb24.i
  %27 = getelementptr inbounds [40 x i32], [40 x i32]* %ret, i16 0, i16 %_59.i
  store i32 %_18.i.i, i32* %27, align 1, !noalias !1935
  br label %bb26.i

bb26.i:                                           ; preds = %bb25.i, %bb17.i
  %sz.0.i = phi i16 [ %20, %bb25.i ], [ %other.1, %bb17.i ]
  %_66.i = add i16 %sz.0.i, %iter.sroa.7.0.i
  %_64.i = icmp ult i16 %retsz.0.ph.i, %_66.i
  %spec.select.i = select i1 %_64.i, i16 %_66.i, i16 %retsz.0.ph.i
  br label %bb4.outer.i

panic.i:                                          ; preds = %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h340091b3844d7dc8E.exit.i"
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_43.i, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

panic5.i:                                         ; preds = %bb24.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_59.i, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

bb8:                                              ; preds = %bb4.i33, %bb4.us.i25, %bb4.i
  %.pre-phi = phi i8* [ %17, %bb4.i ], [ %5, %bb4.us.i25 ], [ %5, %bb4.i33 ]
  %retsz.0 = phi i16 [ %retsz.0.ph.i, %bb4.i ], [ %retsz.0.ph.us.i13, %bb4.us.i25 ], [ %retsz.0.ph.i28, %bb4.i33 ]
  call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 dereferenceable(160) %.pre-phi, i8* nonnull align 1 dereferenceable(160) %0, i16 160, i1 false)
  store i16 %retsz.0, i16* %1, align 1
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 160, i8* nonnull %0)
  ret %"num::bignum::Big32x40"* %self
}

; core::num::bignum::Big32x40::div_rem_small
; Function Attrs: uwtable
define { i8*, i32 } @_ZN4core3num6bignum8Big32x4013div_rem_small17h11770f9624b0c09fE(%"num::bignum::Big32x40"* align 1 dereferenceable(162) %self, i32 %other) unnamed_addr addrspace(1) #2 {
start:
  %_4 = icmp eq i32 %other, 0
  br i1 %_4, label %bb2, label %bb1

bb1:                                              ; preds = %start
  %0 = bitcast %"num::bignum::Big32x40"* %self to i16*
  %sz = load i16, i16* %0, align 1
  %_9.i.i.i = icmp ugt i16 %sz, 40
  br i1 %_9.i.i.i, label %bb5.i.i.i, label %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit"

bb5.i.i.i:                                        ; preds = %bb1
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %sz, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit": ; preds = %bb1
  %1 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3, i16 0
  %_13.i.i10 = icmp eq i16 %sz, 0
  br i1 %_13.i.i10, label %bb9, label %"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit.lr.ph"

"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit.lr.ph": ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit"
  %2 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3, i16 %sz
  %rhs.i = zext i32 %other to i64
  br label %"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit"

bb2:                                              ; preds = %start
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [27 x i8] }>* @alloc18924 to [0 x i8]*), i16 27, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

bb9:                                              ; preds = %"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit", %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit"
  %borrow.0.lcssa = phi i32 [ 0, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h808cce6223bc5c27E.exit" ], [ %_20.i, %"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit" ]
  %3 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 0, i16 0
  %4 = insertvalue { i8*, i32 } undef, i8* %3, 0
  %5 = insertvalue { i8*, i32 } %4, i32 %borrow.0.lcssa, 1
  ret { i8*, i32 } %5

"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit": ; preds = %"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit.lr.ph", %"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit"
  %borrow.011 = phi i32 [ 0, %"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit.lr.ph" ], [ %_20.i, %"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit" ]
  %6 = phi i32* [ %2, %"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit.lr.ph" ], [ %7, %"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit" ]
  %7 = getelementptr inbounds i32, i32* %6, i16 -1
  %_31 = load i32, i32* %7, align 1
  %_8.i = zext i32 %borrow.011 to i64
  %_7.i = shl nuw i64 %_8.i, 32
  %_11.i = zext i32 %_31 to i64
  %lhs.i = or i64 %_7.i, %_11.i
  %_16.i = udiv i64 %lhs.i, %rhs.i
  %_15.i = trunc i64 %_16.i to i32
  %8 = mul i64 %_16.i, %rhs.i
  %_21.i.decomposed = sub i64 %lhs.i, %8
  %_20.i = trunc i64 %_21.i.decomposed to i32
  store i32 %_15.i, i32* %7, align 1
  %_13.i.i = icmp eq i32* %1, %7
  br i1 %_13.i.i, label %bb9, label %"_ZN50_$LT$u32$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h6145a6c74eca6c05E.exit"
}

; core::num::bignum::Big32x40::div_rem
; Function Attrs: uwtable
define void @_ZN4core3num6bignum8Big32x407div_rem17hf924c3391bec1a55E(%"num::bignum::Big32x40"* noalias readonly align 1 dereferenceable(162) %self, %"num::bignum::Big32x40"* noalias readonly align 1 dereferenceable(162) %d, %"num::bignum::Big32x40"* align 1 dereferenceable(162) %q, %"num::bignum::Big32x40"* align 1 dereferenceable(162) %r) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = bitcast %"num::bignum::Big32x40"* %d to i16*
  %_6.i.i = load i16, i16* %0, align 1, !alias.scope !1936
  %_8.i.i.i.i.i = icmp ugt i16 %_6.i.i, 40
  br i1 %_8.i.i.i.i.i, label %bb5.i.i.i.i.i, label %_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E.exit.i

bb5.i.i.i.i.i:                                    ; preds = %start
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %_6.i.i, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E.exit.i: ; preds = %start
  %1 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %d, i16 0, i32 3, i16 %_6.i.i
  %2 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %d, i16 0, i32 3, i16 0
  br label %bb1.i.i

bb1.i.i:                                          ; preds = %bb6.i.i, %_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E.exit.i
  %_62.i.i.i = phi i32* [ %3, %bb6.i.i ], [ %2, %_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E.exit.i ]
  %_13.i.i.i = icmp eq i32* %_62.i.i.i, %1
  br i1 %_13.i.i.i, label %bb3, label %bb6.i.i

bb6.i.i:                                          ; preds = %bb1.i.i
  %3 = getelementptr inbounds i32, i32* %_62.i.i.i, i16 1
  %.val.i.i = load i32, i32* %_62.i.i.i, align 1, !alias.scope !1941
  %4 = icmp eq i32 %.val.i.i, 0
  br i1 %4, label %bb1.i.i, label %bb2

bb2:                                              ; preds = %bb6.i.i
  %scevgep73 = getelementptr %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %q, i16 0, i32 3, i16 0
  %scevgep7374 = bitcast i32* %scevgep73 to i8*
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(160) %scevgep7374, i8 0, i16 160, i1 false)
  %_32 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %r, i16 0, i32 3
  %5 = bitcast [40 x i32]* %_32 to i8*
  %scevgep = getelementptr %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %r, i16 0, i32 3, i16 0
  %scevgep72 = bitcast i32* %scevgep to i8*
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(160) %scevgep72, i8 0, i16 160, i1 false)
  %6 = bitcast %"num::bignum::Big32x40"* %r to i16*
  store i16 %_6.i.i, i16* %6, align 1
  %7 = bitcast %"num::bignum::Big32x40"* %q to i16*
  store i16 1, i16* %7, align 1
  %8 = bitcast %"num::bignum::Big32x40"* %self to i16*
  %_6.i.i26 = load i16, i16* %8, align 1, !alias.scope !1942
  %_8.i.i.i.i.i27 = icmp ugt i16 %_6.i.i26, 40
  br i1 %_8.i.i.i.i.i27, label %bb5.i.i.i.i.i28, label %bb5.i.i.i4.i

bb3:                                              ; preds = %bb1.i.i
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [30 x i8] }>* @alloc18925 to [0 x i8]*), i16 30, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

bb5.i.i.i.i.i28:                                  ; preds = %bb2
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %_6.i.i26, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

bb5.i.i.i4.i:                                     ; preds = %bb2
  %9 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3, i16 0
  %_13.i.i4.i.i.i.i.i = icmp eq i16 %_6.i.i26, 0
  br i1 %_13.i.i4.i.i.i.i.i, label %bb24, label %bb6.i.i.i.i.i.preheader.i

bb6.i.i.i.i.i.preheader.i:                        ; preds = %bb5.i.i.i4.i
  %10 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3, i16 %_6.i.i26
  br label %bb6.i.i.i.i.i.i

bb6.i.i.i.i.i.i:                                  ; preds = %bb8.i.i.i.i.i.i, %bb6.i.i.i.i.i.preheader.i
  %_12.i.i6.i.i.i.i.i = phi i32* [ %11, %bb8.i.i.i.i.i.i ], [ %10, %bb6.i.i.i.i.i.preheader.i ]
  %accum.0.i5.i.i.i.i.i = phi i16 [ %_5.0.i.i.i.i.i.i.i.i.i.i.i, %bb8.i.i.i.i.i.i ], [ 0, %bb6.i.i.i.i.i.preheader.i ]
  %11 = getelementptr inbounds i32, i32* %_12.i.i6.i.i.i.i.i, i16 -1
  %x.val.val.i.i.i.i.i.i.i = load i32, i32* %11, align 1, !alias.scope !1947, !noalias !1950
  %12 = icmp eq i32 %x.val.val.i.i.i.i.i.i.i, 0
  br i1 %12, label %bb8.i.i.i.i.i.i, label %_ZN4core4iter6traits8iterator8Iterator5count17h833b2edda10f8956E.exit.i

bb8.i.i.i.i.i.i:                                  ; preds = %bb6.i.i.i.i.i.i
  %_5.0.i.i.i.i.i.i.i.i.i.i.i = add nuw nsw i16 %accum.0.i5.i.i.i.i.i, 1
  %_13.i.i.i.i.i.i.i = icmp eq i32* %9, %11
  br i1 %_13.i.i.i.i.i.i.i, label %_ZN4core4iter6traits8iterator8Iterator5count17h833b2edda10f8956E.exit.i, label %bb6.i.i.i.i.i.i

_ZN4core4iter6traits8iterator8Iterator5count17h833b2edda10f8956E.exit.i: ; preds = %bb8.i.i.i.i.i.i, %bb6.i.i.i.i.i.i
  %.0.i.i.i.i = phi i16 [ %accum.0.i5.i.i.i.i.i, %bb6.i.i.i.i.i.i ], [ %_5.0.i.i.i.i.i.i.i.i.i.i.i, %bb8.i.i.i.i.i.i ]
  %end.i = sub i16 %_6.i.i26, %.0.i.i.i.i
  %_8.i.i.i.i = icmp ult i16 %_6.i.i26, %.0.i.i.i.i
  br i1 %_8.i.i.i.i, label %bb5.i.i.i.i29, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i30"

bb5.i.i.i.i29:                                    ; preds = %_ZN4core4iter6traits8iterator8Iterator5count17h833b2edda10f8956E.exit.i
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %end.i, i16 %_6.i.i26, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i30": ; preds = %_ZN4core4iter6traits8iterator8Iterator5count17h833b2edda10f8956E.exit.i
  %13 = icmp eq i16 %end.i, 0
  br i1 %13, label %bb24, label %bb9.i31

bb9.i31:                                          ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i30"
  %_24.i = shl i16 %end.i, 5
  br label %bb14.i34

bb14.i34:                                         ; preds = %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit.i, %bb9.i31
  %i.0.in.i = phi i16 [ %_24.i, %bb9.i31 ], [ %i.0.i, %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit.i ]
  %i.0.i = add i16 %i.0.in.i, -1
  %d.i.i = lshr i16 %i.0.i, 5
  %_18.i.i = icmp ult i16 %i.0.i, 1280
  br i1 %_18.i.i, label %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit.i, label %panic2.i.i, !prof !4, !misexpect !5

panic2.i.i:                                       ; preds = %bb14.i34
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %d.i.i, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*)), !noalias !1955
  unreachable

_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit.i: ; preds = %bb14.i34
  %14 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3, i16 %d.i.i
  %_15.i.i = load i32, i32* %14, align 1, !alias.scope !1958
  %15 = and i16 %i.0.i, 31
  %16 = zext i16 %15 to i32
  %17 = shl nuw i32 1, %16
  %18 = and i32 %_15.i.i, %17
  %_28.i = icmp eq i32 %18, 0
  br i1 %_28.i, label %bb14.i34, label %bb26.lr.ph

bb26.lr.ph:                                       ; preds = %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit.i
  %19 = getelementptr inbounds [40 x i32], [40 x i32]* %_32, i16 0, i16 0
  %_21.i.i.i.i = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %d, i16 0, i32 3
  %20 = bitcast [40 x i32]* %_21.i.i.i.i to i8*
  %21 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %r, i16 0, i32 3, i16 0
  %22 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %d, i16 0, i32 3, i16 0
  br label %bb26

bb24:                                             ; preds = %bb39, %bb5.i.i.i4.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i30"
  ret void

bb26:                                             ; preds = %bb26.lr.ph, %bb39
  %q_is_zero.059 = phi i8 [ 1, %bb26.lr.ph ], [ %q_is_zero.2, %bb39 ]
  %iter2.sroa.4.058 = phi i16 [ %i.0.in.i, %bb26.lr.ph ], [ %23, %bb39 ]
  %23 = add i16 %iter2.sroa.4.058, -1
; call core::num::bignum::Big32x40::mul_pow2
  %_60 = tail call align 1 dereferenceable(162) addrspace(1) %"num::bignum::Big32x40"* @_ZN4core3num6bignum8Big32x408mul_pow217h0cff03c1c9e177a8E(%"num::bignum::Big32x40"* nonnull align 1 dereferenceable(162) %r, i16 1)
  %d.i = lshr i16 %23, 5
  %_18.i = icmp ult i16 %23, 1280
  br i1 %_18.i, label %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit, label %panic2.i, !prof !4, !misexpect !5

panic2.i:                                         ; preds = %bb26
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %d.i, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*)), !noalias !1959
  unreachable

_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit: ; preds = %bb26
  %24 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3, i16 %d.i
  %_15.i = load i32, i32* %24, align 1, !alias.scope !1959
  %25 = and i16 %23, 31
  %26 = zext i16 %25 to i32
  %_14.i = lshr i32 %_15.i, %26
  %_62 = and i32 %_14.i, 1
  %27 = load i32, i32* %19, align 1
  %28 = or i32 %_62, %27
  store i32 %28, i32* %19, align 1
  %_4.i.i.i.i = load i16, i16* %6, align 1, !alias.scope !1962, !noalias !1969
  %_5.i.i.i.i = load i16, i16* %0, align 1, !alias.scope !1969, !noalias !1962
  %29 = icmp ugt i16 %_4.i.i.i.i, %_5.i.i.i.i
  %.0.sroa.speculated.i.i.i.i.i.i.i = select i1 %29, i16 %_4.i.i.i.i, i16 %_5.i.i.i.i
  %_8.i.i.i3.i.i.i.i = icmp ugt i16 %.0.sroa.speculated.i.i.i.i.i.i.i, 40
  br i1 %_8.i.i.i3.i.i.i.i, label %bb5.i.i.i4.i.i.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i.i"

bb5.i.i.i4.i.i.i.i:                               ; preds = %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.0.sroa.speculated.i.i.i.i.i.i.i, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i.i": ; preds = %_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E.exit
  %30 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %r, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i.i.i.i
  %31 = bitcast i32* %30 to i8*
  %32 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %d, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i.i.i.i
  %33 = bitcast i32* %32 to i8*
  br label %bb5.i.i.i.i.i.i

bb5.i.i.i.i.i.i:                                  ; preds = %bb32.i.i.i.i.i.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i.i"
  %self.sroa.2.0.i.i.i.i.i.i = phi i8* [ %31, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i.i" ], [ %34, %bb32.i.i.i.i.i.i ]
  %other.sroa.5.0.i.i.i.i.i.i = phi i8* [ %33, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i.i.i.i" ], [ %36, %bb32.i.i.i.i.i.i ]
  %_13.i.i.i51.i.i.i.i.i.i = icmp eq i8* %self.sroa.2.0.i.i.i.i.i.i, %5
  br i1 %_13.i.i.i51.i.i.i.i.i.i, label %bb10.i.i.i.i.i.i, label %bb32.i.i.i.i.i.i

bb10.i.i.i.i.i.i:                                 ; preds = %bb5.i.i.i.i.i.i
  %_13.i.i.i.i.i.i.i.i.i = icmp ne i8* %other.sroa.5.0.i.i.i.i.i.i, %20
  %spec.select.i.i.i.i.i.i = sext i1 %_13.i.i.i.i.i.i.i.i.i to i8
  br label %"_ZN4core3cmp5impls70_$LT$impl$u20$core..cmp..PartialOrd$LT$$RF$B$GT$$u20$for$u20$$RF$A$GT$2ge17he60659f252ca4f10E.exit"

bb32.i.i.i.i.i.i:                                 ; preds = %bb5.i.i.i.i.i.i
  %34 = getelementptr inbounds i8, i8* %self.sroa.2.0.i.i.i.i.i.i, i16 -4
  %35 = bitcast i8* %34 to i32*
  %.val.i.i.i.i52.i.i.i.i.i.i = load i32, i32* %35, align 1, !alias.scope !1973, !noalias !1969
  %36 = getelementptr inbounds i8, i8* %other.sroa.5.0.i.i.i.i.i.i, i16 -4
  %37 = bitcast i8* %36 to i32*
  %.val.i.i.i.i44.i.i.i.i.i.i = load i32, i32* %37, align 1, !alias.scope !1978, !noalias !1962
  %_3.i.i.i.i.i.i.i.i = icmp ult i32 %.val.i.i.i.i52.i.i.i.i.i.i, %.val.i.i.i.i44.i.i.i.i.i.i
  %_6.i.i.i.i.i.i.i.i = icmp ne i32 %.val.i.i.i.i52.i.i.i.i.i.i, %.val.i.i.i.i44.i.i.i.i.i.i
  %..i.i.i.i.i.i.i.i = zext i1 %_6.i.i.i.i.i.i.i.i to i8
  %.0.i.i.i.i.i.i.i.i = select i1 %_3.i.i.i.i.i.i.i.i, i8 -1, i8 %..i.i.i.i.i.i.i.i
  %38 = icmp eq i8 %.0.i.i.i.i.i.i.i.i, 0
  br i1 %38, label %bb5.i.i.i.i.i.i, label %"_ZN4core3cmp5impls70_$LT$impl$u20$core..cmp..PartialOrd$LT$$RF$B$GT$$u20$for$u20$$RF$A$GT$2ge17he60659f252ca4f10E.exit"

"_ZN4core3cmp5impls70_$LT$impl$u20$core..cmp..PartialOrd$LT$$RF$B$GT$$u20$for$u20$$RF$A$GT$2ge17he60659f252ca4f10E.exit": ; preds = %bb32.i.i.i.i.i.i, %bb10.i.i.i.i.i.i
  %39 = phi i8 [ %spec.select.i.i.i.i.i.i, %bb10.i.i.i.i.i.i ], [ %.0.i.i.i.i.i.i.i.i, %bb32.i.i.i.i.i.i ]
  %switch.i.i = icmp ult i8 %39, 2
  br i1 %switch.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i", label %bb39

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i": ; preds = %"_ZN4core3cmp5impls70_$LT$impl$u20$core..cmp..PartialOrd$LT$$RF$B$GT$$u20$for$u20$$RF$A$GT$2ge17he60659f252ca4f10E.exit"
  %_2.i.i34.i = icmp eq i16 %.0.sroa.speculated.i.i.i.i.i.i.i, 0
  br i1 %_2.i.i34.i, label %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit, label %bb11.i.preheader

bb11.i.preheader:                                 ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i"
  %_38.i93 = load i32, i32* %22, align 1, !alias.scope !1983
  %_37.i94 = xor i32 %_38.i93, -1
  %40 = tail call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %28, i32 %_37.i94) #20
  %41 = extractvalue { i32, i1 } %40, 0
  %42 = extractvalue { i32, i1 } %40, 1
  %43 = tail call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %41, i32 1) #20
  %44 = extractvalue { i32, i1 } %43, 0
  %45 = extractvalue { i32, i1 } %43, 1
  %brmerge.i.i95 = or i1 %42, %45
  store i32 %44, i32* %21, align 1, !noalias !1983
  %_2.i.i.i96 = icmp eq i16 %.0.sroa.speculated.i.i.i.i.i.i.i, 1
  br i1 %_2.i.i.i96, label %bb9.i, label %bb11.i.bb11.i_crit_edge

bb9.i:                                            ; preds = %bb11.i.bb11.i_crit_edge, %bb11.i.preheader
  %brmerge.i.i.lcssa = phi i1 [ %brmerge.i.i95, %bb11.i.preheader ], [ %brmerge.i.i, %bb11.i.bb11.i_crit_edge ]
  br i1 %brmerge.i.i.lcssa, label %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit, label %bb14.i

bb11.i.bb11.i_crit_edge:                          ; preds = %bb11.i.preheader, %bb11.i.bb11.i_crit_edge
  %brmerge.i.i97 = phi i1 [ %brmerge.i.i, %bb11.i.bb11.i_crit_edge ], [ %brmerge.i.i95, %bb11.i.preheader ]
  %46 = phi i16 [ %47, %bb11.i.bb11.i_crit_edge ], [ 1, %bb11.i.preheader ]
  %.phi.trans.insert = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %r, i16 0, i32 3, i16 %46
  %_36.i.pre = load i32, i32* %.phi.trans.insert, align 1, !noalias !1983
  %47 = add nuw nsw i16 %46, 1
  %48 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %r, i16 0, i32 3, i16 %46
  %49 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %d, i16 0, i32 3, i16 %46
  %_38.i = load i32, i32* %49, align 1, !alias.scope !1983
  %_37.i = xor i32 %_38.i, -1
  %50 = tail call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %_36.i.pre, i32 %_37.i) #20
  %51 = extractvalue { i32, i1 } %50, 0
  %52 = extractvalue { i32, i1 } %50, 1
  %53 = zext i1 %brmerge.i.i97 to i32
  %54 = tail call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %51, i32 %53) #20
  %55 = extractvalue { i32, i1 } %54, 0
  %56 = extractvalue { i32, i1 } %54, 1
  %brmerge.i.i = or i1 %52, %56
  store i32 %55, i32* %48, align 1, !noalias !1983
  %_2.i.i.i = icmp ult i16 %47, %.0.sroa.speculated.i.i.i.i.i.i.i
  br i1 %_2.i.i.i, label %bb11.i.bb11.i_crit_edge, label %bb9.i

bb14.i:                                           ; preds = %bb9.i
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [26 x i8] }>* @alloc18922 to [0 x i8]*), i16 26, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*)), !noalias !1983
  unreachable

_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit: ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit.i", %bb9.i
  store i16 %.0.sroa.speculated.i.i.i.i.i.i.i, i16* %6, align 1, !noalias !1983
  %57 = and i8 %q_is_zero.059, 1
  %_83 = icmp eq i8 %57, 0
  br i1 %_83, label %bb38, label %bb36

bb36:                                             ; preds = %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit
  %58 = add nuw nsw i16 %d.i, 1
  store i16 %58, i16* %7, align 1
  br label %bb38

bb38:                                             ; preds = %bb36, %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit
  %q_is_zero.1 = phi i8 [ 0, %bb36 ], [ %q_is_zero.059, %_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE.exit ]
  %_85 = shl nuw i32 1, %26
  %59 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %q, i16 0, i32 3, i16 %d.i
  %60 = load i32, i32* %59, align 1
  %61 = or i32 %60, %_85
  store i32 %61, i32* %59, align 1
  br label %bb39

bb39:                                             ; preds = %"_ZN4core3cmp5impls70_$LT$impl$u20$core..cmp..PartialOrd$LT$$RF$B$GT$$u20$for$u20$$RF$A$GT$2ge17he60659f252ca4f10E.exit", %bb38
  %q_is_zero.2 = phi i8 [ %q_is_zero.1, %bb38 ], [ %q_is_zero.059, %"_ZN4core3cmp5impls70_$LT$impl$u20$core..cmp..PartialOrd$LT$$RF$B$GT$$u20$for$u20$$RF$A$GT$2ge17he60659f252ca4f10E.exit" ]
  %62 = icmp eq i16 %23, 0
  br i1 %62, label %bb24, label %bb26
}

; <core::num::bignum::Big32x40 as core::cmp::PartialEq>::eq
; Function Attrs: nounwind readonly uwtable
define zeroext i1 @"_ZN68_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialEq$GT$2eq17h77bc7f1b2083f5b8E"(%"num::bignum::Big32x40"* noalias readonly align 1 dereferenceable(162) %self, %"num::bignum::Big32x40"* noalias readonly align 1 dereferenceable(162) %other) unnamed_addr addrspace(1) #6 {
start:
  %_8.i.i = icmp eq %"num::bignum::Big32x40"* %self, %other
  br i1 %_8.i.i, label %"_ZN4core5slice81_$LT$impl$u20$core..cmp..PartialEq$LT$$u5b$B$u5d$$GT$$u20$for$u20$$u5b$A$u5d$$GT$2eq17h4bd60073d6bef4fcE.exit", label %bb8.i.i

bb8.i.i:                                          ; preds = %start
  %_6 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3
  %_11 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %other, i16 0, i32 3
  %_16.i.i = bitcast [40 x i32]* %_6 to i8*
  %_19.i.i = bitcast [40 x i32]* %_11 to i8*
  %_15.i.i = tail call addrspace(1) i32 @memcmp(i8* nonnull dereferenceable(160) %_16.i.i, i8* nonnull dereferenceable(160) %_19.i.i, i16 160) #20
  %0 = icmp eq i32 %_15.i.i, 0
  br label %"_ZN4core5slice81_$LT$impl$u20$core..cmp..PartialEq$LT$$u5b$B$u5d$$GT$$u20$for$u20$$u5b$A$u5d$$GT$2eq17h4bd60073d6bef4fcE.exit"

"_ZN4core5slice81_$LT$impl$u20$core..cmp..PartialEq$LT$$u5b$B$u5d$$GT$$u20$for$u20$$u5b$A$u5d$$GT$2eq17h4bd60073d6bef4fcE.exit": ; preds = %start, %bb8.i.i
  %.0.i.i = phi i1 [ %0, %bb8.i.i ], [ true, %start ]
  ret i1 %.0.i.i
}

; <core::num::bignum::Big32x40 as core::cmp::Ord>::cmp
; Function Attrs: uwtable
define i8 @"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE"(%"num::bignum::Big32x40"* noalias readonly align 1 dereferenceable(162) %self, %"num::bignum::Big32x40"* noalias readonly align 1 dereferenceable(162) %other) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = bitcast %"num::bignum::Big32x40"* %self to i16*
  %_4 = load i16, i16* %0, align 1
  %1 = bitcast %"num::bignum::Big32x40"* %other to i16*
  %_5 = load i16, i16* %1, align 1
  %2 = icmp ugt i16 %_4, %_5
  %.0.sroa.speculated.i.i.i = select i1 %2, i16 %_4, i16 %_5
  %_8.i.i.i3 = icmp ugt i16 %.0.sroa.speculated.i.i.i, 40
  br i1 %_8.i.i.i3, label %bb5.i.i.i4, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit"

bb5.i.i.i4:                                       ; preds = %start
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.0.sroa.speculated.i.i.i, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit": ; preds = %start
  %_12 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3
  %3 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i
  %4 = bitcast [40 x i32]* %_12 to i8*
  %5 = bitcast i32* %3 to i8*
  %_21 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %other, i16 0, i32 3
  %6 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %other, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i
  %7 = bitcast [40 x i32]* %_21 to i8*
  %8 = bitcast i32* %6 to i8*
  br label %bb5.i.i

bb5.i.i:                                          ; preds = %bb32.i.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit"
  %self.sroa.2.0.i.i = phi i8* [ %5, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit" ], [ %9, %bb32.i.i ]
  %other.sroa.5.0.i.i = phi i8* [ %8, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit" ], [ %11, %bb32.i.i ]
  %_13.i.i.i51.i.i = icmp eq i8* %self.sroa.2.0.i.i, %4
  br i1 %_13.i.i.i51.i.i, label %bb10.i.i, label %bb32.i.i

bb10.i.i:                                         ; preds = %bb5.i.i
  %_13.i.i.i.i.i = icmp ne i8* %other.sroa.5.0.i.i, %7
  %spec.select.i.i = sext i1 %_13.i.i.i.i.i to i8
  br label %_ZN4core4iter6traits8iterator8Iterator3cmp17h1d352726096562fbE.exit

bb32.i.i:                                         ; preds = %bb5.i.i
  %9 = getelementptr inbounds i8, i8* %self.sroa.2.0.i.i, i16 -4
  %10 = bitcast i8* %9 to i32*
  %.val.i.i.i.i52.i.i = load i32, i32* %10, align 1, !alias.scope !1986
  %11 = getelementptr inbounds i8, i8* %other.sroa.5.0.i.i, i16 -4
  %12 = bitcast i8* %11 to i32*
  %.val.i.i.i.i44.i.i = load i32, i32* %12, align 1, !alias.scope !1991
  %_3.i.i.i.i = icmp ult i32 %.val.i.i.i.i52.i.i, %.val.i.i.i.i44.i.i
  %_6.i.i.i.i = icmp ne i32 %.val.i.i.i.i52.i.i, %.val.i.i.i.i44.i.i
  %..i.i.i.i = zext i1 %_6.i.i.i.i to i8
  %.0.i.i.i.i = select i1 %_3.i.i.i.i, i8 -1, i8 %..i.i.i.i
  %13 = icmp eq i8 %.0.i.i.i.i, 0
  br i1 %13, label %bb5.i.i, label %_ZN4core4iter6traits8iterator8Iterator3cmp17h1d352726096562fbE.exit

_ZN4core4iter6traits8iterator8Iterator3cmp17h1d352726096562fbE.exit: ; preds = %bb32.i.i, %bb10.i.i
  %14 = phi i8 [ %spec.select.i.i, %bb10.i.i ], [ %.0.i.i.i.i, %bb32.i.i ]
  ret i8 %14
}

; <core::num::bignum::Big32x40 as core::clone::Clone>::clone
; Function Attrs: nounwind uwtable
define void @"_ZN66_$LT$core..num..bignum..Big32x40$u20$as$u20$core..clone..Clone$GT$5clone17h22a7a672ed589f21E"(%"num::bignum::Big32x40"* noalias nocapture sret dereferenceable(162) %0, %"num::bignum::Big32x40"* noalias nocapture readonly align 1 dereferenceable(162) %self) unnamed_addr addrspace(1) #9 {
start:
  %1 = bitcast %"num::bignum::Big32x40"* %self to i16*
  %_2 = load i16, i16* %1, align 1
  %2 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3
  %3 = bitcast [40 x i32]* %2 to i8*
  %4 = bitcast %"num::bignum::Big32x40"* %0 to i16*
  store i16 %_2, i16* %4, align 1
  %5 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %0, i16 0, i32 3
  %6 = bitcast [40 x i32]* %5 to i8*
  call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 dereferenceable(160) %6, i8* nonnull align 1 dereferenceable(160) %3, i16 160, i1 false)
  ret void
}

; <core::num::bignum::Big32x40 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN64_$LT$core..num..bignum..Big32x40$u20$as$u20$core..fmt..Debug$GT$3fmt17hc47fa81e816ae0d4E"(%"num::bignum::Big32x40"* noalias readonly align 1 dereferenceable(162) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_5.i17 = alloca %"fmt::Arguments", align 1
  %_5.i = alloca %"fmt::Arguments", align 1
  %_66 = alloca [2 x { i8*, i8 addrspace(1)* }], align 1
  %v = alloca i32, align 1
  %_18 = alloca [1 x { i8*, i8 addrspace(1)* }], align 1
  %digitlen = alloca i16, align 1
  %0 = bitcast %"num::bignum::Big32x40"* %self to i16*
  %_5 = load i16, i16* %0, align 1
  %_4 = icmp eq i16 %_5, 0
  %phitmp = add i16 %_5, -1
  %sz.0 = select i1 %_4, i16 0, i16 %phitmp
  %1 = bitcast i16* %digitlen to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %1)
  store i16 8, i16* %digitlen, align 1
  %2 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_18 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %2)
  %_24 = icmp ult i16 %sz.0, 40
  br i1 %_24, label %bb5, label %panic, !prof !4, !misexpect !5

bb5:                                              ; preds = %start
  %_20 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3, i16 %sz.0
  %3 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_18 to i32**
  store i32* %_20, i32** %3, align 1
  %4 = getelementptr inbounds [1 x { i8*, i8 addrspace(1)* }], [1 x { i8*, i8 addrspace(1)* }]* %_18, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 (i32*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i32$GT$3fmt17h980e7dc46f13d3abE" to i8 addrspace(1)*), i8 addrspace(1)** %4, align 1
  %5 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_4.0.i18 = load {}*, {}** %5, align 1, !noalias !1996, !nonnull !568
  %6 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %_4.1.i19 = load [3 x i16]*, [3 x i16]** %6, align 1, !noalias !1996, !nonnull !568
  %7 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i17, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %7), !noalias !1996
  %_11.sroa.0.0..sroa_cast21 = bitcast %"fmt::Arguments"* %_5.i17 to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8] }>* @alloc17054 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %_11.sroa.0.0..sroa_cast21, align 1
  %_11.sroa.4.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i17, i16 0, i32 1, i32 1
  store i16 1, i16* %_11.sroa.4.0..sroa_idx, align 1
  %_11.sroa.5.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i17, i16 0, i32 3, i32 0
  store i8* getelementptr inbounds (<{ [17 x i8] }>, <{ [17 x i8] }>* @alloc17063, i16 0, i32 0, i16 0), i8** %_11.sroa.5.0..sroa_idx, align 1
  %_11.sroa.6.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i17, i16 0, i32 3, i32 1
  store i16 1, i16* %_11.sroa.6.0..sroa_idx, align 1
  %_11.sroa.7.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i17, i16 0, i32 5, i32 0
  %8 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %_11.sroa.7.0..sroa_idx to [1 x { i8*, i8 addrspace(1)* }]**
  store [1 x { i8*, i8 addrspace(1)* }]* %_18, [1 x { i8*, i8 addrspace(1)* }]** %8, align 1
  %_11.sroa.8.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i17, i16 0, i32 5, i32 1
  store i16 1, i16* %_11.sroa.8.0..sroa_idx, align 1
; call core::fmt::write
  %9 = call zeroext addrspace(1) i1 @_ZN4core3fmt5write17hf4cd163abe69055cE({}* nonnull align 1 %_4.0.i18, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) %_4.1.i19, %"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_5.i17), !noalias !1996
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 12, i8* nonnull %7), !noalias !1996
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %2)
  br i1 %9, label %bb16, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit"

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit": ; preds = %bb5
  %10 = getelementptr inbounds %"num::bignum::Big32x40", %"num::bignum::Big32x40"* %self, i16 0, i32 3, i16 0
  %11 = bitcast i32* %v to i8*
  %12 = bitcast [2 x { i8*, i8 addrspace(1)* }]* %_66 to i8*
  %13 = bitcast [2 x { i8*, i8 addrspace(1)* }]* %_66 to i32**
  %14 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_66, i16 0, i16 0, i32 1
  %15 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_66, i16 0, i16 1, i32 0
  %16 = bitcast i8** %15 to i16**
  %17 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_66, i16 0, i16 1, i32 1
  %18 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 0, i16 0
  %_59.sroa.0.0..sroa_cast32 = bitcast %"fmt::Arguments"* %_5.i to [0 x { [0 x i8]*, i16 }]**
  %_59.sroa.4.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 1, i32 1
  %_59.sroa.5.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 3, i32 0
  %_59.sroa.6.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 3, i32 1
  %_59.sroa.7.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 5, i32 0
  %19 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %_59.sroa.7.0..sroa_idx to [2 x { i8*, i8 addrspace(1)* }]**
  %_59.sroa.8.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 5, i32 1
  br label %bb21

bb13:                                             ; preds = %bb23, %bb16
  %.0 = phi i1 [ false, %bb23 ], [ true, %bb16 ]
  ret i1 %.0

bb16:                                             ; preds = %bb25, %bb5
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %1)
  br label %bb13

bb21:                                             ; preds = %bb25, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit"
  %20 = phi i32* [ %_20, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hfecc55c714bd6ffaE.exit" ], [ %21, %bb25 ]
  %_13.i.i = icmp eq i32* %10, %20
  br i1 %_13.i.i, label %bb23, label %bb25

bb23:                                             ; preds = %bb21
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %1)
  br label %bb13

bb25:                                             ; preds = %bb21
  %21 = getelementptr inbounds i32, i32* %20, i16 -1
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %11)
  %22 = load i32, i32* %21, align 1
  store i32 %22, i32* %v, align 1
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %12)
  store i32* %v, i32** %13, align 1
  store i8 addrspace(1)* bitcast (i1 (i32*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i32$GT$3fmt17h980e7dc46f13d3abE" to i8 addrspace(1)*), i8 addrspace(1)** %14, align 1
  store i16* %digitlen, i16** %16, align 1
  store i8 addrspace(1)* bitcast (i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @_ZN4core3ops8function6FnOnce9call_once17h35286f7b5a1cec98E to i8 addrspace(1)*), i8 addrspace(1)** %17, align 1
  %_4.0.i = load {}*, {}** %5, align 1, !noalias !1999, !nonnull !568
  %_4.1.i = load [3 x i16]*, [3 x i16]** %6, align 1, !noalias !1999, !nonnull !568
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %18), !noalias !1999
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8] }>* @alloc17069 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %_59.sroa.0.0..sroa_cast32, align 1
  store i16 1, i16* %_59.sroa.4.0..sroa_idx, align 1
  store i8* getelementptr inbounds (<{ [17 x i8] }>, <{ [17 x i8] }>* @alloc17078, i16 0, i32 0, i16 0), i8** %_59.sroa.5.0..sroa_idx, align 1
  store i16 1, i16* %_59.sroa.6.0..sroa_idx, align 1
  store [2 x { i8*, i8 addrspace(1)* }]* %_66, [2 x { i8*, i8 addrspace(1)* }]** %19, align 1
  store i16 2, i16* %_59.sroa.8.0..sroa_idx, align 1
; call core::fmt::write
  %23 = call zeroext addrspace(1) i1 @_ZN4core3fmt5write17hf4cd163abe69055cE({}* nonnull align 1 %_4.0.i, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) %_4.1.i, %"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_5.i), !noalias !1999
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 12, i8* nonnull %18), !noalias !1999
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 8, i8* nonnull %12)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %11)
  br i1 %23, label %bb16, label %bb21

panic:                                            ; preds = %start
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %sz.0, i16 40, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18915 to %"panic::Location"*))
  unreachable
}

; core::num::bignum::tests::Big8x3::from_small
; Function Attrs: nounwind uwtable writeonly
define void @_ZN4core3num6bignum5tests6Big8x310from_small17h25d9e16b4edbf3ccE(%"num::bignum::tests::Big8x3"* noalias nocapture sret dereferenceable(5) %0, i8 %v) unnamed_addr addrspace(1) #14 {
start:
  %1 = bitcast %"num::bignum::tests::Big8x3"* %0 to i16*
  store i16 1, i16* %1, align 1
  %_5.sroa.0.0..sroa_idx = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %0, i16 0, i32 3, i16 0
  store i8 %v, i8* %_5.sroa.0.0..sroa_idx, align 1
  %_5.sroa.4.0..sroa_idx8 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %0, i16 0, i32 3, i16 1
  %2 = bitcast i8* %_5.sroa.4.0..sroa_idx8 to i16*
  store i16 0, i16* %2, align 1
  ret void
}

; core::num::bignum::tests::Big8x3::from_u64
; Function Attrs: uwtable
define void @_ZN4core3num6bignum5tests6Big8x38from_u6417h1bb840db7cc698f6E(%"num::bignum::tests::Big8x3"* noalias nocapture sret dereferenceable(5) %0, i64 %1) unnamed_addr addrspace(1) #2 {
start:
  %base = alloca [3 x i8], align 1
  %2 = getelementptr inbounds [3 x i8], [3 x i8]* %base, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 3, i8* nonnull %2)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(3) %2, i8 0, i16 3, i1 false)
  %_49 = icmp eq i64 %1, 0
  br i1 %_49, label %bb2, label %bb3

bb2:                                              ; preds = %bb4, %start
  %sz.0.lcssa = phi i16 [ 0, %start ], [ %8, %bb4 ]
  %3 = bitcast %"num::bignum::tests::Big8x3"* %0 to i16*
  store i16 %sz.0.lcssa, i16* %3, align 1
  %4 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %0, i16 0, i32 3, i16 0
  call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 dereferenceable(3) %4, i8* nonnull align 1 dereferenceable(3) %2, i16 3, i1 false)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 3, i8* nonnull %2)
  ret void

bb3:                                              ; preds = %start, %bb4
  %v.011 = phi i64 [ %7, %bb4 ], [ %1, %start ]
  %sz.010 = phi i16 [ %8, %bb4 ], [ 0, %start ]
  %_9 = icmp ult i16 %sz.010, 3
  br i1 %_9, label %bb4, label %panic, !prof !4, !misexpect !5

bb4:                                              ; preds = %bb3
  %5 = getelementptr inbounds [3 x i8], [3 x i8]* %base, i16 0, i16 %sz.010
  %6 = trunc i64 %v.011 to i8
  store i8 %6, i8* %5, align 1
  %7 = lshr i64 %v.011, 8
  %8 = add nuw nsw i16 %sz.010, 1
  %_4 = icmp eq i64 %7, 0
  br i1 %_4, label %bb2, label %bb3

panic:                                            ; preds = %bb3
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 3, i16 3, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable
}

; core::num::bignum::tests::Big8x3::digits
; Function Attrs: uwtable
define { [0 x i8]*, i16 } @_ZN4core3num6bignum5tests6Big8x36digits17hf059edc297a7e462E(%"num::bignum::tests::Big8x3"* noalias readonly align 1 dereferenceable(5) %self) unnamed_addr addrspace(1) #2 {
start:
  %0 = bitcast %"num::bignum::tests::Big8x3"* %self to i16*
  %_6 = load i16, i16* %0, align 1
  %_8.i.i.i = icmp ugt i16 %_6, 3
  br i1 %_8.i.i.i, label %bb5.i.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit"

bb5.i.i.i:                                        ; preds = %start
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %_6, i16 3, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit": ; preds = %start
  %_4 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3
  %_3.0 = bitcast [3 x i8]* %_4 to [0 x i8]*
  %1 = insertvalue { [0 x i8]*, i16 } undef, [0 x i8]* %_3.0, 0
  %2 = insertvalue { [0 x i8]*, i16 } %1, i16 %_6, 1
  ret { [0 x i8]*, i16 } %2
}

; core::num::bignum::tests::Big8x3::get_bit
; Function Attrs: uwtable
define i8 @_ZN4core3num6bignum5tests6Big8x37get_bit17h2e00b268ce9988f9E(%"num::bignum::tests::Big8x3"* noalias nocapture readonly align 1 dereferenceable(5) %self, i16 %i) unnamed_addr addrspace(1) #2 {
start:
  %d = lshr i16 %i, 3
  %_17 = icmp ult i16 %i, 24
  br i1 %_17, label %bb4, label %panic2, !prof !4, !misexpect !5

bb4:                                              ; preds = %start
  %0 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 %d
  %_14 = load i8, i8* %0, align 1
  %1 = trunc i16 %i to i8
  %2 = and i8 %1, 7
  %_13 = lshr i8 %_14, %2
  %3 = and i8 %_13, 1
  ret i8 %3

panic2:                                           ; preds = %start
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %d, i16 3, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable
}

; core::num::bignum::tests::Big8x3::is_zero
; Function Attrs: uwtable
define zeroext i1 @_ZN4core3num6bignum5tests6Big8x37is_zero17h4659b0be0788ac3aE(%"num::bignum::tests::Big8x3"* noalias readonly align 1 dereferenceable(5) %self) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = bitcast %"num::bignum::tests::Big8x3"* %self to i16*
  %_6.i = load i16, i16* %0, align 1, !alias.scope !2002
  %_8.i.i.i.i = icmp ugt i16 %_6.i, 3
  br i1 %_8.i.i.i.i, label %bb5.i.i.i.i, label %_ZN4core3num6bignum5tests6Big8x36digits17hf059edc297a7e462E.exit

bb5.i.i.i.i:                                      ; preds = %start
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %_6.i, i16 3, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable

_ZN4core3num6bignum5tests6Big8x36digits17hf059edc297a7e462E.exit: ; preds = %start
  %1 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 0
  %2 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 %_6.i
  br label %bb1.i

bb1.i:                                            ; preds = %bb6.i, %_ZN4core3num6bignum5tests6Big8x36digits17hf059edc297a7e462E.exit
  %_16.i.i = phi i8* [ %3, %bb6.i ], [ %1, %_ZN4core3num6bignum5tests6Big8x36digits17hf059edc297a7e462E.exit ]
  %_13.i.i = icmp eq i8* %_16.i.i, %2
  br i1 %_13.i.i, label %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$3all17h402d7a028776914fE.exit", label %bb6.i

bb6.i:                                            ; preds = %bb1.i
  %3 = getelementptr inbounds i8, i8* %_16.i.i, i16 1
  %.val.i = load i8, i8* %_16.i.i, align 1
  %4 = icmp eq i8 %.val.i, 0
  br i1 %4, label %bb1.i, label %"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$3all17h402d7a028776914fE.exit"

"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$3all17h402d7a028776914fE.exit": ; preds = %bb1.i, %bb6.i
  %.0.i = phi i1 [ false, %bb6.i ], [ true, %bb1.i ]
  ret i1 %.0.i
}

; core::num::bignum::tests::Big8x3::bit_length
; Function Attrs: uwtable
define i16 @_ZN4core3num6bignum5tests6Big8x310bit_length17h8566b9784529920aE(%"num::bignum::tests::Big8x3"* noalias readonly align 1 dereferenceable(5) %self) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = bitcast %"num::bignum::tests::Big8x3"* %self to i16*
  %_6.i = load i16, i16* %0, align 1, !alias.scope !2005
  %_8.i.i.i.i = icmp ugt i16 %_6.i, 3
  br i1 %_8.i.i.i.i, label %bb5.i.i.i.i, label %bb5.i.i.i4

bb5.i.i.i.i:                                      ; preds = %start
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %_6.i, i16 3, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable

bb5.i.i.i4:                                       ; preds = %start
  %1 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 0
  %_13.i.i4.i.i.i.i = icmp eq i16 %_6.i, 0
  br i1 %_13.i.i4.i.i.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit", label %bb6.i.i.preheader.i.i.i

bb6.i.i.preheader.i.i.i:                          ; preds = %bb5.i.i.i4
  %2 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 %_6.i
  br label %bb6.i.i.i.i.i

bb6.i.i.i.i.i:                                    ; preds = %bb8.i.i.i.i.i, %bb6.i.i.preheader.i.i.i
  %_12.i.i6.i.i.i.i = phi i8* [ %3, %bb8.i.i.i.i.i ], [ %2, %bb6.i.i.preheader.i.i.i ]
  %accum.0.i5.i.i.i.i = phi i16 [ %_5.0.i.i.i.i.i.i.i.i.i.i, %bb8.i.i.i.i.i ], [ 0, %bb6.i.i.preheader.i.i.i ]
  %3 = getelementptr inbounds i8, i8* %_12.i.i6.i.i.i.i, i16 -1
  %x.val.val.i.i.i.i.i.i = load i8, i8* %3, align 1, !alias.scope !2008, !noalias !2011
  %4 = icmp eq i8 %x.val.val.i.i.i.i.i.i, 0
  br i1 %4, label %bb8.i.i.i.i.i, label %_ZN4core4iter6traits8iterator8Iterator5count17hbe4c10b6321b8a5eE.exit

bb8.i.i.i.i.i:                                    ; preds = %bb6.i.i.i.i.i
  %_5.0.i.i.i.i.i.i.i.i.i.i = add nuw i16 %accum.0.i5.i.i.i.i, 1
  %_13.i.i.i.i.i.i = icmp eq i8* %1, %3
  br i1 %_13.i.i.i.i.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit", label %bb6.i.i.i.i.i

_ZN4core4iter6traits8iterator8Iterator5count17hbe4c10b6321b8a5eE.exit: ; preds = %bb6.i.i.i.i.i
  %end = sub i16 %_6.i, %accum.0.i5.i.i.i.i
  %_8.i.i.i = icmp ult i16 %_6.i, %accum.0.i5.i.i.i.i
  br i1 %_8.i.i.i, label %bb5.i.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit"

bb5.i.i.i:                                        ; preds = %_ZN4core4iter6traits8iterator8Iterator5count17hbe4c10b6321b8a5eE.exit
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %end, i16 %_6.i, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit": ; preds = %bb8.i.i.i.i.i, %bb5.i.i.i4, %_ZN4core4iter6traits8iterator8Iterator5count17hbe4c10b6321b8a5eE.exit
  %end14 = phi i16 [ %end, %_ZN4core4iter6traits8iterator8Iterator5count17hbe4c10b6321b8a5eE.exit ], [ 0, %bb5.i.i.i4 ], [ 0, %bb8.i.i.i.i.i ]
  %5 = icmp eq i16 %end14, 0
  br i1 %5, label %bb11, label %bb9

bb9:                                              ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit"
  %_24 = shl i16 %end14, 3
  br label %bb14

bb11:                                             ; preds = %_ZN4core3num6bignum5tests6Big8x37get_bit17h2e00b268ce9988f9E.exit, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit"
  %.0 = phi i16 [ 0, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit" ], [ %i.0.in, %_ZN4core3num6bignum5tests6Big8x37get_bit17h2e00b268ce9988f9E.exit ]
  ret i16 %.0

bb14:                                             ; preds = %_ZN4core3num6bignum5tests6Big8x37get_bit17h2e00b268ce9988f9E.exit, %bb9
  %i.0.in = phi i16 [ %_24, %bb9 ], [ %i.0, %_ZN4core3num6bignum5tests6Big8x37get_bit17h2e00b268ce9988f9E.exit ]
  %i.0 = add i16 %i.0.in, -1
  %d.i = lshr i16 %i.0, 3
  %_17.i = icmp ult i16 %i.0, 24
  br i1 %_17.i, label %_ZN4core3num6bignum5tests6Big8x37get_bit17h2e00b268ce9988f9E.exit, label %panic2.i, !prof !4, !misexpect !5

panic2.i:                                         ; preds = %bb14
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %d.i, i16 3, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*)), !noalias !2016
  unreachable

_ZN4core3num6bignum5tests6Big8x37get_bit17h2e00b268ce9988f9E.exit: ; preds = %bb14
  %6 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 %d.i
  %_14.i = load i8, i8* %6, align 1, !alias.scope !2016
  %7 = trunc i16 %i.0 to i8
  %8 = and i8 %7, 7
  %9 = shl nuw i8 1, %8
  %10 = and i8 %_14.i, %9
  %_28 = icmp eq i8 %10, 0
  br i1 %_28, label %bb14, label %bb11
}

; core::num::bignum::tests::Big8x3::add
; Function Attrs: uwtable
define nonnull align 1 dereferenceable(5) %"num::bignum::tests::Big8x3"* @_ZN4core3num6bignum5tests6Big8x33add17h3e2d8410dcc58117E(%"num::bignum::tests::Big8x3"* returned align 1 dereferenceable(5) %self, %"num::bignum::tests::Big8x3"* noalias readonly align 1 dereferenceable(5) %other) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = bitcast %"num::bignum::tests::Big8x3"* %self to i16*
  %_5 = load i16, i16* %0, align 1
  %1 = bitcast %"num::bignum::tests::Big8x3"* %other to i16*
  %_6 = load i16, i16* %1, align 1
  %2 = icmp ugt i16 %_5, %_6
  %.0.sroa.speculated.i.i.i = select i1 %2, i16 %_5, i16 %_6
  %_9.i.i.i = icmp ugt i16 %.0.sroa.speculated.i.i.i, 3
  br i1 %_9.i.i.i, label %bb5.i.i.i, label %bb7.preheader

bb7.preheader:                                    ; preds = %start
  %_2.i.i37 = icmp eq i16 %.0.sroa.speculated.i.i.i, 0
  br i1 %_2.i.i37, label %bb16, label %"_ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit"

bb5.i.i.i:                                        ; preds = %start
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.0.sroa.speculated.i.i.i, i16 3, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable

"_ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit": ; preds = %bb7.preheader, %"_ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit"
  %carry.039 = phi i8 [ %_15.0.i, %"_ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit" ], [ 0, %bb7.preheader ]
  %iter.sroa.8.038 = phi i16 [ %5, %"_ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit" ], [ 0, %bb7.preheader ]
  %3 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 %iter.sroa.8.038
  %4 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %other, i16 0, i32 3, i16 %iter.sroa.8.038
  %5 = add nuw i16 %iter.sroa.8.038, 1
  %_36 = load i8, i8* %3, align 1
  %_37 = load i8, i8* %4, align 1
  %6 = tail call addrspace(1) { i8, i1 } @llvm.uadd.with.overflow.i8(i8 %_36, i8 %_37) #20
  %7 = extractvalue { i8, i1 } %6, 0
  %8 = extractvalue { i8, i1 } %6, 1
  %9 = tail call addrspace(1) { i8, i1 } @llvm.uadd.with.overflow.i8(i8 %7, i8 %carry.039) #20
  %10 = extractvalue { i8, i1 } %9, 0
  %11 = extractvalue { i8, i1 } %9, 1
  %brmerge.i = or i1 %8, %11
  %_15.0.i = zext i1 %brmerge.i to i8
  store i8 %10, i8* %3, align 1
  %_2.i.i = icmp ult i16 %5, %.0.sroa.speculated.i.i.i
  br i1 %_2.i.i, label %"_ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit", label %bb9

bb9:                                              ; preds = %"_ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit"
  br i1 %brmerge.i, label %bb14, label %bb16

bb14:                                             ; preds = %bb9
  %_44 = icmp ult i16 %.0.sroa.speculated.i.i.i, 3
  br i1 %_44, label %bb15, label %panic, !prof !4, !misexpect !5

bb15:                                             ; preds = %bb14
  %12 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i
  store i8 1, i8* %12, align 1
  %13 = add nuw nsw i16 %.0.sroa.speculated.i.i.i, 1
  br label %bb16

bb16:                                             ; preds = %bb9, %bb7.preheader, %bb15
  %sz.0 = phi i16 [ %13, %bb15 ], [ %.0.sroa.speculated.i.i.i, %bb9 ], [ 0, %bb7.preheader ]
  store i16 %sz.0, i16* %0, align 1
  ret %"num::bignum::tests::Big8x3"* %self

panic:                                            ; preds = %bb14
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %.0.sroa.speculated.i.i.i, i16 3, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable
}

; core::num::bignum::tests::Big8x3::add_small
; Function Attrs: uwtable
define nonnull align 1 dereferenceable(5) %"num::bignum::tests::Big8x3"* @_ZN4core3num6bignum5tests6Big8x39add_small17he93f8088aedb7061E(%"num::bignum::tests::Big8x3"* returned align 1 dereferenceable(5) %self, i8 %other) unnamed_addr addrspace(1) #2 {
start:
  %0 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 0
  %_7 = load i8, i8* %0, align 1
  %1 = tail call addrspace(1) { i8, i1 } @llvm.uadd.with.overflow.i8(i8 %_7, i8 %other) #20
  %2 = extractvalue { i8, i1 } %1, 0
  %3 = extractvalue { i8, i1 } %1, 1
  store i8 %2, i8* %0, align 1
  br i1 %3, label %bb4, label %bb3

bb3:                                              ; preds = %bb5, %start
  %i.0.lcssa = phi i16 [ 1, %start ], [ %9, %bb5 ]
  %4 = bitcast %"num::bignum::tests::Big8x3"* %self to i16*
  %_29 = load i16, i16* %4, align 1
  %_27 = icmp ugt i16 %i.0.lcssa, %_29
  br i1 %_27, label %bb9, label %bb10

bb4:                                              ; preds = %start, %bb5
  %i.010 = phi i16 [ %9, %bb5 ], [ 1, %start ]
  %_20 = icmp ult i16 %i.010, 3
  br i1 %_20, label %bb5, label %panic, !prof !4, !misexpect !5

bb5:                                              ; preds = %bb4
  %5 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 %i.010
  %_17 = load i8, i8* %5, align 1
  %6 = tail call addrspace(1) { i8, i1 } @llvm.uadd.with.overflow.i8(i8 %_17, i8 1) #20
  %7 = extractvalue { i8, i1 } %6, 0
  %8 = extractvalue { i8, i1 } %6, 1
  store i8 %7, i8* %5, align 1
  %9 = add nuw nsw i16 %i.010, 1
  br i1 %8, label %bb4, label %bb3

bb9:                                              ; preds = %bb3
  store i16 %i.0.lcssa, i16* %4, align 1
  br label %bb10

bb10:                                             ; preds = %bb3, %bb9
  ret %"num::bignum::tests::Big8x3"* %self

panic:                                            ; preds = %bb4
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 3, i16 3, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable
}

; core::num::bignum::tests::Big8x3::sub
; Function Attrs: uwtable
define nonnull align 1 dereferenceable(5) %"num::bignum::tests::Big8x3"* @_ZN4core3num6bignum5tests6Big8x33sub17h4cca5ea2fa89a353E(%"num::bignum::tests::Big8x3"* returned align 1 dereferenceable(5) %self, %"num::bignum::tests::Big8x3"* noalias readonly align 1 dereferenceable(5) %other) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = bitcast %"num::bignum::tests::Big8x3"* %self to i16*
  %_5 = load i16, i16* %0, align 1
  %1 = bitcast %"num::bignum::tests::Big8x3"* %other to i16*
  %_6 = load i16, i16* %1, align 1
  %2 = icmp ugt i16 %_5, %_6
  %.0.sroa.speculated.i.i.i = select i1 %2, i16 %_5, i16 %_6
  %_9.i.i.i = icmp ugt i16 %.0.sroa.speculated.i.i.i, 3
  br i1 %_9.i.i.i, label %bb5.i.i.i, label %bb7.preheader

bb7.preheader:                                    ; preds = %start
  %_2.i.i32 = icmp eq i16 %.0.sroa.speculated.i.i.i, 0
  br i1 %_2.i.i32, label %bb13, label %"_ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit"

bb5.i.i.i:                                        ; preds = %start
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.0.sroa.speculated.i.i.i, i16 3, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable

"_ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit": ; preds = %bb7.preheader, %"_ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit"
  %noborrow.034 = phi i8 [ %_15.0.i, %"_ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit" ], [ 1, %bb7.preheader ]
  %iter.sroa.8.033 = phi i16 [ %5, %"_ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit" ], [ 0, %bb7.preheader ]
  %3 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 %iter.sroa.8.033
  %4 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %other, i16 0, i32 3, i16 %iter.sroa.8.033
  %5 = add nuw i16 %iter.sroa.8.033, 1
  %_36 = load i8, i8* %3, align 1
  %_38 = load i8, i8* %4, align 1
  %_37 = xor i8 %_38, -1
  %6 = tail call addrspace(1) { i8, i1 } @llvm.uadd.with.overflow.i8(i8 %_36, i8 %_37) #20
  %7 = extractvalue { i8, i1 } %6, 0
  %8 = extractvalue { i8, i1 } %6, 1
  %9 = tail call addrspace(1) { i8, i1 } @llvm.uadd.with.overflow.i8(i8 %7, i8 %noborrow.034) #20
  %10 = extractvalue { i8, i1 } %9, 0
  %11 = extractvalue { i8, i1 } %9, 1
  %brmerge.i = or i1 %8, %11
  %_15.0.i = zext i1 %brmerge.i to i8
  store i8 %10, i8* %3, align 1
  %_2.i.i = icmp ult i16 %5, %.0.sroa.speculated.i.i.i
  br i1 %_2.i.i, label %"_ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit", label %bb9

bb9:                                              ; preds = %"_ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit"
  br i1 %brmerge.i, label %bb13, label %bb14

bb13:                                             ; preds = %bb9, %bb7.preheader
  store i16 %.0.sroa.speculated.i.i.i, i16* %0, align 1
  ret %"num::bignum::tests::Big8x3"* %self

bb14:                                             ; preds = %bb9
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [26 x i8] }>* @alloc18922 to [0 x i8]*), i16 26, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable
}

; core::num::bignum::tests::Big8x3::mul_small
; Function Attrs: uwtable
define nonnull align 1 dereferenceable(5) %"num::bignum::tests::Big8x3"* @_ZN4core3num6bignum5tests6Big8x39mul_small17hec6688686b34b7d7E(%"num::bignum::tests::Big8x3"* returned align 1 dereferenceable(5) %self, i8 %other) unnamed_addr addrspace(1) #2 {
start:
  %0 = bitcast %"num::bignum::tests::Big8x3"* %self to i16*
  %1 = load i16, i16* %0, align 1
  %_9.i.i.i = icmp ugt i16 %1, 3
  br i1 %_9.i.i.i, label %bb5.i.i.i, label %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit"

bb5.i.i.i:                                        ; preds = %start
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %1, i16 3, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable

"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit": ; preds = %start
  %2 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 %1
  %_13.i15 = icmp eq i16 %1, 0
  br i1 %_13.i15, label %bb12, label %bb7.lr.ph

bb7.lr.ph:                                        ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit"
  %3 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 0
  %_10.i = zext i8 %other to i16
  br label %bb7

bb5:                                              ; preds = %bb7
  %_30 = icmp eq i8 %_14.i, 0
  br i1 %_30, label %bb12, label %bb10

bb7:                                              ; preds = %bb7.lr.ph, %bb7
  %carry.017 = phi i8 [ 0, %bb7.lr.ph ], [ %_14.i, %bb7 ]
  %iter.sroa.0.016 = phi i8* [ %3, %bb7.lr.ph ], [ %4, %bb7 ]
  %4 = getelementptr inbounds i8, i8* %iter.sroa.0.016, i16 1
  %_25 = load i8, i8* %iter.sroa.0.016, align 1
  %_8.i = zext i8 %_25 to i16
  %_7.i = mul nuw i16 %_8.i, %_10.i
  %_12.i10 = zext i8 %carry.017 to i16
  %v.i = add nuw i16 %_7.i, %_12.i10
  %_15.i = lshr i16 %v.i, 8
  %_14.i = trunc i16 %_15.i to i8
  %_18.i = trunc i16 %v.i to i8
  store i8 %_18.i, i8* %iter.sroa.0.016, align 1
  %_13.i = icmp eq i8* %4, %2
  br i1 %_13.i, label %bb5, label %bb7

bb10:                                             ; preds = %bb5
  %_35 = icmp ult i16 %1, 3
  br i1 %_35, label %bb11, label %panic, !prof !4, !misexpect !5

bb11:                                             ; preds = %bb10
  store i8 %_14.i, i8* %2, align 1
  %5 = add nuw nsw i16 %1, 1
  br label %bb12

bb12:                                             ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit", %bb5, %bb11
  %sz.0 = phi i16 [ %5, %bb11 ], [ %1, %bb5 ], [ 0, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit" ]
  store i16 %sz.0, i16* %0, align 1
  ret %"num::bignum::tests::Big8x3"* %self

panic:                                            ; preds = %bb10
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %1, i16 3, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable
}

; core::num::bignum::tests::Big8x3::mul_pow2
; Function Attrs: uwtable
define nonnull align 1 dereferenceable(5) %"num::bignum::tests::Big8x3"* @_ZN4core3num6bignum5tests6Big8x38mul_pow217h3618f456f8a6a8aaE(%"num::bignum::tests::Big8x3"* returned align 1 dereferenceable(5) %self, i16 %bits) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %digits = lshr i16 %bits, 3
  %bits4 = and i16 %bits, 7
  %_15 = icmp ult i16 %bits, 24
  br i1 %_15, label %bb4, label %bb5

bb4:                                              ; preds = %start
  %0 = bitcast %"num::bignum::tests::Big8x3"* %self to i16*
  %_22 = load i16, i16* %0, align 1
  %1 = icmp eq i16 %_22, 0
  br i1 %1, label %bb16.preheader, label %bb12

bb5:                                              ; preds = %start
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [28 x i8] }>* @alloc18923 to [0 x i8]*), i16 28, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable

bb16.preheader:                                   ; preds = %bb14, %bb4
  %2 = icmp eq i16 %digits, 0
  br i1 %2, label %bb18, label %bb20

bb12:                                             ; preds = %bb4, %bb14
  %iter.sroa.4.069 = phi i16 [ %3, %bb14 ], [ %_22, %bb4 ]
  %3 = add i16 %iter.sroa.4.069, -1
  %_35 = icmp ult i16 %3, 3
  br i1 %_35, label %bb13, label %panic5, !prof !4, !misexpect !5

bb13:                                             ; preds = %bb12
  %_36 = add i16 %3, %digits
  %_40 = icmp ult i16 %_36, 3
  br i1 %_40, label %bb14, label %panic6, !prof !4, !misexpect !5

bb14:                                             ; preds = %bb13
  %4 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 %3
  %_32 = load i8, i8* %4, align 1
  %5 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 %_36
  store i8 %_32, i8* %5, align 1
  %6 = icmp eq i16 %3, 0
  br i1 %6, label %bb16.preheader, label %bb12

bb18:                                             ; preds = %bb21, %bb16.preheader
  %_57 = load i16, i16* %0, align 1
  %7 = add i16 %_57, %digits
  %_59 = icmp eq i16 %bits4, 0
  br i1 %_59, label %bb40, label %bb23

bb20:                                             ; preds = %bb16.preheader, %bb21
  %iter1.sroa.0.068 = phi i16 [ %8, %bb21 ], [ 0, %bb16.preheader ]
  %_55 = icmp ult i16 %iter1.sroa.0.068, 3
  br i1 %_55, label %bb21, label %panic8, !prof !4, !misexpect !5

bb21:                                             ; preds = %bb20
  %8 = add nuw nsw i16 %iter1.sroa.0.068, 1
  %9 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 %iter1.sroa.0.068
  store i8 0, i8* %9, align 1
  %10 = icmp ult i16 %8, %digits
  br i1 %10, label %bb20, label %bb18

bb23:                                             ; preds = %bb18
  %_64 = add i16 %7, -1
  %_67 = icmp ult i16 %_64, 3
  br i1 %_67, label %bb24, label %panic9, !prof !4, !misexpect !5

bb24:                                             ; preds = %bb23
  %11 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 %_64
  %_63 = load i8, i8* %11, align 1
  %12 = trunc i16 %bits to i8
  %13 = sub i8 0, %12
  %14 = and i8 %13, 7
  %overflow = lshr i8 %_63, %14
  %_71 = icmp eq i8 %overflow, 0
  br i1 %_71, label %bb28, label %bb26

bb26:                                             ; preds = %bb24
  %_76 = icmp ult i16 %7, 3
  br i1 %_76, label %bb27, label %panic10, !prof !4, !misexpect !5

bb27:                                             ; preds = %bb26
  %15 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 %7
  store i8 %overflow, i8* %15, align 1
  %16 = add nuw nsw i16 %7, 1
  br label %bb28

bb28:                                             ; preds = %bb24, %bb27
  %sz.0 = phi i16 [ %16, %bb27 ], [ %7, %bb24 ]
  %_80 = add nuw nsw i16 %digits, 1
  %17 = icmp ult i16 %_80, %7
  %18 = and i8 %12, 7
  br i1 %17, label %bb36, label %bb39

bb36:                                             ; preds = %bb28, %bb38
  %_93 = phi i8 [ %_99, %bb38 ], [ %_63, %bb28 ]
  %iter2.sroa.4.067 = phi i16 [ %19, %bb38 ], [ %7, %bb28 ]
  %19 = add nsw i16 %iter2.sroa.4.067, -1
  %_100 = add nsw i16 %iter2.sroa.4.067, -2
  %_103 = icmp ult i16 %_100, 3
  br i1 %_103, label %bb38, label %panic13, !prof !4, !misexpect !5

bb38:                                             ; preds = %bb36
  %20 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 %19
  %_92 = shl i8 %_93, %18
  %21 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 %_100
  %_99 = load i8, i8* %21, align 1
  %_98 = lshr i8 %_99, %14
  %22 = or i8 %_98, %_92
  store i8 %22, i8* %20, align 1
  %23 = icmp ult i16 %_80, %19
  br i1 %23, label %bb36, label %bb39

bb39:                                             ; preds = %bb38, %bb28
  %24 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 %digits
  %25 = load i8, i8* %24, align 1
  %26 = shl i8 %25, %18
  store i8 %26, i8* %24, align 1
  br label %bb40

bb40:                                             ; preds = %bb18, %bb39
  %sz.1 = phi i16 [ %sz.0, %bb39 ], [ %7, %bb18 ]
  store i16 %sz.1, i16* %0, align 1
  ret %"num::bignum::tests::Big8x3"* %self

panic5:                                           ; preds = %bb12
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %3, i16 3, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable

panic6:                                           ; preds = %bb13
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_36, i16 3, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable

panic8:                                           ; preds = %bb20
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %iter1.sroa.0.068, i16 3, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable

panic9:                                           ; preds = %bb23
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_64, i16 3, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable

panic10:                                          ; preds = %bb26
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %7, i16 3, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable

panic13:                                          ; preds = %bb36
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_100, i16 3, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable
}

; core::num::bignum::tests::Big8x3::mul_pow5
; Function Attrs: uwtable
define nonnull align 1 dereferenceable(5) %"num::bignum::tests::Big8x3"* @_ZN4core3num6bignum5tests6Big8x38mul_pow517h3b1e0c1bdc90daafE(%"num::bignum::tests::Big8x3"* returned align 1 dereferenceable(5) %self, i16 %0) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
bb3:
  %_1547 = icmp ult i16 %0, 3
  br i1 %_1547, label %bb9.preheader, label %bb6.lr.ph

bb6.lr.ph:                                        ; preds = %bb3
  %1 = bitcast %"num::bignum::tests::Big8x3"* %self to i16*
  %2 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 0
  %.pre = load i16, i16* %1, align 1
  br label %bb6

bb9.preheader:                                    ; preds = %_ZN4core3num6bignum5tests6Big8x39mul_small17hec6688686b34b7d7E.exit35, %bb3
  %e.0.lcssa = phi i16 [ %0, %bb3 ], [ %8, %_ZN4core3num6bignum5tests6Big8x39mul_small17hec6688686b34b7d7E.exit35 ]
  %3 = icmp eq i16 %e.0.lcssa, 0
  br i1 %3, label %bb11, label %bb13

bb6:                                              ; preds = %bb6.lr.ph, %_ZN4core3num6bignum5tests6Big8x39mul_small17hec6688686b34b7d7E.exit35
  %4 = phi i16 [ %.pre, %bb6.lr.ph ], [ %sz.0.i33, %_ZN4core3num6bignum5tests6Big8x39mul_small17hec6688686b34b7d7E.exit35 ]
  %e.048 = phi i16 [ %0, %bb6.lr.ph ], [ %8, %_ZN4core3num6bignum5tests6Big8x39mul_small17hec6688686b34b7d7E.exit35 ]
  %_9.i.i.i.i10 = icmp ugt i16 %4, 3
  br i1 %_9.i.i.i.i10, label %bb5.i.i.i.i11, label %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit.i13"

bb5.i.i.i.i11:                                    ; preds = %bb6
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %4, i16 3, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable

"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit.i13": ; preds = %bb6
  %5 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 %4
  %_13.i15.i12 = icmp eq i16 %4, 0
  br i1 %_13.i15.i12, label %_ZN4core3num6bignum5tests6Big8x39mul_small17hec6688686b34b7d7E.exit35, label %bb7.i29

bb5.i17:                                          ; preds = %bb7.i29
  %_30.i16 = icmp eq i8 %_14.i.i26, 0
  br i1 %_30.i16, label %_ZN4core3num6bignum5tests6Big8x39mul_small17hec6688686b34b7d7E.exit35, label %bb10.i31

bb7.i29:                                          ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit.i13", %bb7.i29
  %carry.017.i18 = phi i8 [ %_14.i.i26, %bb7.i29 ], [ 0, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit.i13" ]
  %iter.sroa.0.016.i19 = phi i8* [ %6, %bb7.i29 ], [ %2, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit.i13" ]
  %6 = getelementptr inbounds i8, i8* %iter.sroa.0.016.i19, i16 1
  %_25.i20 = load i8, i8* %iter.sroa.0.016.i19, align 1
  %_8.i.i21 = zext i8 %_25.i20 to i16
  %_7.i.i22 = mul nuw nsw i16 %_8.i.i21, 125
  %_12.i10.i23 = zext i8 %carry.017.i18 to i16
  %v.i.i24 = add nuw nsw i16 %_7.i.i22, %_12.i10.i23
  %_15.i.i25 = lshr i16 %v.i.i24, 8
  %_14.i.i26 = trunc i16 %_15.i.i25 to i8
  %_18.i.i27 = trunc i16 %v.i.i24 to i8
  store i8 %_18.i.i27, i8* %iter.sroa.0.016.i19, align 1
  %_13.i.i28 = icmp eq i8* %6, %5
  br i1 %_13.i.i28, label %bb5.i17, label %bb7.i29

bb10.i31:                                         ; preds = %bb5.i17
  %_35.i30 = icmp ult i16 %4, 3
  br i1 %_35.i30, label %bb11.i32, label %panic.i34, !prof !4, !misexpect !5

bb11.i32:                                         ; preds = %bb10.i31
  store i8 %_14.i.i26, i8* %5, align 1
  %7 = add nuw nsw i16 %4, 1
  br label %_ZN4core3num6bignum5tests6Big8x39mul_small17hec6688686b34b7d7E.exit35

panic.i34:                                        ; preds = %bb10.i31
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %4, i16 3, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable

_ZN4core3num6bignum5tests6Big8x39mul_small17hec6688686b34b7d7E.exit35: ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit.i13", %bb5.i17, %bb11.i32
  %sz.0.i33 = phi i16 [ %7, %bb11.i32 ], [ %4, %bb5.i17 ], [ 0, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit.i13" ]
  store i16 %sz.0.i33, i16* %1, align 1
  %8 = add i16 %e.048, -3
  %_15 = icmp ult i16 %8, 3
  br i1 %_15, label %bb9.preheader, label %bb6

bb11.loopexit:                                    ; preds = %bb13
  %phitmp = zext i8 %16 to i16
  br label %bb11

bb11:                                             ; preds = %bb11.loopexit, %bb9.preheader
  %rest_power.0.lcssa = phi i16 [ 1, %bb9.preheader ], [ %phitmp, %bb11.loopexit ]
  %9 = bitcast %"num::bignum::tests::Big8x3"* %self to i16*
  %10 = load i16, i16* %9, align 1
  %_9.i.i.i.i = icmp ugt i16 %10, 3
  br i1 %_9.i.i.i.i, label %bb5.i.i.i.i, label %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit.i"

bb5.i.i.i.i:                                      ; preds = %bb11
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %10, i16 3, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable

"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit.i": ; preds = %bb11
  %11 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 %10
  %_13.i15.i = icmp eq i16 %10, 0
  br i1 %_13.i15.i, label %_ZN4core3num6bignum5tests6Big8x39mul_small17hec6688686b34b7d7E.exit, label %bb7.lr.ph.i

bb7.lr.ph.i:                                      ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit.i"
  %12 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 0
  br label %bb7.i

bb5.i:                                            ; preds = %bb7.i
  %_30.i = icmp eq i8 %_14.i.i, 0
  br i1 %_30.i, label %_ZN4core3num6bignum5tests6Big8x39mul_small17hec6688686b34b7d7E.exit, label %bb10.i

bb7.i:                                            ; preds = %bb7.i, %bb7.lr.ph.i
  %carry.017.i = phi i8 [ 0, %bb7.lr.ph.i ], [ %_14.i.i, %bb7.i ]
  %iter.sroa.0.016.i = phi i8* [ %12, %bb7.lr.ph.i ], [ %13, %bb7.i ]
  %13 = getelementptr inbounds i8, i8* %iter.sroa.0.016.i, i16 1
  %_25.i = load i8, i8* %iter.sroa.0.016.i, align 1
  %_8.i.i = zext i8 %_25.i to i16
  %_7.i.i = mul nuw i16 %rest_power.0.lcssa, %_8.i.i
  %_12.i10.i = zext i8 %carry.017.i to i16
  %v.i.i = add nuw i16 %_7.i.i, %_12.i10.i
  %_15.i.i = lshr i16 %v.i.i, 8
  %_14.i.i = trunc i16 %_15.i.i to i8
  %_18.i.i = trunc i16 %v.i.i to i8
  store i8 %_18.i.i, i8* %iter.sroa.0.016.i, align 1
  %_13.i.i = icmp eq i8* %13, %11
  br i1 %_13.i.i, label %bb5.i, label %bb7.i

bb10.i:                                           ; preds = %bb5.i
  %_35.i = icmp ult i16 %10, 3
  br i1 %_35.i, label %bb11.i, label %panic.i, !prof !4, !misexpect !5

bb11.i:                                           ; preds = %bb10.i
  store i8 %_14.i.i, i8* %11, align 1
  %14 = add nuw nsw i16 %10, 1
  br label %_ZN4core3num6bignum5tests6Big8x39mul_small17hec6688686b34b7d7E.exit

panic.i:                                          ; preds = %bb10.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %10, i16 3, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable

_ZN4core3num6bignum5tests6Big8x39mul_small17hec6688686b34b7d7E.exit: ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit.i", %bb5.i, %bb11.i
  %sz.0.i = phi i16 [ %14, %bb11.i ], [ %10, %bb5.i ], [ 0, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit.i" ]
  store i16 %sz.0.i, i16* %9, align 1
  ret %"num::bignum::tests::Big8x3"* %self

bb13:                                             ; preds = %bb9.preheader, %bb13
  %rest_power.046 = phi i8 [ %16, %bb13 ], [ 1, %bb9.preheader ]
  %iter.sroa.0.045 = phi i16 [ %15, %bb13 ], [ 0, %bb9.preheader ]
  %15 = add nuw i16 %iter.sroa.0.045, 1
  %16 = mul i8 %rest_power.046, 5
  %17 = icmp ult i16 %15, %e.0.lcssa
  br i1 %17, label %bb13, label %bb11.loopexit
}

; core::num::bignum::tests::Big8x3::mul_digits
; Function Attrs: uwtable
define nonnull align 1 dereferenceable(5) %"num::bignum::tests::Big8x3"* @_ZN4core3num6bignum5tests6Big8x310mul_digits17h4a56b1bba9c34bf0E(%"num::bignum::tests::Big8x3"* returned align 1 dereferenceable(5) %self, [0 x i8]* noalias nonnull readonly align 1 %other.0, i16 %other.1) unnamed_addr addrspace(1) #2 {
start:
  %ret = alloca [3 x i8], align 1
  %0 = getelementptr inbounds [3 x i8], [3 x i8]* %ret, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 3, i8* nonnull %0)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(3) %0, i8 0, i16 3, i1 false)
  %1 = bitcast %"num::bignum::tests::Big8x3"* %self to i16*
  %_7 = load i16, i16* %1, align 1
  %_8.i.i.i.i = icmp ugt i16 %_7, 3
  br i1 %_8.i.i.i.i, label %bb5.i.i.i.i, label %_ZN4core3num6bignum5tests6Big8x36digits17hf059edc297a7e462E.exit

bb5.i.i.i.i:                                      ; preds = %start
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %_7, i16 3, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable

_ZN4core3num6bignum5tests6Big8x36digits17hf059edc297a7e462E.exit: ; preds = %start
  %_6 = icmp ult i16 %_7, %other.1
  %_4.i = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3
  %_3.0.i = bitcast [3 x i8]* %_4.i to [0 x i8]*
  br i1 %_6, label %bb3, label %bb2

bb2:                                              ; preds = %_ZN4core3num6bignum5tests6Big8x36digits17hf059edc297a7e462E.exit
; call core::num::bignum::tests::Big8x3::mul_digits::mul_inner
  %2 = call fastcc addrspace(1) i16 @_ZN4core3num6bignum5tests6Big8x310mul_digits9mul_inner17h78eeba68970cf854E([3 x i8]* nonnull align 1 dereferenceable(3) %ret, [0 x i8]* noalias nonnull readonly align 1 %other.0, i16 %other.1, [0 x i8]* noalias nonnull readonly align 1 %_3.0.i, i16 %_7)
  br label %bb8

bb3:                                              ; preds = %_ZN4core3num6bignum5tests6Big8x36digits17hf059edc297a7e462E.exit
; call core::num::bignum::tests::Big8x3::mul_digits::mul_inner
  %3 = call fastcc addrspace(1) i16 @_ZN4core3num6bignum5tests6Big8x310mul_digits9mul_inner17h78eeba68970cf854E([3 x i8]* nonnull align 1 dereferenceable(3) %ret, [0 x i8]* noalias nonnull readonly align 1 %_3.0.i, i16 %_7, [0 x i8]* noalias nonnull readonly align 1 %other.0, i16 %other.1)
  br label %bb8

bb8:                                              ; preds = %bb2, %bb3
  %retsz.0 = phi i16 [ %3, %bb3 ], [ %2, %bb2 ]
  %4 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 0
  call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 dereferenceable(3) %4, i8* nonnull align 1 dereferenceable(3) %0, i16 3, i1 false)
  store i16 %retsz.0, i16* %1, align 1
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 3, i8* nonnull %0)
  ret %"num::bignum::tests::Big8x3"* %self
}

; core::num::bignum::tests::Big8x3::mul_digits::mul_inner
; Function Attrs: uwtable
define internal fastcc i16 @_ZN4core3num6bignum5tests6Big8x310mul_digits9mul_inner17h78eeba68970cf854E([3 x i8]* nocapture align 1 dereferenceable(3) %ret, [0 x i8]* noalias nonnull readonly align 1 %aa.0, i16 %aa.1, [0 x i8]* noalias nonnull readonly align 1 %bb.0, i16 %bb.1) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = getelementptr [0 x i8], [0 x i8]* %aa.0, i16 0, i16 0
  %1 = getelementptr inbounds [0 x i8], [0 x i8]* %aa.0, i16 0, i16 %aa.1
  %2 = getelementptr [0 x i8], [0 x i8]* %bb.0, i16 0, i16 0
  %3 = getelementptr inbounds [0 x i8], [0 x i8]* %bb.0, i16 0, i16 %bb.1
  %_13.i.i64 = icmp eq i16 %bb.1, 0
  %4 = add i16 %bb.1, 1
  br i1 %_13.i.i64, label %bb4.outer.us, label %bb4.outer

bb4.outer.us:                                     ; preds = %start, %bb26.us
  %iter.sroa.0.0.ph.us = phi i8* [ %5, %bb26.us ], [ %0, %start ]
  %iter.sroa.7.0.ph.us = phi i16 [ %_4.0.i.i27.us, %bb26.us ], [ 0, %start ]
  %retsz.0.ph.us = phi i16 [ %spec.select.us, %bb26.us ], [ 0, %start ]
  br label %bb4.us

"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h87d87d1511b59affE.exit31.us": ; preds = %bb4.us
  %5 = getelementptr inbounds i8, i8* %iter.sroa.0.0.us, i16 1
  %_4.0.i.i27.us = add i16 %iter.sroa.7.0.us, 1
  %a.us = load i8, i8* %iter.sroa.0.0.us, align 1
  %_18.us = icmp eq i8 %a.us, 0
  br i1 %_18.us, label %bb4.us, label %bb26.us

bb26.us:                                          ; preds = %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h87d87d1511b59affE.exit31.us"
  %_64.us = icmp ult i16 %retsz.0.ph.us, %iter.sroa.7.0.us
  %spec.select.us = select i1 %_64.us, i16 %iter.sroa.7.0.us, i16 %retsz.0.ph.us
  br label %bb4.outer.us

bb4.us:                                           ; preds = %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h87d87d1511b59affE.exit31.us", %bb4.outer.us
  %iter.sroa.0.0.us = phi i8* [ %5, %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h87d87d1511b59affE.exit31.us" ], [ %iter.sroa.0.0.ph.us, %bb4.outer.us ]
  %iter.sroa.7.0.us = phi i16 [ %_4.0.i.i27.us, %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h87d87d1511b59affE.exit31.us" ], [ %iter.sroa.7.0.ph.us, %bb4.outer.us ]
  %_13.i.i25.us = icmp eq i8* %iter.sroa.0.0.us, %1
  br i1 %_13.i.i25.us, label %bb6, label %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h87d87d1511b59affE.exit31.us"

bb4.outer:                                        ; preds = %start, %bb26
  %iter.sroa.0.0.ph = phi i8* [ %6, %bb26 ], [ %0, %start ]
  %iter.sroa.7.0.ph = phi i16 [ %_4.0.i.i27, %bb26 ], [ 0, %start ]
  %retsz.0.ph = phi i16 [ %spec.select, %bb26 ], [ 0, %start ]
  br label %bb4

bb4:                                              ; preds = %bb4.outer, %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h87d87d1511b59affE.exit31"
  %iter.sroa.0.0 = phi i8* [ %6, %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h87d87d1511b59affE.exit31" ], [ %iter.sroa.0.0.ph, %bb4.outer ]
  %iter.sroa.7.0 = phi i16 [ %_4.0.i.i27, %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h87d87d1511b59affE.exit31" ], [ %iter.sroa.7.0.ph, %bb4.outer ]
  %_13.i.i25 = icmp eq i8* %iter.sroa.0.0, %1
  br i1 %_13.i.i25, label %bb6, label %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h87d87d1511b59affE.exit31"

"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h87d87d1511b59affE.exit31": ; preds = %bb4
  %6 = getelementptr inbounds i8, i8* %iter.sroa.0.0, i16 1
  %_4.0.i.i27 = add i16 %iter.sroa.7.0, 1
  %a = load i8, i8* %iter.sroa.0.0, align 1
  %_18 = icmp eq i8 %a, 0
  br i1 %_18, label %bb4, label %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h87d87d1511b59affE.exit.lr.ph"

bb6:                                              ; preds = %bb4, %bb4.us
  %retsz.0.ph.lcssa63 = phi i16 [ %retsz.0.ph.us, %bb4.us ], [ %retsz.0.ph, %bb4 ]
  ret i16 %retsz.0.ph.lcssa63

"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h87d87d1511b59affE.exit.lr.ph": ; preds = %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h87d87d1511b59affE.exit31"
  %_10.i = zext i8 %a to i16
  br label %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h87d87d1511b59affE.exit"

"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h87d87d1511b59affE.exit": ; preds = %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h87d87d1511b59affE.exit.lr.ph", %bb20
  %carry.067 = phi i8 [ 0, %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h87d87d1511b59affE.exit.lr.ph" ], [ %_18.i, %bb20 ]
  %iter1.sroa.7.066 = phi i16 [ 0, %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h87d87d1511b59affE.exit.lr.ph" ], [ %_4.0.i.i, %bb20 ]
  %iter1.sroa.0.065 = phi i8* [ %2, %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h87d87d1511b59affE.exit.lr.ph" ], [ %7, %bb20 ]
  %7 = getelementptr inbounds i8, i8* %iter1.sroa.0.065, i16 1
  %_43 = add nuw nsw i16 %iter1.sroa.7.066, %iter.sroa.7.0
  %_47 = icmp ult i16 %_43, 3
  br i1 %_47, label %bb20, label %panic, !prof !4, !misexpect !5

bb17:                                             ; preds = %bb20
  %_56 = icmp eq i8 %_18.i, 0
  br i1 %_56, label %bb26, label %bb24

bb20:                                             ; preds = %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h87d87d1511b59affE.exit"
  %_4.0.i.i = add nuw nsw i16 %iter1.sroa.7.066, 1
  %b = load i8, i8* %iter1.sroa.0.065, align 1
  %8 = getelementptr inbounds [3 x i8], [3 x i8]* %ret, i16 0, i16 %_43
  %_42 = load i8, i8* %8, align 1
  %_12.i = zext i8 %b to i16
  %_9.i = mul nuw i16 %_12.i, %_10.i
  %_14.i = zext i8 %_42 to i16
  %_16.i = zext i8 %carry.067 to i16
  %_8.i = add nuw nsw i16 %_14.i, %_16.i
  %v.i = add i16 %_8.i, %_9.i
  %_19.i = lshr i16 %v.i, 8
  %_18.i = trunc i16 %_19.i to i8
  %_22.i = trunc i16 %v.i to i8
  store i8 %_22.i, i8* %8, align 1
  %_13.i.i = icmp eq i8* %7, %3
  br i1 %_13.i.i, label %bb17, label %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h87d87d1511b59affE.exit"

bb24:                                             ; preds = %bb17
  %_59 = add i16 %iter.sroa.7.0, %bb.1
  %_63 = icmp ult i16 %_59, 3
  br i1 %_63, label %bb25, label %panic5, !prof !4, !misexpect !5

bb25:                                             ; preds = %bb24
  %9 = getelementptr inbounds [3 x i8], [3 x i8]* %ret, i16 0, i16 %_59
  store i8 %_18.i, i8* %9, align 1
  br label %bb26

bb26:                                             ; preds = %bb17, %bb25
  %sz.0 = phi i16 [ %4, %bb25 ], [ %bb.1, %bb17 ]
  %_66 = add i16 %sz.0, %iter.sroa.7.0
  %_64 = icmp ult i16 %retsz.0.ph, %_66
  %spec.select = select i1 %_64, i16 %_66, i16 %retsz.0.ph
  br label %bb4.outer

panic:                                            ; preds = %"_ZN99_$LT$core..iter..adapters..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h87d87d1511b59affE.exit"
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_43, i16 3, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable

panic5:                                           ; preds = %bb24
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_59, i16 3, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable
}

; core::num::bignum::tests::Big8x3::div_rem_small
; Function Attrs: uwtable
define { i8*, i8 } @_ZN4core3num6bignum5tests6Big8x313div_rem_small17h190dfab692c81cfaE(%"num::bignum::tests::Big8x3"* align 1 dereferenceable(5) %self, i8 %other) unnamed_addr addrspace(1) #2 {
start:
  %_4 = icmp eq i8 %other, 0
  br i1 %_4, label %bb2, label %bb1

bb1:                                              ; preds = %start
  %0 = bitcast %"num::bignum::tests::Big8x3"* %self to i16*
  %sz = load i16, i16* %0, align 1
  %_9.i.i.i = icmp ugt i16 %sz, 3
  br i1 %_9.i.i.i, label %bb5.i.i.i, label %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit"

bb5.i.i.i:                                        ; preds = %bb1
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %sz, i16 3, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable

"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit": ; preds = %bb1
  %1 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 0
  %_13.i.i9 = icmp eq i16 %sz, 0
  br i1 %_13.i.i9, label %bb9, label %"_ZN49_$LT$u8$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h505ce606d409a29aE.exit.lr.ph"

"_ZN49_$LT$u8$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h505ce606d409a29aE.exit.lr.ph": ; preds = %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit"
  %2 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 %sz
  %rhs.i = zext i8 %other to i16
  br label %"_ZN49_$LT$u8$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h505ce606d409a29aE.exit"

bb2:                                              ; preds = %start
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [27 x i8] }>* @alloc18924 to [0 x i8]*), i16 27, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable

bb9:                                              ; preds = %"_ZN49_$LT$u8$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h505ce606d409a29aE.exit", %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit"
  %borrow.0.lcssa = phi i8 [ 0, %"_ZN4core5slice77_$LT$impl$u20$core..ops..index..IndexMut$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$9index_mut17h2f6fcbf6efd52010E.exit" ], [ %_20.i, %"_ZN49_$LT$u8$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h505ce606d409a29aE.exit" ]
  %3 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 0, i16 0
  %4 = insertvalue { i8*, i8 } undef, i8* %3, 0
  %5 = insertvalue { i8*, i8 } %4, i8 %borrow.0.lcssa, 1
  ret { i8*, i8 } %5

"_ZN49_$LT$u8$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h505ce606d409a29aE.exit": ; preds = %"_ZN49_$LT$u8$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h505ce606d409a29aE.exit.lr.ph", %"_ZN49_$LT$u8$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h505ce606d409a29aE.exit"
  %borrow.011 = phi i8 [ 0, %"_ZN49_$LT$u8$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h505ce606d409a29aE.exit.lr.ph" ], [ %_20.i, %"_ZN49_$LT$u8$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h505ce606d409a29aE.exit" ]
  %iter.sroa.4.010 = phi i8* [ %2, %"_ZN49_$LT$u8$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h505ce606d409a29aE.exit.lr.ph" ], [ %6, %"_ZN49_$LT$u8$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h505ce606d409a29aE.exit" ]
  %6 = getelementptr inbounds i8, i8* %iter.sroa.4.010, i16 -1
  %_31 = load i8, i8* %6, align 1
  %_8.i = zext i8 %borrow.011 to i16
  %_7.i = shl nuw i16 %_8.i, 8
  %_11.i = zext i8 %_31 to i16
  %lhs.i = or i16 %_7.i, %_11.i
  %_16.i = udiv i16 %lhs.i, %rhs.i
  %_15.i = trunc i16 %_16.i to i8
  %7 = mul i16 %_16.i, %rhs.i
  %_21.i.decomposed = sub i16 %lhs.i, %7
  %_20.i = trunc i16 %_21.i.decomposed to i8
  store i8 %_15.i, i8* %6, align 1
  %_13.i.i = icmp eq i8* %1, %6
  br i1 %_13.i.i, label %bb9, label %"_ZN49_$LT$u8$u20$as$u20$core..num..bignum..FullOps$GT$12full_div_rem17h505ce606d409a29aE.exit"
}

; core::num::bignum::tests::Big8x3::div_rem
; Function Attrs: uwtable
define void @_ZN4core3num6bignum5tests6Big8x37div_rem17h63a9682b909898e4E(%"num::bignum::tests::Big8x3"* noalias readonly align 1 dereferenceable(5) %self, %"num::bignum::tests::Big8x3"* noalias readonly align 1 dereferenceable(5) %d, %"num::bignum::tests::Big8x3"* align 1 dereferenceable(5) %q, %"num::bignum::tests::Big8x3"* align 1 dereferenceable(5) %r) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = bitcast %"num::bignum::tests::Big8x3"* %d to i16*
  %_6.i.i = load i16, i16* %0, align 1, !alias.scope !2019
  %_8.i.i.i.i.i = icmp ugt i16 %_6.i.i, 3
  br i1 %_8.i.i.i.i.i, label %bb5.i.i.i.i.i, label %_ZN4core3num6bignum5tests6Big8x36digits17hf059edc297a7e462E.exit.i

bb5.i.i.i.i.i:                                    ; preds = %start
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %_6.i.i, i16 3, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable

_ZN4core3num6bignum5tests6Big8x36digits17hf059edc297a7e462E.exit.i: ; preds = %start
  %1 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %d, i16 0, i32 3, i16 0
  %2 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %d, i16 0, i32 3, i16 %_6.i.i
  br label %bb1.i.i

bb1.i.i:                                          ; preds = %bb6.i.i, %_ZN4core3num6bignum5tests6Big8x36digits17hf059edc297a7e462E.exit.i
  %_16.i.i.i = phi i8* [ %3, %bb6.i.i ], [ %1, %_ZN4core3num6bignum5tests6Big8x36digits17hf059edc297a7e462E.exit.i ]
  %_13.i.i.i = icmp eq i8* %_16.i.i.i, %2
  br i1 %_13.i.i.i, label %bb3, label %bb6.i.i

bb6.i.i:                                          ; preds = %bb1.i.i
  %3 = getelementptr inbounds i8, i8* %_16.i.i.i, i16 1
  %.val.i.i = load i8, i8* %_16.i.i.i, align 1, !alias.scope !2024
  %4 = icmp eq i8 %.val.i.i, 0
  br i1 %4, label %bb1.i.i, label %bb2

bb2:                                              ; preds = %bb6.i.i
  %5 = getelementptr %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %q, i16 0, i32 3, i16 0
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(3) %5, i8 0, i16 3, i1 false)
  %6 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %r, i16 0, i32 3, i16 0
  %scevgep = getelementptr %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %r, i16 0, i32 3, i16 0
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(3) %scevgep, i8 0, i16 3, i1 false)
  %7 = bitcast %"num::bignum::tests::Big8x3"* %r to i16*
  store i16 %_6.i.i, i16* %7, align 1
  %8 = bitcast %"num::bignum::tests::Big8x3"* %q to i16*
  store i16 1, i16* %8, align 1
  %9 = bitcast %"num::bignum::tests::Big8x3"* %self to i16*
  %_6.i.i25 = load i16, i16* %9, align 1, !alias.scope !2025
  %_8.i.i.i.i.i26 = icmp ugt i16 %_6.i.i25, 3
  br i1 %_8.i.i.i.i.i26, label %bb5.i.i.i.i.i27, label %bb5.i.i.i4.i

bb3:                                              ; preds = %bb1.i.i
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [30 x i8] }>* @alloc18925 to [0 x i8]*), i16 30, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable

bb5.i.i.i.i.i27:                                  ; preds = %bb2
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %_6.i.i25, i16 3, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable

bb5.i.i.i4.i:                                     ; preds = %bb2
  %10 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 0
  %_13.i.i4.i.i.i.i.i = icmp eq i16 %_6.i.i25, 0
  br i1 %_13.i.i4.i.i.i.i.i, label %bb24, label %bb6.i.i.preheader.i.i.i.i

bb6.i.i.preheader.i.i.i.i:                        ; preds = %bb5.i.i.i4.i
  %11 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 %_6.i.i25
  br label %bb6.i.i.i.i.i.i

bb6.i.i.i.i.i.i:                                  ; preds = %bb8.i.i.i.i.i.i, %bb6.i.i.preheader.i.i.i.i
  %_12.i.i6.i.i.i.i.i = phi i8* [ %12, %bb8.i.i.i.i.i.i ], [ %11, %bb6.i.i.preheader.i.i.i.i ]
  %accum.0.i5.i.i.i.i.i = phi i16 [ %_5.0.i.i.i.i.i.i.i.i.i.i.i, %bb8.i.i.i.i.i.i ], [ 0, %bb6.i.i.preheader.i.i.i.i ]
  %12 = getelementptr inbounds i8, i8* %_12.i.i6.i.i.i.i.i, i16 -1
  %x.val.val.i.i.i.i.i.i.i = load i8, i8* %12, align 1, !alias.scope !2030, !noalias !2033
  %13 = icmp eq i8 %x.val.val.i.i.i.i.i.i.i, 0
  br i1 %13, label %bb8.i.i.i.i.i.i, label %_ZN4core4iter6traits8iterator8Iterator5count17hbe4c10b6321b8a5eE.exit.i

bb8.i.i.i.i.i.i:                                  ; preds = %bb6.i.i.i.i.i.i
  %_5.0.i.i.i.i.i.i.i.i.i.i.i = add nuw i16 %accum.0.i5.i.i.i.i.i, 1
  %_13.i.i.i.i.i.i.i = icmp eq i8* %10, %12
  br i1 %_13.i.i.i.i.i.i.i, label %bb24, label %bb6.i.i.i.i.i.i

_ZN4core4iter6traits8iterator8Iterator5count17hbe4c10b6321b8a5eE.exit.i: ; preds = %bb6.i.i.i.i.i.i
  %end.i = sub i16 %_6.i.i25, %accum.0.i5.i.i.i.i.i
  %_8.i.i.i.i = icmp ult i16 %_6.i.i25, %accum.0.i5.i.i.i.i.i
  br i1 %_8.i.i.i.i, label %bb5.i.i.i.i28, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i"

bb5.i.i.i.i28:                                    ; preds = %_ZN4core4iter6traits8iterator8Iterator5count17hbe4c10b6321b8a5eE.exit.i
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %end.i, i16 %_6.i.i25, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i": ; preds = %_ZN4core4iter6traits8iterator8Iterator5count17hbe4c10b6321b8a5eE.exit.i
  %14 = icmp eq i16 %end.i, 0
  br i1 %14, label %bb24, label %bb9.i29

bb9.i29:                                          ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i"
  %_24.i = shl i16 %end.i, 3
  br label %bb14.i32

bb14.i32:                                         ; preds = %_ZN4core3num6bignum5tests6Big8x37get_bit17h2e00b268ce9988f9E.exit.i, %bb9.i29
  %i.0.in.i = phi i16 [ %_24.i, %bb9.i29 ], [ %i.0.i, %_ZN4core3num6bignum5tests6Big8x37get_bit17h2e00b268ce9988f9E.exit.i ]
  %i.0.i = add i16 %i.0.in.i, -1
  %d.i.i = lshr i16 %i.0.i, 3
  %_17.i.i = icmp ult i16 %i.0.i, 24
  br i1 %_17.i.i, label %_ZN4core3num6bignum5tests6Big8x37get_bit17h2e00b268ce9988f9E.exit.i, label %panic2.i.i, !prof !4, !misexpect !5

panic2.i.i:                                       ; preds = %bb14.i32
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %d.i.i, i16 3, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*)), !noalias !2038
  unreachable

_ZN4core3num6bignum5tests6Big8x37get_bit17h2e00b268ce9988f9E.exit.i: ; preds = %bb14.i32
  %15 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 %d.i.i
  %_14.i.i = load i8, i8* %15, align 1, !alias.scope !2041
  %16 = trunc i16 %i.0.i to i8
  %17 = and i8 %16, 7
  %18 = shl nuw i8 1, %17
  %19 = and i8 %_14.i.i, %18
  %_28.i = icmp eq i8 %19, 0
  br i1 %_28.i, label %bb14.i32, label %bb26.preheader

bb26.preheader:                                   ; preds = %_ZN4core3num6bignum5tests6Big8x37get_bit17h2e00b268ce9988f9E.exit.i
  %20 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %r, i16 0, i32 3, i16 0
  %21 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %d, i16 0, i32 3, i16 0
  br label %bb26

bb24:                                             ; preds = %bb8.i.i.i.i.i.i, %bb39, %bb5.i.i.i4.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i"
  ret void

bb26:                                             ; preds = %bb26.preheader, %bb39
  %q_is_zero.060 = phi i8 [ %q_is_zero.2, %bb39 ], [ 1, %bb26.preheader ]
  %iter2.sroa.4.059 = phi i16 [ %22, %bb39 ], [ %i.0.in.i, %bb26.preheader ]
  %22 = add i16 %iter2.sroa.4.059, -1
; call core::num::bignum::tests::Big8x3::mul_pow2
  %_60 = tail call align 1 dereferenceable(5) addrspace(1) %"num::bignum::tests::Big8x3"* @_ZN4core3num6bignum5tests6Big8x38mul_pow217h3618f456f8a6a8aaE(%"num::bignum::tests::Big8x3"* nonnull align 1 dereferenceable(5) %r, i16 1)
  %d.i = lshr i16 %22, 3
  %_17.i = icmp ult i16 %22, 24
  br i1 %_17.i, label %_ZN4core3num6bignum5tests6Big8x37get_bit17h2e00b268ce9988f9E.exit, label %panic2.i, !prof !4, !misexpect !5

panic2.i:                                         ; preds = %bb26
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %d.i, i16 3, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*)), !noalias !2042
  unreachable

_ZN4core3num6bignum5tests6Big8x37get_bit17h2e00b268ce9988f9E.exit: ; preds = %bb26
  %23 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 %d.i
  %_14.i = load i8, i8* %23, align 1, !alias.scope !2042
  %24 = trunc i16 %22 to i8
  %25 = and i8 %24, 7
  %_13.i17 = lshr i8 %_14.i, %25
  %26 = and i8 %_13.i17, 1
  %27 = load i8, i8* %6, align 1
  %28 = or i8 %26, %27
  store i8 %28, i8* %6, align 1
  %_4.i.i.i.i = load i16, i16* %7, align 1, !alias.scope !2045, !noalias !2052
  %_5.i.i.i.i = load i16, i16* %0, align 1, !alias.scope !2052, !noalias !2045
  %29 = icmp ugt i16 %_4.i.i.i.i, %_5.i.i.i.i
  %.0.sroa.speculated.i.i.i.i.i.i.i = select i1 %29, i16 %_4.i.i.i.i, i16 %_5.i.i.i.i
  %_8.i.i.i3.i.i.i.i = icmp ugt i16 %.0.sroa.speculated.i.i.i.i.i.i.i, 3
  br i1 %_8.i.i.i3.i.i.i.i, label %bb5.i.i.i4.i.i.i.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i.i.i.i"

bb5.i.i.i4.i.i.i.i:                               ; preds = %_ZN4core3num6bignum5tests6Big8x37get_bit17h2e00b268ce9988f9E.exit
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.0.sroa.speculated.i.i.i.i.i.i.i, i16 3, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*)), !noalias !2052
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i.i.i.i": ; preds = %_ZN4core3num6bignum5tests6Big8x37get_bit17h2e00b268ce9988f9E.exit
  %30 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %r, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i.i.i.i
  %31 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %d, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i.i.i.i
  br label %bb5.i.i.i.i.i.i

bb5.i.i.i.i.i.i:                                  ; preds = %bb32.i.i.i.i.i.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i.i.i.i"
  %self.sroa.2.0.i.i.i.i.i.i = phi i8* [ %30, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i.i.i.i" ], [ %32, %bb32.i.i.i.i.i.i ]
  %other.sroa.5.0.i.i.i.i.i.i = phi i8* [ %31, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i.i.i.i" ], [ %33, %bb32.i.i.i.i.i.i ]
  %_13.i.i.i45.i.i.i.i.i.i = icmp eq i8* %self.sroa.2.0.i.i.i.i.i.i, %scevgep
  br i1 %_13.i.i.i45.i.i.i.i.i.i, label %bb7.preheader.i, label %bb32.i.i.i.i.i.i

bb32.i.i.i.i.i.i:                                 ; preds = %bb5.i.i.i.i.i.i
  %32 = getelementptr inbounds i8, i8* %self.sroa.2.0.i.i.i.i.i.i, i16 -1
  %.val.i.i.i.i46.i.i.i.i.i.i = load i8, i8* %32, align 1, !alias.scope !2056, !noalias !2052
  %33 = getelementptr inbounds i8, i8* %other.sroa.5.0.i.i.i.i.i.i, i16 -1
  %.val.i.i.i.i38.i.i.i.i.i.i = load i8, i8* %33, align 1, !alias.scope !2061, !noalias !2045
  %_3.i.i.i.i.i.i.i.i = icmp ult i8 %.val.i.i.i.i46.i.i.i.i.i.i, %.val.i.i.i.i38.i.i.i.i.i.i
  %_6.i.i.i.i.i.i.i.i = icmp ne i8 %.val.i.i.i.i46.i.i.i.i.i.i, %.val.i.i.i.i38.i.i.i.i.i.i
  %..i.i.i.i.i.i.i.i = zext i1 %_6.i.i.i.i.i.i.i.i to i8
  %.0.i.i.i.i.i.i.i.i = select i1 %_3.i.i.i.i.i.i.i.i, i8 -1, i8 %..i.i.i.i.i.i.i.i
  switch i8 %.0.i.i.i.i.i.i.i.i, label %bb39 [
    i8 0, label %bb5.i.i.i.i.i.i
    i8 1, label %bb7.preheader.i
  ]

bb7.preheader.i:                                  ; preds = %bb32.i.i.i.i.i.i, %bb5.i.i.i.i.i.i
  %_2.i.i32.i = icmp eq i16 %.0.sroa.speculated.i.i.i.i.i.i.i, 0
  br i1 %_2.i.i32.i, label %_ZN4core3num6bignum5tests6Big8x33sub17h4cca5ea2fa89a353E.exit, label %"_ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit.i.preheader"

"_ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit.i.preheader": ; preds = %bb7.preheader.i
  %_38.i94 = load i8, i8* %21, align 1, !alias.scope !2066
  %_37.i95 = xor i8 %_38.i94, -1
  %34 = tail call addrspace(1) { i8, i1 } @llvm.uadd.with.overflow.i8(i8 %28, i8 %_37.i95) #20
  %35 = extractvalue { i8, i1 } %34, 0
  %36 = extractvalue { i8, i1 } %34, 1
  %37 = tail call addrspace(1) { i8, i1 } @llvm.uadd.with.overflow.i8(i8 %35, i8 1) #20
  %38 = extractvalue { i8, i1 } %37, 0
  %39 = extractvalue { i8, i1 } %37, 1
  %brmerge.i.i96 = or i1 %36, %39
  store i8 %38, i8* %20, align 1, !noalias !2066
  %_2.i.i.i97 = icmp eq i16 %.0.sroa.speculated.i.i.i.i.i.i.i, 1
  br i1 %_2.i.i.i97, label %bb9.i, label %"_ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit.i._ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit.i_crit_edge"

"_ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit.i._ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit.i_crit_edge": ; preds = %"_ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit.i.preheader", %"_ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit.i._ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit.i_crit_edge"
  %brmerge.i.i98 = phi i1 [ %brmerge.i.i, %"_ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit.i._ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit.i_crit_edge" ], [ %brmerge.i.i96, %"_ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit.i.preheader" ]
  %40 = phi i16 [ %43, %"_ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit.i._ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit.i_crit_edge" ], [ 1, %"_ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit.i.preheader" ]
  %_15.0.i.i = zext i1 %brmerge.i.i98 to i8
  %.phi.trans.insert = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %r, i16 0, i32 3, i16 %40
  %_36.i.pre = load i8, i8* %.phi.trans.insert, align 1, !noalias !2066
  %41 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %r, i16 0, i32 3, i16 %40
  %42 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %d, i16 0, i32 3, i16 %40
  %43 = add nuw i16 %40, 1
  %_38.i = load i8, i8* %42, align 1, !alias.scope !2066
  %_37.i = xor i8 %_38.i, -1
  %44 = tail call addrspace(1) { i8, i1 } @llvm.uadd.with.overflow.i8(i8 %_36.i.pre, i8 %_37.i) #20
  %45 = extractvalue { i8, i1 } %44, 0
  %46 = extractvalue { i8, i1 } %44, 1
  %47 = tail call addrspace(1) { i8, i1 } @llvm.uadd.with.overflow.i8(i8 %45, i8 %_15.0.i.i) #20
  %48 = extractvalue { i8, i1 } %47, 0
  %49 = extractvalue { i8, i1 } %47, 1
  %brmerge.i.i = or i1 %46, %49
  store i8 %48, i8* %41, align 1, !noalias !2066
  %_2.i.i.i = icmp ult i16 %43, %.0.sroa.speculated.i.i.i.i.i.i.i
  br i1 %_2.i.i.i, label %"_ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit.i._ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit.i_crit_edge", label %bb9.i

bb9.i:                                            ; preds = %"_ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit.i._ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit.i_crit_edge", %"_ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit.i.preheader"
  %brmerge.i.i.lcssa = phi i1 [ %brmerge.i.i96, %"_ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit.i.preheader" ], [ %brmerge.i.i, %"_ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit.i._ZN102_$LT$core..iter..adapters..zip..Zip$LT$A$C$B$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h8a8a3657bbbe2fbdE.exit.i_crit_edge" ]
  br i1 %brmerge.i.i.lcssa, label %_ZN4core3num6bignum5tests6Big8x33sub17h4cca5ea2fa89a353E.exit, label %bb14.i

bb14.i:                                           ; preds = %bb9.i
; call core::panicking::panic
  tail call addrspace(1) void @_ZN4core9panicking5panic17hbd634d6972d36edaE([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [26 x i8] }>* @alloc18922 to [0 x i8]*), i16 26, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*)), !noalias !2066
  unreachable

_ZN4core3num6bignum5tests6Big8x33sub17h4cca5ea2fa89a353E.exit: ; preds = %bb7.preheader.i, %bb9.i
  store i16 %.0.sroa.speculated.i.i.i.i.i.i.i, i16* %7, align 1, !noalias !2066
  %50 = and i8 %q_is_zero.060, 1
  %_82 = icmp eq i8 %50, 0
  br i1 %_82, label %bb38, label %bb36

bb36:                                             ; preds = %_ZN4core3num6bignum5tests6Big8x33sub17h4cca5ea2fa89a353E.exit
  %51 = add nuw nsw i16 %d.i, 1
  store i16 %51, i16* %8, align 1
  br label %bb38

bb38:                                             ; preds = %bb36, %_ZN4core3num6bignum5tests6Big8x33sub17h4cca5ea2fa89a353E.exit
  %q_is_zero.1 = phi i8 [ 0, %bb36 ], [ %q_is_zero.060, %_ZN4core3num6bignum5tests6Big8x33sub17h4cca5ea2fa89a353E.exit ]
  %_84 = shl nuw i8 1, %25
  %52 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %q, i16 0, i32 3, i16 %d.i
  %53 = load i8, i8* %52, align 1
  %54 = or i8 %53, %_84
  store i8 %54, i8* %52, align 1
  br label %bb39

bb39:                                             ; preds = %bb32.i.i.i.i.i.i, %bb38
  %q_is_zero.2 = phi i8 [ %q_is_zero.1, %bb38 ], [ %q_is_zero.060, %bb32.i.i.i.i.i.i ]
  %55 = icmp eq i16 %22, 0
  br i1 %55, label %bb24, label %bb26
}

; <core::num::bignum::tests::Big8x3 as core::cmp::PartialEq>::eq
; Function Attrs: nounwind readonly uwtable
define zeroext i1 @"_ZN73_$LT$core..num..bignum..tests..Big8x3$u20$as$u20$core..cmp..PartialEq$GT$2eq17hbebebdb12d924cd0E"(%"num::bignum::tests::Big8x3"* noalias readonly align 1 dereferenceable(5) %self, %"num::bignum::tests::Big8x3"* noalias readonly align 1 dereferenceable(5) %other) unnamed_addr addrspace(1) #6 {
bb3.i.i:
  %_8.i.i = icmp eq %"num::bignum::tests::Big8x3"* %self, %other
  br i1 %_8.i.i, label %"_ZN4core5slice81_$LT$impl$u20$core..cmp..PartialEq$LT$$u5b$B$u5d$$GT$$u20$for$u20$$u5b$A$u5d$$GT$2eq17h4f494a6a11d48290E.exit", label %bb8.i.i

bb8.i.i:                                          ; preds = %bb3.i.i
  %0 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 0
  %1 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %other, i16 0, i32 3, i16 0
  %_15.i.i = tail call addrspace(1) i32 @memcmp(i8* nonnull dereferenceable(3) %0, i8* nonnull dereferenceable(3) %1, i16 3) #20
  %2 = icmp eq i32 %_15.i.i, 0
  br label %"_ZN4core5slice81_$LT$impl$u20$core..cmp..PartialEq$LT$$u5b$B$u5d$$GT$$u20$for$u20$$u5b$A$u5d$$GT$2eq17h4f494a6a11d48290E.exit"

"_ZN4core5slice81_$LT$impl$u20$core..cmp..PartialEq$LT$$u5b$B$u5d$$GT$$u20$for$u20$$u5b$A$u5d$$GT$2eq17h4f494a6a11d48290E.exit": ; preds = %bb3.i.i, %bb8.i.i
  %.0.i.i = phi i1 [ %2, %bb8.i.i ], [ true, %bb3.i.i ]
  ret i1 %.0.i.i
}

; <core::num::bignum::tests::Big8x3 as core::cmp::PartialOrd>::partial_cmp
; Function Attrs: uwtable
define i8 @"_ZN74_$LT$core..num..bignum..tests..Big8x3$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17hc621e24fce2f9a28E"(%"num::bignum::tests::Big8x3"* noalias readonly align 1 dereferenceable(5) %self, %"num::bignum::tests::Big8x3"* noalias nocapture readonly align 1 dereferenceable(5) %other) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = bitcast %"num::bignum::tests::Big8x3"* %self to i16*
  %_4.i = load i16, i16* %0, align 1, !alias.scope !2069, !noalias !2072
  %1 = bitcast %"num::bignum::tests::Big8x3"* %other to i16*
  %_5.i = load i16, i16* %1, align 1, !alias.scope !2072, !noalias !2069
  %2 = icmp ugt i16 %_4.i, %_5.i
  %.0.sroa.speculated.i.i.i.i = select i1 %2, i16 %_4.i, i16 %_5.i
  %_8.i.i.i3.i = icmp ugt i16 %.0.sroa.speculated.i.i.i.i, 3
  br i1 %_8.i.i.i3.i, label %bb5.i.i.i4.i, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i"

bb5.i.i.i4.i:                                     ; preds = %start
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.0.sroa.speculated.i.i.i.i, i16 3, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*)), !noalias !2072
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i": ; preds = %start
  %3 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 0
  %4 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i
  %5 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %other, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i.i
  br label %bb5.i.i.i

bb5.i.i.i:                                        ; preds = %bb32.i.i.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i"
  %self.sroa.2.0.i.i.i = phi i8* [ %4, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i" ], [ %6, %bb32.i.i.i ]
  %other.sroa.5.0.i.i.i = phi i8* [ %5, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit.i" ], [ %7, %bb32.i.i.i ]
  %_13.i.i.i45.i.i.i = icmp eq i8* %self.sroa.2.0.i.i.i, %3
  br i1 %_13.i.i.i45.i.i.i, label %"_ZN67_$LT$core..num..bignum..tests..Big8x3$u20$as$u20$core..cmp..Ord$GT$3cmp17hb55b08de2a426abeE.exit", label %bb32.i.i.i

bb32.i.i.i:                                       ; preds = %bb5.i.i.i
  %6 = getelementptr inbounds i8, i8* %self.sroa.2.0.i.i.i, i16 -1
  %.val.i.i.i.i46.i.i.i = load i8, i8* %6, align 1, !alias.scope !2074, !noalias !2072
  %7 = getelementptr inbounds i8, i8* %other.sroa.5.0.i.i.i, i16 -1
  %.val.i.i.i.i38.i.i.i = load i8, i8* %7, align 1, !alias.scope !2079, !noalias !2069
  %_3.i.i.i.i.i = icmp ult i8 %.val.i.i.i.i46.i.i.i, %.val.i.i.i.i38.i.i.i
  %_6.i.i.i.i.i = icmp ne i8 %.val.i.i.i.i46.i.i.i, %.val.i.i.i.i38.i.i.i
  %..i.i.i.i.i = zext i1 %_6.i.i.i.i.i to i8
  %.0.i.i.i.i.i = select i1 %_3.i.i.i.i.i, i8 -1, i8 %..i.i.i.i.i
  %8 = icmp eq i8 %.0.i.i.i.i.i, 0
  br i1 %8, label %bb5.i.i.i, label %"_ZN67_$LT$core..num..bignum..tests..Big8x3$u20$as$u20$core..cmp..Ord$GT$3cmp17hb55b08de2a426abeE.exit"

"_ZN67_$LT$core..num..bignum..tests..Big8x3$u20$as$u20$core..cmp..Ord$GT$3cmp17hb55b08de2a426abeE.exit": ; preds = %bb5.i.i.i, %bb32.i.i.i
  %9 = phi i8 [ 0, %bb5.i.i.i ], [ %.0.i.i.i.i.i, %bb32.i.i.i ]
  ret i8 %9
}

; <core::num::bignum::tests::Big8x3 as core::cmp::Ord>::cmp
; Function Attrs: uwtable
define i8 @"_ZN67_$LT$core..num..bignum..tests..Big8x3$u20$as$u20$core..cmp..Ord$GT$3cmp17hb55b08de2a426abeE"(%"num::bignum::tests::Big8x3"* noalias readonly align 1 dereferenceable(5) %self, %"num::bignum::tests::Big8x3"* noalias readonly align 1 dereferenceable(5) %other) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = bitcast %"num::bignum::tests::Big8x3"* %self to i16*
  %_4 = load i16, i16* %0, align 1
  %1 = bitcast %"num::bignum::tests::Big8x3"* %other to i16*
  %_5 = load i16, i16* %1, align 1
  %2 = icmp ugt i16 %_4, %_5
  %.0.sroa.speculated.i.i.i = select i1 %2, i16 %_4, i16 %_5
  %_8.i.i.i3 = icmp ugt i16 %.0.sroa.speculated.i.i.i, 3
  br i1 %_8.i.i.i3, label %bb5.i.i.i4, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit"

bb5.i.i.i4:                                       ; preds = %start
; call core::slice::slice_index_len_fail
  tail call addrspace(1) void @_ZN4core5slice20slice_index_len_fail17h23d04d14bf7ea1aaE(i16 %.0.sroa.speculated.i.i.i, i16 3, %"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit": ; preds = %start
  %3 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 0
  %4 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i
  %5 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %other, i16 0, i32 3, i16 %.0.sroa.speculated.i.i.i
  br label %bb5.i.i

bb5.i.i:                                          ; preds = %bb32.i.i, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit"
  %self.sroa.2.0.i.i = phi i8* [ %4, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit" ], [ %6, %bb32.i.i ]
  %other.sroa.5.0.i.i = phi i8* [ %5, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit" ], [ %7, %bb32.i.i ]
  %_13.i.i.i45.i.i = icmp eq i8* %self.sroa.2.0.i.i, %3
  br i1 %_13.i.i.i45.i.i, label %_ZN4core4iter6traits8iterator8Iterator3cmp17hf3f3667ddf6b2ccaE.exit, label %bb32.i.i

bb32.i.i:                                         ; preds = %bb5.i.i
  %6 = getelementptr inbounds i8, i8* %self.sroa.2.0.i.i, i16 -1
  %.val.i.i.i.i46.i.i = load i8, i8* %6, align 1, !alias.scope !2084
  %7 = getelementptr inbounds i8, i8* %other.sroa.5.0.i.i, i16 -1
  %.val.i.i.i.i38.i.i = load i8, i8* %7, align 1, !alias.scope !2089
  %_3.i.i.i.i = icmp ult i8 %.val.i.i.i.i46.i.i, %.val.i.i.i.i38.i.i
  %_6.i.i.i.i = icmp ne i8 %.val.i.i.i.i46.i.i, %.val.i.i.i.i38.i.i
  %..i.i.i.i = zext i1 %_6.i.i.i.i to i8
  %.0.i.i.i.i = select i1 %_3.i.i.i.i, i8 -1, i8 %..i.i.i.i
  %8 = icmp eq i8 %.0.i.i.i.i, 0
  br i1 %8, label %bb5.i.i, label %_ZN4core4iter6traits8iterator8Iterator3cmp17hf3f3667ddf6b2ccaE.exit

_ZN4core4iter6traits8iterator8Iterator3cmp17hf3f3667ddf6b2ccaE.exit: ; preds = %bb32.i.i, %bb5.i.i
  %9 = phi i8 [ 0, %bb5.i.i ], [ %.0.i.i.i.i, %bb32.i.i ]
  ret i8 %9
}

; <core::num::bignum::tests::Big8x3 as core::clone::Clone>::clone
; Function Attrs: nounwind uwtable
define void @"_ZN71_$LT$core..num..bignum..tests..Big8x3$u20$as$u20$core..clone..Clone$GT$5clone17he162649ae3aff74bE"(%"num::bignum::tests::Big8x3"* noalias nocapture sret dereferenceable(5) %0, %"num::bignum::tests::Big8x3"* noalias nocapture readonly align 1 dereferenceable(5) %self) unnamed_addr addrspace(1) #9 {
start:
  %1 = bitcast %"num::bignum::tests::Big8x3"* %self to i16*
  %_2 = load i16, i16* %1, align 1
  %2 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 0
  %3 = bitcast %"num::bignum::tests::Big8x3"* %0 to i16*
  store i16 %_2, i16* %3, align 1
  %4 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %0, i16 0, i32 3, i16 0
  call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 dereferenceable(3) %4, i8* nonnull align 1 dereferenceable(3) %2, i16 3, i1 false)
  ret void
}

; <core::num::bignum::tests::Big8x3 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN69_$LT$core..num..bignum..tests..Big8x3$u20$as$u20$core..fmt..Debug$GT$3fmt17h10e851976e6cb7c6E"(%"num::bignum::tests::Big8x3"* noalias readonly align 1 dereferenceable(5) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_5.i17 = alloca %"fmt::Arguments", align 1
  %_5.i = alloca %"fmt::Arguments", align 1
  %_66 = alloca [2 x { i8*, i8 addrspace(1)* }], align 1
  %v = alloca i8, align 1
  %_18 = alloca [1 x { i8*, i8 addrspace(1)* }], align 1
  %digitlen = alloca i16, align 1
  %0 = bitcast %"num::bignum::tests::Big8x3"* %self to i16*
  %_5 = load i16, i16* %0, align 1
  %_4 = icmp eq i16 %_5, 0
  %phitmp = add i16 %_5, -1
  %sz.0 = select i1 %_4, i16 0, i16 %phitmp
  %1 = bitcast i16* %digitlen to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %1)
  store i16 2, i16* %digitlen, align 1
  %2 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_18 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %2)
  %_24 = icmp ult i16 %sz.0, 3
  br i1 %_24, label %bb5, label %panic, !prof !4, !misexpect !5

bb5:                                              ; preds = %start
  %_20 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 %sz.0
  %3 = getelementptr inbounds [1 x { i8*, i8 addrspace(1)* }], [1 x { i8*, i8 addrspace(1)* }]* %_18, i16 0, i16 0, i32 0
  store i8* %_20, i8** %3, align 1
  %4 = getelementptr inbounds [1 x { i8*, i8 addrspace(1)* }], [1 x { i8*, i8 addrspace(1)* }]* %_18, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 (i8*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i8$GT$3fmt17h7943257fc24ac32eE" to i8 addrspace(1)*), i8 addrspace(1)** %4, align 1
  %5 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_4.0.i18 = load {}*, {}** %5, align 1, !noalias !2094, !nonnull !568
  %6 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %_4.1.i19 = load [3 x i16]*, [3 x i16]** %6, align 1, !noalias !2094, !nonnull !568
  %7 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i17, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %7), !noalias !2094
  %_11.sroa.0.0..sroa_cast21 = bitcast %"fmt::Arguments"* %_5.i17 to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8] }>* @alloc17054 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %_11.sroa.0.0..sroa_cast21, align 1
  %_11.sroa.4.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i17, i16 0, i32 1, i32 1
  store i16 1, i16* %_11.sroa.4.0..sroa_idx, align 1
  %_11.sroa.5.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i17, i16 0, i32 3, i32 0
  store i8* getelementptr inbounds (<{ [17 x i8] }>, <{ [17 x i8] }>* @alloc17063, i16 0, i32 0, i16 0), i8** %_11.sroa.5.0..sroa_idx, align 1
  %_11.sroa.6.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i17, i16 0, i32 3, i32 1
  store i16 1, i16* %_11.sroa.6.0..sroa_idx, align 1
  %_11.sroa.7.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i17, i16 0, i32 5, i32 0
  %8 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %_11.sroa.7.0..sroa_idx to [1 x { i8*, i8 addrspace(1)* }]**
  store [1 x { i8*, i8 addrspace(1)* }]* %_18, [1 x { i8*, i8 addrspace(1)* }]** %8, align 1
  %_11.sroa.8.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i17, i16 0, i32 5, i32 1
  store i16 1, i16* %_11.sroa.8.0..sroa_idx, align 1
; call core::fmt::write
  %9 = call zeroext addrspace(1) i1 @_ZN4core3fmt5write17hf4cd163abe69055cE({}* nonnull align 1 %_4.0.i18, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) %_4.1.i19, %"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_5.i17), !noalias !2094
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 12, i8* nonnull %7), !noalias !2094
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %2)
  br i1 %9, label %bb16, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit"

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit": ; preds = %bb5
  %10 = getelementptr inbounds %"num::bignum::tests::Big8x3", %"num::bignum::tests::Big8x3"* %self, i16 0, i32 3, i16 0
  %11 = bitcast [2 x { i8*, i8 addrspace(1)* }]* %_66 to i8*
  %12 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_66, i16 0, i16 0, i32 0
  %13 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_66, i16 0, i16 0, i32 1
  %14 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_66, i16 0, i16 1, i32 0
  %15 = bitcast i8** %14 to i16**
  %16 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_66, i16 0, i16 1, i32 1
  %17 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 0, i16 0
  %_59.sroa.0.0..sroa_cast32 = bitcast %"fmt::Arguments"* %_5.i to [0 x { [0 x i8]*, i16 }]**
  %_59.sroa.4.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 1, i32 1
  %_59.sroa.5.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 3, i32 0
  %_59.sroa.6.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 3, i32 1
  %_59.sroa.7.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 5, i32 0
  %18 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %_59.sroa.7.0..sroa_idx to [2 x { i8*, i8 addrspace(1)* }]**
  %_59.sroa.8.0..sroa_idx = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 5, i32 1
  br label %bb21

bb13:                                             ; preds = %bb23, %bb16
  %.0 = phi i1 [ false, %bb23 ], [ true, %bb16 ]
  ret i1 %.0

bb16:                                             ; preds = %bb25, %bb5
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %1)
  br label %bb13

bb21:                                             ; preds = %bb25, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit"
  %iter.sroa.5.0 = phi i8* [ %_20, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17ha3f679b1a7b624c0E.exit" ], [ %19, %bb25 ]
  %_13.i.i = icmp eq i8* %10, %iter.sroa.5.0
  br i1 %_13.i.i, label %bb23, label %bb25

bb23:                                             ; preds = %bb21
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %1)
  br label %bb13

bb25:                                             ; preds = %bb21
  %19 = getelementptr inbounds i8, i8* %iter.sroa.5.0, i16 -1
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 1, i8* nonnull %v)
  %20 = load i8, i8* %19, align 1
  store i8 %20, i8* %v, align 1
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %11)
  store i8* %v, i8** %12, align 1
  store i8 addrspace(1)* bitcast (i1 (i8*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i8$GT$3fmt17h7943257fc24ac32eE" to i8 addrspace(1)*), i8 addrspace(1)** %13, align 1
  store i16* %digitlen, i16** %15, align 1
  store i8 addrspace(1)* bitcast (i1 (i16*, %"fmt::Formatter"*) addrspace(1)* @_ZN4core3ops8function6FnOnce9call_once17h35286f7b5a1cec98E to i8 addrspace(1)*), i8 addrspace(1)** %16, align 1
  %_4.0.i = load {}*, {}** %5, align 1, !noalias !2097, !nonnull !568
  %_4.1.i = load [3 x i16]*, [3 x i16]** %6, align 1, !noalias !2097, !nonnull !568
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %17), !noalias !2097
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8] }>* @alloc17069 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %_59.sroa.0.0..sroa_cast32, align 1
  store i16 1, i16* %_59.sroa.4.0..sroa_idx, align 1
  store i8* getelementptr inbounds (<{ [17 x i8] }>, <{ [17 x i8] }>* @alloc17078, i16 0, i32 0, i16 0), i8** %_59.sroa.5.0..sroa_idx, align 1
  store i16 1, i16* %_59.sroa.6.0..sroa_idx, align 1
  store [2 x { i8*, i8 addrspace(1)* }]* %_66, [2 x { i8*, i8 addrspace(1)* }]** %18, align 1
  store i16 2, i16* %_59.sroa.8.0..sroa_idx, align 1
; call core::fmt::write
  %21 = call zeroext addrspace(1) i1 @_ZN4core3fmt5write17hf4cd163abe69055cE({}* nonnull align 1 %_4.0.i, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) %_4.1.i, %"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_5.i), !noalias !2097
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 12, i8* nonnull %17), !noalias !2097
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 8, i8* nonnull %11)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 1, i8* nonnull %v)
  br i1 %21, label %bb16, label %bb21

panic:                                            ; preds = %start
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %sz.0, i16 3, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18921 to %"panic::Location"*))
  unreachable
}

; <core::num::dec2flt::parse::Sign as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN68_$LT$core..num..dec2flt..parse..Sign$u20$as$u20$core..fmt..Debug$GT$3fmt17h363769cd975f7177E"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = load i8, i8* %self, align 1, !range !87
  %switch = icmp eq i8 %0, 1
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !nonnull !568
  %.sink = select i1 %switch, [0 x i8]* bitcast (<{ [8 x i8] }>* @alloc18926 to [0 x i8]*), [0 x i8]* bitcast (<{ [8 x i8] }>* @alloc18927 to [0 x i8]*)
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 %.sink, i16 8), !noalias !568
  ret i1 %6
}

; <core::num::dec2flt::parse::Decimal as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN71_$LT$core..num..dec2flt..parse..Decimal$u20$as$u20$core..fmt..Debug$GT$3fmt17h23f037ba84d4bcdaE"(%"num::dec2flt::parse::Decimal"* noalias readonly align 1 dereferenceable(16) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_33 = alloca i64*, align 1
  %_25 = alloca { [0 x i8]*, i16 }*, align 1
  %_17 = alloca { [0 x i8]*, i16 }*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %__self_0_1 = getelementptr inbounds %"num::dec2flt::parse::Decimal", %"num::dec2flt::parse::Decimal"* %self, i16 0, i32 3
  %__self_0_2 = getelementptr inbounds %"num::dec2flt::parse::Decimal", %"num::dec2flt::parse::Decimal"* %self, i16 0, i32 5
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !2100, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !2100, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !2100, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [7 x i8] }>* @alloc18928 to [0 x i8]*), i16 7), !noalias !2109
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !2109, !noalias !2110
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !2109, !noalias !2110
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !2109, !noalias !2110
  %11 = bitcast { [0 x i8]*, i16 }** %_17 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  %12 = bitcast { [0 x i8]*, i16 }** %_17 to %"num::dec2flt::parse::Decimal"**
  store %"num::dec2flt::parse::Decimal"* %self, %"num::dec2flt::parse::Decimal"** %12, align 1
  %_14.0 = bitcast { [0 x i8]*, i16 }** %_17 to {}*
; call core::fmt::builders::DebugStruct::field
  %_10 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [8 x i8] }>* @alloc18929 to [0 x i8]*), i16 8, {}* nonnull align 1 %_14.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({ [0 x i8]*, i16 }**) addrspace(1)*, i16, i16, i1 ({ [0 x i8]*, i16 }**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.t to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %13 = bitcast { [0 x i8]*, i16 }** %_25 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store { [0 x i8]*, i16 }* %__self_0_1, { [0 x i8]*, i16 }** %_25, align 1
  %_22.0 = bitcast { [0 x i8]*, i16 }** %_25 to {}*
; call core::fmt::builders::DebugStruct::field
  %_18 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [10 x i8] }>* @alloc18930 to [0 x i8]*), i16 10, {}* nonnull align 1 %_22.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({ [0 x i8]*, i16 }**) addrspace(1)*, i16, i16, i1 ({ [0 x i8]*, i16 }**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.t to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast i64** %_33 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store i64* %__self_0_2, i64** %_33, align 1
  %_30.0 = bitcast i64** %_33 to {}*
; call core::fmt::builders::DebugStruct::field
  %_26 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [3 x i8] }>* @alloc18950 to [0 x i8]*), i16 3, {}* nonnull align 1 %_30.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.u to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %15, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %16 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %16, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !2111, !noalias !2114
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %17 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !nonnull !568
  br i1 %17, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %23 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %24 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %24, %bb3.i.i.i ], [ %23, %bb2.i.i.i ]
  %25 = zext i1 %.0.i.i to i8
  store i8 %25, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %26 = phi i8 [ %25, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %27 = icmp ne i8 %26, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %27
}

; <core::num::dec2flt::parse::ParseResult as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN75_$LT$core..num..dec2flt..parse..ParseResult$u20$as$u20$core..fmt..Debug$GT$3fmt17hb68db4ee62e10ca0E"(%"num::dec2flt::parse::ParseResult"* noalias readonly align 1 dereferenceable(17) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_16 = alloca %"num::dec2flt::parse::Decimal"*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %0 = getelementptr inbounds %"num::dec2flt::parse::ParseResult", %"num::dec2flt::parse::ParseResult"* %self, i16 0, i32 0, i16 0
  %1 = load i8, i8* %0, align 1, !range !696
  %trunc = trunc i8 %1 to i2
  switch i2 %trunc, label %bb2 [
    i2 0, label %bb3
    i2 1, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit59
    i2 -2, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit86
    i2 -1, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit
  ]

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %2, align 1, !noalias !2117, !nonnull !568
  %3 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %4 = bitcast [3 x i16]** %3 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %4, align 1, !noalias !2117, !nonnull !568
  %5 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %6 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %5, align 1, !invariant.load !568, !noalias !2117, !nonnull !568
  %7 = tail call zeroext addrspace(1) i1 %6({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [7 x i8] }>* @alloc18941 to [0 x i8]*), i16 7), !noalias !2126
  br label %bb15

bb2:                                              ; preds = %start
  unreachable

bb3:                                              ; preds = %start
  %__self_0 = getelementptr inbounds %"num::dec2flt::parse::ParseResult", %"num::dec2flt::parse::ParseResult"* %self, i16 0, i32 2
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %8)
  %9 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i6 = load {}*, {}** %9, align 1, !noalias !2127, !nonnull !568
  %10 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %11 = bitcast [3 x i16]** %10 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i7 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %11, align 1, !noalias !2127, !nonnull !568
  %12 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i7, i16 3
  %13 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %12, align 1, !invariant.load !568, !noalias !2127, !nonnull !568
  %14 = tail call zeroext addrspace(1) i1 %13({}* nonnull align 1 %_3.0.i.i.i6, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc18935 to [0 x i8]*), i16 5), !noalias !2136
  %15 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %15, align 1, !alias.scope !2136, !noalias !2137
  %16 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %17 = zext i1 %14 to i8
  store i8 %17, i8* %16, align 1, !alias.scope !2136, !noalias !2137
  %18 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %18, align 1, !alias.scope !2136, !noalias !2137
  %19 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %19, align 1, !alias.scope !2136, !noalias !2137
  %20 = bitcast %"num::dec2flt::parse::Decimal"** %_16 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %20)
  %21 = bitcast %"num::dec2flt::parse::Decimal"** %_16 to [16 x i8]**
  store [16 x i8]* %__self_0, [16 x i8]** %21, align 1
  %_13.0 = bitcast %"num::dec2flt::parse::Decimal"** %_16 to {}*
; call core::fmt::builders::DebugTuple::field
  %_11 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_13.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"num::dec2flt::parse::Decimal"**) addrspace(1)*, i16, i16, i1 (%"num::dec2flt::parse::Decimal"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.v to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %20)
  %_3.i8 = load i16, i16* %18, align 1
  %_2.i9 = icmp eq i16 %_3.i8, 0
  %.pre.i11 = load i8, i8* %16, align 1, !range !87
  br i1 %_2.i9, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit32, label %bb2.i13

bb2.i13:                                          ; preds = %bb3
  %_5.i12 = icmp eq i8 %.pre.i11, 0
  br i1 %_5.i12, label %bb3.i.i15, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i31"

bb3.i.i15:                                        ; preds = %bb2.i13
  %_5.i.i.i14 = icmp ne i16 %_3.i8, 1
  %22 = load i8, i8* %19, align 1
  %_7.i.i.i20 = icmp eq i8 %22, 0
  %or.cond = or i1 %_5.i.i.i14, %_7.i.i.i20
  br i1 %or.cond, label %bb20.i.i.i29, label %bb3.i.i.i19

bb3.i.i.i19:                                      ; preds = %bb3.i.i15
  %23 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i16 = load i32*, i32** %23, align 1, !alias.scope !2138, !nonnull !568
  %_3.i.i.i.i.i17 = load i32, i32* %_21.i.i.i.i16, align 1, !alias.scope !2141, !noalias !2138
  %_2.i.i.i.i.i18 = and i32 %_3.i.i.i.i.i17, 4
  %24 = icmp eq i32 %_2.i.i.i.i.i18, 0
  %25 = bitcast i32* %_21.i.i.i.i16 to %"fmt::Formatter"*
  br i1 %24, label %bb11.i.i.i24, label %bb20.i.i.i29

bb11.i.i.i24:                                     ; preds = %bb3.i.i.i19
  %26 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %25, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i22 = load {}*, {}** %26, align 1, !noalias !2144, !nonnull !568
  %27 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %25, i16 0, i32 11, i32 1
  %28 = bitcast [3 x i16]** %27 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i23 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %28, align 1, !noalias !2144, !nonnull !568
  %29 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i23, i16 3
  %30 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %29, align 1, !invariant.load !568, !noalias !2144, !nonnull !568
  %31 = call zeroext addrspace(1) i1 %30({}* nonnull align 1 %_3.0.i2.i.i.i22, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %31, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i31", label %bb20.i.i.i29

bb20.i.i.i29:                                     ; preds = %bb3.i.i15, %bb11.i.i.i24, %bb3.i.i.i19
  %_21.i.i.i25 = load %"fmt::Formatter"*, %"fmt::Formatter"** %15, align 1, !nonnull !568
  %32 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i25, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i26 = load {}*, {}** %32, align 1, !noalias !2147, !nonnull !568
  %33 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i25, i16 0, i32 11, i32 1
  %34 = bitcast [3 x i16]** %33 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i27 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %34, align 1, !noalias !2147, !nonnull !568
  %35 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i27, i16 3
  %36 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %35, align 1, !invariant.load !568, !noalias !2147, !nonnull !568
  %37 = call zeroext addrspace(1) i1 %36({}* nonnull align 1 %_3.0.i.i.i.i26, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i28 = zext i1 %37 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i31"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i31": ; preds = %bb20.i.i.i29, %bb11.i.i.i24, %bb2.i13
  %.0.i.i30 = phi i8 [ 1, %bb2.i13 ], [ %phitmp.i28, %bb20.i.i.i29 ], [ 1, %bb11.i.i.i24 ]
  store i8 %.0.i.i30, i8* %16, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit32

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit32: ; preds = %bb3, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i31"
  %38 = phi i8 [ %.0.i.i30, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i31" ], [ %.pre.i11, %bb3 ]
  %39 = icmp ne i8 %38, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %8)
  br label %bb15

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit59: ; preds = %start
  %40 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i33 = load {}*, {}** %40, align 1, !noalias !2150, !nonnull !568
  %41 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %42 = bitcast [3 x i16]** %41 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i34 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %42, align 1, !noalias !2150, !nonnull !568
  %43 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i34, i16 3
  %44 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %43, align 1, !invariant.load !568, !noalias !2150, !nonnull !568
  %45 = tail call zeroext addrspace(1) i1 %44({}* nonnull align 1 %_3.0.i.i.i33, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [13 x i8] }>* @alloc18934 to [0 x i8]*), i16 13), !noalias !2159
  br label %bb15

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit86: ; preds = %start
  %46 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i60 = load {}*, {}** %46, align 1, !noalias !2160, !nonnull !568
  %47 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %48 = bitcast [3 x i16]** %47 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i61 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %48, align 1, !noalias !2160, !nonnull !568
  %49 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i61, i16 3
  %50 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %49, align 1, !invariant.load !568, !noalias !2160, !nonnull !568
  %51 = tail call zeroext addrspace(1) i1 %50({}* nonnull align 1 %_3.0.i.i.i60, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [14 x i8] }>* @alloc18933 to [0 x i8]*), i16 14), !noalias !2169
  br label %bb15

bb15:                                             ; preds = %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit32, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit59, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit86, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit
  %.0.in = phi i1 [ %7, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit ], [ %51, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit86 ], [ %45, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit59 ], [ %39, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit32 ]
  ret i1 %.0.in
}

; <core::num::dec2flt::rawfp::Unpacked as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN72_$LT$core..num..dec2flt..rawfp..Unpacked$u20$as$u20$core..fmt..Debug$GT$3fmt17hafaaf0c060e1737cE"({ i64, i16 }* noalias readonly align 1 dereferenceable(10) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_24 = alloca i16*, align 1
  %_16 = alloca i64*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %__self_0_0 = getelementptr inbounds { i64, i16 }, { i64, i16 }* %self, i16 0, i32 0
  %__self_0_1 = getelementptr inbounds { i64, i16 }, { i64, i16 }* %self, i16 0, i32 1
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !2170, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !2170, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !2170, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [8 x i8] }>* @alloc18936 to [0 x i8]*), i16 8), !noalias !2179
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !2179, !noalias !2180
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !2179, !noalias !2180
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !2179, !noalias !2180
  %11 = bitcast i64** %_16 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  store i64* %__self_0_0, i64** %_16, align 1
  %_13.0 = bitcast i64** %_16 to {}*
; call core::fmt::builders::DebugStruct::field
  %_9 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [3 x i8] }>* @alloc18937 to [0 x i8]*), i16 3, {}* nonnull align 1 %_13.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.w to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %12 = bitcast i16** %_24 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i16* %__self_0_1, i16** %_24, align 1
  %_21.0 = bitcast i16** %_24 to {}*
; call core::fmt::builders::DebugStruct::field
  %_17 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18938 to [0 x i8]*), i16 1, {}* nonnull align 1 %_21.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %13, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %14 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %14, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !2181, !noalias !2184
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %15 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %16, align 1, !nonnull !568
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %18 = bitcast [3 x i16]** %17 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %20 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %19, align 1, !invariant.load !568, !nonnull !568
  br i1 %15, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %21 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %22 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %22, %bb3.i.i.i ], [ %21, %bb2.i.i.i ]
  %23 = zext i1 %.0.i.i to i8
  store i8 %23, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %24 = phi i8 [ %23, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %25 = icmp ne i8 %24, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %25
}

; <core::num::dec2flt::ParseFloatError as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN72_$LT$core..num..dec2flt..ParseFloatError$u20$as$u20$core..fmt..Debug$GT$3fmt17hb4bb8028350848adE"(i8* noalias readonly align 1 dereferenceable(1) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_15 = alloca i8*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !2187, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !2187, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !2187, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [15 x i8] }>* @alloc18939 to [0 x i8]*), i16 15), !noalias !2196
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !2196, !noalias !2197
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !2196, !noalias !2197
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !2196, !noalias !2197
  %11 = bitcast i8** %_15 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  store i8* %self, i8** %_15, align 1
  %_12.0 = bitcast i8** %_15 to {}*
; call core::fmt::builders::DebugStruct::field
  %_8 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc18988 to [0 x i8]*), i16 4, {}* nonnull align 1 %_12.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.y to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %12 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %12, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %13 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %13, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !2198, !noalias !2201
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %14 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %15 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %15, align 1, !nonnull !568
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %17 = bitcast [3 x i16]** %16 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %17, align 1, !nonnull !568
  %18 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %19 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %18, align 1, !invariant.load !568, !nonnull !568
  br i1 %14, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %20 = call zeroext addrspace(1) i1 %19({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %21 = call zeroext addrspace(1) i1 %19({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %21, %bb3.i.i.i ], [ %20, %bb2.i.i.i ]
  %22 = zext i1 %.0.i.i to i8
  store i8 %22, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %23 = phi i8 [ %22, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %24 = icmp ne i8 %23, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %24
}

; <core::num::dec2flt::FloatErrorKind as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN71_$LT$core..num..dec2flt..FloatErrorKind$u20$as$u20$core..fmt..Debug$GT$3fmt17hec307482de6e6a8cE"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = load i8, i8* %self, align 1, !range !87
  %switch = icmp eq i8 %0, 1
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !nonnull !568
  br i1 %switch, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [7 x i8] }>* @alloc18941 to [0 x i8]*), i16 7), !noalias !2204
  br label %bb8

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30: ; preds = %start
  %7 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19178 to [0 x i8]*), i16 5), !noalias !2209
  br label %bb8

bb8:                                              ; preds = %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit
  %.0.in = phi i1 [ %7, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30 ], [ %6, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit ]
  ret i1 %.0.in
}

; <core::num::diy_float::Fp as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN61_$LT$core..num..diy_float..Fp$u20$as$u20$core..fmt..Debug$GT$3fmt17hb0f3aa22b3b559f8E"({ i64, i16 }* noalias readonly align 1 dereferenceable(10) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_24 = alloca i16*, align 1
  %_16 = alloca i64*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %__self_0_0 = getelementptr inbounds { i64, i16 }, { i64, i16 }* %self, i16 0, i32 0
  %__self_0_1 = getelementptr inbounds { i64, i16 }, { i64, i16 }* %self, i16 0, i32 1
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !2214, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !2214, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !2214, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18943 to [0 x i8]*), i16 2), !noalias !2223
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !2223, !noalias !2224
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !2223, !noalias !2224
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !2223, !noalias !2224
  %11 = bitcast i64** %_16 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  store i64* %__self_0_0, i64** %_16, align 1
  %_13.0 = bitcast i64** %_16 to {}*
; call core::fmt::builders::DebugStruct::field
  %_9 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18944 to [0 x i8]*), i16 1, {}* nonnull align 1 %_13.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.w to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %12 = bitcast i16** %_24 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i16* %__self_0_1, i16** %_24, align 1
  %_21.0 = bitcast i16** %_24 to {}*
; call core::fmt::builders::DebugStruct::field
  %_17 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18945 to [0 x i8]*), i16 1, {}* nonnull align 1 %_21.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %13, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %14 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %14, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !2225, !noalias !2228
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %15 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %16, align 1, !nonnull !568
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %18 = bitcast [3 x i16]** %17 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %20 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %19, align 1, !invariant.load !568, !nonnull !568
  br i1 %15, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %21 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %22 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %22, %bb3.i.i.i ], [ %21, %bb2.i.i.i ]
  %23 = zext i1 %.0.i.i to i8
  store i8 %23, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %24 = phi i8 [ %23, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %25 = icmp ne i8 %24, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %25
}

; <core::num::flt2dec::decoder::Decoded as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN73_$LT$core..num..flt2dec..decoder..Decoded$u20$as$u20$core..fmt..Debug$GT$3fmt17h29d9e20ed0d2fb81E"(%"num::flt2dec::decoder::Decoded"* noalias readonly align 1 dereferenceable(27) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_51 = alloca i8*, align 1
  %_43 = alloca i16*, align 1
  %_35 = alloca i64*, align 1
  %_27 = alloca i64*, align 1
  %_19 = alloca i64*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %__self_0_1 = getelementptr inbounds %"num::flt2dec::decoder::Decoded", %"num::flt2dec::decoder::Decoded"* %self, i16 0, i32 3
  %__self_0_2 = getelementptr inbounds %"num::flt2dec::decoder::Decoded", %"num::flt2dec::decoder::Decoded"* %self, i16 0, i32 5
  %__self_0_3 = getelementptr inbounds %"num::flt2dec::decoder::Decoded", %"num::flt2dec::decoder::Decoded"* %self, i16 0, i32 7
  %__self_0_4 = getelementptr inbounds %"num::flt2dec::decoder::Decoded", %"num::flt2dec::decoder::Decoded"* %self, i16 0, i32 9
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !2231, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !2231, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !2231, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [7 x i8] }>* @alloc18946 to [0 x i8]*), i16 7), !noalias !2240
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !2240, !noalias !2241
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !2240, !noalias !2241
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !2240, !noalias !2241
  %11 = bitcast i64** %_19 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  %12 = bitcast i64** %_19 to %"num::flt2dec::decoder::Decoded"**
  store %"num::flt2dec::decoder::Decoded"* %self, %"num::flt2dec::decoder::Decoded"** %12, align 1
  %_16.0 = bitcast i64** %_19 to {}*
; call core::fmt::builders::DebugStruct::field
  %_12 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc18947 to [0 x i8]*), i16 4, {}* nonnull align 1 %_16.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.w to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %13 = bitcast i64** %_27 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i64* %__self_0_1, i64** %_27, align 1
  %_24.0 = bitcast i64** %_27 to {}*
; call core::fmt::builders::DebugStruct::field
  %_20 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc18948 to [0 x i8]*), i16 5, {}* nonnull align 1 %_24.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.w to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast i64** %_35 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store i64* %__self_0_2, i64** %_35, align 1
  %_32.0 = bitcast i64** %_35 to {}*
; call core::fmt::builders::DebugStruct::field
  %_28 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc18949 to [0 x i8]*), i16 4, {}* nonnull align 1 %_32.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.w to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast i16** %_43 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15)
  store i16* %__self_0_3, i16** %_43, align 1
  %_40.0 = bitcast i16** %_43 to {}*
; call core::fmt::builders::DebugStruct::field
  %_36 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [3 x i8] }>* @alloc18950 to [0 x i8]*), i16 3, {}* nonnull align 1 %_40.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15)
  %16 = bitcast i8** %_51 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %16)
  store i8* %__self_0_4, i8** %_51, align 1
  %_48.0 = bitcast i8** %_51 to {}*
; call core::fmt::builders::DebugStruct::field
  %_44 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [9 x i8] }>* @alloc18951 to [0 x i8]*), i16 9, {}* nonnull align 1 %_48.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.z to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %16)
  %17 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %17, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %18 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %18, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !2242, !noalias !2245
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %19 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %20, align 1, !nonnull !568
  %21 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %22 = bitcast [3 x i16]** %21 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %22, align 1, !nonnull !568
  %23 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %24 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %23, align 1, !invariant.load !568, !nonnull !568
  br i1 %19, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %25 = call zeroext addrspace(1) i1 %24({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %26 = call zeroext addrspace(1) i1 %24({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %26, %bb3.i.i.i ], [ %25, %bb2.i.i.i ]
  %27 = zext i1 %.0.i.i to i8
  store i8 %27, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %28 = phi i8 [ %27, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %29 = icmp ne i8 %28, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %29
}

; <core::num::flt2dec::decoder::FullDecoded as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN77_$LT$core..num..flt2dec..decoder..FullDecoded$u20$as$u20$core..fmt..Debug$GT$3fmt17h16e2c2e15a6238cfE"(%"num::flt2dec::decoder::FullDecoded"* noalias readonly align 1 dereferenceable(27) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_31 = alloca %"num::flt2dec::decoder::Decoded"*, align 1
  %debug_trait_builder3 = alloca %"fmt::builders::DebugTuple", align 1
  %0 = getelementptr inbounds %"num::flt2dec::decoder::FullDecoded", %"num::flt2dec::decoder::FullDecoded"* %self, i16 0, i32 1
  %1 = load i8, i8* %0, align 1, !range !632
  %2 = add nsw i8 %1, -2
  %3 = icmp ult i8 %2, 3
  %narrow = select i1 %3, i8 %2, i8 3
  %trunc = trunc i8 %narrow to i2
  switch i2 %trunc, label %bb2 [
    i2 0, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit32
    i2 1, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit59
    i2 -2, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit86
    i2 -1, label %bb1
  ]

bb1:                                              ; preds = %start
  %4 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder3, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %4)
  %5 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %5, align 1, !noalias !2248, !nonnull !568
  %6 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %7 = bitcast [3 x i16]** %6 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %7, align 1, !noalias !2248, !nonnull !568
  %8 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %9 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %8, align 1, !invariant.load !568, !noalias !2248, !nonnull !568
  %10 = tail call zeroext addrspace(1) i1 %9({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc18952 to [0 x i8]*), i16 6), !noalias !2257
  %11 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder3 to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %11, align 1, !alias.scope !2257, !noalias !2258
  %12 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder3, i16 0, i32 3
  %13 = zext i1 %10 to i8
  store i8 %13, i8* %12, align 1, !alias.scope !2257, !noalias !2258
  %14 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder3, i16 0, i32 5
  store i16 0, i16* %14, align 1, !alias.scope !2257, !noalias !2258
  %15 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder3, i16 0, i32 7
  store i8 0, i8* %15, align 1, !alias.scope !2257, !noalias !2258
  %16 = bitcast %"num::flt2dec::decoder::Decoded"** %_31 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %16)
  %17 = bitcast %"num::flt2dec::decoder::Decoded"** %_31 to %"num::flt2dec::decoder::FullDecoded"**
  store %"num::flt2dec::decoder::FullDecoded"* %self, %"num::flt2dec::decoder::FullDecoded"** %17, align 1
  %_28.0 = bitcast %"num::flt2dec::decoder::Decoded"** %_31 to {}*
; call core::fmt::builders::DebugTuple::field
  %_26 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder3, {}* nonnull align 1 %_28.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"num::flt2dec::decoder::Decoded"**) addrspace(1)*, i16, i16, i1 (%"num::flt2dec::decoder::Decoded"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.A to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %16)
  %_3.i = load i16, i16* %14, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %12, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %bb1
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %18 = load i8, i8* %15, align 1
  %_7.i.i.i = icmp eq i8 %18, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %19 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder3 to i32**
  %_21.i.i.i.i = load i32*, i32** %19, align 1, !alias.scope !2259, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !2262, !noalias !2259
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %20 = icmp eq i32 %_2.i.i.i.i.i, 0
  %21 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %20, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %22 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %21, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %22, align 1, !noalias !2265, !nonnull !568
  %23 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %21, i16 0, i32 11, i32 1
  %24 = bitcast [3 x i16]** %23 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %24, align 1, !noalias !2265, !nonnull !568
  %25 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %26 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %25, align 1, !invariant.load !568, !noalias !2265, !nonnull !568
  %27 = call zeroext addrspace(1) i1 %26({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %27, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %11, align 1, !nonnull !568
  %28 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %28, align 1, !noalias !2268, !nonnull !568
  %29 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %30 = bitcast [3 x i16]** %29 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %30, align 1, !noalias !2268, !nonnull !568
  %31 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %32 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %31, align 1, !invariant.load !568, !noalias !2268, !nonnull !568
  %33 = call zeroext addrspace(1) i1 %32({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %33 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %12, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %bb1, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %34 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %bb1 ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %4)
  br label %bb15

bb2:                                              ; preds = %start
  unreachable

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit32: ; preds = %start
  %35 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i6 = load {}*, {}** %35, align 1, !noalias !2271, !nonnull !568
  %36 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %37 = bitcast [3 x i16]** %36 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i7 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %37, align 1, !noalias !2271, !nonnull !568
  %38 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i7, i16 3
  %39 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %38, align 1, !invariant.load !568, !noalias !2271, !nonnull !568
  %40 = tail call zeroext addrspace(1) i1 %39({}* nonnull align 1 %_3.0.i.i.i6, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [3 x i8] }>* @alloc18967 to [0 x i8]*), i16 3), !noalias !2280
  %41 = zext i1 %40 to i8
  br label %bb15

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit59: ; preds = %start
  %42 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i33 = load {}*, {}** %42, align 1, !noalias !2281, !nonnull !568
  %43 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %44 = bitcast [3 x i16]** %43 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i34 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %44, align 1, !noalias !2281, !nonnull !568
  %45 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i34, i16 3
  %46 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %45, align 1, !invariant.load !568, !noalias !2281, !nonnull !568
  %47 = tail call zeroext addrspace(1) i1 %46({}* nonnull align 1 %_3.0.i.i.i33, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [8 x i8] }>* @alloc18966 to [0 x i8]*), i16 8), !noalias !2290
  %48 = zext i1 %47 to i8
  br label %bb15

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit86: ; preds = %start
  %49 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i60 = load {}*, {}** %49, align 1, !noalias !2291, !nonnull !568
  %50 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %51 = bitcast [3 x i16]** %50 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i61 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %51, align 1, !noalias !2291, !nonnull !568
  %52 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i61, i16 3
  %53 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %52, align 1, !invariant.load !568, !noalias !2291, !nonnull !568
  %54 = tail call zeroext addrspace(1) i1 %53({}* nonnull align 1 %_3.0.i.i.i60, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19013 to [0 x i8]*), i16 4), !noalias !2300
  %55 = zext i1 %54 to i8
  br label %bb15

bb15:                                             ; preds = %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit32, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit59, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit86, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit
  %.0.in.in = phi i8 [ %34, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit ], [ %55, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit86 ], [ %48, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit59 ], [ %41, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit32 ]
  %.0.in = icmp ne i8 %.0.in.in, 0
  ret i1 %.0.in
}

; <core::num::flt2dec::Part as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN61_$LT$core..num..flt2dec..Part$u20$as$u20$core..fmt..Debug$GT$3fmt17hac15fd3afc77c03aE"(%"num::flt2dec::Part"* noalias readonly align 1 dereferenceable(5) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_40 = alloca { [0 x i8]*, i16 }*, align 1
  %debug_trait_builder2 = alloca %"fmt::builders::DebugTuple", align 1
  %_28 = alloca i16*, align 1
  %debug_trait_builder1 = alloca %"fmt::builders::DebugTuple", align 1
  %_16 = alloca i16*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %0 = getelementptr inbounds %"num::flt2dec::Part", %"num::flt2dec::Part"* %self, i16 0, i32 0, i16 0
  %1 = load i8, i8* %0, align 1, !range !564
  %trunc = trunc i8 %1 to i2
  switch i2 %trunc, label %bb2 [
    i2 0, label %bb3
    i2 1, label %bb7
    i2 -2, label %bb1
  ]

bb1:                                              ; preds = %start
  %__self_0 = getelementptr inbounds %"num::flt2dec::Part", %"num::flt2dec::Part"* %self, i16 0, i32 2
  %2 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder2, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %2)
  %3 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %3, align 1, !noalias !2301, !nonnull !568
  %4 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %5 = bitcast [3 x i16]** %4 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %5, align 1, !noalias !2301, !nonnull !568
  %6 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %7 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %6, align 1, !invariant.load !568, !noalias !2301, !nonnull !568
  %8 = tail call zeroext addrspace(1) i1 %7({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc18956 to [0 x i8]*), i16 4), !noalias !2310
  %9 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder2 to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %9, align 1, !alias.scope !2310, !noalias !2311
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder2, i16 0, i32 3
  %11 = zext i1 %8 to i8
  store i8 %11, i8* %10, align 1, !alias.scope !2310, !noalias !2311
  %12 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder2, i16 0, i32 5
  store i16 0, i16* %12, align 1, !alias.scope !2310, !noalias !2311
  %13 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder2, i16 0, i32 7
  store i8 0, i8* %13, align 1, !alias.scope !2310, !noalias !2311
  %14 = bitcast { [0 x i8]*, i16 }** %_40 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast { [0 x i8]*, i16 }** %_40 to [4 x i8]**
  store [4 x i8]* %__self_0, [4 x i8]** %15, align 1
  %_37.0 = bitcast { [0 x i8]*, i16 }** %_40 to {}*
; call core::fmt::builders::DebugTuple::field
  %_35 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder2, {}* nonnull align 1 %_37.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({ [0 x i8]*, i16 }**) addrspace(1)*, i16, i16, i1 ({ [0 x i8]*, i16 }**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.t to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %_3.i = load i16, i16* %12, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %10, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %bb1
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %16 = load i8, i8* %13, align 1
  %_7.i.i.i = icmp eq i8 %16, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %17 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder2 to i32**
  %_21.i.i.i.i = load i32*, i32** %17, align 1, !alias.scope !2312, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !2315, !noalias !2312
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %18 = icmp eq i32 %_2.i.i.i.i.i, 0
  %19 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %18, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %19, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %20, align 1, !noalias !2318, !nonnull !568
  %21 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %19, i16 0, i32 11, i32 1
  %22 = bitcast [3 x i16]** %21 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %22, align 1, !noalias !2318, !nonnull !568
  %23 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %24 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %23, align 1, !invariant.load !568, !noalias !2318, !nonnull !568
  %25 = call zeroext addrspace(1) i1 %24({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %25, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %9, align 1, !nonnull !568
  %26 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %26, align 1, !noalias !2321, !nonnull !568
  %27 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %28 = bitcast [3 x i16]** %27 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %28, align 1, !noalias !2321, !nonnull !568
  %29 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %30 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %29, align 1, !invariant.load !568, !noalias !2321, !nonnull !568
  %31 = call zeroext addrspace(1) i1 %30({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %31 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %10, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %bb1, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %32 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %bb1 ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %2)
  br label %bb14

bb2:                                              ; preds = %start
  unreachable

bb3:                                              ; preds = %start
  %__self_04 = getelementptr inbounds %"num::flt2dec::Part", %"num::flt2dec::Part"* %self, i16 0, i32 2
  %33 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %33)
  %34 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i9 = load {}*, {}** %34, align 1, !noalias !2324, !nonnull !568
  %35 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %36 = bitcast [3 x i16]** %35 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i10 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %36, align 1, !noalias !2324, !nonnull !568
  %37 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i10, i16 3
  %38 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %37, align 1, !invariant.load !568, !noalias !2324, !nonnull !568
  %39 = tail call zeroext addrspace(1) i1 %38({}* nonnull align 1 %_3.0.i.i.i9, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19013 to [0 x i8]*), i16 4), !noalias !2333
  %40 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %40, align 1, !alias.scope !2333, !noalias !2334
  %41 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %42 = zext i1 %39 to i8
  store i8 %42, i8* %41, align 1, !alias.scope !2333, !noalias !2334
  %43 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %43, align 1, !alias.scope !2333, !noalias !2334
  %44 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %44, align 1, !alias.scope !2333, !noalias !2334
  %45 = bitcast i16** %_16 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %45)
  %46 = bitcast i16** %_16 to [4 x i8]**
  store [4 x i8]* %__self_04, [4 x i8]** %46, align 1
  %_13.0 = bitcast i16** %_16 to {}*
; call core::fmt::builders::DebugTuple::field
  %_11 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_13.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.C to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %45)
  %_3.i11 = load i16, i16* %43, align 1
  %_2.i12 = icmp eq i16 %_3.i11, 0
  %.pre.i14 = load i8, i8* %41, align 1, !range !87
  br i1 %_2.i12, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit35, label %bb2.i16

bb2.i16:                                          ; preds = %bb3
  %_5.i15 = icmp eq i8 %.pre.i14, 0
  br i1 %_5.i15, label %bb3.i.i18, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i34"

bb3.i.i18:                                        ; preds = %bb2.i16
  %_5.i.i.i17 = icmp ne i16 %_3.i11, 1
  %47 = load i8, i8* %44, align 1
  %_7.i.i.i23 = icmp eq i8 %47, 0
  %or.cond63 = or i1 %_5.i.i.i17, %_7.i.i.i23
  br i1 %or.cond63, label %bb20.i.i.i32, label %bb3.i.i.i22

bb3.i.i.i22:                                      ; preds = %bb3.i.i18
  %48 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i19 = load i32*, i32** %48, align 1, !alias.scope !2335, !nonnull !568
  %_3.i.i.i.i.i20 = load i32, i32* %_21.i.i.i.i19, align 1, !alias.scope !2338, !noalias !2335
  %_2.i.i.i.i.i21 = and i32 %_3.i.i.i.i.i20, 4
  %49 = icmp eq i32 %_2.i.i.i.i.i21, 0
  %50 = bitcast i32* %_21.i.i.i.i19 to %"fmt::Formatter"*
  br i1 %49, label %bb11.i.i.i27, label %bb20.i.i.i32

bb11.i.i.i27:                                     ; preds = %bb3.i.i.i22
  %51 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %50, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i25 = load {}*, {}** %51, align 1, !noalias !2341, !nonnull !568
  %52 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %50, i16 0, i32 11, i32 1
  %53 = bitcast [3 x i16]** %52 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i26 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %53, align 1, !noalias !2341, !nonnull !568
  %54 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i26, i16 3
  %55 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %54, align 1, !invariant.load !568, !noalias !2341, !nonnull !568
  %56 = call zeroext addrspace(1) i1 %55({}* nonnull align 1 %_3.0.i2.i.i.i25, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %56, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i34", label %bb20.i.i.i32

bb20.i.i.i32:                                     ; preds = %bb3.i.i18, %bb11.i.i.i27, %bb3.i.i.i22
  %_21.i.i.i28 = load %"fmt::Formatter"*, %"fmt::Formatter"** %40, align 1, !nonnull !568
  %57 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i28, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i29 = load {}*, {}** %57, align 1, !noalias !2344, !nonnull !568
  %58 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i28, i16 0, i32 11, i32 1
  %59 = bitcast [3 x i16]** %58 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i30 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %59, align 1, !noalias !2344, !nonnull !568
  %60 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i30, i16 3
  %61 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %60, align 1, !invariant.load !568, !noalias !2344, !nonnull !568
  %62 = call zeroext addrspace(1) i1 %61({}* nonnull align 1 %_3.0.i.i.i.i29, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i31 = zext i1 %62 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i34"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i34": ; preds = %bb20.i.i.i32, %bb11.i.i.i27, %bb2.i16
  %.0.i.i33 = phi i8 [ 1, %bb2.i16 ], [ %phitmp.i31, %bb20.i.i.i32 ], [ 1, %bb11.i.i.i27 ]
  store i8 %.0.i.i33, i8* %41, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit35

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit35: ; preds = %bb3, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i34"
  %63 = phi i8 [ %.0.i.i33, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i34" ], [ %.pre.i14, %bb3 ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %33)
  br label %bb14

bb7:                                              ; preds = %start
  %__self_03 = getelementptr inbounds %"num::flt2dec::Part", %"num::flt2dec::Part"* %self, i16 0, i32 2
  %64 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %64)
  %65 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i36 = load {}*, {}** %65, align 1, !noalias !2347, !nonnull !568
  %66 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %67 = bitcast [3 x i16]** %66 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i37 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %67, align 1, !noalias !2347, !nonnull !568
  %68 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i37, i16 3
  %69 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %68, align 1, !invariant.load !568, !noalias !2347, !nonnull !568
  %70 = tail call zeroext addrspace(1) i1 %69({}* nonnull align 1 %_3.0.i.i.i36, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [3 x i8] }>* @alloc18957 to [0 x i8]*), i16 3), !noalias !2356
  %71 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder1 to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %71, align 1, !alias.scope !2356, !noalias !2357
  %72 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1, i16 0, i32 3
  %73 = zext i1 %70 to i8
  store i8 %73, i8* %72, align 1, !alias.scope !2356, !noalias !2357
  %74 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1, i16 0, i32 5
  store i16 0, i16* %74, align 1, !alias.scope !2356, !noalias !2357
  %75 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1, i16 0, i32 7
  store i8 0, i8* %75, align 1, !alias.scope !2356, !noalias !2357
  %76 = bitcast i16** %_28 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %76)
  %77 = bitcast i16** %_28 to [4 x i8]**
  store [4 x i8]* %__self_03, [4 x i8]** %77, align 1
  %_25.0 = bitcast i16** %_28 to {}*
; call core::fmt::builders::DebugTuple::field
  %_23 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder1, {}* nonnull align 1 %_25.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.B to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %76)
  %_3.i38 = load i16, i16* %74, align 1
  %_2.i39 = icmp eq i16 %_3.i38, 0
  %.pre.i41 = load i8, i8* %72, align 1, !range !87
  br i1 %_2.i39, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit62, label %bb2.i43

bb2.i43:                                          ; preds = %bb7
  %_5.i42 = icmp eq i8 %.pre.i41, 0
  br i1 %_5.i42, label %bb3.i.i45, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i61"

bb3.i.i45:                                        ; preds = %bb2.i43
  %_5.i.i.i44 = icmp ne i16 %_3.i38, 1
  %78 = load i8, i8* %75, align 1
  %_7.i.i.i50 = icmp eq i8 %78, 0
  %or.cond64 = or i1 %_5.i.i.i44, %_7.i.i.i50
  br i1 %or.cond64, label %bb20.i.i.i59, label %bb3.i.i.i49

bb3.i.i.i49:                                      ; preds = %bb3.i.i45
  %79 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder1 to i32**
  %_21.i.i.i.i46 = load i32*, i32** %79, align 1, !alias.scope !2358, !nonnull !568
  %_3.i.i.i.i.i47 = load i32, i32* %_21.i.i.i.i46, align 1, !alias.scope !2361, !noalias !2358
  %_2.i.i.i.i.i48 = and i32 %_3.i.i.i.i.i47, 4
  %80 = icmp eq i32 %_2.i.i.i.i.i48, 0
  %81 = bitcast i32* %_21.i.i.i.i46 to %"fmt::Formatter"*
  br i1 %80, label %bb11.i.i.i54, label %bb20.i.i.i59

bb11.i.i.i54:                                     ; preds = %bb3.i.i.i49
  %82 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %81, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i52 = load {}*, {}** %82, align 1, !noalias !2364, !nonnull !568
  %83 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %81, i16 0, i32 11, i32 1
  %84 = bitcast [3 x i16]** %83 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i53 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %84, align 1, !noalias !2364, !nonnull !568
  %85 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i53, i16 3
  %86 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %85, align 1, !invariant.load !568, !noalias !2364, !nonnull !568
  %87 = call zeroext addrspace(1) i1 %86({}* nonnull align 1 %_3.0.i2.i.i.i52, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %87, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i61", label %bb20.i.i.i59

bb20.i.i.i59:                                     ; preds = %bb3.i.i45, %bb11.i.i.i54, %bb3.i.i.i49
  %_21.i.i.i55 = load %"fmt::Formatter"*, %"fmt::Formatter"** %71, align 1, !nonnull !568
  %88 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i55, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i56 = load {}*, {}** %88, align 1, !noalias !2367, !nonnull !568
  %89 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i55, i16 0, i32 11, i32 1
  %90 = bitcast [3 x i16]** %89 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i57 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %90, align 1, !noalias !2367, !nonnull !568
  %91 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i57, i16 3
  %92 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %91, align 1, !invariant.load !568, !noalias !2367, !nonnull !568
  %93 = call zeroext addrspace(1) i1 %92({}* nonnull align 1 %_3.0.i.i.i.i56, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i58 = zext i1 %93 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i61"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i61": ; preds = %bb20.i.i.i59, %bb11.i.i.i54, %bb2.i43
  %.0.i.i60 = phi i8 [ 1, %bb2.i43 ], [ %phitmp.i58, %bb20.i.i.i59 ], [ 1, %bb11.i.i.i54 ]
  store i8 %.0.i.i60, i8* %72, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit62

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit62: ; preds = %bb7, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i61"
  %94 = phi i8 [ %.0.i.i60, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i61" ], [ %.pre.i41, %bb7 ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %64)
  br label %bb14

bb14:                                             ; preds = %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit35, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit62, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit
  %.0.in.in = phi i8 [ %32, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit ], [ %94, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit62 ], [ %63, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit35 ]
  %.0.in = icmp ne i8 %.0.in.in, 0
  ret i1 %.0.in
}

; <core::num::flt2dec::Sign as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN61_$LT$core..num..flt2dec..Sign$u20$as$u20$core..fmt..Debug$GT$3fmt17h9b1d31240b031e91E"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = load i8, i8* %self, align 1, !range !696
  %trunc = trunc i8 %0 to i2
  switch i2 %trunc, label %bb2 [
    i2 0, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit31
    i2 1, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit58
    i2 -2, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit85
    i2 -1, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit
  ]

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !2370, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !2370, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !2370, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [12 x i8] }>* @alloc18959 to [0 x i8]*), i16 12), !noalias !2379
  br label %bb14

bb2:                                              ; preds = %start
  unreachable

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit31: ; preds = %start
  %7 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i5 = load {}*, {}** %7, align 1, !noalias !2380, !nonnull !568
  %8 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %9 = bitcast [3 x i16]** %8 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i6 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %9, align 1, !noalias !2380, !nonnull !568
  %10 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i6, i16 3
  %11 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %10, align 1, !invariant.load !568, !noalias !2380, !nonnull !568
  %12 = tail call zeroext addrspace(1) i1 %11({}* nonnull align 1 %_3.0.i.i.i5, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc18962 to [0 x i8]*), i16 5), !noalias !2389
  br label %bb14

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit58: ; preds = %start
  %13 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i32 = load {}*, {}** %13, align 1, !noalias !2390, !nonnull !568
  %14 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %15 = bitcast [3 x i16]** %14 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i33 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %15, align 1, !noalias !2390, !nonnull !568
  %16 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i33, i16 3
  %17 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %16, align 1, !invariant.load !568, !noalias !2390, !nonnull !568
  %18 = tail call zeroext addrspace(1) i1 %17({}* nonnull align 1 %_3.0.i.i.i32, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [8 x i8] }>* @alloc18961 to [0 x i8]*), i16 8), !noalias !2399
  br label %bb14

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit85: ; preds = %start
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i59 = load {}*, {}** %19, align 1, !noalias !2400, !nonnull !568
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %21 = bitcast [3 x i16]** %20 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i60 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %21, align 1, !noalias !2400, !nonnull !568
  %22 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i60, i16 3
  %23 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %22, align 1, !invariant.load !568, !noalias !2400, !nonnull !568
  %24 = tail call zeroext addrspace(1) i1 %23({}* nonnull align 1 %_3.0.i.i.i59, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [9 x i8] }>* @alloc18960 to [0 x i8]*), i16 9), !noalias !2409
  br label %bb14

bb14:                                             ; preds = %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit31, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit58, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit85, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit
  %.0.in = phi i1 [ %6, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit ], [ %24, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit85 ], [ %18, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit58 ], [ %12, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit31 ]
  ret i1 %.0.in
}

; core::num::<impl i8>::from_str_radix
; Function Attrs: uwtable
define i16 @"_ZN4core3num20_$LT$impl$u20$i8$GT$14from_str_radix17hae6b84c67e4ffb71E"([0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 %radix) unnamed_addr addrspace(1) #2 {
start:
; call core::num::from_str_radix
  %0 = tail call fastcc addrspace(1) i16 @_ZN4core3num14from_str_radix17hb5e96faa7057ae66E([0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 %radix)
  ret i16 %0
}

; core::num::<impl i16>::from_str_radix
; Function Attrs: uwtable
define void @"_ZN4core3num21_$LT$impl$u20$i16$GT$14from_str_radix17hbc3000621f24341cE"(%"result::Result<i16, num::ParseIntError>"* noalias nocapture sret dereferenceable(3) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 %radix) unnamed_addr addrspace(1) #2 {
start:
; call core::num::from_str_radix
  tail call fastcc addrspace(1) void @_ZN4core3num14from_str_radix17h24a850c5437e4172E(%"result::Result<i16, num::ParseIntError>"* noalias nocapture nonnull dereferenceable(3) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 %radix)
  ret void
}

; core::num::<impl i32>::from_str_radix
; Function Attrs: uwtable
define void @"_ZN4core3num21_$LT$impl$u20$i32$GT$14from_str_radix17h80ec5b8115c24604E"(%"result::Result<i32, num::ParseIntError>"* noalias nocapture sret dereferenceable(5) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 %radix) unnamed_addr addrspace(1) #2 {
start:
; call core::num::from_str_radix
  tail call fastcc addrspace(1) void @_ZN4core3num14from_str_radix17h6c2fc9a7c8d51d38E(%"result::Result<i32, num::ParseIntError>"* noalias nocapture nonnull dereferenceable(5) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 %radix)
  ret void
}

; core::num::<impl i64>::from_str_radix
; Function Attrs: uwtable
define void @"_ZN4core3num21_$LT$impl$u20$i64$GT$14from_str_radix17h55425cda90ffa453E"(%"result::Result<i64, num::ParseIntError>"* noalias nocapture sret dereferenceable(9) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 %radix) unnamed_addr addrspace(1) #2 {
start:
; call core::num::from_str_radix
  tail call fastcc addrspace(1) void @_ZN4core3num14from_str_radix17h6aa373bc7c329928E(%"result::Result<i64, num::ParseIntError>"* noalias nocapture nonnull dereferenceable(9) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 %radix)
  ret void
}

; core::num::<impl i128>::from_str_radix
; Function Attrs: uwtable
define void @"_ZN4core3num22_$LT$impl$u20$i128$GT$14from_str_radix17h06a92381e6d0def4E"(%"result::Result<i128, num::ParseIntError>"* noalias nocapture sret dereferenceable(17) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 %radix) unnamed_addr addrspace(1) #2 {
start:
; call core::num::from_str_radix
  tail call fastcc addrspace(1) void @_ZN4core3num14from_str_radix17h2e787a9060537f03E(%"result::Result<i128, num::ParseIntError>"* noalias nocapture nonnull dereferenceable(17) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 %radix)
  ret void
}

; core::num::<impl isize>::from_str_radix
; Function Attrs: uwtable
define void @"_ZN4core3num23_$LT$impl$u20$isize$GT$14from_str_radix17h4b84c4980ee35f3bE"(%"result::Result<isize, num::ParseIntError>"* noalias nocapture sret dereferenceable(3) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 %radix) unnamed_addr addrspace(1) #2 {
start:
  tail call fastcc addrspace(1) void bitcast (void (%"result::Result<i16, num::ParseIntError>"*, [0 x i8]*, i16, i32) addrspace(1)* @_ZN4core3num14from_str_radix17h24a850c5437e4172E to void (%"result::Result<isize, num::ParseIntError>"*, [0 x i8]*, i16, i32) addrspace(1)*)(%"result::Result<isize, num::ParseIntError>"* noalias nocapture nonnull dereferenceable(3) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 %radix)
  ret void
}

; core::num::<impl u8>::from_str_radix
; Function Attrs: uwtable
define { i8, i8 } @"_ZN4core3num20_$LT$impl$u20$u8$GT$14from_str_radix17h1d7d6ee9af00fbbcE"([0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 %radix) unnamed_addr addrspace(1) #2 {
start:
; call core::num::from_str_radix
  %0 = tail call fastcc addrspace(1) { i8, i8 } @_ZN4core3num14from_str_radix17h16198f62b04d08bbE([0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 %radix)
  %1 = extractvalue { i8, i8 } %0, 0
  %2 = and i8 %1, 1
  %3 = extractvalue { i8, i8 } %0, 1
  %4 = insertvalue { i8, i8 } undef, i8 %2, 0
  %5 = insertvalue { i8, i8 } %4, i8 %3, 1
  ret { i8, i8 } %5
}

; core::num::<impl u8>::wrapping_next_power_of_two
; Function Attrs: nounwind readnone uwtable
define i8 @"_ZN4core3num20_$LT$impl$u20$u8$GT$26wrapping_next_power_of_two17h7d0d7830f6948686E"(i8 %self) unnamed_addr addrspace(1) #4 {
start:
  %_2.i = icmp ult i8 %self, 2
  br i1 %_2.i, label %"_ZN4core3num20_$LT$impl$u20$u8$GT$31one_less_than_next_power_of_two17h4d0dd6bef265e35bE.exit", label %bb1.i

bb1.i:                                            ; preds = %start
  %p.i = add i8 %self, -1
  %0 = tail call addrspace(1) i8 @llvm.ctlz.i8(i8 %p.i, i1 true) #20, !range !2410
  %1 = lshr i8 -1, %0
  %phitmp = add i8 %1, 1
  br label %"_ZN4core3num20_$LT$impl$u20$u8$GT$31one_less_than_next_power_of_two17h4d0dd6bef265e35bE.exit"

"_ZN4core3num20_$LT$impl$u20$u8$GT$31one_less_than_next_power_of_two17h4d0dd6bef265e35bE.exit": ; preds = %start, %bb1.i
  %.0.i = phi i8 [ %phitmp, %bb1.i ], [ 1, %start ]
  ret i8 %.0.i
}

; core::num::<impl u16>::from_str_radix
; Function Attrs: uwtable
define void @"_ZN4core3num21_$LT$impl$u20$u16$GT$14from_str_radix17h9d4925db51ff9b51E"(%"result::Result<u16, num::ParseIntError>"* noalias nocapture sret dereferenceable(3) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 %radix) unnamed_addr addrspace(1) #2 {
start:
; call core::num::from_str_radix
  tail call fastcc addrspace(1) void @_ZN4core3num14from_str_radix17h39ab26794bfd72eaE(%"result::Result<u16, num::ParseIntError>"* noalias nocapture nonnull dereferenceable(3) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 %radix)
  ret void
}

; core::num::<impl u16>::wrapping_next_power_of_two
; Function Attrs: nounwind readnone uwtable
define i16 @"_ZN4core3num21_$LT$impl$u20$u16$GT$26wrapping_next_power_of_two17h170a8d2e2a69f778E"(i16 %self) unnamed_addr addrspace(1) #4 {
start:
  %_2.i = icmp ult i16 %self, 2
  br i1 %_2.i, label %"_ZN4core3num21_$LT$impl$u20$u16$GT$31one_less_than_next_power_of_two17h315e2eafe377a802E.exit", label %bb1.i

bb1.i:                                            ; preds = %start
  %p.i = add i16 %self, -1
  %0 = tail call addrspace(1) i16 @llvm.ctlz.i16(i16 %p.i, i1 true) #20, !range !2411
  %1 = lshr i16 -1, %0
  %phitmp = add i16 %1, 1
  br label %"_ZN4core3num21_$LT$impl$u20$u16$GT$31one_less_than_next_power_of_two17h315e2eafe377a802E.exit"

"_ZN4core3num21_$LT$impl$u20$u16$GT$31one_less_than_next_power_of_two17h315e2eafe377a802E.exit": ; preds = %start, %bb1.i
  %.0.i = phi i16 [ %phitmp, %bb1.i ], [ 1, %start ]
  ret i16 %.0.i
}

; core::num::<impl u32>::from_str_radix
; Function Attrs: uwtable
define void @"_ZN4core3num21_$LT$impl$u20$u32$GT$14from_str_radix17hbd3a280ed61ab316E"(%"result::Result<u32, num::ParseIntError>"* noalias nocapture sret dereferenceable(5) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 %radix) unnamed_addr addrspace(1) #2 {
start:
; call core::num::from_str_radix
  tail call fastcc addrspace(1) void @_ZN4core3num14from_str_radix17h46636899300cc69cE(%"result::Result<u32, num::ParseIntError>"* noalias nocapture nonnull dereferenceable(5) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 %radix)
  ret void
}

; core::num::<impl u32>::wrapping_next_power_of_two
; Function Attrs: nounwind readnone uwtable
define i32 @"_ZN4core3num21_$LT$impl$u20$u32$GT$26wrapping_next_power_of_two17h72db02d1b6808683E"(i32 %self) unnamed_addr addrspace(1) #4 {
start:
  %_2.i = icmp ult i32 %self, 2
  br i1 %_2.i, label %"_ZN4core3num21_$LT$impl$u20$u32$GT$31one_less_than_next_power_of_two17h73419b57ce19f528E.exit", label %bb1.i

bb1.i:                                            ; preds = %start
  %p.i = add i32 %self, -1
  %0 = tail call addrspace(1) i32 @llvm.ctlz.i32(i32 %p.i, i1 true) #20, !range !1299
  %1 = lshr i32 -1, %0
  %phitmp = add i32 %1, 1
  br label %"_ZN4core3num21_$LT$impl$u20$u32$GT$31one_less_than_next_power_of_two17h73419b57ce19f528E.exit"

"_ZN4core3num21_$LT$impl$u20$u32$GT$31one_less_than_next_power_of_two17h73419b57ce19f528E.exit": ; preds = %start, %bb1.i
  %.0.i = phi i32 [ %phitmp, %bb1.i ], [ 1, %start ]
  ret i32 %.0.i
}

; core::num::<impl u64>::from_str_radix
; Function Attrs: uwtable
define void @"_ZN4core3num21_$LT$impl$u20$u64$GT$14from_str_radix17heedd1501fd5c8711E"(%"result::Result<u64, num::ParseIntError>"* noalias nocapture sret dereferenceable(9) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 %radix) unnamed_addr addrspace(1) #2 {
start:
; call core::num::from_str_radix
  tail call fastcc addrspace(1) void @_ZN4core3num14from_str_radix17h1ac727572120a694E(%"result::Result<u64, num::ParseIntError>"* noalias nocapture nonnull dereferenceable(9) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 %radix)
  ret void
}

; core::num::<impl u64>::wrapping_next_power_of_two
; Function Attrs: nounwind readnone uwtable
define i64 @"_ZN4core3num21_$LT$impl$u20$u64$GT$26wrapping_next_power_of_two17hc4e3539c6e11aaf2E"(i64 %self) unnamed_addr addrspace(1) #4 {
start:
  %_2.i = icmp ult i64 %self, 2
  br i1 %_2.i, label %"_ZN4core3num21_$LT$impl$u20$u64$GT$31one_less_than_next_power_of_two17h28c09013413fc97dE.exit", label %bb1.i

bb1.i:                                            ; preds = %start
  %p.i = add i64 %self, -1
  %0 = tail call addrspace(1) i64 @llvm.ctlz.i64(i64 %p.i, i1 true) #20, !range !122
  %1 = lshr i64 -1, %0
  %phitmp = add i64 %1, 1
  br label %"_ZN4core3num21_$LT$impl$u20$u64$GT$31one_less_than_next_power_of_two17h28c09013413fc97dE.exit"

"_ZN4core3num21_$LT$impl$u20$u64$GT$31one_less_than_next_power_of_two17h28c09013413fc97dE.exit": ; preds = %start, %bb1.i
  %.0.i = phi i64 [ %phitmp, %bb1.i ], [ 1, %start ]
  ret i64 %.0.i
}

; core::num::<impl u128>::from_str_radix
; Function Attrs: uwtable
define void @"_ZN4core3num22_$LT$impl$u20$u128$GT$14from_str_radix17hb46de1dc5f204cb5E"(%"result::Result<u128, num::ParseIntError>"* noalias nocapture sret dereferenceable(17) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 %radix) unnamed_addr addrspace(1) #2 {
start:
; call core::num::from_str_radix
  tail call fastcc addrspace(1) void @_ZN4core3num14from_str_radix17hf78483ff9501fe84E(%"result::Result<u128, num::ParseIntError>"* noalias nocapture nonnull dereferenceable(17) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 %radix)
  ret void
}

; core::num::<impl u128>::wrapping_next_power_of_two
; Function Attrs: nounwind readnone uwtable
define i128 @"_ZN4core3num22_$LT$impl$u20$u128$GT$26wrapping_next_power_of_two17h3bfe963066472b58E"(i128 %self) unnamed_addr addrspace(1) #4 {
start:
  %_2.i = icmp ult i128 %self, 2
  br i1 %_2.i, label %"_ZN4core3num22_$LT$impl$u20$u128$GT$31one_less_than_next_power_of_two17h40e3219b55b1453bE.exit", label %bb1.i

bb1.i:                                            ; preds = %start
  %p.i = add i128 %self, -1
  %0 = tail call addrspace(1) i128 @llvm.ctlz.i128(i128 %p.i, i1 true) #20, !range !2412
  %1 = lshr i128 -1, %0
  %phitmp = add i128 %1, 1
  br label %"_ZN4core3num22_$LT$impl$u20$u128$GT$31one_less_than_next_power_of_two17h40e3219b55b1453bE.exit"

"_ZN4core3num22_$LT$impl$u20$u128$GT$31one_less_than_next_power_of_two17h40e3219b55b1453bE.exit": ; preds = %start, %bb1.i
  %.0.i = phi i128 [ %phitmp, %bb1.i ], [ 1, %start ]
  ret i128 %.0.i
}

; core::num::<impl usize>::from_str_radix
; Function Attrs: uwtable
define void @"_ZN4core3num23_$LT$impl$u20$usize$GT$14from_str_radix17h85852fdca130a19dE"(%"result::Result<usize, num::ParseIntError>"* noalias nocapture sret dereferenceable(3) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 %radix) unnamed_addr addrspace(1) #2 {
start:
  tail call fastcc addrspace(1) void bitcast (void (%"result::Result<u16, num::ParseIntError>"*, [0 x i8]*, i16, i32) addrspace(1)* @_ZN4core3num14from_str_radix17h39ab26794bfd72eaE to void (%"result::Result<usize, num::ParseIntError>"*, [0 x i8]*, i16, i32) addrspace(1)*)(%"result::Result<usize, num::ParseIntError>"* noalias nocapture nonnull dereferenceable(3) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 %radix)
  ret void
}

; <core::num::FpCategory as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN58_$LT$core..num..FpCategory$u20$as$u20$core..fmt..Debug$GT$3fmt17h6b52069967a5cd39E"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = load i8, i8* %self, align 1, !range !632
  %trunc = trunc i8 %0 to i3
  switch i3 %trunc, label %bb2 [
    i3 0, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit32
    i3 1, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit59
    i3 2, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit86
    i3 3, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit113
    i3 -4, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit
  ]

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !2413, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !2413, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !2413, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc18963 to [0 x i8]*), i16 6), !noalias !2422
  br label %bb17

bb2:                                              ; preds = %start
  unreachable

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit32: ; preds = %start
  %7 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i6 = load {}*, {}** %7, align 1, !noalias !2423, !nonnull !568
  %8 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %9 = bitcast [3 x i16]** %8 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i7 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %9, align 1, !noalias !2423, !nonnull !568
  %10 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i7, i16 3
  %11 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %10, align 1, !invariant.load !568, !noalias !2423, !nonnull !568
  %12 = tail call zeroext addrspace(1) i1 %11({}* nonnull align 1 %_3.0.i.i.i6, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [3 x i8] }>* @alloc18967 to [0 x i8]*), i16 3), !noalias !2432
  br label %bb17

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit59: ; preds = %start
  %13 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i33 = load {}*, {}** %13, align 1, !noalias !2433, !nonnull !568
  %14 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %15 = bitcast [3 x i16]** %14 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i34 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %15, align 1, !noalias !2433, !nonnull !568
  %16 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i34, i16 3
  %17 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %16, align 1, !invariant.load !568, !noalias !2433, !nonnull !568
  %18 = tail call zeroext addrspace(1) i1 %17({}* nonnull align 1 %_3.0.i.i.i33, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [8 x i8] }>* @alloc18966 to [0 x i8]*), i16 8), !noalias !2442
  br label %bb17

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit86: ; preds = %start
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i60 = load {}*, {}** %19, align 1, !noalias !2443, !nonnull !568
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %21 = bitcast [3 x i16]** %20 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i61 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %21, align 1, !noalias !2443, !nonnull !568
  %22 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i61, i16 3
  %23 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %22, align 1, !invariant.load !568, !noalias !2443, !nonnull !568
  %24 = tail call zeroext addrspace(1) i1 %23({}* nonnull align 1 %_3.0.i.i.i60, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19013 to [0 x i8]*), i16 4), !noalias !2452
  br label %bb17

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit113: ; preds = %start
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i87 = load {}*, {}** %25, align 1, !noalias !2453, !nonnull !568
  %26 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %27 = bitcast [3 x i16]** %26 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i88 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %27, align 1, !noalias !2453, !nonnull !568
  %28 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i88, i16 3
  %29 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %28, align 1, !invariant.load !568, !noalias !2453, !nonnull !568
  %30 = tail call zeroext addrspace(1) i1 %29({}* nonnull align 1 %_3.0.i.i.i87, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [9 x i8] }>* @alloc18964 to [0 x i8]*), i16 9), !noalias !2462
  br label %bb17

bb17:                                             ; preds = %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit32, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit59, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit86, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit113, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit
  %.0.in = phi i1 [ %6, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit ], [ %30, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit113 ], [ %24, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit86 ], [ %18, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit59 ], [ %12, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit32 ]
  ret i1 %.0.in
}

; core::num::<impl core::str::FromStr for isize>::from_str
; Function Attrs: uwtable
define void @"_ZN4core3num54_$LT$impl$u20$core..str..FromStr$u20$for$u20$isize$GT$8from_str17h17a1b4617d06f9fcE"(%"result::Result<isize, num::ParseIntError>"* noalias nocapture sret dereferenceable(3) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1) unnamed_addr addrspace(1) #2 {
start:
  tail call fastcc addrspace(1) void bitcast (void (%"result::Result<i16, num::ParseIntError>"*, [0 x i8]*, i16, i32) addrspace(1)* @_ZN4core3num14from_str_radix17h24a850c5437e4172E to void (%"result::Result<isize, num::ParseIntError>"*, [0 x i8]*, i16, i32) addrspace(1)*)(%"result::Result<isize, num::ParseIntError>"* noalias nocapture nonnull dereferenceable(3) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 10)
  ret void
}

; core::num::<impl core::str::FromStr for i8>::from_str
; Function Attrs: nounwind readonly uwtable
define i16 @"_ZN4core3num51_$LT$impl$u20$core..str..FromStr$u20$for$u20$i8$GT$8from_str17h80dd093a0b604651E"([0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1) unnamed_addr addrspace(1) #6 {
start:
  %0 = icmp eq i16 %src.1, 0
  br i1 %0, label %_ZN4core3num14from_str_radix17hb5e96faa7057ae66E.exit, label %bb17.i

bb17.i:                                           ; preds = %start
  %1 = getelementptr [0 x i8], [0 x i8]* %src.0, i16 0, i16 0
  %2 = load i8, i8* %1, align 1, !alias.scope !2463
  switch i8 %2, label %bb27.thread.i [
    i8 43, label %bb25.i
    i8 45, label %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit.i"
  ]

bb27.thread.i:                                    ; preds = %bb17.i
  %3 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 %src.1
  br label %bb32.split.i

"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit.i": ; preds = %bb17.i
  br label %bb25.i

bb25.i:                                           ; preds = %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit.i", %bb17.i
  %_35.sroa.0.0.i = phi i1 [ false, %"_ZN4core5slice74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h34c783890c1f1258E.exit.i" ], [ true, %bb17.i ]
  %_35.sroa.6.0.in.i = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 1
  %4 = icmp eq i16 %src.1, 1
  br i1 %4, label %_ZN4core3num14from_str_radix17hb5e96faa7057ae66E.exit, label %bb27.i

bb27.i:                                           ; preds = %bb25.i
  %5 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 %src.1
  br i1 %_35.sroa.0.0.i, label %bb32.split.i, label %bb54.us144.i

bb54.us144.i:                                     ; preds = %bb27.i, %bb67.us165.i
  %result.1.us145.i = phi i8 [ %12, %bb67.us165.i ], [ 0, %bb27.i ]
  %iter1.sroa.0.0.us146.i = phi i8* [ %6, %bb67.us165.i ], [ %_35.sroa.6.0.in.i, %bb27.i ]
  %_13.i.us147.i = icmp eq i8* %iter1.sroa.0.0.us146.i, %5
  br i1 %_13.i.us147.i, label %_ZN4core3num14from_str_radix17hb5e96faa7057ae66E.exit, label %bb58.us148.i

bb58.us148.i:                                     ; preds = %bb54.us144.i
  %6 = getelementptr inbounds i8, i8* %iter1.sroa.0.0.us146.i, i16 1
  %c7.us149.i = load i8, i8* %iter1.sroa.0.0.us146.i, align 1, !alias.scope !2463
  %_100.us150.i = zext i8 %c7.us149.i to i32
  %self.off.i.us152.i = add nsw i32 %_100.us150.i, -48
  %7 = icmp ult i32 %self.off.i.us152.i, 10
  br i1 %7, label %bb62.us164.i, label %_ZN4core3num14from_str_radix17hb5e96faa7057ae66E.exit

bb62.us164.i:                                     ; preds = %bb58.us148.i
  %8 = tail call addrspace(1) { i8, i1 } @llvm.smul.with.overflow.i8(i8 %result.1.us145.i, i8 10) #20
  %9 = extractvalue { i8, i1 } %8, 1
  br i1 %9, label %_ZN4core3num14from_str_radix17hb5e96faa7057ae66E.exit, label %bb67.us165.i

bb67.us165.i:                                     ; preds = %bb62.us164.i
  %10 = extractvalue { i8, i1 } %8, 0
  %_4.i.us166.i = trunc i32 %self.off.i.us152.i to i8
  %11 = tail call addrspace(1) { i8, i1 } @llvm.ssub.with.overflow.i8(i8 %10, i8 %_4.i.us166.i) #20
  %12 = extractvalue { i8, i1 } %11, 0
  %13 = extractvalue { i8, i1 } %11, 1
  br i1 %13, label %_ZN4core3num14from_str_radix17hb5e96faa7057ae66E.exit, label %bb54.us144.i

bb32.split.i:                                     ; preds = %bb27.i, %bb27.thread.i
  %14 = phi i8* [ %3, %bb27.thread.i ], [ %5, %bb27.i ]
  %15 = phi i8* [ %1, %bb27.thread.i ], [ %_35.sroa.6.0.in.i, %bb27.i ]
  br label %bb34.us121.i

bb34.us121.i:                                     ; preds = %bb48.us142.i, %bb32.split.i
  %result.0.us122.i = phi i8 [ %22, %bb48.us142.i ], [ 0, %bb32.split.i ]
  %iter.sroa.0.0.us123.i = phi i8* [ %16, %bb48.us142.i ], [ %15, %bb32.split.i ]
  %_13.i78.us124.i = icmp eq i8* %iter.sroa.0.0.us123.i, %14
  br i1 %_13.i78.us124.i, label %_ZN4core3num14from_str_radix17hb5e96faa7057ae66E.exit, label %bb38.us125.i

bb38.us125.i:                                     ; preds = %bb34.us121.i
  %16 = getelementptr inbounds i8, i8* %iter.sroa.0.0.us123.i, i16 1
  %c.us126.i = load i8, i8* %iter.sroa.0.0.us123.i, align 1, !alias.scope !2463
  %_67.us127.i = zext i8 %c.us126.i to i32
  %self.off.i58.us129.i = add nsw i32 %_67.us127.i, -48
  %17 = icmp ult i32 %self.off.i58.us129.i, 10
  br i1 %17, label %bb42.us141.i, label %_ZN4core3num14from_str_radix17hb5e96faa7057ae66E.exit

bb42.us141.i:                                     ; preds = %bb38.us125.i
  %18 = tail call addrspace(1) { i8, i1 } @llvm.smul.with.overflow.i8(i8 %result.0.us122.i, i8 10) #20
  %19 = extractvalue { i8, i1 } %18, 1
  br i1 %19, label %_ZN4core3num14from_str_radix17hb5e96faa7057ae66E.exit, label %bb48.us142.i

bb48.us142.i:                                     ; preds = %bb42.us141.i
  %20 = extractvalue { i8, i1 } %18, 0
  %_4.i50.us143.i = trunc i32 %self.off.i58.us129.i to i8
  %21 = tail call addrspace(1) { i8, i1 } @llvm.sadd.with.overflow.i8(i8 %20, i8 %_4.i50.us143.i) #20
  %22 = extractvalue { i8, i1 } %21, 0
  %23 = extractvalue { i8, i1 } %21, 1
  br i1 %23, label %_ZN4core3num14from_str_radix17hb5e96faa7057ae66E.exit, label %bb34.us121.i

_ZN4core3num14from_str_radix17hb5e96faa7057ae66E.exit: ; preds = %bb54.us144.i, %bb58.us148.i, %bb62.us164.i, %bb67.us165.i, %bb34.us121.i, %bb38.us125.i, %bb42.us141.i, %bb48.us142.i, %start, %bb25.i
  %.sroa.10.0.i = phi i8 [ 0, %start ], [ 0, %bb25.i ], [ 2, %bb42.us141.i ], [ 2, %bb48.us142.i ], [ %result.0.us122.i, %bb34.us121.i ], [ 1, %bb38.us125.i ], [ 3, %bb62.us164.i ], [ 3, %bb67.us165.i ], [ %result.1.us145.i, %bb54.us144.i ], [ 1, %bb58.us148.i ]
  %.sroa.0.0.i = phi i16 [ 1, %start ], [ 1, %bb25.i ], [ 1, %bb42.us141.i ], [ 1, %bb48.us142.i ], [ 0, %bb34.us121.i ], [ 1, %bb38.us125.i ], [ 1, %bb62.us164.i ], [ 1, %bb67.us165.i ], [ 0, %bb54.us144.i ], [ 1, %bb58.us148.i ]
  %.sroa.10.0.insert.ext.i = zext i8 %.sroa.10.0.i to i16
  %.sroa.10.0.insert.shift.i = shl nuw i16 %.sroa.10.0.insert.ext.i, 8
  %.sroa.0.0.insert.insert.i = or i16 %.sroa.10.0.insert.shift.i, %.sroa.0.0.i
  ret i16 %.sroa.0.0.insert.insert.i
}

; core::num::<impl core::str::FromStr for i16>::from_str
; Function Attrs: uwtable
define void @"_ZN4core3num52_$LT$impl$u20$core..str..FromStr$u20$for$u20$i16$GT$8from_str17h44b61e3dd9349357E"(%"result::Result<i16, num::ParseIntError>"* noalias nocapture sret dereferenceable(3) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1) unnamed_addr addrspace(1) #2 {
start:
; call core::num::from_str_radix
  tail call fastcc addrspace(1) void @_ZN4core3num14from_str_radix17h24a850c5437e4172E(%"result::Result<i16, num::ParseIntError>"* noalias nocapture nonnull dereferenceable(3) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 10)
  ret void
}

; core::num::<impl core::str::FromStr for i32>::from_str
; Function Attrs: uwtable
define void @"_ZN4core3num52_$LT$impl$u20$core..str..FromStr$u20$for$u20$i32$GT$8from_str17h46a577a0f7aab4feE"(%"result::Result<i32, num::ParseIntError>"* noalias nocapture sret dereferenceable(5) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1) unnamed_addr addrspace(1) #2 {
start:
; call core::num::from_str_radix
  tail call fastcc addrspace(1) void @_ZN4core3num14from_str_radix17h6c2fc9a7c8d51d38E(%"result::Result<i32, num::ParseIntError>"* noalias nocapture nonnull dereferenceable(5) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 10)
  ret void
}

; core::num::<impl core::str::FromStr for i64>::from_str
; Function Attrs: uwtable
define void @"_ZN4core3num52_$LT$impl$u20$core..str..FromStr$u20$for$u20$i64$GT$8from_str17h39f4bbe3bc700e7aE"(%"result::Result<i64, num::ParseIntError>"* noalias nocapture sret dereferenceable(9) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1) unnamed_addr addrspace(1) #2 {
start:
; call core::num::from_str_radix
  tail call fastcc addrspace(1) void @_ZN4core3num14from_str_radix17h6aa373bc7c329928E(%"result::Result<i64, num::ParseIntError>"* noalias nocapture nonnull dereferenceable(9) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 10)
  ret void
}

; core::num::<impl core::str::FromStr for i128>::from_str
; Function Attrs: uwtable
define void @"_ZN4core3num53_$LT$impl$u20$core..str..FromStr$u20$for$u20$i128$GT$8from_str17he50da603a47cf234E"(%"result::Result<i128, num::ParseIntError>"* noalias nocapture sret dereferenceable(17) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1) unnamed_addr addrspace(1) #2 {
start:
; call core::num::from_str_radix
  tail call fastcc addrspace(1) void @_ZN4core3num14from_str_radix17h2e787a9060537f03E(%"result::Result<i128, num::ParseIntError>"* noalias nocapture nonnull dereferenceable(17) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1, i32 10)
  ret void
}

; core::num::<impl core::str::FromStr for u8>::from_str
; Function Attrs: nounwind uwtable
define { i8, i8 } @"_ZN4core3num51_$LT$impl$u20$core..str..FromStr$u20$for$u20$u8$GT$8from_str17ha28ffbb14883a415E"([0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1) unnamed_addr addrspace(1) #9 {
start:
  %0 = icmp eq i16 %src.1, 0
  br i1 %0, label %_ZN4core3num14from_str_radix17h16198f62b04d08bbE.exit, label %bb17.i

bb17.i:                                           ; preds = %start
  %1 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 0
  %2 = load i8, i8* %1, align 1, !alias.scope !2466
  %cond.i = icmp eq i8 %2, 43
  br i1 %cond.i, label %bb25.i, label %bb32.split.i

bb25.i:                                           ; preds = %bb17.i
  %3 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 1
  %_7.i.i.i.i84.i = add i16 %src.1, -1
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i85.i = bitcast i8* %3 to [0 x i8]*
  %4 = icmp eq i16 %_7.i.i.i.i84.i, 0
  br i1 %4, label %_ZN4core3num14from_str_radix17h16198f62b04d08bbE.exit, label %bb32.split.i

bb32.split.i:                                     ; preds = %bb25.i, %bb17.i
  %_35.sroa.10.0102.i = phi i16 [ %_7.i.i.i.i84.i, %bb25.i ], [ %src.1, %bb17.i ]
  %_35.sroa.6.0101.i = phi [0 x i8]* [ %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i85.i, %bb25.i ], [ %src.0, %bb17.i ]
  %5 = getelementptr [0 x i8], [0 x i8]* %_35.sroa.6.0101.i, i16 0, i16 0
  %6 = getelementptr inbounds [0 x i8], [0 x i8]* %_35.sroa.6.0101.i, i16 0, i16 %_35.sroa.10.0102.i
  br label %bb34.us113.i

bb34.us113.i:                                     ; preds = %bb48.us134.i, %bb32.split.i
  %result.0.us114.i = phi i8 [ %14, %bb48.us134.i ], [ 0, %bb32.split.i ]
  %iter.sroa.0.0.us115.i = phi i8* [ %8, %bb48.us134.i ], [ %5, %bb32.split.i ]
  %7 = icmp ne i8* %iter.sroa.0.0.us115.i, null
  tail call addrspace(1) void @llvm.assume(i1 %7)
  %_13.i78.us116.i = icmp eq i8* %iter.sroa.0.0.us115.i, %6
  br i1 %_13.i78.us116.i, label %_ZN4core3num14from_str_radix17h16198f62b04d08bbE.exit, label %bb38.us117.i

bb38.us117.i:                                     ; preds = %bb34.us113.i
  %8 = getelementptr inbounds i8, i8* %iter.sroa.0.0.us115.i, i16 1
  %c.us118.i = load i8, i8* %iter.sroa.0.0.us115.i, align 1, !alias.scope !2466
  %_67.us119.i = zext i8 %c.us118.i to i32
  %self.off.i58.us121.i = add nsw i32 %_67.us119.i, -48
  %9 = icmp ult i32 %self.off.i58.us121.i, 10
  br i1 %9, label %bb42.us133.i, label %_ZN4core3num14from_str_radix17h16198f62b04d08bbE.exit

bb42.us133.i:                                     ; preds = %bb38.us117.i
  %10 = tail call addrspace(1) { i8, i1 } @llvm.umul.with.overflow.i8(i8 %result.0.us114.i, i8 10) #20
  %11 = extractvalue { i8, i1 } %10, 1
  br i1 %11, label %_ZN4core3num14from_str_radix17h16198f62b04d08bbE.exit, label %bb48.us134.i

bb48.us134.i:                                     ; preds = %bb42.us133.i
  %12 = extractvalue { i8, i1 } %10, 0
  %_4.i50.us135.i = trunc i32 %self.off.i58.us121.i to i8
  %13 = tail call addrspace(1) { i8, i1 } @llvm.uadd.with.overflow.i8(i8 %12, i8 %_4.i50.us135.i) #20
  %14 = extractvalue { i8, i1 } %13, 0
  %15 = extractvalue { i8, i1 } %13, 1
  br i1 %15, label %_ZN4core3num14from_str_radix17h16198f62b04d08bbE.exit, label %bb34.us113.i

_ZN4core3num14from_str_radix17h16198f62b04d08bbE.exit: ; preds = %bb34.us113.i, %bb38.us117.i, %bb42.us133.i, %bb48.us134.i, %start, %bb25.i
  %.sroa.10.0.i = phi i8 [ 0, %start ], [ 0, %bb25.i ], [ 2, %bb42.us133.i ], [ 2, %bb48.us134.i ], [ %result.0.us114.i, %bb34.us113.i ], [ 1, %bb38.us117.i ]
  %.sroa.0.0.i = phi i8 [ 1, %start ], [ 1, %bb25.i ], [ 1, %bb42.us133.i ], [ 1, %bb48.us134.i ], [ 0, %bb34.us113.i ], [ 1, %bb38.us117.i ]
  %16 = insertvalue { i8, i8 } undef, i8 %.sroa.0.0.i, 0
  %17 = insertvalue { i8, i8 } %16, i8 %.sroa.10.0.i, 1
  ret { i8, i8 } %17
}

; core::num::<impl core::str::FromStr for u16>::from_str
; Function Attrs: nounwind uwtable
define void @"_ZN4core3num52_$LT$impl$u20$core..str..FromStr$u20$for$u20$u16$GT$8from_str17h47116b27e517701fE"(%"result::Result<u16, num::ParseIntError>"* noalias nocapture sret dereferenceable(3) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1) unnamed_addr addrspace(1) #9 {
start:
  %1 = icmp eq i16 %src.1, 0
  br i1 %1, label %bb11.i, label %bb17.i

bb11.i:                                           ; preds = %start
  %2 = getelementptr inbounds %"result::Result<u16, num::ParseIntError>", %"result::Result<u16, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 0, i8* %2, align 1, !alias.scope !2469, !noalias !2472
  br label %_ZN4core3num14from_str_radix17h39ab26794bfd72eaE.exit

bb17.i:                                           ; preds = %start
  %3 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 0
  %4 = load i8, i8* %3, align 1, !alias.scope !2472, !noalias !2469
  %cond.i = icmp eq i8 %4, 43
  br i1 %cond.i, label %bb25.i, label %bb32.split.i

bb25.i:                                           ; preds = %bb17.i
  %5 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 1
  %_7.i.i.i.i92.i = add i16 %src.1, -1
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i93.i = bitcast i8* %5 to [0 x i8]*
  %6 = icmp eq i16 %_7.i.i.i.i92.i, 0
  br i1 %6, label %bb28.i, label %bb32.split.i

bb28.i:                                           ; preds = %bb25.i
  %7 = getelementptr inbounds %"result::Result<u16, num::ParseIntError>", %"result::Result<u16, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 0, i8* %7, align 1, !alias.scope !2469, !noalias !2472
  br label %_ZN4core3num14from_str_radix17h39ab26794bfd72eaE.exit

bb32.split.i:                                     ; preds = %bb25.i, %bb17.i
  %_35.sroa.10.0114.i = phi i16 [ %_7.i.i.i.i92.i, %bb25.i ], [ %src.1, %bb17.i ]
  %_35.sroa.6.0113.i = phi [0 x i8]* [ %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i93.i, %bb25.i ], [ %src.0, %bb17.i ]
  %8 = getelementptr [0 x i8], [0 x i8]* %_35.sroa.6.0113.i, i16 0, i16 0
  %9 = getelementptr inbounds [0 x i8], [0 x i8]* %_35.sroa.6.0113.i, i16 0, i16 %_35.sroa.10.0114.i
  br label %bb34.us129.i

bb34.us129.i:                                     ; preds = %bb48.us150.i, %bb32.split.i
  %result.0.us130.i = phi i16 [ %17, %bb48.us150.i ], [ 0, %bb32.split.i ]
  %iter.sroa.0.0.us131.i = phi i8* [ %11, %bb48.us150.i ], [ %8, %bb32.split.i ]
  %10 = icmp ne i8* %iter.sroa.0.0.us131.i, null
  tail call addrspace(1) void @llvm.assume(i1 %10), !noalias !2469
  %_13.i86.us132.i = icmp eq i8* %iter.sroa.0.0.us131.i, %9
  br i1 %_13.i86.us132.i, label %bb72.i, label %bb38.us133.i

bb38.us133.i:                                     ; preds = %bb34.us129.i
  %11 = getelementptr inbounds i8, i8* %iter.sroa.0.0.us131.i, i16 1
  %c.us134.i = load i8, i8* %iter.sroa.0.0.us131.i, align 1, !alias.scope !2472, !noalias !2469
  %_67.us135.i = zext i8 %c.us134.i to i32
  %self.off.i66.us137.i = add nsw i32 %_67.us135.i, -48
  %12 = icmp ult i32 %self.off.i66.us137.i, 10
  br i1 %12, label %bb42.us149.i, label %bb40.i

bb42.us149.i:                                     ; preds = %bb38.us133.i
  %13 = tail call addrspace(1) { i16, i1 } @llvm.umul.with.overflow.i16(i16 %result.0.us130.i, i16 10) #20
  %14 = extractvalue { i16, i1 } %13, 1
  br i1 %14, label %bb46.i, label %bb48.us150.i

bb48.us150.i:                                     ; preds = %bb42.us149.i
  %15 = extractvalue { i16, i1 } %13, 0
  %_4.i58.us151.i = trunc i32 %self.off.i66.us137.i to i16
  %16 = tail call addrspace(1) { i16, i1 } @llvm.uadd.with.overflow.i16(i16 %15, i16 %_4.i58.us151.i) #20
  %17 = extractvalue { i16, i1 } %16, 0
  %18 = extractvalue { i16, i1 } %16, 1
  br i1 %18, label %bb50.i, label %bb34.us129.i

bb40.i:                                           ; preds = %bb38.us133.i
  %19 = getelementptr inbounds %"result::Result<u16, num::ParseIntError>", %"result::Result<u16, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 1, i8* %19, align 1, !alias.scope !2469, !noalias !2472
  br label %_ZN4core3num14from_str_radix17h39ab26794bfd72eaE.exit

bb46.i:                                           ; preds = %bb42.us149.i
  %20 = getelementptr inbounds %"result::Result<u16, num::ParseIntError>", %"result::Result<u16, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 2, i8* %20, align 1, !alias.scope !2469, !noalias !2472
  br label %_ZN4core3num14from_str_radix17h39ab26794bfd72eaE.exit

bb50.i:                                           ; preds = %bb48.us150.i
  %21 = getelementptr inbounds %"result::Result<u16, num::ParseIntError>", %"result::Result<u16, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 2, i8* %21, align 1, !alias.scope !2469, !noalias !2472
  br label %_ZN4core3num14from_str_radix17h39ab26794bfd72eaE.exit

bb72.i:                                           ; preds = %bb34.us129.i
  %22 = getelementptr inbounds %"result::Result<u16, num::ParseIntError>", %"result::Result<u16, num::ParseIntError>"* %0, i16 0, i32 2
  %23 = bitcast [2 x i8]* %22 to i16*
  store i16 %result.0.us130.i, i16* %23, align 1, !alias.scope !2469, !noalias !2472
  br label %_ZN4core3num14from_str_radix17h39ab26794bfd72eaE.exit

_ZN4core3num14from_str_radix17h39ab26794bfd72eaE.exit: ; preds = %bb11.i, %bb28.i, %bb40.i, %bb46.i, %bb50.i, %bb72.i
  %.sink = phi i8 [ 1, %bb11.i ], [ 1, %bb28.i ], [ 1, %bb40.i ], [ 1, %bb46.i ], [ 1, %bb50.i ], [ 0, %bb72.i ]
  %24 = getelementptr inbounds %"result::Result<u16, num::ParseIntError>", %"result::Result<u16, num::ParseIntError>"* %0, i16 0, i32 0, i16 0
  store i8 %.sink, i8* %24, align 1, !alias.scope !2469, !noalias !2472
  ret void
}

; core::num::<impl core::str::FromStr for u32>::from_str
; Function Attrs: nounwind uwtable
define void @"_ZN4core3num52_$LT$impl$u20$core..str..FromStr$u20$for$u20$u32$GT$8from_str17h23f342e8099f0e19E"(%"result::Result<u32, num::ParseIntError>"* noalias nocapture sret dereferenceable(5) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1) unnamed_addr addrspace(1) #9 {
start:
  %1 = icmp eq i16 %src.1, 0
  br i1 %1, label %bb11.i, label %bb17.i

bb11.i:                                           ; preds = %start
  %2 = getelementptr inbounds %"result::Result<u32, num::ParseIntError>", %"result::Result<u32, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 0, i8* %2, align 1, !alias.scope !2474, !noalias !2477
  br label %_ZN4core3num14from_str_radix17h46636899300cc69cE.exit

bb17.i:                                           ; preds = %start
  %3 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 0
  %4 = load i8, i8* %3, align 1, !alias.scope !2477, !noalias !2474
  %cond.i = icmp eq i8 %4, 43
  br i1 %cond.i, label %bb25.i, label %bb32.split.i

bb25.i:                                           ; preds = %bb17.i
  %5 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 1
  %_7.i.i.i.i88.i = add i16 %src.1, -1
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i89.i = bitcast i8* %5 to [0 x i8]*
  %6 = icmp eq i16 %_7.i.i.i.i88.i, 0
  br i1 %6, label %bb28.i, label %bb32.split.i

bb28.i:                                           ; preds = %bb25.i
  %7 = getelementptr inbounds %"result::Result<u32, num::ParseIntError>", %"result::Result<u32, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 0, i8* %7, align 1, !alias.scope !2474, !noalias !2477
  br label %_ZN4core3num14from_str_radix17h46636899300cc69cE.exit

bb32.split.i:                                     ; preds = %bb25.i, %bb17.i
  %_35.sroa.10.0110.i = phi i16 [ %_7.i.i.i.i88.i, %bb25.i ], [ %src.1, %bb17.i ]
  %_35.sroa.6.0109.i = phi [0 x i8]* [ %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i89.i, %bb25.i ], [ %src.0, %bb17.i ]
  %8 = getelementptr [0 x i8], [0 x i8]* %_35.sroa.6.0109.i, i16 0, i16 0
  %9 = getelementptr inbounds [0 x i8], [0 x i8]* %_35.sroa.6.0109.i, i16 0, i16 %_35.sroa.10.0110.i
  br label %bb34.us125.i

bb34.us125.i:                                     ; preds = %bb48.us146.i, %bb32.split.i
  %result.0.us126.i = phi i32 [ %17, %bb48.us146.i ], [ 0, %bb32.split.i ]
  %iter.sroa.0.0.us127.i = phi i8* [ %11, %bb48.us146.i ], [ %8, %bb32.split.i ]
  %10 = icmp ne i8* %iter.sroa.0.0.us127.i, null
  tail call addrspace(1) void @llvm.assume(i1 %10), !noalias !2474
  %_13.i82.us128.i = icmp eq i8* %iter.sroa.0.0.us127.i, %9
  br i1 %_13.i82.us128.i, label %bb72.i, label %bb38.us129.i

bb38.us129.i:                                     ; preds = %bb34.us125.i
  %11 = getelementptr inbounds i8, i8* %iter.sroa.0.0.us127.i, i16 1
  %c.us130.i = load i8, i8* %iter.sroa.0.0.us127.i, align 1, !alias.scope !2477, !noalias !2474
  %_67.us131.i = zext i8 %c.us130.i to i32
  %self.off.i62.us133.i = add nsw i32 %_67.us131.i, -48
  %12 = icmp ult i32 %self.off.i62.us133.i, 10
  br i1 %12, label %bb42.us145.i, label %bb40.i

bb42.us145.i:                                     ; preds = %bb38.us129.i
  %13 = tail call addrspace(1) { i32, i1 } @llvm.umul.with.overflow.i32(i32 %result.0.us126.i, i32 10) #20
  %14 = extractvalue { i32, i1 } %13, 1
  br i1 %14, label %bb46.i, label %bb48.us146.i

bb48.us146.i:                                     ; preds = %bb42.us145.i
  %15 = extractvalue { i32, i1 } %13, 0
  %16 = tail call addrspace(1) { i32, i1 } @llvm.uadd.with.overflow.i32(i32 %15, i32 %self.off.i62.us133.i) #20
  %17 = extractvalue { i32, i1 } %16, 0
  %18 = extractvalue { i32, i1 } %16, 1
  br i1 %18, label %bb50.i, label %bb34.us125.i

bb40.i:                                           ; preds = %bb38.us129.i
  %19 = getelementptr inbounds %"result::Result<u32, num::ParseIntError>", %"result::Result<u32, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 1, i8* %19, align 1, !alias.scope !2474, !noalias !2477
  br label %_ZN4core3num14from_str_radix17h46636899300cc69cE.exit

bb46.i:                                           ; preds = %bb42.us145.i
  %20 = getelementptr inbounds %"result::Result<u32, num::ParseIntError>", %"result::Result<u32, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 2, i8* %20, align 1, !alias.scope !2474, !noalias !2477
  br label %_ZN4core3num14from_str_radix17h46636899300cc69cE.exit

bb50.i:                                           ; preds = %bb48.us146.i
  %21 = getelementptr inbounds %"result::Result<u32, num::ParseIntError>", %"result::Result<u32, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 2, i8* %21, align 1, !alias.scope !2474, !noalias !2477
  br label %_ZN4core3num14from_str_radix17h46636899300cc69cE.exit

bb72.i:                                           ; preds = %bb34.us125.i
  %22 = getelementptr inbounds %"result::Result<u32, num::ParseIntError>", %"result::Result<u32, num::ParseIntError>"* %0, i16 0, i32 2
  %23 = bitcast [4 x i8]* %22 to i32*
  store i32 %result.0.us126.i, i32* %23, align 1, !alias.scope !2474, !noalias !2477
  br label %_ZN4core3num14from_str_radix17h46636899300cc69cE.exit

_ZN4core3num14from_str_radix17h46636899300cc69cE.exit: ; preds = %bb11.i, %bb28.i, %bb40.i, %bb46.i, %bb50.i, %bb72.i
  %.sink = phi i8 [ 1, %bb11.i ], [ 1, %bb28.i ], [ 1, %bb40.i ], [ 1, %bb46.i ], [ 1, %bb50.i ], [ 0, %bb72.i ]
  %24 = getelementptr inbounds %"result::Result<u32, num::ParseIntError>", %"result::Result<u32, num::ParseIntError>"* %0, i16 0, i32 0, i16 0
  store i8 %.sink, i8* %24, align 1, !alias.scope !2474, !noalias !2477
  ret void
}

; core::num::<impl core::str::FromStr for u64>::from_str
; Function Attrs: nounwind uwtable
define void @"_ZN4core3num52_$LT$impl$u20$core..str..FromStr$u20$for$u20$u64$GT$8from_str17h7a8ab074c13f11e8E"(%"result::Result<u64, num::ParseIntError>"* noalias nocapture sret dereferenceable(9) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1) unnamed_addr addrspace(1) #9 {
start:
  %1 = icmp eq i16 %src.1, 0
  br i1 %1, label %bb11.i, label %bb17.i

bb11.i:                                           ; preds = %start
  %2 = getelementptr inbounds %"result::Result<u64, num::ParseIntError>", %"result::Result<u64, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 0, i8* %2, align 1, !alias.scope !2479, !noalias !2482
  br label %_ZN4core3num14from_str_radix17h1ac727572120a694E.exit

bb17.i:                                           ; preds = %start
  %3 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 0
  %4 = load i8, i8* %3, align 1, !alias.scope !2482, !noalias !2479
  %cond.i = icmp eq i8 %4, 43
  br i1 %cond.i, label %bb25.i, label %bb32.split.i

bb25.i:                                           ; preds = %bb17.i
  %5 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 1
  %_7.i.i.i.i92.i = add i16 %src.1, -1
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i93.i = bitcast i8* %5 to [0 x i8]*
  %6 = icmp eq i16 %_7.i.i.i.i92.i, 0
  br i1 %6, label %bb28.i, label %bb32.split.i

bb28.i:                                           ; preds = %bb25.i
  %7 = getelementptr inbounds %"result::Result<u64, num::ParseIntError>", %"result::Result<u64, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 0, i8* %7, align 1, !alias.scope !2479, !noalias !2482
  br label %_ZN4core3num14from_str_radix17h1ac727572120a694E.exit

bb32.split.i:                                     ; preds = %bb25.i, %bb17.i
  %_35.sroa.10.0114.i = phi i16 [ %_7.i.i.i.i92.i, %bb25.i ], [ %src.1, %bb17.i ]
  %_35.sroa.6.0113.i = phi [0 x i8]* [ %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i93.i, %bb25.i ], [ %src.0, %bb17.i ]
  %8 = getelementptr [0 x i8], [0 x i8]* %_35.sroa.6.0113.i, i16 0, i16 0
  %9 = getelementptr inbounds [0 x i8], [0 x i8]* %_35.sroa.6.0113.i, i16 0, i16 %_35.sroa.10.0114.i
  br label %bb34.us129.i

bb34.us129.i:                                     ; preds = %bb48.us150.i, %bb32.split.i
  %result.0.us130.i = phi i64 [ %17, %bb48.us150.i ], [ 0, %bb32.split.i ]
  %iter.sroa.0.0.us131.i = phi i8* [ %11, %bb48.us150.i ], [ %8, %bb32.split.i ]
  %10 = icmp ne i8* %iter.sroa.0.0.us131.i, null
  tail call addrspace(1) void @llvm.assume(i1 %10), !noalias !2479
  %_13.i86.us132.i = icmp eq i8* %iter.sroa.0.0.us131.i, %9
  br i1 %_13.i86.us132.i, label %bb72.i, label %bb38.us133.i

bb38.us133.i:                                     ; preds = %bb34.us129.i
  %11 = getelementptr inbounds i8, i8* %iter.sroa.0.0.us131.i, i16 1
  %c.us134.i = load i8, i8* %iter.sroa.0.0.us131.i, align 1, !alias.scope !2482, !noalias !2479
  %_67.us135.i = zext i8 %c.us134.i to i32
  %self.off.i66.us137.i = add nsw i32 %_67.us135.i, -48
  %12 = icmp ult i32 %self.off.i66.us137.i, 10
  br i1 %12, label %bb42.us149.i, label %bb40.i

bb42.us149.i:                                     ; preds = %bb38.us133.i
  %13 = tail call addrspace(1) { i64, i1 } @llvm.umul.with.overflow.i64(i64 %result.0.us130.i, i64 10) #20
  %14 = extractvalue { i64, i1 } %13, 1
  br i1 %14, label %bb46.i, label %bb48.us150.i

bb48.us150.i:                                     ; preds = %bb42.us149.i
  %15 = extractvalue { i64, i1 } %13, 0
  %_4.i58.us151.i = zext i32 %self.off.i66.us137.i to i64
  %16 = tail call addrspace(1) { i64, i1 } @llvm.uadd.with.overflow.i64(i64 %15, i64 %_4.i58.us151.i) #20
  %17 = extractvalue { i64, i1 } %16, 0
  %18 = extractvalue { i64, i1 } %16, 1
  br i1 %18, label %bb50.i, label %bb34.us129.i

bb40.i:                                           ; preds = %bb38.us133.i
  %19 = getelementptr inbounds %"result::Result<u64, num::ParseIntError>", %"result::Result<u64, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 1, i8* %19, align 1, !alias.scope !2479, !noalias !2482
  br label %_ZN4core3num14from_str_radix17h1ac727572120a694E.exit

bb46.i:                                           ; preds = %bb42.us149.i
  %20 = getelementptr inbounds %"result::Result<u64, num::ParseIntError>", %"result::Result<u64, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 2, i8* %20, align 1, !alias.scope !2479, !noalias !2482
  br label %_ZN4core3num14from_str_radix17h1ac727572120a694E.exit

bb50.i:                                           ; preds = %bb48.us150.i
  %21 = getelementptr inbounds %"result::Result<u64, num::ParseIntError>", %"result::Result<u64, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 2, i8* %21, align 1, !alias.scope !2479, !noalias !2482
  br label %_ZN4core3num14from_str_radix17h1ac727572120a694E.exit

bb72.i:                                           ; preds = %bb34.us129.i
  %22 = getelementptr inbounds %"result::Result<u64, num::ParseIntError>", %"result::Result<u64, num::ParseIntError>"* %0, i16 0, i32 2
  %23 = bitcast [8 x i8]* %22 to i64*
  store i64 %result.0.us130.i, i64* %23, align 1, !alias.scope !2479, !noalias !2482
  br label %_ZN4core3num14from_str_radix17h1ac727572120a694E.exit

_ZN4core3num14from_str_radix17h1ac727572120a694E.exit: ; preds = %bb11.i, %bb28.i, %bb40.i, %bb46.i, %bb50.i, %bb72.i
  %.sink = phi i8 [ 1, %bb11.i ], [ 1, %bb28.i ], [ 1, %bb40.i ], [ 1, %bb46.i ], [ 1, %bb50.i ], [ 0, %bb72.i ]
  %24 = getelementptr inbounds %"result::Result<u64, num::ParseIntError>", %"result::Result<u64, num::ParseIntError>"* %0, i16 0, i32 0, i16 0
  store i8 %.sink, i8* %24, align 1, !alias.scope !2479, !noalias !2482
  ret void
}

; core::num::<impl core::str::FromStr for u128>::from_str
; Function Attrs: nounwind uwtable
define void @"_ZN4core3num53_$LT$impl$u20$core..str..FromStr$u20$for$u20$u128$GT$8from_str17hd522cf84fe696695E"(%"result::Result<u128, num::ParseIntError>"* noalias nocapture sret dereferenceable(17) %0, [0 x i8]* noalias nonnull readonly align 1 %src.0, i16 %src.1) unnamed_addr addrspace(1) #9 {
start:
  %1 = icmp eq i16 %src.1, 0
  br i1 %1, label %bb11.i, label %bb17.i

bb11.i:                                           ; preds = %start
  %2 = getelementptr inbounds %"result::Result<u128, num::ParseIntError>", %"result::Result<u128, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 0, i8* %2, align 1, !alias.scope !2484, !noalias !2487
  br label %_ZN4core3num14from_str_radix17hf78483ff9501fe84E.exit

bb17.i:                                           ; preds = %start
  %3 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 0
  %4 = load i8, i8* %3, align 1, !alias.scope !2487, !noalias !2484
  %cond.i = icmp eq i8 %4, 43
  br i1 %cond.i, label %bb25.i, label %bb32.split.i

bb25.i:                                           ; preds = %bb17.i
  %5 = getelementptr inbounds [0 x i8], [0 x i8]* %src.0, i16 0, i16 1
  %_7.i.i.i.i92.i = add i16 %src.1, -1
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i93.i = bitcast i8* %5 to [0 x i8]*
  %6 = icmp eq i16 %_7.i.i.i.i92.i, 0
  br i1 %6, label %bb28.i, label %bb32.split.i

bb28.i:                                           ; preds = %bb25.i
  %7 = getelementptr inbounds %"result::Result<u128, num::ParseIntError>", %"result::Result<u128, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 0, i8* %7, align 1, !alias.scope !2484, !noalias !2487
  br label %_ZN4core3num14from_str_radix17hf78483ff9501fe84E.exit

bb32.split.i:                                     ; preds = %bb25.i, %bb17.i
  %_35.sroa.10.0114.i = phi i16 [ %_7.i.i.i.i92.i, %bb25.i ], [ %src.1, %bb17.i ]
  %_35.sroa.6.0113.i = phi [0 x i8]* [ %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i93.i, %bb25.i ], [ %src.0, %bb17.i ]
  %8 = getelementptr [0 x i8], [0 x i8]* %_35.sroa.6.0113.i, i16 0, i16 0
  %9 = getelementptr inbounds [0 x i8], [0 x i8]* %_35.sroa.6.0113.i, i16 0, i16 %_35.sroa.10.0114.i
  br label %bb34.us129.i

bb34.us129.i:                                     ; preds = %bb48.us150.i, %bb32.split.i
  %result.0.us130.i = phi i128 [ %17, %bb48.us150.i ], [ 0, %bb32.split.i ]
  %iter.sroa.0.0.us131.i = phi i8* [ %11, %bb48.us150.i ], [ %8, %bb32.split.i ]
  %10 = icmp ne i8* %iter.sroa.0.0.us131.i, null
  tail call addrspace(1) void @llvm.assume(i1 %10), !noalias !2484
  %_13.i86.us132.i = icmp eq i8* %iter.sroa.0.0.us131.i, %9
  br i1 %_13.i86.us132.i, label %bb72.i, label %bb38.us133.i

bb38.us133.i:                                     ; preds = %bb34.us129.i
  %11 = getelementptr inbounds i8, i8* %iter.sroa.0.0.us131.i, i16 1
  %c.us134.i = load i8, i8* %iter.sroa.0.0.us131.i, align 1, !alias.scope !2487, !noalias !2484
  %_67.us135.i = zext i8 %c.us134.i to i32
  %self.off.i66.us137.i = add nsw i32 %_67.us135.i, -48
  %12 = icmp ult i32 %self.off.i66.us137.i, 10
  br i1 %12, label %bb42.us149.i, label %bb40.i

bb42.us149.i:                                     ; preds = %bb38.us133.i
  %13 = tail call addrspace(1) { i128, i1 } @llvm.umul.with.overflow.i128(i128 %result.0.us130.i, i128 10) #20
  %14 = extractvalue { i128, i1 } %13, 1
  br i1 %14, label %bb46.i, label %bb48.us150.i

bb48.us150.i:                                     ; preds = %bb42.us149.i
  %15 = extractvalue { i128, i1 } %13, 0
  %_4.i58.us151.i = zext i32 %self.off.i66.us137.i to i128
  %16 = tail call addrspace(1) { i128, i1 } @llvm.uadd.with.overflow.i128(i128 %15, i128 %_4.i58.us151.i) #20
  %17 = extractvalue { i128, i1 } %16, 0
  %18 = extractvalue { i128, i1 } %16, 1
  br i1 %18, label %bb50.i, label %bb34.us129.i

bb40.i:                                           ; preds = %bb38.us133.i
  %19 = getelementptr inbounds %"result::Result<u128, num::ParseIntError>", %"result::Result<u128, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 1, i8* %19, align 1, !alias.scope !2484, !noalias !2487
  br label %_ZN4core3num14from_str_radix17hf78483ff9501fe84E.exit

bb46.i:                                           ; preds = %bb42.us149.i
  %20 = getelementptr inbounds %"result::Result<u128, num::ParseIntError>", %"result::Result<u128, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 2, i8* %20, align 1, !alias.scope !2484, !noalias !2487
  br label %_ZN4core3num14from_str_radix17hf78483ff9501fe84E.exit

bb50.i:                                           ; preds = %bb48.us150.i
  %21 = getelementptr inbounds %"result::Result<u128, num::ParseIntError>", %"result::Result<u128, num::ParseIntError>"* %0, i16 0, i32 2, i16 0
  store i8 2, i8* %21, align 1, !alias.scope !2484, !noalias !2487
  br label %_ZN4core3num14from_str_radix17hf78483ff9501fe84E.exit

bb72.i:                                           ; preds = %bb34.us129.i
  %22 = getelementptr inbounds %"result::Result<u128, num::ParseIntError>", %"result::Result<u128, num::ParseIntError>"* %0, i16 0, i32 2
  %23 = bitcast [16 x i8]* %22 to i128*
  store i128 %result.0.us130.i, i128* %23, align 1, !alias.scope !2484, !noalias !2487
  br label %_ZN4core3num14from_str_radix17hf78483ff9501fe84E.exit

_ZN4core3num14from_str_radix17hf78483ff9501fe84E.exit: ; preds = %bb11.i, %bb28.i, %bb40.i, %bb46.i, %bb50.i, %bb72.i
  %.sink = phi i8 [ 1, %bb11.i ], [ 1, %bb28.i ], [ 1, %bb40.i ], [ 1, %bb46.i ], [ 1, %bb50.i ], [ 0, %bb72.i ]
  %24 = getelementptr inbounds %"result::Result<u128, num::ParseIntError>", %"result::Result<u128, num::ParseIntError>"* %0, i16 0, i32 0, i16 0
  store i8 %.sink, i8* %24, align 1, !alias.scope !2484, !noalias !2487
  ret void
}

; <core::num::TryFromIntError as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN63_$LT$core..num..TryFromIntError$u20$as$u20$core..fmt..Debug$GT$3fmt17h0fe44667472442f5E"(%"num::TryFromIntError"* noalias nonnull readonly align 1 %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_13 = alloca {}*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !2489, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !2489, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !2489, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [15 x i8] }>* @alloc18968 to [0 x i8]*), i16 15), !noalias !2498
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !2498, !noalias !2499
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !2498, !noalias !2499
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !2498, !noalias !2499
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !2498, !noalias !2499
  %12 = bitcast {}** %_13 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast {}** %_13 to %"num::TryFromIntError"**
  store %"num::TryFromIntError"* %self, %"num::TryFromIntError"** %13, align 1
  %_10.0 = bitcast {}** %_13 to {}*
; call core::fmt::builders::DebugTuple::field
  %_8 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_10.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({}**) addrspace(1)*, i16, i16, i1 ({}**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.D to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %14 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %14, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %15 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %15, align 1, !alias.scope !2500, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !2503, !noalias !2500
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %16 = icmp eq i32 %_2.i.i.i.i.i, 0
  %17 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %16, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %18, align 1, !noalias !2506, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !noalias !2506, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !noalias !2506, !nonnull !568
  %23 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %23, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %24, align 1, !noalias !2509, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %26, align 1, !noalias !2509, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %28 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !2509, !nonnull !568
  %29 = call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %29 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %30 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %31 = icmp ne i8 %30, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %31
}

; <core::num::ParseIntError as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN61_$LT$core..num..ParseIntError$u20$as$u20$core..fmt..Debug$GT$3fmt17h9f2b622834247c98E"(i8* noalias readonly align 1 dereferenceable(1) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_15 = alloca i8*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !2512, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !2512, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !2512, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [13 x i8] }>* @alloc18969 to [0 x i8]*), i16 13), !noalias !2521
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !2521, !noalias !2522
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !2521, !noalias !2522
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !2521, !noalias !2522
  %11 = bitcast i8** %_15 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  store i8* %self, i8** %_15, align 1
  %_12.0 = bitcast i8** %_15 to {}*
; call core::fmt::builders::DebugStruct::field
  %_8 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc18988 to [0 x i8]*), i16 4, {}* nonnull align 1 %_12.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.E to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %12 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %12, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %13 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %13, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !2523, !noalias !2526
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %14 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %15 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %15, align 1, !nonnull !568
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %17 = bitcast [3 x i16]** %16 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %17, align 1, !nonnull !568
  %18 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %19 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %18, align 1, !invariant.load !568, !nonnull !568
  br i1 %14, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %20 = call zeroext addrspace(1) i1 %19({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %21 = call zeroext addrspace(1) i1 %19({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %21, %bb3.i.i.i ], [ %20, %bb2.i.i.i ]
  %22 = zext i1 %.0.i.i to i8
  store i8 %22, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %23 = phi i8 [ %22, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %24 = icmp ne i8 %23, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %24
}

; <core::num::IntErrorKind as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN60_$LT$core..num..IntErrorKind$u20$as$u20$core..fmt..Debug$GT$3fmt17hcfe7ed7dc176de45E"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = load i8, i8* %self, align 1, !range !632
  %trunc = trunc i8 %0 to i3
  switch i3 %trunc, label %bb2 [
    i3 0, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit32
    i3 1, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit59
    i3 2, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit86
    i3 3, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit113
    i3 -4, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit
  ]

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !2529, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !2529, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !2529, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19013 to [0 x i8]*), i16 4), !noalias !2538
  br label %bb17

bb2:                                              ; preds = %start
  unreachable

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit32: ; preds = %start
  %7 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i6 = load {}*, {}** %7, align 1, !noalias !2539, !nonnull !568
  %8 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %9 = bitcast [3 x i16]** %8 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i7 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %9, align 1, !noalias !2539, !nonnull !568
  %10 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i7, i16 3
  %11 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %10, align 1, !invariant.load !568, !noalias !2539, !nonnull !568
  %12 = tail call zeroext addrspace(1) i1 %11({}* nonnull align 1 %_3.0.i.i.i6, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19178 to [0 x i8]*), i16 5), !noalias !2548
  br label %bb17

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit59: ; preds = %start
  %13 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i33 = load {}*, {}** %13, align 1, !noalias !2549, !nonnull !568
  %14 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %15 = bitcast [3 x i16]** %14 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i34 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %15, align 1, !noalias !2549, !nonnull !568
  %16 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i34, i16 3
  %17 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %16, align 1, !invariant.load !568, !noalias !2549, !nonnull !568
  %18 = tail call zeroext addrspace(1) i1 %17({}* nonnull align 1 %_3.0.i.i.i33, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [12 x i8] }>* @alloc18974 to [0 x i8]*), i16 12), !noalias !2558
  br label %bb17

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit86: ; preds = %start
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i60 = load {}*, {}** %19, align 1, !noalias !2559, !nonnull !568
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %21 = bitcast [3 x i16]** %20 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i61 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %21, align 1, !noalias !2559, !nonnull !568
  %22 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i61, i16 3
  %23 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %22, align 1, !invariant.load !568, !noalias !2559, !nonnull !568
  %24 = tail call zeroext addrspace(1) i1 %23({}* nonnull align 1 %_3.0.i.i.i60, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [8 x i8] }>* @alloc18973 to [0 x i8]*), i16 8), !noalias !2568
  br label %bb17

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit113: ; preds = %start
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i87 = load {}*, {}** %25, align 1, !noalias !2569, !nonnull !568
  %26 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %27 = bitcast [3 x i16]** %26 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i88 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %27, align 1, !noalias !2569, !nonnull !568
  %28 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i88, i16 3
  %29 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %28, align 1, !invariant.load !568, !noalias !2569, !nonnull !568
  %30 = tail call zeroext addrspace(1) i1 %29({}* nonnull align 1 %_3.0.i.i.i87, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [9 x i8] }>* @alloc18972 to [0 x i8]*), i16 9), !noalias !2578
  br label %bb17

bb17:                                             ; preds = %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit32, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit59, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit86, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit113, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit
  %.0.in = phi i1 [ %6, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit ], [ %30, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit113 ], [ %24, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit86 ], [ %18, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit59 ], [ %12, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit32 ]
  ret i1 %.0.in
}

; <core::cmp::Ordering as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN56_$LT$core..cmp..Ordering$u20$as$u20$core..fmt..Debug$GT$3fmt17h260240d76b1e8f32E"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = load i8, i8* %self, align 1, !range !2579
  %_5 = sext i8 %0 to i16
  switch i16 %_5, label %bb2 [
    i16 -1, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30
    i16 0, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit57
    i16 1, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit
  ]

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !2580, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !2580, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !2580, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [7 x i8] }>* @alloc18976 to [0 x i8]*), i16 7), !noalias !2589
  br label %bb11

bb2:                                              ; preds = %start
  unreachable

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30: ; preds = %start
  %7 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i4 = load {}*, {}** %7, align 1, !noalias !2590, !nonnull !568
  %8 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %9 = bitcast [3 x i16]** %8 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %9, align 1, !noalias !2590, !nonnull !568
  %10 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i5, i16 3
  %11 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %10, align 1, !invariant.load !568, !noalias !2590, !nonnull !568
  %12 = tail call zeroext addrspace(1) i1 %11({}* nonnull align 1 %_3.0.i.i.i4, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc18978 to [0 x i8]*), i16 4), !noalias !2599
  br label %bb11

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit57: ; preds = %start
  %13 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i31 = load {}*, {}** %13, align 1, !noalias !2600, !nonnull !568
  %14 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %15 = bitcast [3 x i16]** %14 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i32 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %15, align 1, !noalias !2600, !nonnull !568
  %16 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i32, i16 3
  %17 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %16, align 1, !invariant.load !568, !noalias !2600, !nonnull !568
  %18 = tail call zeroext addrspace(1) i1 %17({}* nonnull align 1 %_3.0.i.i.i31, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc18977 to [0 x i8]*), i16 5), !noalias !2609
  br label %bb11

bb11:                                             ; preds = %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit57, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit
  %.0.in = phi i1 [ %6, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit ], [ %18, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit57 ], [ %12, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30 ]
  ret i1 %.0.in
}

; <core::marker::PhantomPinned as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN64_$LT$core..marker..PhantomPinned$u20$as$u20$core..fmt..Debug$GT$3fmt17hd174c4dd2f19e956E"(%"marker::PhantomPinned"* noalias nocapture nonnull readonly align 1 %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit:
  %0 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %0, align 1, !noalias !2610, !nonnull !568
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %2 = bitcast [3 x i16]** %1 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %2, align 1, !noalias !2610, !nonnull !568
  %3 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %4 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %3, align 1, !invariant.load !568, !noalias !2610, !nonnull !568
  %5 = tail call zeroext addrspace(1) i1 %4({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [13 x i8] }>* @alloc18979 to [0 x i8]*), i16 13), !noalias !2619
  ret i1 %5
}

; <core::any::TypeId as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN54_$LT$core..any..TypeId$u20$as$u20$core..fmt..Debug$GT$3fmt17ha9b05ff1193c1ed9E"(i64* noalias readonly align 1 dereferenceable(8) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_15 = alloca i64*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !2620, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !2620, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !2620, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc18984 to [0 x i8]*), i16 6), !noalias !2629
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !2629, !noalias !2630
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !2629, !noalias !2630
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !2629, !noalias !2630
  %11 = bitcast i64** %_15 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  store i64* %self, i64** %_15, align 1
  %_12.0 = bitcast i64** %_15 to {}*
; call core::fmt::builders::DebugStruct::field
  %_8 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18985 to [0 x i8]*), i16 1, {}* nonnull align 1 %_12.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.w to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %12 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %12, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %13 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %13, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !2631, !noalias !2634
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %14 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %15 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %15, align 1, !nonnull !568
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %17 = bitcast [3 x i16]** %16 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %17, align 1, !nonnull !568
  %18 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %19 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %18, align 1, !invariant.load !568, !nonnull !568
  br i1 %14, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %20 = call zeroext addrspace(1) i1 %19({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %21 = call zeroext addrspace(1) i1 %19({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %21, %bb3.i.i.i ], [ %20, %bb2.i.i.i ]
  %22 = zext i1 %.0.i.i to i8
  store i8 %22, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %23 = phi i8 [ %22, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %24 = icmp ne i8 %23, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %24
}

; <core::array::TryFromSliceError as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN67_$LT$core..array..TryFromSliceError$u20$as$u20$core..fmt..Debug$GT$3fmt17ha05ac8143238687aE"(%"array::TryFromSliceError"* noalias nonnull readonly align 1 %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_13 = alloca {}*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !2637, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !2637, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !2637, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [17 x i8] }>* @alloc18986 to [0 x i8]*), i16 17), !noalias !2646
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !2646, !noalias !2647
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !2646, !noalias !2647
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !2646, !noalias !2647
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !2646, !noalias !2647
  %12 = bitcast {}** %_13 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast {}** %_13 to %"array::TryFromSliceError"**
  store %"array::TryFromSliceError"* %self, %"array::TryFromSliceError"** %13, align 1
  %_10.0 = bitcast {}** %_13 to {}*
; call core::fmt::builders::DebugTuple::field
  %_8 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_10.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({}**) addrspace(1)*, i16, i16, i1 ({}**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.D to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %14 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %14, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %15 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %15, align 1, !alias.scope !2648, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !2651, !noalias !2648
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %16 = icmp eq i32 %_2.i.i.i.i.i, 0
  %17 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %16, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %18, align 1, !noalias !2654, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !noalias !2654, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !noalias !2654, !nonnull !568
  %23 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %23, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %24, align 1, !noalias !2657, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %26, align 1, !noalias !2657, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %28 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !2657, !nonnull !568
  %29 = call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %29 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %30 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %31 = icmp ne i8 %30, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %31
}

; <core::char::convert::ParseCharError as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN72_$LT$core..char..convert..ParseCharError$u20$as$u20$core..fmt..Debug$GT$3fmt17h6fa88009b6b1b208E"(i8* noalias readonly align 1 dereferenceable(1) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_15 = alloca i8*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !2660, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !2660, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !2660, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [14 x i8] }>* @alloc18987 to [0 x i8]*), i16 14), !noalias !2669
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !2669, !noalias !2670
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !2669, !noalias !2670
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !2669, !noalias !2670
  %11 = bitcast i8** %_15 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  store i8* %self, i8** %_15, align 1
  %_12.0 = bitcast i8** %_15 to {}*
; call core::fmt::builders::DebugStruct::field
  %_8 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc18988 to [0 x i8]*), i16 4, {}* nonnull align 1 %_12.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.F to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %12 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %12, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %13 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %13, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !2671, !noalias !2674
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %14 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %15 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %15, align 1, !nonnull !568
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %17 = bitcast [3 x i16]** %16 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %17, align 1, !nonnull !568
  %18 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %19 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %18, align 1, !invariant.load !568, !nonnull !568
  br i1 %14, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %20 = call zeroext addrspace(1) i1 %19({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %21 = call zeroext addrspace(1) i1 %19({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %21, %bb3.i.i.i ], [ %20, %bb2.i.i.i ]
  %22 = zext i1 %.0.i.i to i8
  store i8 %22, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %23 = phi i8 [ %22, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %24 = icmp ne i8 %23, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %24
}

; <core::char::convert::CharErrorKind as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN71_$LT$core..char..convert..CharErrorKind$u20$as$u20$core..fmt..Debug$GT$3fmt17h05b29b1774f4b3c6E"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = load i8, i8* %self, align 1, !range !87
  %switch = icmp eq i8 %0, 1
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !nonnull !568
  br i1 %switch, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [12 x i8] }>* @alloc18989 to [0 x i8]*), i16 12), !noalias !2677
  br label %bb8

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30: ; preds = %start
  %7 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [11 x i8] }>* @alloc18990 to [0 x i8]*), i16 11), !noalias !2682
  br label %bb8

bb8:                                              ; preds = %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit
  %.0.in = phi i1 [ %7, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30 ], [ %6, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit ]
  ret i1 %.0.in
}

; <core::char::convert::CharTryFromError as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN74_$LT$core..char..convert..CharTryFromError$u20$as$u20$core..fmt..Debug$GT$3fmt17h9a0120e0032e7b15E"(%"char::convert::CharTryFromError"* noalias nonnull readonly align 1 %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_13 = alloca {}*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !2687, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !2687, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !2687, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [16 x i8] }>* @alloc18991 to [0 x i8]*), i16 16), !noalias !2696
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !2696, !noalias !2697
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !2696, !noalias !2697
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !2696, !noalias !2697
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !2696, !noalias !2697
  %12 = bitcast {}** %_13 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast {}** %_13 to %"char::convert::CharTryFromError"**
  store %"char::convert::CharTryFromError"* %self, %"char::convert::CharTryFromError"** %13, align 1
  %_10.0 = bitcast {}** %_13 to {}*
; call core::fmt::builders::DebugTuple::field
  %_8 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_10.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({}**) addrspace(1)*, i16, i16, i1 ({}**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.D to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %14 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %14, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %15 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %15, align 1, !alias.scope !2698, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !2701, !noalias !2698
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %16 = icmp eq i32 %_2.i.i.i.i.i, 0
  %17 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %16, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %18, align 1, !noalias !2704, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !noalias !2704, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !noalias !2704, !nonnull !568
  %23 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %23, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %24, align 1, !noalias !2707, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %26, align 1, !noalias !2707, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %28 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !2707, !nonnull !568
  %29 = call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %29 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %30 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %31 = icmp ne i8 %30, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %31
}

; <core::char::decode::DecodeUtf16Error as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN73_$LT$core..char..decode..DecodeUtf16Error$u20$as$u20$core..fmt..Debug$GT$3fmt17hdb34f04978734df5E"(i16* noalias readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_15 = alloca i16*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !2710, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !2710, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !2710, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [16 x i8] }>* @alloc18992 to [0 x i8]*), i16 16), !noalias !2719
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !2719, !noalias !2720
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !2719, !noalias !2720
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !2719, !noalias !2720
  %11 = bitcast i16** %_15 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  store i16* %self, i16** %_15, align 1
  %_12.0 = bitcast i16** %_15 to {}*
; call core::fmt::builders::DebugStruct::field
  %_8 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc18993 to [0 x i8]*), i16 4, {}* nonnull align 1 %_12.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.B to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %12 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %12, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %13 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %13, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !2721, !noalias !2724
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %14 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %15 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %15, align 1, !nonnull !568
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %17 = bitcast [3 x i16]** %16 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %17, align 1, !nonnull !568
  %18 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %19 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %18, align 1, !invariant.load !568, !nonnull !568
  br i1 %14, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %20 = call zeroext addrspace(1) i1 %19({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %21 = call zeroext addrspace(1) i1 %19({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %21, %bb3.i.i.i ], [ %20, %bb2.i.i.i ]
  %22 = zext i1 %.0.i.i to i8
  store i8 %22, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %23 = phi i8 [ %22, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %24 = icmp ne i8 %23, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %24
}

; <core::char::EscapeUnicode as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN62_$LT$core..char..EscapeUnicode$u20$as$u20$core..fmt..Debug$GT$3fmt17h1e03c1a9b9bba235E"(%"char::EscapeUnicode"* noalias readonly align 1 dereferenceable(7) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_33 = alloca i16*, align 1
  %_25 = alloca i8*, align 1
  %_17 = alloca i32*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %__self_0_1 = getelementptr inbounds %"char::EscapeUnicode", %"char::EscapeUnicode"* %self, i16 0, i32 3
  %__self_0_2 = getelementptr inbounds %"char::EscapeUnicode", %"char::EscapeUnicode"* %self, i16 0, i32 5
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !2727, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !2727, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !2727, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [13 x i8] }>* @alloc19217 to [0 x i8]*), i16 13), !noalias !2736
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !2736, !noalias !2737
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !2736, !noalias !2737
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !2736, !noalias !2737
  %11 = bitcast i32** %_17 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  %12 = bitcast i32** %_17 to %"char::EscapeUnicode"**
  store %"char::EscapeUnicode"* %self, %"char::EscapeUnicode"** %12, align 1
  %_14.0 = bitcast i32** %_17 to {}*
; call core::fmt::builders::DebugStruct::field
  %_10 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18995 to [0 x i8]*), i16 1, {}* nonnull align 1 %_14.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.g to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %13 = bitcast i8** %_25 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i8* %__self_0_1, i8** %_25, align 1
  %_22.0 = bitcast i8** %_25 to {}*
; call core::fmt::builders::DebugStruct::field
  %_18 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19147 to [0 x i8]*), i16 5, {}* nonnull align 1 %_22.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.G to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast i16** %_33 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store i16* %__self_0_2, i16** %_33, align 1
  %_30.0 = bitcast i16** %_33 to {}*
; call core::fmt::builders::DebugStruct::field
  %_26 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [13 x i8] }>* @alloc18997 to [0 x i8]*), i16 13, {}* nonnull align 1 %_30.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.C to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %15, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %16 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %16, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !2738, !noalias !2741
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %17 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !nonnull !568
  br i1 %17, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %23 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %24 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %24, %bb3.i.i.i ], [ %23, %bb2.i.i.i ]
  %25 = zext i1 %.0.i.i to i8
  store i8 %25, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %26 = phi i8 [ %25, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %27 = icmp ne i8 %26, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %27
}

; <core::char::EscapeUnicodeState as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN67_$LT$core..char..EscapeUnicodeState$u20$as$u20$core..fmt..Debug$GT$3fmt17haea556edb29d0dc1E"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = load i8, i8* %self, align 1, !range !689
  %trunc = trunc i8 %0 to i3
  switch i3 %trunc, label %bb2 [
    i3 0, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit33
    i3 1, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit60
    i3 2, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit87
    i3 3, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit114
    i3 -4, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit141
    i3 -3, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit
  ]

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !2744, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !2744, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !2744, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [9 x i8] }>* @alloc19007 to [0 x i8]*), i16 9), !noalias !2753
  br label %bb20

bb2:                                              ; preds = %start
  unreachable

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit33: ; preds = %start
  %7 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i7 = load {}*, {}** %7, align 1, !noalias !2754, !nonnull !568
  %8 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %9 = bitcast [3 x i16]** %8 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i8 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %9, align 1, !noalias !2754, !nonnull !568
  %10 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i8, i16 3
  %11 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %10, align 1, !invariant.load !568, !noalias !2754, !nonnull !568
  %12 = tail call zeroext addrspace(1) i1 %11({}* nonnull align 1 %_3.0.i.i.i7, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19158 to [0 x i8]*), i16 4), !noalias !2763
  br label %bb20

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit60: ; preds = %start
  %13 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i34 = load {}*, {}** %13, align 1, !noalias !2764, !nonnull !568
  %14 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %15 = bitcast [3 x i16]** %14 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i35 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %15, align 1, !noalias !2764, !nonnull !568
  %16 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i35, i16 3
  %17 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %16, align 1, !invariant.load !568, !noalias !2764, !nonnull !568
  %18 = tail call zeroext addrspace(1) i1 %17({}* nonnull align 1 %_3.0.i.i.i34, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [10 x i8] }>* @alloc19002 to [0 x i8]*), i16 10), !noalias !2773
  br label %bb20

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit87: ; preds = %start
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i61 = load {}*, {}** %19, align 1, !noalias !2774, !nonnull !568
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %21 = bitcast [3 x i16]** %20 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i62 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %21, align 1, !noalias !2774, !nonnull !568
  %22 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i62, i16 3
  %23 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %22, align 1, !invariant.load !568, !noalias !2774, !nonnull !568
  %24 = tail call zeroext addrspace(1) i1 %23({}* nonnull align 1 %_3.0.i.i.i61, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19001 to [0 x i8]*), i16 5), !noalias !2783
  br label %bb20

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit114: ; preds = %start
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i88 = load {}*, {}** %25, align 1, !noalias !2784, !nonnull !568
  %26 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %27 = bitcast [3 x i16]** %26 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i89 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %27, align 1, !noalias !2784, !nonnull !568
  %28 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i89, i16 3
  %29 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %28, align 1, !invariant.load !568, !noalias !2784, !nonnull !568
  %30 = tail call zeroext addrspace(1) i1 %29({}* nonnull align 1 %_3.0.i.i.i88, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [9 x i8] }>* @alloc19000 to [0 x i8]*), i16 9), !noalias !2793
  br label %bb20

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit141: ; preds = %start
  %31 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i115 = load {}*, {}** %31, align 1, !noalias !2794, !nonnull !568
  %32 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %33 = bitcast [3 x i16]** %32 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i116 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %33, align 1, !noalias !2794, !nonnull !568
  %34 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i116, i16 3
  %35 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %34, align 1, !invariant.load !568, !noalias !2794, !nonnull !568
  %36 = tail call zeroext addrspace(1) i1 %35({}* nonnull align 1 %_3.0.i.i.i115, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc18999 to [0 x i8]*), i16 4), !noalias !2803
  br label %bb20

bb20:                                             ; preds = %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit33, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit60, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit87, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit114, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit141, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit
  %.0.in = phi i1 [ %6, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit ], [ %36, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit141 ], [ %30, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit114 ], [ %24, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit87 ], [ %18, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit60 ], [ %12, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit33 ]
  ret i1 %.0.in
}

; <core::char::EscapeDefault as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN62_$LT$core..char..EscapeDefault$u20$as$u20$core..fmt..Debug$GT$3fmt17h5468203a1e644711E"(%"char::EscapeDefault"* noalias readonly align 1 dereferenceable(8) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_15 = alloca %"char::EscapeDefaultState"*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !2804, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !2804, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !2804, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [13 x i8] }>* @alloc19215 to [0 x i8]*), i16 13), !noalias !2813
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !2813, !noalias !2814
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !2813, !noalias !2814
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !2813, !noalias !2814
  %11 = bitcast %"char::EscapeDefaultState"** %_15 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  %12 = bitcast %"char::EscapeDefaultState"** %_15 to %"char::EscapeDefault"**
  store %"char::EscapeDefault"* %self, %"char::EscapeDefault"** %12, align 1
  %_12.0 = bitcast %"char::EscapeDefaultState"** %_15 to {}*
; call core::fmt::builders::DebugStruct::field
  %_8 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19147 to [0 x i8]*), i16 5, {}* nonnull align 1 %_12.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"char::EscapeDefaultState"**) addrspace(1)*, i16, i16, i1 (%"char::EscapeDefaultState"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.H to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %13 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %13, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %14 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %14, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !2815, !noalias !2818
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %15 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %16, align 1, !nonnull !568
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %18 = bitcast [3 x i16]** %17 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %20 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %19, align 1, !invariant.load !568, !nonnull !568
  br i1 %15, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %21 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %22 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %22, %bb3.i.i.i ], [ %21, %bb2.i.i.i ]
  %23 = zext i1 %.0.i.i to i8
  store i8 %23, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %24 = phi i8 [ %23, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %25 = icmp ne i8 %24, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %25
}

; <core::char::EscapeDefaultState as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN67_$LT$core..char..EscapeDefaultState$u20$as$u20$core..fmt..Debug$GT$3fmt17h61af768d4f61e179E"(%"char::EscapeDefaultState"* noalias readonly align 1 dereferenceable(8) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_45 = alloca %"char::EscapeUnicode"*, align 1
  %debug_trait_builder3 = alloca %"fmt::builders::DebugTuple", align 1
  %_33 = alloca i32*, align 1
  %debug_trait_builder2 = alloca %"fmt::builders::DebugTuple", align 1
  %_21 = alloca i32*, align 1
  %debug_trait_builder1 = alloca %"fmt::builders::DebugTuple", align 1
  %0 = getelementptr inbounds %"char::EscapeDefaultState", %"char::EscapeDefaultState"* %self, i16 0, i32 0, i16 0
  %1 = load i8, i8* %0, align 1, !range !696
  %trunc = trunc i8 %1 to i2
  switch i2 %trunc, label %bb2 [
    i2 0, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit36
    i2 1, label %bb6
    i2 -2, label %bb10
    i2 -1, label %bb1
  ]

bb1:                                              ; preds = %start
  %__self_0 = getelementptr inbounds %"char::EscapeDefaultState", %"char::EscapeDefaultState"* %self, i16 0, i32 2
  %2 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder3, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %2)
  %3 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %3, align 1, !noalias !2821, !nonnull !568
  %4 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %5 = bitcast [3 x i16]** %4 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %5, align 1, !noalias !2821, !nonnull !568
  %6 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %7 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %6, align 1, !invariant.load !568, !noalias !2821, !nonnull !568
  %8 = tail call zeroext addrspace(1) i1 %7({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [7 x i8] }>* @alloc19006 to [0 x i8]*), i16 7), !noalias !2830
  %9 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder3 to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %9, align 1, !alias.scope !2830, !noalias !2831
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder3, i16 0, i32 3
  %11 = zext i1 %8 to i8
  store i8 %11, i8* %10, align 1, !alias.scope !2830, !noalias !2831
  %12 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder3, i16 0, i32 5
  store i16 0, i16* %12, align 1, !alias.scope !2830, !noalias !2831
  %13 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder3, i16 0, i32 7
  store i8 0, i8* %13, align 1, !alias.scope !2830, !noalias !2831
  %14 = bitcast %"char::EscapeUnicode"** %_45 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast %"char::EscapeUnicode"** %_45 to [7 x i8]**
  store [7 x i8]* %__self_0, [7 x i8]** %15, align 1
  %_42.0 = bitcast %"char::EscapeUnicode"** %_45 to {}*
; call core::fmt::builders::DebugTuple::field
  %_40 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder3, {}* nonnull align 1 %_42.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"char::EscapeUnicode"**) addrspace(1)*, i16, i16, i1 (%"char::EscapeUnicode"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.I to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %_3.i = load i16, i16* %12, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %10, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %bb1
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %16 = load i8, i8* %13, align 1
  %_7.i.i.i = icmp eq i8 %16, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %17 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder3 to i32**
  %_21.i.i.i.i = load i32*, i32** %17, align 1, !alias.scope !2832, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !2835, !noalias !2832
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %18 = icmp eq i32 %_2.i.i.i.i.i, 0
  %19 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %18, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %19, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %20, align 1, !noalias !2838, !nonnull !568
  %21 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %19, i16 0, i32 11, i32 1
  %22 = bitcast [3 x i16]** %21 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %22, align 1, !noalias !2838, !nonnull !568
  %23 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %24 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %23, align 1, !invariant.load !568, !noalias !2838, !nonnull !568
  %25 = call zeroext addrspace(1) i1 %24({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %25, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %9, align 1, !nonnull !568
  %26 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %26, align 1, !noalias !2841, !nonnull !568
  %27 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %28 = bitcast [3 x i16]** %27 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %28, align 1, !noalias !2841, !nonnull !568
  %29 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %30 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %29, align 1, !invariant.load !568, !noalias !2841, !nonnull !568
  %31 = call zeroext addrspace(1) i1 %30({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %31 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %10, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %bb1, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %32 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %bb1 ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %2)
  br label %bb17

bb2:                                              ; preds = %start
  unreachable

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit36: ; preds = %start
  %33 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i10 = load {}*, {}** %33, align 1, !noalias !2844, !nonnull !568
  %34 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %35 = bitcast [3 x i16]** %34 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i11 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %35, align 1, !noalias !2844, !nonnull !568
  %36 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i11, i16 3
  %37 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %36, align 1, !invariant.load !568, !noalias !2844, !nonnull !568
  %38 = tail call zeroext addrspace(1) i1 %37({}* nonnull align 1 %_3.0.i.i.i10, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19158 to [0 x i8]*), i16 4), !noalias !2853
  %39 = zext i1 %38 to i8
  br label %bb17

bb6:                                              ; preds = %start
  %__self_05 = getelementptr inbounds %"char::EscapeDefaultState", %"char::EscapeDefaultState"* %self, i16 0, i32 2
  %40 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %40)
  %41 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i37 = load {}*, {}** %41, align 1, !noalias !2854, !nonnull !568
  %42 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %43 = bitcast [3 x i16]** %42 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i38 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %43, align 1, !noalias !2854, !nonnull !568
  %44 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i38, i16 3
  %45 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %44, align 1, !invariant.load !568, !noalias !2854, !nonnull !568
  %46 = tail call zeroext addrspace(1) i1 %45({}* nonnull align 1 %_3.0.i.i.i37, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19008 to [0 x i8]*), i16 4), !noalias !2863
  %47 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder1 to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %47, align 1, !alias.scope !2863, !noalias !2864
  %48 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1, i16 0, i32 3
  %49 = zext i1 %46 to i8
  store i8 %49, i8* %48, align 1, !alias.scope !2863, !noalias !2864
  %50 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1, i16 0, i32 5
  store i16 0, i16* %50, align 1, !alias.scope !2863, !noalias !2864
  %51 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1, i16 0, i32 7
  store i8 0, i8* %51, align 1, !alias.scope !2863, !noalias !2864
  %52 = bitcast i32** %_21 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %52)
  %53 = bitcast i32** %_21 to [7 x i8]**
  store [7 x i8]* %__self_05, [7 x i8]** %53, align 1
  %_18.0 = bitcast i32** %_21 to {}*
; call core::fmt::builders::DebugTuple::field
  %_16 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder1, {}* nonnull align 1 %_18.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.g to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %52)
  %_3.i39 = load i16, i16* %50, align 1
  %_2.i40 = icmp eq i16 %_3.i39, 0
  %.pre.i42 = load i8, i8* %48, align 1, !range !87
  br i1 %_2.i40, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit63, label %bb2.i44

bb2.i44:                                          ; preds = %bb6
  %_5.i43 = icmp eq i8 %.pre.i42, 0
  br i1 %_5.i43, label %bb3.i.i46, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i62"

bb3.i.i46:                                        ; preds = %bb2.i44
  %_5.i.i.i45 = icmp ne i16 %_3.i39, 1
  %54 = load i8, i8* %51, align 1
  %_7.i.i.i51 = icmp eq i8 %54, 0
  %or.cond93 = or i1 %_5.i.i.i45, %_7.i.i.i51
  br i1 %or.cond93, label %bb20.i.i.i60, label %bb3.i.i.i50

bb3.i.i.i50:                                      ; preds = %bb3.i.i46
  %55 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder1 to i32**
  %_21.i.i.i.i47 = load i32*, i32** %55, align 1, !alias.scope !2865, !nonnull !568
  %_3.i.i.i.i.i48 = load i32, i32* %_21.i.i.i.i47, align 1, !alias.scope !2868, !noalias !2865
  %_2.i.i.i.i.i49 = and i32 %_3.i.i.i.i.i48, 4
  %56 = icmp eq i32 %_2.i.i.i.i.i49, 0
  %57 = bitcast i32* %_21.i.i.i.i47 to %"fmt::Formatter"*
  br i1 %56, label %bb11.i.i.i55, label %bb20.i.i.i60

bb11.i.i.i55:                                     ; preds = %bb3.i.i.i50
  %58 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %57, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i53 = load {}*, {}** %58, align 1, !noalias !2871, !nonnull !568
  %59 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %57, i16 0, i32 11, i32 1
  %60 = bitcast [3 x i16]** %59 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i54 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %60, align 1, !noalias !2871, !nonnull !568
  %61 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i54, i16 3
  %62 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %61, align 1, !invariant.load !568, !noalias !2871, !nonnull !568
  %63 = call zeroext addrspace(1) i1 %62({}* nonnull align 1 %_3.0.i2.i.i.i53, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %63, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i62", label %bb20.i.i.i60

bb20.i.i.i60:                                     ; preds = %bb3.i.i46, %bb11.i.i.i55, %bb3.i.i.i50
  %_21.i.i.i56 = load %"fmt::Formatter"*, %"fmt::Formatter"** %47, align 1, !nonnull !568
  %64 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i56, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i57 = load {}*, {}** %64, align 1, !noalias !2874, !nonnull !568
  %65 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i56, i16 0, i32 11, i32 1
  %66 = bitcast [3 x i16]** %65 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i58 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %66, align 1, !noalias !2874, !nonnull !568
  %67 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i58, i16 3
  %68 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %67, align 1, !invariant.load !568, !noalias !2874, !nonnull !568
  %69 = call zeroext addrspace(1) i1 %68({}* nonnull align 1 %_3.0.i.i.i.i57, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i59 = zext i1 %69 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i62"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i62": ; preds = %bb20.i.i.i60, %bb11.i.i.i55, %bb2.i44
  %.0.i.i61 = phi i8 [ 1, %bb2.i44 ], [ %phitmp.i59, %bb20.i.i.i60 ], [ 1, %bb11.i.i.i55 ]
  store i8 %.0.i.i61, i8* %48, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit63

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit63: ; preds = %bb6, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i62"
  %70 = phi i8 [ %.0.i.i61, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i62" ], [ %.pre.i42, %bb6 ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %40)
  br label %bb17

bb10:                                             ; preds = %start
  %__self_04 = getelementptr inbounds %"char::EscapeDefaultState", %"char::EscapeDefaultState"* %self, i16 0, i32 2
  %71 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder2, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %71)
  %72 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i64 = load {}*, {}** %72, align 1, !noalias !2877, !nonnull !568
  %73 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %74 = bitcast [3 x i16]** %73 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i65 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %74, align 1, !noalias !2877, !nonnull !568
  %75 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i65, i16 3
  %76 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %75, align 1, !invariant.load !568, !noalias !2877, !nonnull !568
  %77 = tail call zeroext addrspace(1) i1 %76({}* nonnull align 1 %_3.0.i.i.i64, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [9 x i8] }>* @alloc19007 to [0 x i8]*), i16 9), !noalias !2886
  %78 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder2 to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %78, align 1, !alias.scope !2886, !noalias !2887
  %79 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder2, i16 0, i32 3
  %80 = zext i1 %77 to i8
  store i8 %80, i8* %79, align 1, !alias.scope !2886, !noalias !2887
  %81 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder2, i16 0, i32 5
  store i16 0, i16* %81, align 1, !alias.scope !2886, !noalias !2887
  %82 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder2, i16 0, i32 7
  store i8 0, i8* %82, align 1, !alias.scope !2886, !noalias !2887
  %83 = bitcast i32** %_33 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %83)
  %84 = bitcast i32** %_33 to [7 x i8]**
  store [7 x i8]* %__self_04, [7 x i8]** %84, align 1
  %_30.0 = bitcast i32** %_33 to {}*
; call core::fmt::builders::DebugTuple::field
  %_28 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder2, {}* nonnull align 1 %_30.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.g to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %83)
  %_3.i66 = load i16, i16* %81, align 1
  %_2.i67 = icmp eq i16 %_3.i66, 0
  %.pre.i69 = load i8, i8* %79, align 1, !range !87
  br i1 %_2.i67, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit90, label %bb2.i71

bb2.i71:                                          ; preds = %bb10
  %_5.i70 = icmp eq i8 %.pre.i69, 0
  br i1 %_5.i70, label %bb3.i.i73, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i89"

bb3.i.i73:                                        ; preds = %bb2.i71
  %_5.i.i.i72 = icmp ne i16 %_3.i66, 1
  %85 = load i8, i8* %82, align 1
  %_7.i.i.i78 = icmp eq i8 %85, 0
  %or.cond94 = or i1 %_5.i.i.i72, %_7.i.i.i78
  br i1 %or.cond94, label %bb20.i.i.i87, label %bb3.i.i.i77

bb3.i.i.i77:                                      ; preds = %bb3.i.i73
  %86 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder2 to i32**
  %_21.i.i.i.i74 = load i32*, i32** %86, align 1, !alias.scope !2888, !nonnull !568
  %_3.i.i.i.i.i75 = load i32, i32* %_21.i.i.i.i74, align 1, !alias.scope !2891, !noalias !2888
  %_2.i.i.i.i.i76 = and i32 %_3.i.i.i.i.i75, 4
  %87 = icmp eq i32 %_2.i.i.i.i.i76, 0
  %88 = bitcast i32* %_21.i.i.i.i74 to %"fmt::Formatter"*
  br i1 %87, label %bb11.i.i.i82, label %bb20.i.i.i87

bb11.i.i.i82:                                     ; preds = %bb3.i.i.i77
  %89 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %88, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i80 = load {}*, {}** %89, align 1, !noalias !2894, !nonnull !568
  %90 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %88, i16 0, i32 11, i32 1
  %91 = bitcast [3 x i16]** %90 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i81 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %91, align 1, !noalias !2894, !nonnull !568
  %92 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i81, i16 3
  %93 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %92, align 1, !invariant.load !568, !noalias !2894, !nonnull !568
  %94 = call zeroext addrspace(1) i1 %93({}* nonnull align 1 %_3.0.i2.i.i.i80, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %94, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i89", label %bb20.i.i.i87

bb20.i.i.i87:                                     ; preds = %bb3.i.i73, %bb11.i.i.i82, %bb3.i.i.i77
  %_21.i.i.i83 = load %"fmt::Formatter"*, %"fmt::Formatter"** %78, align 1, !nonnull !568
  %95 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i83, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i84 = load {}*, {}** %95, align 1, !noalias !2897, !nonnull !568
  %96 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i83, i16 0, i32 11, i32 1
  %97 = bitcast [3 x i16]** %96 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i85 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %97, align 1, !noalias !2897, !nonnull !568
  %98 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i85, i16 3
  %99 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %98, align 1, !invariant.load !568, !noalias !2897, !nonnull !568
  %100 = call zeroext addrspace(1) i1 %99({}* nonnull align 1 %_3.0.i.i.i.i84, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i86 = zext i1 %100 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i89"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i89": ; preds = %bb20.i.i.i87, %bb11.i.i.i82, %bb2.i71
  %.0.i.i88 = phi i8 [ 1, %bb2.i71 ], [ %phitmp.i86, %bb20.i.i.i87 ], [ 1, %bb11.i.i.i82 ]
  store i8 %.0.i.i88, i8* %79, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit90

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit90: ; preds = %bb10, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i89"
  %101 = phi i8 [ %.0.i.i88, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i89" ], [ %.pre.i69, %bb10 ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %71)
  br label %bb17

bb17:                                             ; preds = %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit36, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit63, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit90, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit
  %.0.in.in = phi i8 [ %32, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit ], [ %101, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit90 ], [ %70, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit63 ], [ %39, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit36 ]
  %.0.in = icmp ne i8 %.0.in.in, 0
  ret i1 %.0.in
}

; <core::char::EscapeDebug as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN60_$LT$core..char..EscapeDebug$u20$as$u20$core..fmt..Debug$GT$3fmt17hcb254c5bcef266c4E"(%"char::EscapeDebug"* noalias readonly align 1 dereferenceable(8) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_13 = alloca %"char::EscapeDefault"*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !2900, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !2900, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !2900, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [11 x i8] }>* @alloc19213 to [0 x i8]*), i16 11), !noalias !2909
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !2909, !noalias !2910
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !2909, !noalias !2910
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !2909, !noalias !2910
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !2909, !noalias !2910
  %12 = bitcast %"char::EscapeDefault"** %_13 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast %"char::EscapeDefault"** %_13 to %"char::EscapeDebug"**
  store %"char::EscapeDebug"* %self, %"char::EscapeDebug"** %13, align 1
  %_10.0 = bitcast %"char::EscapeDefault"** %_13 to {}*
; call core::fmt::builders::DebugTuple::field
  %_8 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_10.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"char::EscapeDefault"**) addrspace(1)*, i16, i16, i1 (%"char::EscapeDefault"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.J to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %14 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %14, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %15 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %15, align 1, !alias.scope !2911, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !2914, !noalias !2911
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %16 = icmp eq i32 %_2.i.i.i.i.i, 0
  %17 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %16, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %18, align 1, !noalias !2917, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !noalias !2917, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !noalias !2917, !nonnull !568
  %23 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %23, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %24, align 1, !noalias !2920, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %26, align 1, !noalias !2920, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %28 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !2920, !nonnull !568
  %29 = call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %29 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %30 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %31 = icmp ne i8 %30, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %31
}

; <core::char::ToLowercase as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN60_$LT$core..char..ToLowercase$u20$as$u20$core..fmt..Debug$GT$3fmt17h2509f80f2c64a499E"(%"char::ToLowercase"* noalias readonly align 1 dereferenceable(13) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_13 = alloca %"char::CaseMappingIter"*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !2923, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !2923, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !2923, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [11 x i8] }>* @alloc19011 to [0 x i8]*), i16 11), !noalias !2932
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !2932, !noalias !2933
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !2932, !noalias !2933
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !2932, !noalias !2933
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !2932, !noalias !2933
  %12 = bitcast %"char::CaseMappingIter"** %_13 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast %"char::CaseMappingIter"** %_13 to %"char::ToLowercase"**
  store %"char::ToLowercase"* %self, %"char::ToLowercase"** %13, align 1
  %_10.0 = bitcast %"char::CaseMappingIter"** %_13 to {}*
; call core::fmt::builders::DebugTuple::field
  %_8 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_10.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"char::CaseMappingIter"**) addrspace(1)*, i16, i16, i1 (%"char::CaseMappingIter"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.K to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %14 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %14, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %15 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %15, align 1, !alias.scope !2934, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !2937, !noalias !2934
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %16 = icmp eq i32 %_2.i.i.i.i.i, 0
  %17 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %16, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %18, align 1, !noalias !2940, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !noalias !2940, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !noalias !2940, !nonnull !568
  %23 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %23, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %24, align 1, !noalias !2943, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %26, align 1, !noalias !2943, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %28 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !2943, !nonnull !568
  %29 = call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %29 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %30 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %31 = icmp ne i8 %30, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %31
}

; <core::char::ToUppercase as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN60_$LT$core..char..ToUppercase$u20$as$u20$core..fmt..Debug$GT$3fmt17he8220cc1a09064e2E"(%"char::ToUppercase"* noalias readonly align 1 dereferenceable(13) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_13 = alloca %"char::CaseMappingIter"*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !2946, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !2946, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !2946, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [11 x i8] }>* @alloc19012 to [0 x i8]*), i16 11), !noalias !2955
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !2955, !noalias !2956
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !2955, !noalias !2956
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !2955, !noalias !2956
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !2955, !noalias !2956
  %12 = bitcast %"char::CaseMappingIter"** %_13 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast %"char::CaseMappingIter"** %_13 to %"char::ToUppercase"**
  store %"char::ToUppercase"* %self, %"char::ToUppercase"** %13, align 1
  %_10.0 = bitcast %"char::CaseMappingIter"** %_13 to {}*
; call core::fmt::builders::DebugTuple::field
  %_8 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_10.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"char::CaseMappingIter"**) addrspace(1)*, i16, i16, i1 (%"char::CaseMappingIter"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.K to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %14 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %14, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %15 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %15, align 1, !alias.scope !2957, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !2960, !noalias !2957
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %16 = icmp eq i32 %_2.i.i.i.i.i, 0
  %17 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %16, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %18, align 1, !noalias !2963, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !noalias !2963, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !noalias !2963, !nonnull !568
  %23 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %23, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %24, align 1, !noalias !2966, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %26, align 1, !noalias !2966, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %28 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !2966, !nonnull !568
  %29 = call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %29 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %30 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %31 = icmp ne i8 %30, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %31
}

; <core::char::CaseMappingIter as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN64_$LT$core..char..CaseMappingIter$u20$as$u20$core..fmt..Debug$GT$3fmt17h488ee2d12e3553b2E"(%"char::CaseMappingIter"* noalias readonly align 1 dereferenceable(13) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_61 = alloca i32*, align 1
  %debug_trait_builder2 = alloca %"fmt::builders::DebugTuple", align 1
  %_49 = alloca i32*, align 1
  %_43 = alloca i32*, align 1
  %debug_trait_builder1 = alloca %"fmt::builders::DebugTuple", align 1
  %_30 = alloca i32*, align 1
  %_24 = alloca i32*, align 1
  %_18 = alloca i32*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %0 = getelementptr inbounds %"char::CaseMappingIter", %"char::CaseMappingIter"* %self, i16 0, i32 0, i16 0
  %1 = load i8, i8* %0, align 1, !range !696
  %trunc = trunc i8 %1 to i2
  switch i2 %trunc, label %bb2 [
    i2 0, label %bb3
    i2 1, label %bb9
    i2 -2, label %bb14
    i2 -1, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit
  ]

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %2, align 1, !noalias !2969, !nonnull !568
  %3 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %4 = bitcast [3 x i16]** %3 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %4, align 1, !noalias !2969, !nonnull !568
  %5 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %6 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %5, align 1, !invariant.load !568, !noalias !2969, !nonnull !568
  %7 = tail call zeroext addrspace(1) i1 %6({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19013 to [0 x i8]*), i16 4), !noalias !2978
  br label %bb20

bb2:                                              ; preds = %start
  unreachable

bb3:                                              ; preds = %start
  %__self_05 = getelementptr inbounds %"char::CaseMappingIter", %"char::CaseMappingIter"* %self, i16 0, i32 2
  %__self_16 = getelementptr inbounds %"char::CaseMappingIter", %"char::CaseMappingIter"* %self, i16 0, i32 2, i16 4
  %__self_2 = getelementptr inbounds %"char::CaseMappingIter", %"char::CaseMappingIter"* %self, i16 0, i32 2, i16 8
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %8)
  %9 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i14 = load {}*, {}** %9, align 1, !noalias !2979, !nonnull !568
  %10 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %11 = bitcast [3 x i16]** %10 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i15 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %11, align 1, !noalias !2979, !nonnull !568
  %12 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i15, i16 3
  %13 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %12, align 1, !invariant.load !568, !noalias !2979, !nonnull !568
  %14 = tail call zeroext addrspace(1) i1 %13({}* nonnull align 1 %_3.0.i.i.i14, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19016 to [0 x i8]*), i16 5), !noalias !2988
  %15 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %15, align 1, !alias.scope !2988, !noalias !2989
  %16 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %17 = zext i1 %14 to i8
  store i8 %17, i8* %16, align 1, !alias.scope !2988, !noalias !2989
  %18 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %18, align 1, !alias.scope !2988, !noalias !2989
  %19 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %19, align 1, !alias.scope !2988, !noalias !2989
  %20 = bitcast i32** %_18 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %20)
  %21 = bitcast i32** %_18 to [12 x i8]**
  store [12 x i8]* %__self_05, [12 x i8]** %21, align 1
  %_15.0 = bitcast i32** %_18 to {}*
; call core::fmt::builders::DebugTuple::field
  %_13 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_15.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.g to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %20)
  %22 = bitcast i32** %_24 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %22)
  %23 = bitcast i32** %_24 to i8**
  store i8* %__self_16, i8** %23, align 1
  %_21.0 = bitcast i32** %_24 to {}*
; call core::fmt::builders::DebugTuple::field
  %_19 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_21.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.g to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %22)
  %24 = bitcast i32** %_30 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %24)
  %25 = bitcast i32** %_30 to i8**
  store i8* %__self_2, i8** %25, align 1
  %_27.0 = bitcast i32** %_30 to {}*
; call core::fmt::builders::DebugTuple::field
  %_25 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_27.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.g to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %24)
  %_3.i16 = load i16, i16* %18, align 1
  %_2.i17 = icmp eq i16 %_3.i16, 0
  %.pre.i19 = load i8, i8* %16, align 1, !range !87
  br i1 %_2.i17, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit40, label %bb2.i21

bb2.i21:                                          ; preds = %bb3
  %_5.i20 = icmp eq i8 %.pre.i19, 0
  br i1 %_5.i20, label %bb3.i.i23, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i39"

bb3.i.i23:                                        ; preds = %bb2.i21
  %_5.i.i.i22 = icmp ne i16 %_3.i16, 1
  %26 = load i8, i8* %19, align 1
  %_7.i.i.i28 = icmp eq i8 %26, 0
  %or.cond = or i1 %_5.i.i.i22, %_7.i.i.i28
  br i1 %or.cond, label %bb20.i.i.i37, label %bb3.i.i.i27

bb3.i.i.i27:                                      ; preds = %bb3.i.i23
  %27 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i24 = load i32*, i32** %27, align 1, !alias.scope !2990, !nonnull !568
  %_3.i.i.i.i.i25 = load i32, i32* %_21.i.i.i.i24, align 1, !alias.scope !2993, !noalias !2990
  %_2.i.i.i.i.i26 = and i32 %_3.i.i.i.i.i25, 4
  %28 = icmp eq i32 %_2.i.i.i.i.i26, 0
  %29 = bitcast i32* %_21.i.i.i.i24 to %"fmt::Formatter"*
  br i1 %28, label %bb11.i.i.i32, label %bb20.i.i.i37

bb11.i.i.i32:                                     ; preds = %bb3.i.i.i27
  %30 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %29, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i30 = load {}*, {}** %30, align 1, !noalias !2996, !nonnull !568
  %31 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %29, i16 0, i32 11, i32 1
  %32 = bitcast [3 x i16]** %31 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i31 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %32, align 1, !noalias !2996, !nonnull !568
  %33 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i31, i16 3
  %34 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %33, align 1, !invariant.load !568, !noalias !2996, !nonnull !568
  %35 = call zeroext addrspace(1) i1 %34({}* nonnull align 1 %_3.0.i2.i.i.i30, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %35, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i39", label %bb20.i.i.i37

bb20.i.i.i37:                                     ; preds = %bb3.i.i23, %bb11.i.i.i32, %bb3.i.i.i27
  %_21.i.i.i33 = load %"fmt::Formatter"*, %"fmt::Formatter"** %15, align 1, !nonnull !568
  %36 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i33, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i34 = load {}*, {}** %36, align 1, !noalias !2999, !nonnull !568
  %37 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i33, i16 0, i32 11, i32 1
  %38 = bitcast [3 x i16]** %37 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i35 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %38, align 1, !noalias !2999, !nonnull !568
  %39 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i35, i16 3
  %40 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %39, align 1, !invariant.load !568, !noalias !2999, !nonnull !568
  %41 = call zeroext addrspace(1) i1 %40({}* nonnull align 1 %_3.0.i.i.i.i34, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i36 = zext i1 %41 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i39"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i39": ; preds = %bb20.i.i.i37, %bb11.i.i.i32, %bb2.i21
  %.0.i.i38 = phi i8 [ 1, %bb2.i21 ], [ %phitmp.i36, %bb20.i.i.i37 ], [ 1, %bb11.i.i.i32 ]
  store i8 %.0.i.i38, i8* %16, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit40

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit40: ; preds = %bb3, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i39"
  %42 = phi i8 [ %.0.i.i38, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i39" ], [ %.pre.i19, %bb3 ]
  %43 = icmp ne i8 %42, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %8)
  br label %bb20

bb9:                                              ; preds = %start
  %__self_04 = getelementptr inbounds %"char::CaseMappingIter", %"char::CaseMappingIter"* %self, i16 0, i32 2
  %__self_1 = getelementptr inbounds %"char::CaseMappingIter", %"char::CaseMappingIter"* %self, i16 0, i32 2, i16 4
  %44 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %44)
  %45 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i41 = load {}*, {}** %45, align 1, !noalias !3002, !nonnull !568
  %46 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %47 = bitcast [3 x i16]** %46 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i42 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %47, align 1, !noalias !3002, !nonnull !568
  %48 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i42, i16 3
  %49 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %48, align 1, !invariant.load !568, !noalias !3002, !nonnull !568
  %50 = tail call zeroext addrspace(1) i1 %49({}* nonnull align 1 %_3.0.i.i.i41, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [3 x i8] }>* @alloc19015 to [0 x i8]*), i16 3), !noalias !3011
  %51 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder1 to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %51, align 1, !alias.scope !3011, !noalias !3012
  %52 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1, i16 0, i32 3
  %53 = zext i1 %50 to i8
  store i8 %53, i8* %52, align 1, !alias.scope !3011, !noalias !3012
  %54 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1, i16 0, i32 5
  store i16 0, i16* %54, align 1, !alias.scope !3011, !noalias !3012
  %55 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1, i16 0, i32 7
  store i8 0, i8* %55, align 1, !alias.scope !3011, !noalias !3012
  %56 = bitcast i32** %_43 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %56)
  %57 = bitcast i32** %_43 to [12 x i8]**
  store [12 x i8]* %__self_04, [12 x i8]** %57, align 1
  %_40.0 = bitcast i32** %_43 to {}*
; call core::fmt::builders::DebugTuple::field
  %_38 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder1, {}* nonnull align 1 %_40.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.g to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %56)
  %58 = bitcast i32** %_49 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %58)
  %59 = bitcast i32** %_49 to i8**
  store i8* %__self_1, i8** %59, align 1
  %_46.0 = bitcast i32** %_49 to {}*
; call core::fmt::builders::DebugTuple::field
  %_44 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder1, {}* nonnull align 1 %_46.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.g to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %58)
  %_3.i43 = load i16, i16* %54, align 1
  %_2.i44 = icmp eq i16 %_3.i43, 0
  %.pre.i46 = load i8, i8* %52, align 1, !range !87
  br i1 %_2.i44, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit67, label %bb2.i48

bb2.i48:                                          ; preds = %bb9
  %_5.i47 = icmp eq i8 %.pre.i46, 0
  br i1 %_5.i47, label %bb3.i.i50, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i66"

bb3.i.i50:                                        ; preds = %bb2.i48
  %_5.i.i.i49 = icmp ne i16 %_3.i43, 1
  %60 = load i8, i8* %55, align 1
  %_7.i.i.i55 = icmp eq i8 %60, 0
  %or.cond97 = or i1 %_5.i.i.i49, %_7.i.i.i55
  br i1 %or.cond97, label %bb20.i.i.i64, label %bb3.i.i.i54

bb3.i.i.i54:                                      ; preds = %bb3.i.i50
  %61 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder1 to i32**
  %_21.i.i.i.i51 = load i32*, i32** %61, align 1, !alias.scope !3013, !nonnull !568
  %_3.i.i.i.i.i52 = load i32, i32* %_21.i.i.i.i51, align 1, !alias.scope !3016, !noalias !3013
  %_2.i.i.i.i.i53 = and i32 %_3.i.i.i.i.i52, 4
  %62 = icmp eq i32 %_2.i.i.i.i.i53, 0
  %63 = bitcast i32* %_21.i.i.i.i51 to %"fmt::Formatter"*
  br i1 %62, label %bb11.i.i.i59, label %bb20.i.i.i64

bb11.i.i.i59:                                     ; preds = %bb3.i.i.i54
  %64 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %63, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i57 = load {}*, {}** %64, align 1, !noalias !3019, !nonnull !568
  %65 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %63, i16 0, i32 11, i32 1
  %66 = bitcast [3 x i16]** %65 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i58 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %66, align 1, !noalias !3019, !nonnull !568
  %67 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i58, i16 3
  %68 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %67, align 1, !invariant.load !568, !noalias !3019, !nonnull !568
  %69 = call zeroext addrspace(1) i1 %68({}* nonnull align 1 %_3.0.i2.i.i.i57, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %69, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i66", label %bb20.i.i.i64

bb20.i.i.i64:                                     ; preds = %bb3.i.i50, %bb11.i.i.i59, %bb3.i.i.i54
  %_21.i.i.i60 = load %"fmt::Formatter"*, %"fmt::Formatter"** %51, align 1, !nonnull !568
  %70 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i60, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i61 = load {}*, {}** %70, align 1, !noalias !3022, !nonnull !568
  %71 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i60, i16 0, i32 11, i32 1
  %72 = bitcast [3 x i16]** %71 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i62 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %72, align 1, !noalias !3022, !nonnull !568
  %73 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i62, i16 3
  %74 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %73, align 1, !invariant.load !568, !noalias !3022, !nonnull !568
  %75 = call zeroext addrspace(1) i1 %74({}* nonnull align 1 %_3.0.i.i.i.i61, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i63 = zext i1 %75 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i66"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i66": ; preds = %bb20.i.i.i64, %bb11.i.i.i59, %bb2.i48
  %.0.i.i65 = phi i8 [ 1, %bb2.i48 ], [ %phitmp.i63, %bb20.i.i.i64 ], [ 1, %bb11.i.i.i59 ]
  store i8 %.0.i.i65, i8* %52, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit67

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit67: ; preds = %bb9, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i66"
  %76 = phi i8 [ %.0.i.i65, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i66" ], [ %.pre.i46, %bb9 ]
  %77 = icmp ne i8 %76, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %44)
  br label %bb20

bb14:                                             ; preds = %start
  %__self_0 = getelementptr inbounds %"char::CaseMappingIter", %"char::CaseMappingIter"* %self, i16 0, i32 2
  %78 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder2, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %78)
  %79 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i68 = load {}*, {}** %79, align 1, !noalias !3025, !nonnull !568
  %80 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %81 = bitcast [3 x i16]** %80 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i69 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %81, align 1, !noalias !3025, !nonnull !568
  %82 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i69, i16 3
  %83 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %82, align 1, !invariant.load !568, !noalias !3025, !nonnull !568
  %84 = tail call zeroext addrspace(1) i1 %83({}* nonnull align 1 %_3.0.i.i.i68, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [3 x i8] }>* @alloc19014 to [0 x i8]*), i16 3), !noalias !3034
  %85 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder2 to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %85, align 1, !alias.scope !3034, !noalias !3035
  %86 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder2, i16 0, i32 3
  %87 = zext i1 %84 to i8
  store i8 %87, i8* %86, align 1, !alias.scope !3034, !noalias !3035
  %88 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder2, i16 0, i32 5
  store i16 0, i16* %88, align 1, !alias.scope !3034, !noalias !3035
  %89 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder2, i16 0, i32 7
  store i8 0, i8* %89, align 1, !alias.scope !3034, !noalias !3035
  %90 = bitcast i32** %_61 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %90)
  %91 = bitcast i32** %_61 to [12 x i8]**
  store [12 x i8]* %__self_0, [12 x i8]** %91, align 1
  %_58.0 = bitcast i32** %_61 to {}*
; call core::fmt::builders::DebugTuple::field
  %_56 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder2, {}* nonnull align 1 %_58.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.g to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %90)
  %_3.i70 = load i16, i16* %88, align 1
  %_2.i71 = icmp eq i16 %_3.i70, 0
  %.pre.i73 = load i8, i8* %86, align 1, !range !87
  br i1 %_2.i71, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit94, label %bb2.i75

bb2.i75:                                          ; preds = %bb14
  %_5.i74 = icmp eq i8 %.pre.i73, 0
  br i1 %_5.i74, label %bb3.i.i77, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i93"

bb3.i.i77:                                        ; preds = %bb2.i75
  %_5.i.i.i76 = icmp ne i16 %_3.i70, 1
  %92 = load i8, i8* %89, align 1
  %_7.i.i.i82 = icmp eq i8 %92, 0
  %or.cond98 = or i1 %_5.i.i.i76, %_7.i.i.i82
  br i1 %or.cond98, label %bb20.i.i.i91, label %bb3.i.i.i81

bb3.i.i.i81:                                      ; preds = %bb3.i.i77
  %93 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder2 to i32**
  %_21.i.i.i.i78 = load i32*, i32** %93, align 1, !alias.scope !3036, !nonnull !568
  %_3.i.i.i.i.i79 = load i32, i32* %_21.i.i.i.i78, align 1, !alias.scope !3039, !noalias !3036
  %_2.i.i.i.i.i80 = and i32 %_3.i.i.i.i.i79, 4
  %94 = icmp eq i32 %_2.i.i.i.i.i80, 0
  %95 = bitcast i32* %_21.i.i.i.i78 to %"fmt::Formatter"*
  br i1 %94, label %bb11.i.i.i86, label %bb20.i.i.i91

bb11.i.i.i86:                                     ; preds = %bb3.i.i.i81
  %96 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %95, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i84 = load {}*, {}** %96, align 1, !noalias !3042, !nonnull !568
  %97 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %95, i16 0, i32 11, i32 1
  %98 = bitcast [3 x i16]** %97 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i85 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %98, align 1, !noalias !3042, !nonnull !568
  %99 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i85, i16 3
  %100 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %99, align 1, !invariant.load !568, !noalias !3042, !nonnull !568
  %101 = call zeroext addrspace(1) i1 %100({}* nonnull align 1 %_3.0.i2.i.i.i84, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %101, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i93", label %bb20.i.i.i91

bb20.i.i.i91:                                     ; preds = %bb3.i.i77, %bb11.i.i.i86, %bb3.i.i.i81
  %_21.i.i.i87 = load %"fmt::Formatter"*, %"fmt::Formatter"** %85, align 1, !nonnull !568
  %102 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i87, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i88 = load {}*, {}** %102, align 1, !noalias !3045, !nonnull !568
  %103 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i87, i16 0, i32 11, i32 1
  %104 = bitcast [3 x i16]** %103 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i89 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %104, align 1, !noalias !3045, !nonnull !568
  %105 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i89, i16 3
  %106 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %105, align 1, !invariant.load !568, !noalias !3045, !nonnull !568
  %107 = call zeroext addrspace(1) i1 %106({}* nonnull align 1 %_3.0.i.i.i.i88, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i90 = zext i1 %107 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i93"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i93": ; preds = %bb20.i.i.i91, %bb11.i.i.i86, %bb2.i75
  %.0.i.i92 = phi i8 [ 1, %bb2.i75 ], [ %phitmp.i90, %bb20.i.i.i91 ], [ 1, %bb11.i.i.i86 ]
  store i8 %.0.i.i92, i8* %86, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit94

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit94: ; preds = %bb14, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i93"
  %108 = phi i8 [ %.0.i.i92, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i93" ], [ %.pre.i73, %bb14 ]
  %109 = icmp ne i8 %108, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %78)
  br label %bb20

bb20:                                             ; preds = %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit40, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit67, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit94, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit
  %.0.in = phi i1 [ %7, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit ], [ %109, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit94 ], [ %77, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit67 ], [ %43, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit40 ]
  ret i1 %.0.in
}

; <core::ffi::VaList as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN54_$LT$core..ffi..VaList$u20$as$u20$core..fmt..Debug$GT$3fmt17h01bc05faba7ceea8E"(i8** noalias readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_24 = alloca %"marker::PhantomData<&mut ffi::VaListImpl>"*, align 1
  %_16 = alloca i8**, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !3048, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !3048, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !3048, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc19017 to [0 x i8]*), i16 6), !noalias !3057
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !3057, !noalias !3058
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !3057, !noalias !3058
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !3057, !noalias !3058
  %11 = bitcast i8*** %_16 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  store i8** %self, i8*** %_16, align 1
  %_13.0 = bitcast i8*** %_16 to {}*
; call core::fmt::builders::DebugStruct::field
  %_9 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19218 to [0 x i8]*), i16 5, {}* nonnull align 1 %_13.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8***) addrspace(1)*, i16, i16, i1 (i8***, %"fmt::Formatter"*) addrspace(1)* }* @vtable.L to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %12 = bitcast %"marker::PhantomData<&mut ffi::VaListImpl>"** %_24 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast %"marker::PhantomData<&mut ffi::VaListImpl>"** %_24 to i8***
  store i8** %self, i8*** %13, align 1
  %_21.0 = bitcast %"marker::PhantomData<&mut ffi::VaListImpl>"** %_24 to {}*
; call core::fmt::builders::DebugStruct::field
  %_17 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [7 x i8] }>* @alloc19150 to [0 x i8]*), i16 7, {}* nonnull align 1 %_21.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"marker::PhantomData<&mut ffi::VaListImpl>"**) addrspace(1)*, i16, i16, i1 (%"marker::PhantomData<&mut ffi::VaListImpl>"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %14 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %14, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %15 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %15, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !3059, !noalias !3062
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %16 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %17, align 1, !nonnull !568
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %19 = bitcast [3 x i16]** %18 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %19, align 1, !nonnull !568
  %20 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %21 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %20, align 1, !invariant.load !568, !nonnull !568
  br i1 %16, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %22 = call zeroext addrspace(1) i1 %21({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %23 = call zeroext addrspace(1) i1 %21({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %23, %bb3.i.i.i ], [ %22, %bb2.i.i.i ]
  %24 = zext i1 %.0.i.i to i8
  store i8 %24, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %25 = phi i8 [ %24, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %26 = icmp ne i8 %25, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %26
}

; <core::iter::adapters::flatten::FlattenCompat<I,U> as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN94_$LT$core..iter..adapters..flatten..FlattenCompat$LT$I$C$U$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h36785ce11e5865c9E"(%"iter::adapters::flatten::FlattenCompat<option::IntoIter<char::EscapeDebug>, char::EscapeDebug>"* noalias readonly align 1 dereferenceable(24) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_33 = alloca %"option::Option<char::EscapeDebug>"*, align 1
  %_25 = alloca %"option::Option<char::EscapeDebug>"*, align 1
  %_17 = alloca %"iter::adapters::fuse::Fuse<option::IntoIter<char::EscapeDebug>>"*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %__self_0_1 = getelementptr inbounds %"iter::adapters::flatten::FlattenCompat<option::IntoIter<char::EscapeDebug>, char::EscapeDebug>", %"iter::adapters::flatten::FlattenCompat<option::IntoIter<char::EscapeDebug>, char::EscapeDebug>"* %self, i16 0, i32 3
  %__self_0_2 = getelementptr inbounds %"iter::adapters::flatten::FlattenCompat<option::IntoIter<char::EscapeDebug>, char::EscapeDebug>", %"iter::adapters::flatten::FlattenCompat<option::IntoIter<char::EscapeDebug>, char::EscapeDebug>"* %self, i16 0, i32 5
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !3065, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !3065, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !3065, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [13 x i8] }>* @alloc19035 to [0 x i8]*), i16 13), !noalias !3074
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !3074, !noalias !3075
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !3074, !noalias !3075
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !3074, !noalias !3075
  %11 = bitcast %"iter::adapters::fuse::Fuse<option::IntoIter<char::EscapeDebug>>"** %_17 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  %12 = bitcast %"iter::adapters::fuse::Fuse<option::IntoIter<char::EscapeDebug>>"** %_17 to %"iter::adapters::flatten::FlattenCompat<option::IntoIter<char::EscapeDebug>, char::EscapeDebug>"**
  store %"iter::adapters::flatten::FlattenCompat<option::IntoIter<char::EscapeDebug>, char::EscapeDebug>"* %self, %"iter::adapters::flatten::FlattenCompat<option::IntoIter<char::EscapeDebug>, char::EscapeDebug>"** %12, align 1
  %_14.0 = bitcast %"iter::adapters::fuse::Fuse<option::IntoIter<char::EscapeDebug>>"** %_17 to {}*
; call core::fmt::builders::DebugStruct::field
  %_10 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19203 to [0 x i8]*), i16 4, {}* nonnull align 1 %_14.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"iter::adapters::fuse::Fuse<option::IntoIter<char::EscapeDebug>>"**) addrspace(1)*, i16, i16, i1 (%"iter::adapters::fuse::Fuse<option::IntoIter<char::EscapeDebug>>"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.P to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %13 = bitcast %"option::Option<char::EscapeDebug>"** %_25 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store %"option::Option<char::EscapeDebug>"* %__self_0_1, %"option::Option<char::EscapeDebug>"** %_25, align 1
  %_22.0 = bitcast %"option::Option<char::EscapeDebug>"** %_25 to {}*
; call core::fmt::builders::DebugStruct::field
  %_18 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [9 x i8] }>* @alloc19037 to [0 x i8]*), i16 9, {}* nonnull align 1 %_22.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"option::Option<char::EscapeDebug>"**) addrspace(1)*, i16, i16, i1 (%"option::Option<char::EscapeDebug>"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.Q to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast %"option::Option<char::EscapeDebug>"** %_33 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store %"option::Option<char::EscapeDebug>"* %__self_0_2, %"option::Option<char::EscapeDebug>"** %_33, align 1
  %_30.0 = bitcast %"option::Option<char::EscapeDebug>"** %_33 to {}*
; call core::fmt::builders::DebugStruct::field
  %_26 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [8 x i8] }>* @alloc19038 to [0 x i8]*), i16 8, {}* nonnull align 1 %_30.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"option::Option<char::EscapeDebug>"**) addrspace(1)*, i16, i16, i1 (%"option::Option<char::EscapeDebug>"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.Q to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %15, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %16 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %16, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !3076, !noalias !3079
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %17 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !nonnull !568
  br i1 %17, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %23 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %24 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %24, %bb3.i.i.i ], [ %23, %bb2.i.i.i ]
  %25 = zext i1 %.0.i.i to i8
  store i8 %25, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %26 = phi i8 [ %25, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %27 = icmp ne i8 %26, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %27
}

; <core::iter::adapters::flatten::FlattenCompat<I,U> as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN94_$LT$core..iter..adapters..flatten..FlattenCompat$LT$I$C$U$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h51fd445a2c0b5fecE"(%"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeUnicode>, char::EscapeUnicode>"* noalias readonly align 1 dereferenceable(18) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_33 = alloca %"option::Option<char::EscapeUnicode>"*, align 1
  %_25 = alloca %"option::Option<char::EscapeUnicode>"*, align 1
  %_17 = alloca { i8*, i8* }*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %__self_0_1 = getelementptr inbounds %"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeUnicode>, char::EscapeUnicode>", %"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeUnicode>, char::EscapeUnicode>"* %self, i16 0, i32 3
  %__self_0_2 = getelementptr inbounds %"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeUnicode>, char::EscapeUnicode>", %"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeUnicode>, char::EscapeUnicode>"* %self, i16 0, i32 5
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !3082, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !3082, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !3082, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [13 x i8] }>* @alloc19035 to [0 x i8]*), i16 13), !noalias !3091
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !3091, !noalias !3092
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !3091, !noalias !3092
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !3091, !noalias !3092
  %11 = bitcast { i8*, i8* }** %_17 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  %12 = bitcast { i8*, i8* }** %_17 to %"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeUnicode>, char::EscapeUnicode>"**
  store %"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeUnicode>, char::EscapeUnicode>"* %self, %"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeUnicode>, char::EscapeUnicode>"** %12, align 1
  %_14.0 = bitcast { i8*, i8* }** %_17 to {}*
; call core::fmt::builders::DebugStruct::field
  %_10 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19203 to [0 x i8]*), i16 4, {}* nonnull align 1 %_14.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({ i8*, i8* }**) addrspace(1)*, i16, i16, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.R to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %13 = bitcast %"option::Option<char::EscapeUnicode>"** %_25 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store %"option::Option<char::EscapeUnicode>"* %__self_0_1, %"option::Option<char::EscapeUnicode>"** %_25, align 1
  %_22.0 = bitcast %"option::Option<char::EscapeUnicode>"** %_25 to {}*
; call core::fmt::builders::DebugStruct::field
  %_18 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [9 x i8] }>* @alloc19037 to [0 x i8]*), i16 9, {}* nonnull align 1 %_22.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"option::Option<char::EscapeUnicode>"**) addrspace(1)*, i16, i16, i1 (%"option::Option<char::EscapeUnicode>"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.S to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast %"option::Option<char::EscapeUnicode>"** %_33 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store %"option::Option<char::EscapeUnicode>"* %__self_0_2, %"option::Option<char::EscapeUnicode>"** %_33, align 1
  %_30.0 = bitcast %"option::Option<char::EscapeUnicode>"** %_33 to {}*
; call core::fmt::builders::DebugStruct::field
  %_26 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [8 x i8] }>* @alloc19038 to [0 x i8]*), i16 8, {}* nonnull align 1 %_30.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"option::Option<char::EscapeUnicode>"**) addrspace(1)*, i16, i16, i1 (%"option::Option<char::EscapeUnicode>"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.S to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %15, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %16 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %16, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !3093, !noalias !3096
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %17 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !nonnull !568
  br i1 %17, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %23 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %24 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %24, %bb3.i.i.i ], [ %23, %bb2.i.i.i ]
  %25 = zext i1 %.0.i.i to i8
  store i8 %25, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %26 = phi i8 [ %25, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %27 = icmp ne i8 %26, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %27
}

; <core::iter::adapters::flatten::FlattenCompat<I,U> as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN94_$LT$core..iter..adapters..flatten..FlattenCompat$LT$I$C$U$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hdedd5cb503bae417E"(%"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeDefault>, char::EscapeDefault>"* noalias readonly align 1 dereferenceable(20) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_33 = alloca %"option::Option<char::EscapeDefault>"*, align 1
  %_25 = alloca %"option::Option<char::EscapeDefault>"*, align 1
  %_17 = alloca { i8*, i8* }*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %__self_0_1 = getelementptr inbounds %"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeDefault>, char::EscapeDefault>", %"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeDefault>, char::EscapeDefault>"* %self, i16 0, i32 3
  %__self_0_2 = getelementptr inbounds %"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeDefault>, char::EscapeDefault>", %"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeDefault>, char::EscapeDefault>"* %self, i16 0, i32 5
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !3099, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !3099, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !3099, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [13 x i8] }>* @alloc19035 to [0 x i8]*), i16 13), !noalias !3108
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !3108, !noalias !3109
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !3108, !noalias !3109
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !3108, !noalias !3109
  %11 = bitcast { i8*, i8* }** %_17 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  %12 = bitcast { i8*, i8* }** %_17 to %"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeDefault>, char::EscapeDefault>"**
  store %"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeDefault>, char::EscapeDefault>"* %self, %"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeDefault>, char::EscapeDefault>"** %12, align 1
  %_14.0 = bitcast { i8*, i8* }** %_17 to {}*
; call core::fmt::builders::DebugStruct::field
  %_10 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19203 to [0 x i8]*), i16 4, {}* nonnull align 1 %_14.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({ i8*, i8* }**) addrspace(1)*, i16, i16, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.T to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %13 = bitcast %"option::Option<char::EscapeDefault>"** %_25 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store %"option::Option<char::EscapeDefault>"* %__self_0_1, %"option::Option<char::EscapeDefault>"** %_25, align 1
  %_22.0 = bitcast %"option::Option<char::EscapeDefault>"** %_25 to {}*
; call core::fmt::builders::DebugStruct::field
  %_18 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [9 x i8] }>* @alloc19037 to [0 x i8]*), i16 9, {}* nonnull align 1 %_22.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"option::Option<char::EscapeDefault>"**) addrspace(1)*, i16, i16, i1 (%"option::Option<char::EscapeDefault>"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.U to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast %"option::Option<char::EscapeDefault>"** %_33 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store %"option::Option<char::EscapeDefault>"* %__self_0_2, %"option::Option<char::EscapeDefault>"** %_33, align 1
  %_30.0 = bitcast %"option::Option<char::EscapeDefault>"** %_33 to {}*
; call core::fmt::builders::DebugStruct::field
  %_26 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [8 x i8] }>* @alloc19038 to [0 x i8]*), i16 8, {}* nonnull align 1 %_30.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"option::Option<char::EscapeDefault>"**) addrspace(1)*, i16, i16, i1 (%"option::Option<char::EscapeDefault>"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.U to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %15, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %16 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %16, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !3110, !noalias !3113
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %17 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !nonnull !568
  br i1 %17, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %23 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %24 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %24, %bb3.i.i.i ], [ %23, %bb2.i.i.i ]
  %25 = zext i1 %.0.i.i to i8
  store i8 %25, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %26 = phi i8 [ %25, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %27 = icmp ne i8 %26, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %27
}

; <core::iter::adapters::flatten::FlattenCompat<I,U> as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN94_$LT$core..iter..adapters..flatten..FlattenCompat$LT$I$C$U$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17he1cb98388fb0b894E"(%"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeDebugContinue>, char::EscapeDebug>"* noalias readonly align 1 dereferenceable(20) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_33 = alloca %"option::Option<char::EscapeDebug>"*, align 1
  %_25 = alloca %"option::Option<char::EscapeDebug>"*, align 1
  %_17 = alloca { i8*, i8* }*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %__self_0_1 = getelementptr inbounds %"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeDebugContinue>, char::EscapeDebug>", %"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeDebugContinue>, char::EscapeDebug>"* %self, i16 0, i32 3
  %__self_0_2 = getelementptr inbounds %"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeDebugContinue>, char::EscapeDebug>", %"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeDebugContinue>, char::EscapeDebug>"* %self, i16 0, i32 5
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !3116, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !3116, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !3116, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [13 x i8] }>* @alloc19035 to [0 x i8]*), i16 13), !noalias !3125
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !3125, !noalias !3126
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !3125, !noalias !3126
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !3125, !noalias !3126
  %11 = bitcast { i8*, i8* }** %_17 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  %12 = bitcast { i8*, i8* }** %_17 to %"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeDebugContinue>, char::EscapeDebug>"**
  store %"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeDebugContinue>, char::EscapeDebug>"* %self, %"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeDebugContinue>, char::EscapeDebug>"** %12, align 1
  %_14.0 = bitcast { i8*, i8* }** %_17 to {}*
; call core::fmt::builders::DebugStruct::field
  %_10 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19203 to [0 x i8]*), i16 4, {}* nonnull align 1 %_14.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({ i8*, i8* }**) addrspace(1)*, i16, i16, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.V to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %13 = bitcast %"option::Option<char::EscapeDebug>"** %_25 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store %"option::Option<char::EscapeDebug>"* %__self_0_1, %"option::Option<char::EscapeDebug>"** %_25, align 1
  %_22.0 = bitcast %"option::Option<char::EscapeDebug>"** %_25 to {}*
; call core::fmt::builders::DebugStruct::field
  %_18 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [9 x i8] }>* @alloc19037 to [0 x i8]*), i16 9, {}* nonnull align 1 %_22.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"option::Option<char::EscapeDebug>"**) addrspace(1)*, i16, i16, i1 (%"option::Option<char::EscapeDebug>"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.Q to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast %"option::Option<char::EscapeDebug>"** %_33 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store %"option::Option<char::EscapeDebug>"* %__self_0_2, %"option::Option<char::EscapeDebug>"** %_33, align 1
  %_30.0 = bitcast %"option::Option<char::EscapeDebug>"** %_33 to {}*
; call core::fmt::builders::DebugStruct::field
  %_26 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [8 x i8] }>* @alloc19038 to [0 x i8]*), i16 8, {}* nonnull align 1 %_30.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"option::Option<char::EscapeDebug>"**) addrspace(1)*, i16, i16, i1 (%"option::Option<char::EscapeDebug>"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.Q to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %15, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %16 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %16, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !3127, !noalias !3130
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %17 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !nonnull !568
  br i1 %17, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %23 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %24 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %24, %bb3.i.i.i ], [ %23, %bb2.i.i.i ]
  %25 = zext i1 %.0.i.i to i8
  store i8 %25, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %26 = phi i8 [ %25, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %27 = icmp ne i8 %26, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %27
}

; <core::option::NoneError as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN60_$LT$core..option..NoneError$u20$as$u20$core..fmt..Debug$GT$3fmt17hb7e065131d6efdbeE"(%"option::NoneError"* noalias nocapture nonnull readonly align 1 %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit:
  %0 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %0, align 1, !noalias !3133, !nonnull !568
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %2 = bitcast [3 x i16]** %1 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %2, align 1, !noalias !3133, !nonnull !568
  %3 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %4 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %3, align 1, !invariant.load !568, !noalias !3133, !nonnull !568
  %5 = tail call zeroext addrspace(1) i1 %4({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [9 x i8] }>* @alloc19077 to [0 x i8]*), i16 9), !noalias !3142
  ret i1 %5
}

; <core::panic::PanicInfo as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN59_$LT$core..panic..PanicInfo$u20$as$u20$core..fmt..Debug$GT$3fmt17h6b468cdad4e8cc9cE"(%"panic::PanicInfo"* noalias readonly align 1 dereferenceable(8) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_33 = alloca %"panic::Location"**, align 1
  %_25 = alloca i8**, align 1
  %_17 = alloca { {}*, [3 x i16]* }*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %__self_0_1 = getelementptr inbounds %"panic::PanicInfo", %"panic::PanicInfo"* %self, i16 0, i32 3
  %__self_0_2 = getelementptr inbounds %"panic::PanicInfo", %"panic::PanicInfo"* %self, i16 0, i32 5
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !3143, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !3143, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !3143, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [9 x i8] }>* @alloc19078 to [0 x i8]*), i16 9), !noalias !3152
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !3152, !noalias !3153
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !3152, !noalias !3153
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !3152, !noalias !3153
  %11 = bitcast { {}*, [3 x i16]* }** %_17 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  %12 = bitcast { {}*, [3 x i16]* }** %_17 to %"panic::PanicInfo"**
  store %"panic::PanicInfo"* %self, %"panic::PanicInfo"** %12, align 1
  %_14.0 = bitcast { {}*, [3 x i16]* }** %_17 to {}*
; call core::fmt::builders::DebugStruct::field
  %_10 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [7 x i8] }>* @alloc19079 to [0 x i8]*), i16 7, {}* nonnull align 1 %_14.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({ {}*, [3 x i16]* }**) addrspace(1)*, i16, i16, i1 ({ {}*, [3 x i16]* }**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1a to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %13 = bitcast i8*** %_25 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i8** %__self_0_1, i8*** %_25, align 1
  %_22.0 = bitcast i8*** %_25 to {}*
; call core::fmt::builders::DebugStruct::field
  %_18 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [7 x i8] }>* @alloc19080 to [0 x i8]*), i16 7, {}* nonnull align 1 %_22.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8***) addrspace(1)*, i16, i16, i1 (i8***, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1b to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast %"panic::Location"*** %_33 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store %"panic::Location"** %__self_0_2, %"panic::Location"*** %_33, align 1
  %_30.0 = bitcast %"panic::Location"*** %_33 to {}*
; call core::fmt::builders::DebugStruct::field
  %_26 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [8 x i8] }>* @alloc19081 to [0 x i8]*), i16 8, {}* nonnull align 1 %_30.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"panic::Location"***) addrspace(1)*, i16, i16, i1 (%"panic::Location"***, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1c to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %15, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %16 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %16, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !3154, !noalias !3157
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %17 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !nonnull !568
  br i1 %17, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %23 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %24 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %24, %bb3.i.i.i ], [ %23, %bb2.i.i.i ]
  %25 = zext i1 %.0.i.i to i8
  store i8 %25, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %26 = phi i8 [ %25, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %27 = icmp ne i8 %26, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %27
}

; <core::panic::Location as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN58_$LT$core..panic..Location$u20$as$u20$core..fmt..Debug$GT$3fmt17hbd5f07911552ab2bE"(%"panic::Location"* noalias readonly align 1 dereferenceable(12) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_33 = alloca i32*, align 1
  %_25 = alloca i32*, align 1
  %_17 = alloca { [0 x i8]*, i16 }*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %__self_0_1 = getelementptr inbounds %"panic::Location", %"panic::Location"* %self, i16 0, i32 3
  %__self_0_2 = getelementptr inbounds %"panic::Location", %"panic::Location"* %self, i16 0, i32 5
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !3160, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !3160, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !3160, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [8 x i8] }>* @alloc19082 to [0 x i8]*), i16 8), !noalias !3169
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !3169, !noalias !3170
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !3169, !noalias !3170
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !3169, !noalias !3170
  %11 = bitcast { [0 x i8]*, i16 }** %_17 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  %12 = bitcast { [0 x i8]*, i16 }** %_17 to %"panic::Location"**
  store %"panic::Location"* %self, %"panic::Location"** %12, align 1
  %_14.0 = bitcast { [0 x i8]*, i16 }** %_17 to {}*
; call core::fmt::builders::DebugStruct::field
  %_10 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19083 to [0 x i8]*), i16 4, {}* nonnull align 1 %_14.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({ [0 x i8]*, i16 }**) addrspace(1)*, i16, i16, i1 ({ [0 x i8]*, i16 }**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1d to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %13 = bitcast i32** %_25 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i32* %__self_0_1, i32** %_25, align 1
  %_22.0 = bitcast i32** %_25 to {}*
; call core::fmt::builders::DebugStruct::field
  %_18 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19084 to [0 x i8]*), i16 4, {}* nonnull align 1 %_22.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1e to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast i32** %_33 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store i32* %__self_0_2, i32** %_33, align 1
  %_30.0 = bitcast i32** %_33 to {}*
; call core::fmt::builders::DebugStruct::field
  %_26 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [3 x i8] }>* @alloc19085 to [0 x i8]*), i16 3, {}* nonnull align 1 %_30.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1e to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %15, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %16 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %16, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !3171, !noalias !3174
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %17 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !nonnull !568
  br i1 %17, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %23 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %24 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %24, %bb3.i.i.i ], [ %23, %bb2.i.i.i ]
  %25 = zext i1 %.0.i.i to i8
  store i8 %25, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %26 = phi i8 [ %25, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %27 = icmp ne i8 %26, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %27
}

; <core::sync::atomic::Ordering as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..sync..atomic..Ordering$u20$as$u20$core..fmt..Debug$GT$3fmt17h7b10cb0611d2e898E"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = load i8, i8* %self, align 1, !range !632
  %trunc = trunc i8 %0 to i3
  switch i3 %trunc, label %bb2 [
    i3 0, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit32
    i3 1, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit59
    i3 2, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit86
    i3 3, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit113
    i3 -4, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit
  ]

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !3177, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !3177, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !3177, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc19086 to [0 x i8]*), i16 6), !noalias !3186
  br label %bb17

bb2:                                              ; preds = %start
  unreachable

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit32: ; preds = %start
  %7 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i6 = load {}*, {}** %7, align 1, !noalias !3187, !nonnull !568
  %8 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %9 = bitcast [3 x i16]** %8 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i7 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %9, align 1, !noalias !3187, !nonnull !568
  %10 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i7, i16 3
  %11 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %10, align 1, !invariant.load !568, !noalias !3187, !nonnull !568
  %12 = tail call zeroext addrspace(1) i1 %11({}* nonnull align 1 %_3.0.i.i.i6, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [7 x i8] }>* @alloc19090 to [0 x i8]*), i16 7), !noalias !3196
  br label %bb17

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit59: ; preds = %start
  %13 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i33 = load {}*, {}** %13, align 1, !noalias !3197, !nonnull !568
  %14 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %15 = bitcast [3 x i16]** %14 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i34 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %15, align 1, !noalias !3197, !nonnull !568
  %16 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i34, i16 3
  %17 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %16, align 1, !invariant.load !568, !noalias !3197, !nonnull !568
  %18 = tail call zeroext addrspace(1) i1 %17({}* nonnull align 1 %_3.0.i.i.i33, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [7 x i8] }>* @alloc19089 to [0 x i8]*), i16 7), !noalias !3206
  br label %bb17

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit86: ; preds = %start
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i60 = load {}*, {}** %19, align 1, !noalias !3207, !nonnull !568
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %21 = bitcast [3 x i16]** %20 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i61 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %21, align 1, !noalias !3207, !nonnull !568
  %22 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i61, i16 3
  %23 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %22, align 1, !invariant.load !568, !noalias !3207, !nonnull !568
  %24 = tail call zeroext addrspace(1) i1 %23({}* nonnull align 1 %_3.0.i.i.i60, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [7 x i8] }>* @alloc19088 to [0 x i8]*), i16 7), !noalias !3216
  br label %bb17

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit113: ; preds = %start
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i87 = load {}*, {}** %25, align 1, !noalias !3217, !nonnull !568
  %26 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %27 = bitcast [3 x i16]** %26 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i88 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %27, align 1, !noalias !3217, !nonnull !568
  %28 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i88, i16 3
  %29 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %28, align 1, !invariant.load !568, !noalias !3217, !nonnull !568
  %30 = tail call zeroext addrspace(1) i1 %29({}* nonnull align 1 %_3.0.i.i.i87, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc19087 to [0 x i8]*), i16 6), !noalias !3226
  br label %bb17

bb17:                                             ; preds = %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit32, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit59, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit86, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit113, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit
  %.0.in = phi i1 [ %6, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit ], [ %30, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit113 ], [ %24, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit86 ], [ %18, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit59 ], [ %12, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit32 ]
  ret i1 %.0.in
}

; <core::sync::atomic::AtomicI8 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..sync..atomic..AtomicI8$u20$as$u20$core..fmt..Debug$GT$3fmt17hfcdede915ce8a753E"(%"sync::atomic::AtomicI8"* nocapture readonly align 1 dereferenceable(1) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i.i = alloca [128 x i8], align 1
  %buf.i.i.i = alloca [128 x i8], align 1
  %_5 = alloca i8, align 1
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 1, i8* nonnull %_5)
  %_5.i = getelementptr inbounds %"sync::atomic::AtomicI8", %"sync::atomic::AtomicI8"* %self, i16 0, i32 0, i16 0
  %0 = load atomic i8, i8* %_5.i seq_cst, align 1
  store i8 %0, i8* %_5, align 1
  %1 = bitcast %"fmt::Formatter"* %f to i32*
  %_3.i.i = load i32, i32* %1, align 1, !alias.scope !3227, !noalias !3230
  %_2.i.i = and i32 %_3.i.i, 16
  %2 = icmp eq i32 %_2.i.i, 0
  br i1 %2, label %bb2.i, label %bb3.i

bb2.i:                                            ; preds = %start
  %_2.i2.i = and i32 %_3.i.i, 32
  %3 = icmp eq i32 %_2.i2.i, 0
  br i1 %3, label %bb6.i, label %bb7.i

bb3.i:                                            ; preds = %start
  %4 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %4), !noalias !3233
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %4, i8 undef, i16 128, i1 false), !noalias !3233
  %5 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i, i16 0, i16 128
  br label %bb15.i.i

bb15.i.i:                                         ; preds = %bb15.i.i, %bb3.i
  %iter.sroa.4.0.i.i = phi i8* [ %5, %bb3.i ], [ %6, %bb15.i.i ]
  %x.0.i.i = phi i8 [ %0, %bb3.i ], [ %8, %bb15.i.i ]
  %curr.0.i.i = phi i16 [ 128, %bb3.i ], [ %11, %bb15.i.i ]
  %6 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i.i, i16 -1
  %7 = and i8 %x.0.i.i, 15
  %8 = lshr i8 %x.0.i.i, 4
  %_5.i8.i.i = icmp ult i8 %7, 10
  %9 = or i8 %7, 48
  %10 = add nuw nsw i8 %7, 87
  %.0.i14.i.i = select i1 %_5.i8.i.i, i8 %9, i8 %10
  store i8 %.0.i14.i.i, i8* %6, align 1, !noalias !3233
  %11 = add nsw i16 %curr.0.i.i, -1
  %12 = icmp eq i8 %8, 0
  br i1 %12, label %bb43.i.i, label %bb15.i.i

bb43.i.i:                                         ; preds = %bb15.i.i
  %_3.i.i.i.i.i = icmp ugt i16 %11, 128
  br i1 %_3.i.i.i.i.i, label %bb2.i.i.i.i.i, label %"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i8$GT$3fmt17h7943257fc24ac32eE.exit"

bb2.i.i.i.i.i:                                    ; preds = %bb43.i.i
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %11, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*)), !noalias !3233
  unreachable

"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i8$GT$3fmt17h7943257fc24ac32eE.exit": ; preds = %bb43.i.i
  %13 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i, i16 0, i16 %11
  %_7.i.i.i.i.i.i = sub nuw nsw i16 129, %curr.0.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i = bitcast i8* %13 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %14 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i, i16 %_7.i.i.i.i.i.i), !noalias !3233
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %4), !noalias !3233
  br label %"_ZN4core3fmt3num49_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i8$GT$3fmt17h2579ec9bdf765595E.exit"

bb6.i:                                            ; preds = %bb2.i
; call core::fmt::num::imp::<impl core::fmt::Display for i8>::fmt
  %15 = call zeroext addrspace(1) i1 @"_ZN4core3fmt3num3imp51_$LT$impl$u20$core..fmt..Display$u20$for$u20$i8$GT$3fmt17h240822c14587e42dE"(i8* noalias nonnull readonly align 1 dereferenceable(1) %_5, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  br label %"_ZN4core3fmt3num49_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i8$GT$3fmt17h2579ec9bdf765595E.exit"

bb7.i:                                            ; preds = %bb2.i
  %16 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %16), !noalias !3236
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %16, i8 undef, i16 128, i1 false), !noalias !3236
  %17 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 128
  br label %bb15.i.i.i

bb15.i.i.i:                                       ; preds = %bb15.i.i.i, %bb7.i
  %iter.sroa.4.0.i.i.i = phi i8* [ %17, %bb7.i ], [ %18, %bb15.i.i.i ]
  %x.0.i.i.i = phi i8 [ %0, %bb7.i ], [ %20, %bb15.i.i.i ]
  %curr.0.i.i.i = phi i16 [ 128, %bb7.i ], [ %23, %bb15.i.i.i ]
  %18 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i.i.i, i16 -1
  %19 = and i8 %x.0.i.i.i, 15
  %20 = lshr i8 %x.0.i.i.i, 4
  %_5.i8.i.i.i = icmp ult i8 %19, 10
  %21 = or i8 %19, 48
  %22 = add nuw nsw i8 %19, 55
  %.0.i14.i.i.i = select i1 %_5.i8.i.i.i, i8 %21, i8 %22
  store i8 %.0.i14.i.i.i, i8* %18, align 1, !noalias !3236
  %23 = add nsw i16 %curr.0.i.i.i, -1
  %24 = icmp eq i8 %20, 0
  br i1 %24, label %bb43.i.i.i, label %bb15.i.i.i

bb43.i.i.i:                                       ; preds = %bb15.i.i.i
  %_3.i.i.i.i.i.i = icmp ugt i16 %23, 128
  br i1 %_3.i.i.i.i.i.i, label %bb2.i.i.i.i.i.i, label %"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i8$GT$3fmt17h405967de1e4d6acaE.exit.i"

bb2.i.i.i.i.i.i:                                  ; preds = %bb43.i.i.i
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %23, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*)), !noalias !3236
  unreachable

"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i8$GT$3fmt17h405967de1e4d6acaE.exit.i": ; preds = %bb43.i.i.i
  %25 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 %23
  %_7.i.i.i.i.i.i.i = sub nuw nsw i16 129, %curr.0.i.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i = bitcast i8* %25 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %26 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i, i16 %_7.i.i.i.i.i.i.i), !noalias !3236
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %16), !noalias !3236
  br label %"_ZN4core3fmt3num49_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i8$GT$3fmt17h2579ec9bdf765595E.exit"

"_ZN4core3fmt3num49_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i8$GT$3fmt17h2579ec9bdf765595E.exit": ; preds = %"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i8$GT$3fmt17h7943257fc24ac32eE.exit", %bb6.i, %"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i8$GT$3fmt17h405967de1e4d6acaE.exit.i"
  %.0.in.i = phi i1 [ %14, %"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i8$GT$3fmt17h7943257fc24ac32eE.exit" ], [ %26, %"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i8$GT$3fmt17h405967de1e4d6acaE.exit.i" ], [ %15, %bb6.i ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 1, i8* nonnull %_5)
  ret i1 %.0.in.i
}

; <core::sync::atomic::AtomicU8 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..sync..atomic..AtomicU8$u20$as$u20$core..fmt..Debug$GT$3fmt17hbcc15d5571ac4404E"(%"sync::atomic::AtomicU8"* nocapture readonly align 1 dereferenceable(1) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i.i2 = alloca [128 x i8], align 1
  %buf.i.i = alloca [39 x i8], align 1
  %buf.i.i.i = alloca [128 x i8], align 1
  %_5.i = getelementptr inbounds %"sync::atomic::AtomicU8", %"sync::atomic::AtomicU8"* %self, i16 0, i32 0, i16 0
  %0 = load atomic i8, i8* %_5.i seq_cst, align 1
  %1 = bitcast %"fmt::Formatter"* %f to i32*
  %_3.i.i = load i32, i32* %1, align 1, !alias.scope !3239, !noalias !3242
  %_2.i.i = and i32 %_3.i.i, 16
  %2 = icmp eq i32 %_2.i.i, 0
  br i1 %2, label %bb2.i, label %bb3.i

bb2.i:                                            ; preds = %start
  %_2.i2.i = and i32 %_3.i.i, 32
  %3 = icmp eq i32 %_2.i2.i, 0
  br i1 %3, label %bb6.i, label %bb7.i

bb3.i:                                            ; preds = %start
  %4 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i2, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %4), !noalias !3245
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %4, i8 undef, i16 128, i1 false), !noalias !3245
  %5 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i2, i16 0, i16 128
  br label %bb15.i.i

bb15.i.i:                                         ; preds = %bb15.i.i, %bb3.i
  %iter.sroa.4.0.i.i = phi i8* [ %5, %bb3.i ], [ %6, %bb15.i.i ]
  %x.0.i.i = phi i8 [ %0, %bb3.i ], [ %8, %bb15.i.i ]
  %curr.0.i.i = phi i16 [ 128, %bb3.i ], [ %11, %bb15.i.i ]
  %6 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i.i, i16 -1
  %7 = and i8 %x.0.i.i, 15
  %8 = lshr i8 %x.0.i.i, 4
  %_5.i8.i.i = icmp ult i8 %7, 10
  %9 = or i8 %7, 48
  %10 = add nuw nsw i8 %7, 87
  %.0.i14.i.i = select i1 %_5.i8.i.i, i8 %9, i8 %10
  store i8 %.0.i14.i.i, i8* %6, align 1, !noalias !3245
  %11 = add nsw i16 %curr.0.i.i, -1
  %12 = icmp eq i8 %8, 0
  br i1 %12, label %bb43.i.i, label %bb15.i.i

bb43.i.i:                                         ; preds = %bb15.i.i
  %_3.i.i.i.i.i = icmp ugt i16 %11, 128
  br i1 %_3.i.i.i.i.i, label %bb2.i.i.i.i.i, label %"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u8$GT$3fmt17h60e0f1f08fe98d54E.exit"

bb2.i.i.i.i.i:                                    ; preds = %bb43.i.i
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %11, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*)), !noalias !3245
  unreachable

"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u8$GT$3fmt17h60e0f1f08fe98d54E.exit": ; preds = %bb43.i.i
  %13 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i2, i16 0, i16 %11
  %_7.i.i.i.i.i.i = sub nuw nsw i16 129, %curr.0.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i3 = bitcast i8* %13 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %14 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i3, i16 %_7.i.i.i.i.i.i), !noalias !3245
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %4), !noalias !3245
  br label %"_ZN4core3fmt3num49_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u8$GT$3fmt17h3a40db8b381f1ef4E.exit"

bb6.i:                                            ; preds = %bb2.i
  %15 = zext i8 %0 to i16
  %16 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 39, i8* nonnull %16), !noalias !3248
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(39) %16, i8 undef, i16 39, i1 false), !noalias !3248
  %_57.i.i = icmp ugt i8 %0, 99
  br i1 %_57.i.i, label %bb26.i.thread.i, label %bb26.i.i

bb26.i.thread.i:                                  ; preds = %bb6.i
  %17 = udiv i8 %0, 100
  %18 = mul i8 %17, 100
  %_6028.i7.i.decomposed = sub i8 %0, %18
  %19 = shl nuw i8 %_6028.i7.i.decomposed, 1
  %d14.i.i = zext i8 %19 to i16
  %20 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d14.i.i
  %21 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 37
  %22 = bitcast i8* %20 to i16*
  %23 = bitcast i8* %21 to i16*
  %24 = load i16, i16* %22, align 1, !noalias !3248
  store i16 %24, i16* %23, align 1, !noalias !3248
  br label %bb28.i.i

bb26.i.i:                                         ; preds = %bb6.i
  %_75.i.i = icmp ult i8 %0, 10
  br i1 %_75.i.i, label %bb28.i.i, label %bb27.i.i

bb27.i.i:                                         ; preds = %bb26.i.i
  %d16.i.i = shl nuw nsw i16 %15, 1
  %25 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d16.i.i
  %26 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 37
  %27 = bitcast i8* %25 to i16*
  %28 = bitcast i8* %26 to i16*
  %29 = load i16, i16* %27, align 1, !noalias !3248
  store i16 %29, i16* %28, align 1, !noalias !3248
  br label %"_ZN4core3fmt3num3imp51_$LT$impl$u20$core..fmt..Display$u20$for$u20$u8$GT$3fmt17h15a9d9444c491f95E.exit"

bb28.i.i:                                         ; preds = %bb26.i.i, %bb26.i.thread.i
  %curr.1.i6.i = phi i16 [ 36, %bb26.i.thread.i ], [ 38, %bb26.i.i ]
  %n1.0.i5.off0.i = phi i8 [ %17, %bb26.i.thread.i ], [ %0, %bb26.i.i ]
  %30 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 %curr.1.i6.i
  %31 = add nuw nsw i8 %n1.0.i5.off0.i, 48
  store i8 %31, i8* %30, align 1, !noalias !3248
  br label %"_ZN4core3fmt3num3imp51_$LT$impl$u20$core..fmt..Display$u20$for$u20$u8$GT$3fmt17h15a9d9444c491f95E.exit"

"_ZN4core3fmt3num3imp51_$LT$impl$u20$core..fmt..Display$u20$for$u20$u8$GT$3fmt17h15a9d9444c491f95E.exit": ; preds = %bb27.i.i, %bb28.i.i
  %curr.2.i.i = phi i16 [ %curr.1.i6.i, %bb28.i.i ], [ 37, %bb27.i.i ]
  %32 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 %curr.2.i.i
  %_98.i.i = sub nuw nsw i16 39, %curr.2.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i = bitcast i8* %32 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %33 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), i16 0, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i, i16 %_98.i.i), !noalias !3248
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 39, i8* nonnull %16), !noalias !3248
  br label %"_ZN4core3fmt3num49_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u8$GT$3fmt17h3a40db8b381f1ef4E.exit"

bb7.i:                                            ; preds = %bb2.i
  %34 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %34), !noalias !3251
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %34, i8 undef, i16 128, i1 false), !noalias !3251
  %35 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 128
  br label %bb15.i.i.i

bb15.i.i.i:                                       ; preds = %bb15.i.i.i, %bb7.i
  %iter.sroa.4.0.i.i.i = phi i8* [ %35, %bb7.i ], [ %36, %bb15.i.i.i ]
  %x.0.i.i.i = phi i8 [ %0, %bb7.i ], [ %38, %bb15.i.i.i ]
  %curr.0.i.i.i = phi i16 [ 128, %bb7.i ], [ %41, %bb15.i.i.i ]
  %36 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i.i.i, i16 -1
  %37 = and i8 %x.0.i.i.i, 15
  %38 = lshr i8 %x.0.i.i.i, 4
  %_5.i8.i.i.i = icmp ult i8 %37, 10
  %39 = or i8 %37, 48
  %40 = add nuw nsw i8 %37, 55
  %.0.i14.i.i.i = select i1 %_5.i8.i.i.i, i8 %39, i8 %40
  store i8 %.0.i14.i.i.i, i8* %36, align 1, !noalias !3251
  %41 = add nsw i16 %curr.0.i.i.i, -1
  %42 = icmp eq i8 %38, 0
  br i1 %42, label %bb43.i.i.i, label %bb15.i.i.i

bb43.i.i.i:                                       ; preds = %bb15.i.i.i
  %_3.i.i.i.i.i.i = icmp ugt i16 %41, 128
  br i1 %_3.i.i.i.i.i.i, label %bb2.i.i.i.i.i.i, label %"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u8$GT$3fmt17he584874f14cc0ebbE.exit.i"

bb2.i.i.i.i.i.i:                                  ; preds = %bb43.i.i.i
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %41, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*)), !noalias !3251
  unreachable

"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u8$GT$3fmt17he584874f14cc0ebbE.exit.i": ; preds = %bb43.i.i.i
  %43 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 %41
  %_7.i.i.i.i.i.i.i = sub nuw nsw i16 129, %curr.0.i.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i = bitcast i8* %43 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %44 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i, i16 %_7.i.i.i.i.i.i.i), !noalias !3251
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %34), !noalias !3251
  br label %"_ZN4core3fmt3num49_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u8$GT$3fmt17h3a40db8b381f1ef4E.exit"

"_ZN4core3fmt3num49_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u8$GT$3fmt17h3a40db8b381f1ef4E.exit": ; preds = %"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u8$GT$3fmt17h60e0f1f08fe98d54E.exit", %"_ZN4core3fmt3num3imp51_$LT$impl$u20$core..fmt..Display$u20$for$u20$u8$GT$3fmt17h15a9d9444c491f95E.exit", %"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u8$GT$3fmt17he584874f14cc0ebbE.exit.i"
  %.0.in.i = phi i1 [ %14, %"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u8$GT$3fmt17h60e0f1f08fe98d54E.exit" ], [ %44, %"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u8$GT$3fmt17he584874f14cc0ebbE.exit.i" ], [ %33, %"_ZN4core3fmt3num3imp51_$LT$impl$u20$core..fmt..Display$u20$for$u20$u8$GT$3fmt17h15a9d9444c491f95E.exit" ]
  ret i1 %.0.in.i
}

; <core::sync::atomic::AtomicI16 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN66_$LT$core..sync..atomic..AtomicI16$u20$as$u20$core..fmt..Debug$GT$3fmt17ha4fc166a51837443E"(%"sync::atomic::AtomicI16"* nocapture readonly align 2 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i.i1 = alloca [128 x i8], align 1
  %buf.i.i = alloca [39 x i8], align 1
  %buf.i.i.i = alloca [128 x i8], align 1
  %_5.i = bitcast %"sync::atomic::AtomicI16"* %self to i16*
  %0 = load atomic i16, i16* %_5.i seq_cst, align 2
  %1 = bitcast %"fmt::Formatter"* %f to i32*
  %_3.i.i = load i32, i32* %1, align 1, !alias.scope !3254, !noalias !3257
  %_2.i.i = and i32 %_3.i.i, 16
  %2 = icmp eq i32 %_2.i.i, 0
  br i1 %2, label %bb2.i, label %bb3.i

bb2.i:                                            ; preds = %start
  %_2.i2.i = and i32 %_3.i.i, 32
  %3 = icmp eq i32 %_2.i2.i, 0
  br i1 %3, label %bb6.i, label %bb7.i

bb3.i:                                            ; preds = %start
  %4 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i1, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %4), !noalias !3260
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %4, i8 undef, i16 128, i1 false), !noalias !3260
  %5 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i1, i16 0, i16 128
  br label %bb15.i.i

bb15.i.i:                                         ; preds = %bb15.i.i, %bb3.i
  %iter.sroa.4.0.i.i = phi i8* [ %5, %bb3.i ], [ %6, %bb15.i.i ]
  %x.0.i.i = phi i16 [ %0, %bb3.i ], [ %7, %bb15.i.i ]
  %curr.0.i.i = phi i16 [ 128, %bb3.i ], [ %12, %bb15.i.i ]
  %6 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i.i, i16 -1
  %7 = lshr i16 %x.0.i.i, 4
  %8 = trunc i16 %x.0.i.i to i8
  %9 = and i8 %8, 15
  %_5.i9.i.i = icmp ult i8 %9, 10
  %10 = or i8 %9, 48
  %11 = add nuw nsw i8 %9, 87
  %.0.i15.i.i = select i1 %_5.i9.i.i, i8 %10, i8 %11
  store i8 %.0.i15.i.i, i8* %6, align 1, !noalias !3260
  %12 = add nsw i16 %curr.0.i.i, -1
  %13 = icmp eq i16 %7, 0
  br i1 %13, label %bb43.i.i, label %bb15.i.i

bb43.i.i:                                         ; preds = %bb15.i.i
  %_3.i.i.i.i.i = icmp ugt i16 %12, 128
  br i1 %_3.i.i.i.i.i, label %bb2.i.i.i.i.i, label %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i16$GT$3fmt17hbe4318a26c58a6ceE.exit"

bb2.i.i.i.i.i:                                    ; preds = %bb43.i.i
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %12, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*)), !noalias !3260
  unreachable

"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i16$GT$3fmt17hbe4318a26c58a6ceE.exit": ; preds = %bb43.i.i
  %14 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i1, i16 0, i16 %12
  %_7.i.i.i.i.i.i = sub nuw nsw i16 129, %curr.0.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i3 = bitcast i8* %14 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %15 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i3, i16 %_7.i.i.i.i.i.i), !noalias !3260
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %4), !noalias !3260
  br label %"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i16$GT$3fmt17h7c43688ffe45cdf8E.exit"

bb6.i:                                            ; preds = %bb2.i
  %is_nonnegative.i = icmp sgt i16 %0, -1
  %16 = sext i16 %0 to i32
  %17 = sub nsw i32 0, %16
  %n.0.i = select i1 %is_nonnegative.i, i32 %16, i32 %17
  %18 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 39, i8* nonnull %18), !noalias !3263
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(39) %18, i8 undef, i16 39, i1 false), !noalias !3263
  %_2329.i.i = icmp ugt i32 %n.0.i, 9999
  %extract.t.i.i = trunc i32 %n.0.i to i16
  br i1 %_2329.i.i, label %bb26.i.i.thread, label %bb9.i.i

bb26.i.i.thread:                                  ; preds = %bb6.i
  %19 = udiv i16 %extract.t.i.i, 10000
  %20 = mul i16 %19, 10000
  %_26.i4.i.decomposed = sub i16 %extract.t.i.i, %20
  %_29.i.i = udiv i16 %_26.i4.i.decomposed, 100
  %d1.i.i = shl nuw nsw i16 %_29.i.i, 1
  %21 = mul i16 %_29.i.i, 100
  %_35.i.i.decomposed = sub i16 %_26.i4.i.decomposed, %21
  %d2.i.i = shl nuw nsw i16 %_35.i.i.decomposed, 1
  %22 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d1.i.i
  %23 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 35
  %24 = bitcast i8* %22 to i16*
  %25 = bitcast i8* %23 to i16*
  %26 = load i16, i16* %24, align 1, !noalias !3263
  store i16 %26, i16* %25, align 1, !noalias !3263
  %27 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d2.i.i
  %28 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 37
  %29 = bitcast i8* %27 to i16*
  %30 = bitcast i8* %28 to i16*
  %31 = load i16, i16* %29, align 1, !noalias !3263
  store i16 %31, i16* %30, align 1, !noalias !3263
  %extract.t = trunc i16 %19 to i8
  br label %bb28.i.i

bb9.i.i:                                          ; preds = %bb6.i
  %_57.i.i = icmp sgt i16 %extract.t.i.i, 99
  br i1 %_57.i.i, label %bb22.i.i, label %bb26.i.i

bb22.i.i:                                         ; preds = %bb9.i.i
  %32 = udiv i16 %extract.t.i.i, 100
  %33 = mul i16 %32, 100
  %_6028.i.i.decomposed = sub i16 %extract.t.i.i, %33
  %d14.i.i = shl nuw nsw i16 %_6028.i.i.decomposed, 1
  %34 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d14.i.i
  %35 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 37
  %36 = bitcast i8* %34 to i16*
  %37 = bitcast i8* %35 to i16*
  %38 = load i16, i16* %36, align 1, !noalias !3263
  store i16 %38, i16* %37, align 1, !noalias !3263
  br label %bb26.i.i

bb26.i.i:                                         ; preds = %bb22.i.i, %bb9.i.i
  %n1.0.i.i = phi i16 [ %32, %bb22.i.i ], [ %extract.t.i.i, %bb9.i.i ]
  %curr.1.i.i = phi i16 [ 37, %bb22.i.i ], [ 39, %bb9.i.i ]
  %_75.i.i = icmp slt i16 %n1.0.i.i, 10
  %extract.t15 = trunc i16 %n1.0.i.i to i8
  br i1 %_75.i.i, label %bb28.i.i, label %bb27.i.i

bb27.i.i:                                         ; preds = %bb26.i.i
  %d16.i.i = shl nuw nsw i16 %n1.0.i.i, 1
  %39 = add nsw i16 %curr.1.i.i, -2
  %40 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d16.i.i
  %41 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 %39
  %42 = bitcast i8* %40 to i16*
  %43 = bitcast i8* %41 to i16*
  %44 = load i16, i16* %42, align 1, !noalias !3263
  store i16 %44, i16* %43, align 1, !noalias !3263
  br label %"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$i16$GT$3fmt17hb97f6f3d4d1ad318E.exit"

bb28.i.i:                                         ; preds = %bb26.i.i.thread, %bb26.i.i
  %curr.1.i.i14 = phi i16 [ 35, %bb26.i.i.thread ], [ %curr.1.i.i, %bb26.i.i ]
  %n1.0.i.i13.off0 = phi i8 [ %extract.t, %bb26.i.i.thread ], [ %extract.t15, %bb26.i.i ]
  %45 = add nsw i16 %curr.1.i.i14, -1
  %46 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 %45
  %47 = add nuw nsw i8 %n1.0.i.i13.off0, 48
  store i8 %47, i8* %46, align 1, !noalias !3263
  br label %"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$i16$GT$3fmt17hb97f6f3d4d1ad318E.exit"

"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$i16$GT$3fmt17hb97f6f3d4d1ad318E.exit": ; preds = %bb27.i.i, %bb28.i.i
  %curr.2.i.i = phi i16 [ %45, %bb28.i.i ], [ %39, %bb27.i.i ]
  %48 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 %curr.2.i.i
  %_98.i.i = sub nuw nsw i16 39, %curr.2.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i = bitcast i8* %48 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %49 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext %is_nonnegative.i, [0 x i8]* noalias nonnull readonly align 1 getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), i16 0, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i, i16 %_98.i.i), !noalias !3263
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 39, i8* nonnull %18), !noalias !3263
  br label %"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i16$GT$3fmt17h7c43688ffe45cdf8E.exit"

bb7.i:                                            ; preds = %bb2.i
  %50 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %50), !noalias !3266
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %50, i8 undef, i16 128, i1 false), !noalias !3266
  %51 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 128
  br label %bb15.i.i.i

bb15.i.i.i:                                       ; preds = %bb15.i.i.i, %bb7.i
  %iter.sroa.4.0.i.i.i = phi i8* [ %51, %bb7.i ], [ %52, %bb15.i.i.i ]
  %x.0.i.i.i = phi i16 [ %0, %bb7.i ], [ %53, %bb15.i.i.i ]
  %curr.0.i.i.i = phi i16 [ 128, %bb7.i ], [ %58, %bb15.i.i.i ]
  %52 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i.i.i, i16 -1
  %53 = lshr i16 %x.0.i.i.i, 4
  %54 = trunc i16 %x.0.i.i.i to i8
  %55 = and i8 %54, 15
  %_5.i9.i.i.i = icmp ult i8 %55, 10
  %56 = or i8 %55, 48
  %57 = add nuw nsw i8 %55, 55
  %.0.i15.i.i.i = select i1 %_5.i9.i.i.i, i8 %56, i8 %57
  store i8 %.0.i15.i.i.i, i8* %52, align 1, !noalias !3266
  %58 = add nsw i16 %curr.0.i.i.i, -1
  %59 = icmp eq i16 %53, 0
  br i1 %59, label %bb43.i.i.i, label %bb15.i.i.i

bb43.i.i.i:                                       ; preds = %bb15.i.i.i
  %_3.i.i.i.i.i.i = icmp ugt i16 %58, 128
  br i1 %_3.i.i.i.i.i.i, label %bb2.i.i.i.i.i.i, label %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i16$GT$3fmt17hbf7433b6c707aeabE.exit.i"

bb2.i.i.i.i.i.i:                                  ; preds = %bb43.i.i.i
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %58, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*)), !noalias !3266
  unreachable

"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i16$GT$3fmt17hbf7433b6c707aeabE.exit.i": ; preds = %bb43.i.i.i
  %60 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 %58
  %_7.i.i.i.i.i.i.i = sub nuw nsw i16 129, %curr.0.i.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i = bitcast i8* %60 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %61 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i, i16 %_7.i.i.i.i.i.i.i), !noalias !3266
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %50), !noalias !3266
  br label %"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i16$GT$3fmt17h7c43688ffe45cdf8E.exit"

"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i16$GT$3fmt17h7c43688ffe45cdf8E.exit": ; preds = %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i16$GT$3fmt17hbe4318a26c58a6ceE.exit", %"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$i16$GT$3fmt17hb97f6f3d4d1ad318E.exit", %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i16$GT$3fmt17hbf7433b6c707aeabE.exit.i"
  %.0.in.i = phi i1 [ %15, %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i16$GT$3fmt17hbe4318a26c58a6ceE.exit" ], [ %61, %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i16$GT$3fmt17hbf7433b6c707aeabE.exit.i" ], [ %49, %"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$i16$GT$3fmt17hb97f6f3d4d1ad318E.exit" ]
  ret i1 %.0.in.i
}

; <core::sync::atomic::AtomicU16 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN66_$LT$core..sync..atomic..AtomicU16$u20$as$u20$core..fmt..Debug$GT$3fmt17h724a27f2653e7351E"(%"sync::atomic::AtomicU16"* nocapture readonly align 2 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i.i2 = alloca [128 x i8], align 1
  %buf.i.i = alloca [39 x i8], align 1
  %buf.i.i.i = alloca [128 x i8], align 1
  %_5.i = bitcast %"sync::atomic::AtomicU16"* %self to i16*
  %0 = load atomic i16, i16* %_5.i seq_cst, align 2
  %1 = bitcast %"fmt::Formatter"* %f to i32*
  %_3.i.i = load i32, i32* %1, align 1, !alias.scope !3269, !noalias !3272
  %_2.i.i = and i32 %_3.i.i, 16
  %2 = icmp eq i32 %_2.i.i, 0
  br i1 %2, label %bb2.i, label %bb3.i

bb2.i:                                            ; preds = %start
  %_2.i2.i = and i32 %_3.i.i, 32
  %3 = icmp eq i32 %_2.i2.i, 0
  br i1 %3, label %bb6.i, label %bb7.i

bb3.i:                                            ; preds = %start
  %4 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i2, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %4), !noalias !3275
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %4, i8 undef, i16 128, i1 false), !noalias !3275
  %5 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i2, i16 0, i16 128
  br label %bb15.i.i

bb15.i.i:                                         ; preds = %bb15.i.i, %bb3.i
  %iter.sroa.4.0.i.i = phi i8* [ %5, %bb3.i ], [ %6, %bb15.i.i ]
  %x.0.i.i = phi i16 [ %0, %bb3.i ], [ %7, %bb15.i.i ]
  %curr.0.i.i = phi i16 [ 128, %bb3.i ], [ %12, %bb15.i.i ]
  %6 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i.i, i16 -1
  %7 = lshr i16 %x.0.i.i, 4
  %8 = trunc i16 %x.0.i.i to i8
  %9 = and i8 %8, 15
  %_5.i9.i.i = icmp ult i8 %9, 10
  %10 = or i8 %9, 48
  %11 = add nuw nsw i8 %9, 87
  %.0.i15.i.i = select i1 %_5.i9.i.i, i8 %10, i8 %11
  store i8 %.0.i15.i.i, i8* %6, align 1, !noalias !3275
  %12 = add nsw i16 %curr.0.i.i, -1
  %13 = icmp eq i16 %7, 0
  br i1 %13, label %bb43.i.i, label %bb15.i.i

bb43.i.i:                                         ; preds = %bb15.i.i
  %_3.i.i.i.i.i = icmp ugt i16 %12, 128
  br i1 %_3.i.i.i.i.i, label %bb2.i.i.i.i.i, label %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u16$GT$3fmt17h8250f7f13a1439d7E.exit"

bb2.i.i.i.i.i:                                    ; preds = %bb43.i.i
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %12, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*)), !noalias !3275
  unreachable

"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u16$GT$3fmt17h8250f7f13a1439d7E.exit": ; preds = %bb43.i.i
  %14 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i2, i16 0, i16 %12
  %_7.i.i.i.i.i.i = sub nuw nsw i16 129, %curr.0.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i3 = bitcast i8* %14 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %15 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i3, i16 %_7.i.i.i.i.i.i), !noalias !3275
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %4), !noalias !3275
  br label %"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u16$GT$3fmt17hb117ac7ccab46262E.exit"

bb6.i:                                            ; preds = %bb2.i
  %16 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 39, i8* nonnull %16), !noalias !3278
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(39) %16, i8 undef, i16 39, i1 false), !noalias !3278
  %_2329.i.i = icmp ugt i16 %0, 9999
  br i1 %_2329.i.i, label %bb26.i.thread.i, label %bb9.i.i

bb26.i.thread.i:                                  ; preds = %bb6.i
  %17 = udiv i16 %0, 10000
  %18 = mul i16 %17, 10000
  %_26.i2.i.decomposed = sub i16 %0, %18
  %_29.i.i = udiv i16 %_26.i2.i.decomposed, 100
  %d1.i.i = shl nuw nsw i16 %_29.i.i, 1
  %19 = mul i16 %_29.i.i, 100
  %_35.i.i.decomposed = sub i16 %_26.i2.i.decomposed, %19
  %d2.i.i = shl nuw nsw i16 %_35.i.i.decomposed, 1
  %20 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d1.i.i
  %21 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 35
  %22 = bitcast i8* %20 to i16*
  %23 = bitcast i8* %21 to i16*
  %24 = load i16, i16* %22, align 1, !noalias !3278
  store i16 %24, i16* %23, align 1, !noalias !3278
  %25 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d2.i.i
  %26 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 37
  %27 = bitcast i8* %25 to i16*
  %28 = bitcast i8* %26 to i16*
  %29 = load i16, i16* %27, align 1, !noalias !3278
  store i16 %29, i16* %28, align 1, !noalias !3278
  %extract.t.i = trunc i16 %17 to i8
  br label %bb28.i.i

bb9.i.i:                                          ; preds = %bb6.i
  %_57.i.i = icmp sgt i16 %0, 99
  br i1 %_57.i.i, label %bb22.i.i, label %bb26.i.i

bb22.i.i:                                         ; preds = %bb9.i.i
  %30 = udiv i16 %0, 100
  %31 = mul i16 %30, 100
  %_6028.i.i.decomposed = sub i16 %0, %31
  %d14.i.i = shl nuw nsw i16 %_6028.i.i.decomposed, 1
  %32 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d14.i.i
  %33 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 37
  %34 = bitcast i8* %32 to i16*
  %35 = bitcast i8* %33 to i16*
  %36 = load i16, i16* %34, align 1, !noalias !3278
  store i16 %36, i16* %35, align 1, !noalias !3278
  br label %bb26.i.i

bb26.i.i:                                         ; preds = %bb22.i.i, %bb9.i.i
  %n1.0.i.i = phi i16 [ %30, %bb22.i.i ], [ %0, %bb9.i.i ]
  %curr.1.i.i = phi i16 [ 37, %bb22.i.i ], [ 39, %bb9.i.i ]
  %_75.i.i = icmp slt i16 %n1.0.i.i, 10
  %extract.t11.i = trunc i16 %n1.0.i.i to i8
  br i1 %_75.i.i, label %bb28.i.i, label %bb27.i.i

bb27.i.i:                                         ; preds = %bb26.i.i
  %d16.i.i = shl nuw nsw i16 %n1.0.i.i, 1
  %37 = add nsw i16 %curr.1.i.i, -2
  %38 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d16.i.i
  %39 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 %37
  %40 = bitcast i8* %38 to i16*
  %41 = bitcast i8* %39 to i16*
  %42 = load i16, i16* %40, align 1, !noalias !3278
  store i16 %42, i16* %41, align 1, !noalias !3278
  br label %"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u16$GT$3fmt17ha65397985f1509e1E.exit"

bb28.i.i:                                         ; preds = %bb26.i.i, %bb26.i.thread.i
  %curr.1.i10.i = phi i16 [ 35, %bb26.i.thread.i ], [ %curr.1.i.i, %bb26.i.i ]
  %n1.0.i9.off0.i = phi i8 [ %extract.t.i, %bb26.i.thread.i ], [ %extract.t11.i, %bb26.i.i ]
  %43 = add nsw i16 %curr.1.i10.i, -1
  %44 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 %43
  %45 = add nuw nsw i8 %n1.0.i9.off0.i, 48
  store i8 %45, i8* %44, align 1, !noalias !3278
  br label %"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u16$GT$3fmt17ha65397985f1509e1E.exit"

"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u16$GT$3fmt17ha65397985f1509e1E.exit": ; preds = %bb27.i.i, %bb28.i.i
  %curr.2.i.i = phi i16 [ %43, %bb28.i.i ], [ %37, %bb27.i.i ]
  %46 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 %curr.2.i.i
  %_98.i.i = sub nuw nsw i16 39, %curr.2.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i = bitcast i8* %46 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %47 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), i16 0, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i, i16 %_98.i.i), !noalias !3278
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 39, i8* nonnull %16), !noalias !3278
  br label %"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u16$GT$3fmt17hb117ac7ccab46262E.exit"

bb7.i:                                            ; preds = %bb2.i
  %48 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %48), !noalias !3281
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %48, i8 undef, i16 128, i1 false), !noalias !3281
  %49 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 128
  br label %bb15.i.i.i

bb15.i.i.i:                                       ; preds = %bb15.i.i.i, %bb7.i
  %iter.sroa.4.0.i.i.i = phi i8* [ %49, %bb7.i ], [ %50, %bb15.i.i.i ]
  %x.0.i.i.i = phi i16 [ %0, %bb7.i ], [ %51, %bb15.i.i.i ]
  %curr.0.i.i.i = phi i16 [ 128, %bb7.i ], [ %56, %bb15.i.i.i ]
  %50 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i.i.i, i16 -1
  %51 = lshr i16 %x.0.i.i.i, 4
  %52 = trunc i16 %x.0.i.i.i to i8
  %53 = and i8 %52, 15
  %_5.i9.i.i.i = icmp ult i8 %53, 10
  %54 = or i8 %53, 48
  %55 = add nuw nsw i8 %53, 55
  %.0.i15.i.i.i = select i1 %_5.i9.i.i.i, i8 %54, i8 %55
  store i8 %.0.i15.i.i.i, i8* %50, align 1, !noalias !3281
  %56 = add nsw i16 %curr.0.i.i.i, -1
  %57 = icmp eq i16 %51, 0
  br i1 %57, label %bb43.i.i.i, label %bb15.i.i.i

bb43.i.i.i:                                       ; preds = %bb15.i.i.i
  %_3.i.i.i.i.i.i = icmp ugt i16 %56, 128
  br i1 %_3.i.i.i.i.i.i, label %bb2.i.i.i.i.i.i, label %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u16$GT$3fmt17h736ee6d5f84359d0E.exit.i"

bb2.i.i.i.i.i.i:                                  ; preds = %bb43.i.i.i
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %56, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*)), !noalias !3281
  unreachable

"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u16$GT$3fmt17h736ee6d5f84359d0E.exit.i": ; preds = %bb43.i.i.i
  %58 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 %56
  %_7.i.i.i.i.i.i.i = sub nuw nsw i16 129, %curr.0.i.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i = bitcast i8* %58 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %59 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i, i16 %_7.i.i.i.i.i.i.i), !noalias !3281
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %48), !noalias !3281
  br label %"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u16$GT$3fmt17hb117ac7ccab46262E.exit"

"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u16$GT$3fmt17hb117ac7ccab46262E.exit": ; preds = %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u16$GT$3fmt17h8250f7f13a1439d7E.exit", %"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u16$GT$3fmt17ha65397985f1509e1E.exit", %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u16$GT$3fmt17h736ee6d5f84359d0E.exit.i"
  %.0.in.i = phi i1 [ %15, %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u16$GT$3fmt17h8250f7f13a1439d7E.exit" ], [ %59, %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u16$GT$3fmt17h736ee6d5f84359d0E.exit.i" ], [ %47, %"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u16$GT$3fmt17ha65397985f1509e1E.exit" ]
  ret i1 %.0.in.i
}

; <core::sync::atomic::AtomicIsize as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN68_$LT$core..sync..atomic..AtomicIsize$u20$as$u20$core..fmt..Debug$GT$3fmt17h5bdb3630cf42fa59E"(%"sync::atomic::AtomicIsize"* nocapture readonly align 2 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i.i16.i = alloca [39 x i8], align 1
  %buf.i.i.i = alloca [128 x i8], align 1
  %_5.i = bitcast %"sync::atomic::AtomicIsize"* %self to i16*
  %0 = load atomic i16, i16* %_5.i seq_cst, align 2
  %1 = bitcast %"fmt::Formatter"* %f to i32*
  %_3.i.i = load i32, i32* %1, align 1, !alias.scope !3284
  %_2.i.i = and i32 %_3.i.i, 16
  %2 = icmp eq i32 %_2.i.i, 0
  br i1 %2, label %bb2.i, label %bb3.i

bb2.i:                                            ; preds = %start
  %_2.i2.i = and i32 %_3.i.i, 32
  %3 = icmp eq i32 %_2.i2.i, 0
  br i1 %3, label %bb6.i, label %bb7.i

bb3.i:                                            ; preds = %start
  %4 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %4), !noalias !3287
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %4, i8 undef, i16 128, i1 false), !noalias !3287
  %5 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 128
  br label %bb15.i.i10.i

bb15.i.i10.i:                                     ; preds = %bb15.i.i10.i, %bb3.i
  %iter.sroa.4.0.i.i5.i = phi i8* [ %5, %bb3.i ], [ %6, %bb15.i.i10.i ]
  %x.0.i.i6.i = phi i16 [ %0, %bb3.i ], [ %7, %bb15.i.i10.i ]
  %curr.0.i.i7.i = phi i16 [ 128, %bb3.i ], [ %12, %bb15.i.i10.i ]
  %6 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i.i5.i, i16 -1
  %7 = lshr i16 %x.0.i.i6.i, 4
  %8 = trunc i16 %x.0.i.i6.i to i8
  %9 = and i8 %8, 15
  %_5.i9.i.i8.i = icmp ult i8 %9, 10
  %10 = or i8 %9, 48
  %11 = add nuw nsw i8 %9, 87
  %.0.i15.i.i9.i = select i1 %_5.i9.i.i8.i, i8 %10, i8 %11
  store i8 %.0.i15.i.i9.i, i8* %6, align 1, !noalias !3287
  %12 = add nsw i16 %curr.0.i.i7.i, -1
  %13 = icmp eq i16 %7, 0
  br i1 %13, label %bb43.i.i12.i, label %bb15.i.i10.i

bb43.i.i12.i:                                     ; preds = %bb15.i.i10.i
  %_3.i.i.i.i.i11.i = icmp ugt i16 %12, 128
  br i1 %_3.i.i.i.i.i11.i, label %bb2.i.i.i.i.i13.i, label %"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$isize$GT$3fmt17h0fbfe5d4f03302b6E.exit.i"

bb2.i.i.i.i.i13.i:                                ; preds = %bb43.i.i12.i
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %12, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*)), !noalias !3287
  unreachable

"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$isize$GT$3fmt17h0fbfe5d4f03302b6E.exit.i": ; preds = %bb43.i.i12.i
  %14 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 %12
  %_7.i.i.i.i.i.i14.i = sub nuw nsw i16 129, %curr.0.i.i7.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i15.i = bitcast i8* %14 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %15 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i15.i, i16 %_7.i.i.i.i.i.i14.i), !noalias !3287
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %4), !noalias !3287
  br label %"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..Debug$u20$for$u20$isize$GT$3fmt17habe7eaeea3ce05adE.exit"

bb6.i:                                            ; preds = %bb2.i
  %is_nonnegative.i.i = icmp sgt i16 %0, -1
  %16 = sext i16 %0 to i32
  %17 = sub nsw i32 0, %16
  %n.0.i.i = select i1 %is_nonnegative.i.i, i32 %16, i32 %17
  %18 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i16.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 39, i8* nonnull %18), !noalias !3290
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(39) %18, i8 undef, i16 39, i1 false), !noalias !3290
  %_2329.i.i.i = icmp ugt i32 %n.0.i.i, 9999
  %extract.t.i.i.i = trunc i32 %n.0.i.i to i16
  br i1 %_2329.i.i.i, label %bb26.i.i.thread.i, label %bb9.i.i.i

bb26.i.i.thread.i:                                ; preds = %bb6.i
  %19 = udiv i16 %extract.t.i.i.i, 10000
  %20 = mul i16 %19, 10000
  %_26.i4.i.i.decomposed = sub i16 %extract.t.i.i.i, %20
  %_29.i.i.i = udiv i16 %_26.i4.i.i.decomposed, 100
  %d1.i.i.i = shl nuw nsw i16 %_29.i.i.i, 1
  %21 = mul i16 %_29.i.i.i, 100
  %_35.i.i.i.decomposed = sub i16 %_26.i4.i.i.decomposed, %21
  %d2.i.i.i = shl nuw nsw i16 %_35.i.i.i.decomposed, 1
  %22 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d1.i.i.i
  %23 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i16.i, i16 0, i16 35
  %24 = bitcast i8* %22 to i16*
  %25 = bitcast i8* %23 to i16*
  %26 = load i16, i16* %24, align 1, !noalias !3290
  store i16 %26, i16* %25, align 1, !noalias !3290
  %27 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d2.i.i.i
  %28 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i16.i, i16 0, i16 37
  %29 = bitcast i8* %27 to i16*
  %30 = bitcast i8* %28 to i16*
  %31 = load i16, i16* %29, align 1, !noalias !3290
  store i16 %31, i16* %30, align 1, !noalias !3290
  %extract.t.i = trunc i16 %19 to i8
  br label %bb28.i.i.i

bb9.i.i.i:                                        ; preds = %bb6.i
  %_57.i.i.i = icmp sgt i16 %extract.t.i.i.i, 99
  br i1 %_57.i.i.i, label %bb22.i.i.i, label %bb26.i.i.i

bb22.i.i.i:                                       ; preds = %bb9.i.i.i
  %32 = udiv i16 %extract.t.i.i.i, 100
  %33 = mul i16 %32, 100
  %_6028.i.i.i.decomposed = sub i16 %extract.t.i.i.i, %33
  %d14.i.i.i = shl nuw nsw i16 %_6028.i.i.i.decomposed, 1
  %34 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d14.i.i.i
  %35 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i16.i, i16 0, i16 37
  %36 = bitcast i8* %34 to i16*
  %37 = bitcast i8* %35 to i16*
  %38 = load i16, i16* %36, align 1, !noalias !3290
  store i16 %38, i16* %37, align 1, !noalias !3290
  br label %bb26.i.i.i

bb26.i.i.i:                                       ; preds = %bb22.i.i.i, %bb9.i.i.i
  %n1.0.i.i.i = phi i16 [ %32, %bb22.i.i.i ], [ %extract.t.i.i.i, %bb9.i.i.i ]
  %curr.1.i.i.i = phi i16 [ 37, %bb22.i.i.i ], [ 39, %bb9.i.i.i ]
  %_75.i.i.i = icmp slt i16 %n1.0.i.i.i, 10
  %extract.t9.i = trunc i16 %n1.0.i.i.i to i8
  br i1 %_75.i.i.i, label %bb28.i.i.i, label %bb27.i.i.i

bb27.i.i.i:                                       ; preds = %bb26.i.i.i
  %d16.i.i.i = shl nuw nsw i16 %n1.0.i.i.i, 1
  %39 = add nsw i16 %curr.1.i.i.i, -2
  %40 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d16.i.i.i
  %41 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i16.i, i16 0, i16 %39
  %42 = bitcast i8* %40 to i16*
  %43 = bitcast i8* %41 to i16*
  %44 = load i16, i16* %42, align 1, !noalias !3290
  store i16 %44, i16* %43, align 1, !noalias !3290
  br label %"_ZN4core3fmt3num3imp54_$LT$impl$u20$core..fmt..Display$u20$for$u20$isize$GT$3fmt17h5448284b084ed489E.exit.i"

bb28.i.i.i:                                       ; preds = %bb26.i.i.i, %bb26.i.i.thread.i
  %curr.1.i.i8.i = phi i16 [ 35, %bb26.i.i.thread.i ], [ %curr.1.i.i.i, %bb26.i.i.i ]
  %n1.0.i.i7.off0.i = phi i8 [ %extract.t.i, %bb26.i.i.thread.i ], [ %extract.t9.i, %bb26.i.i.i ]
  %45 = add nsw i16 %curr.1.i.i8.i, -1
  %46 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i16.i, i16 0, i16 %45
  %47 = add nuw nsw i8 %n1.0.i.i7.off0.i, 48
  store i8 %47, i8* %46, align 1, !noalias !3290
  br label %"_ZN4core3fmt3num3imp54_$LT$impl$u20$core..fmt..Display$u20$for$u20$isize$GT$3fmt17h5448284b084ed489E.exit.i"

"_ZN4core3fmt3num3imp54_$LT$impl$u20$core..fmt..Display$u20$for$u20$isize$GT$3fmt17h5448284b084ed489E.exit.i": ; preds = %bb28.i.i.i, %bb27.i.i.i
  %curr.2.i.i.i = phi i16 [ %45, %bb28.i.i.i ], [ %39, %bb27.i.i.i ]
  %48 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i16.i, i16 0, i16 %curr.2.i.i.i
  %_98.i.i.i = sub nuw nsw i16 39, %curr.2.i.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i17.i = bitcast i8* %48 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %49 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext %is_nonnegative.i.i, [0 x i8]* noalias nonnull readonly align 1 getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), i16 0, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i17.i, i16 %_98.i.i.i), !noalias !3290
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 39, i8* nonnull %18), !noalias !3290
  br label %"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..Debug$u20$for$u20$isize$GT$3fmt17habe7eaeea3ce05adE.exit"

bb7.i:                                            ; preds = %bb2.i
  %50 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %50), !noalias !3293
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %50, i8 undef, i16 128, i1 false), !noalias !3293
  %51 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 128
  br label %bb15.i.i.i

bb15.i.i.i:                                       ; preds = %bb15.i.i.i, %bb7.i
  %iter.sroa.4.0.i.i.i = phi i8* [ %51, %bb7.i ], [ %52, %bb15.i.i.i ]
  %x.0.i.i.i = phi i16 [ %0, %bb7.i ], [ %53, %bb15.i.i.i ]
  %curr.0.i.i.i = phi i16 [ 128, %bb7.i ], [ %58, %bb15.i.i.i ]
  %52 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i.i.i, i16 -1
  %53 = lshr i16 %x.0.i.i.i, 4
  %54 = trunc i16 %x.0.i.i.i to i8
  %55 = and i8 %54, 15
  %_5.i9.i.i.i = icmp ult i8 %55, 10
  %56 = or i8 %55, 48
  %57 = add nuw nsw i8 %55, 55
  %.0.i15.i.i.i = select i1 %_5.i9.i.i.i, i8 %56, i8 %57
  store i8 %.0.i15.i.i.i, i8* %52, align 1, !noalias !3293
  %58 = add nsw i16 %curr.0.i.i.i, -1
  %59 = icmp eq i16 %53, 0
  br i1 %59, label %bb43.i.i.i, label %bb15.i.i.i

bb43.i.i.i:                                       ; preds = %bb15.i.i.i
  %_3.i.i.i.i.i.i = icmp ugt i16 %58, 128
  br i1 %_3.i.i.i.i.i.i, label %bb2.i.i.i.i.i.i, label %"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$isize$GT$3fmt17h4a747279ae650ea3E.exit.i"

bb2.i.i.i.i.i.i:                                  ; preds = %bb43.i.i.i
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %58, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*)), !noalias !3293
  unreachable

"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$isize$GT$3fmt17h4a747279ae650ea3E.exit.i": ; preds = %bb43.i.i.i
  %60 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 %58
  %_7.i.i.i.i.i.i.i = sub nuw nsw i16 129, %curr.0.i.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i = bitcast i8* %60 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %61 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i, i16 %_7.i.i.i.i.i.i.i), !noalias !3293
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %50), !noalias !3293
  br label %"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..Debug$u20$for$u20$isize$GT$3fmt17habe7eaeea3ce05adE.exit"

"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..Debug$u20$for$u20$isize$GT$3fmt17habe7eaeea3ce05adE.exit": ; preds = %"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$isize$GT$3fmt17h0fbfe5d4f03302b6E.exit.i", %"_ZN4core3fmt3num3imp54_$LT$impl$u20$core..fmt..Display$u20$for$u20$isize$GT$3fmt17h5448284b084ed489E.exit.i", %"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$isize$GT$3fmt17h4a747279ae650ea3E.exit.i"
  %.0.in.i = phi i1 [ %15, %"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$isize$GT$3fmt17h0fbfe5d4f03302b6E.exit.i" ], [ %61, %"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$isize$GT$3fmt17h4a747279ae650ea3E.exit.i" ], [ %49, %"_ZN4core3fmt3num3imp54_$LT$impl$u20$core..fmt..Display$u20$for$u20$isize$GT$3fmt17h5448284b084ed489E.exit.i" ]
  ret i1 %.0.in.i
}

; <core::sync::atomic::AtomicUsize as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN68_$LT$core..sync..atomic..AtomicUsize$u20$as$u20$core..fmt..Debug$GT$3fmt17hc6938333a410662eE"(%"sync::atomic::AtomicUsize"* nocapture readonly align 2 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_5 = alloca i16, align 1
  %0 = bitcast i16* %_5 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %0)
  %_5.i = bitcast %"sync::atomic::AtomicUsize"* %self to i16*
  %1 = load atomic i16, i16* %_5.i seq_cst, align 2
  store i16 %1, i16* %_5, align 1
; call core::fmt::num::<impl core::fmt::Debug for usize>::fmt
  %2 = call zeroext addrspace(1) i1 @"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..Debug$u20$for$u20$usize$GT$3fmt17h5b03f6e1e4826f97E"(i16* noalias nonnull readonly align 1 dereferenceable(2) %_5, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %0)
  ret i1 %2
}

; core::fmt::float::<impl core::fmt::Debug for f32>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt5float50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$f32$GT$3fmt17h1cbb009d29fe630cE"(float* noalias nocapture readonly align 1 dereferenceable(4) %self, %"fmt::Formatter"* nocapture align 1 dereferenceable(19) %fmt) unnamed_addr addrspace(1) #2 {
start:
  %self.val = load float, float* %self, align 1
  %0 = bitcast %"fmt::Formatter"* %fmt to i32*
  %_3.i.i = load i32, i32* %0, align 1, !alias.scope !3296
  %_2.i.i = and i32 %_3.i.i, 1
  %1 = icmp eq i32 %_2.i.i, 0
  %sign.0.i = select i1 %1, i8 1, i8 3
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %fmt, i16 0, i32 9, i32 0
  %3 = load i8, i8* %2, align 1, !range !87
  %4 = icmp eq i8 %3, 0
  br i1 %4, label %bb9.i, label %bb10.i

bb9.i:                                            ; preds = %start
; call core::fmt::float::float_to_decimal_common_shortest
  %5 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt5float32float_to_decimal_common_shortest17he9fe45e94df9e1b4E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %fmt, float %self.val, i8 %sign.0.i, i16 1)
  br label %_ZN4core3fmt5float23float_to_decimal_common17hc1b3165e184cd363E.exit

bb10.i:                                           ; preds = %start
  %6 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %fmt, i16 0, i32 9, i32 1
  %precision.i = load i16, i16* %6, align 1
; call core::fmt::float::float_to_decimal_common_exact
  %7 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt5float29float_to_decimal_common_exact17h2d293e0c1d02ed88E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %fmt, float %self.val, i8 %sign.0.i, i16 %precision.i)
  br label %_ZN4core3fmt5float23float_to_decimal_common17hc1b3165e184cd363E.exit

_ZN4core3fmt5float23float_to_decimal_common17hc1b3165e184cd363E.exit: ; preds = %bb9.i, %bb10.i
  %.0.in.i = phi i1 [ %7, %bb10.i ], [ %5, %bb9.i ]
  ret i1 %.0.in.i
}

; core::fmt::float::<impl core::fmt::Display for f32>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt5float52_$LT$impl$u20$core..fmt..Display$u20$for$u20$f32$GT$3fmt17h8d0c62887fba1217E"(float* noalias nocapture readonly align 1 dereferenceable(4) %self, %"fmt::Formatter"* nocapture align 1 dereferenceable(19) %fmt) unnamed_addr addrspace(1) #2 {
start:
  %self.val = load float, float* %self, align 1
  %0 = bitcast %"fmt::Formatter"* %fmt to i32*
  %_3.i.i = load i32, i32* %0, align 1, !alias.scope !3299
  %1 = trunc i32 %_3.i.i to i8
  %2 = shl i8 %1, 1
  %3 = and i8 %2, 2
  %4 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %fmt, i16 0, i32 9, i32 0
  %5 = load i8, i8* %4, align 1, !range !87
  %6 = icmp eq i8 %5, 0
  br i1 %6, label %bb9.i, label %bb10.i

bb9.i:                                            ; preds = %start
; call core::fmt::float::float_to_decimal_common_shortest
  %7 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt5float32float_to_decimal_common_shortest17he9fe45e94df9e1b4E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %fmt, float %self.val, i8 %3, i16 0)
  br label %_ZN4core3fmt5float23float_to_decimal_common17hc1b3165e184cd363E.exit

bb10.i:                                           ; preds = %start
  %8 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %fmt, i16 0, i32 9, i32 1
  %precision.i = load i16, i16* %8, align 1
; call core::fmt::float::float_to_decimal_common_exact
  %9 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt5float29float_to_decimal_common_exact17h2d293e0c1d02ed88E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %fmt, float %self.val, i8 %3, i16 %precision.i)
  br label %_ZN4core3fmt5float23float_to_decimal_common17hc1b3165e184cd363E.exit

_ZN4core3fmt5float23float_to_decimal_common17hc1b3165e184cd363E.exit: ; preds = %bb9.i, %bb10.i
  %.0.in.i = phi i1 [ %9, %bb10.i ], [ %7, %bb9.i ]
  ret i1 %.0.in.i
}

; core::fmt::float::<impl core::fmt::LowerExp for f32>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt5float53_$LT$impl$u20$core..fmt..LowerExp$u20$for$u20$f32$GT$3fmt17h328116acf849edbcE"(float* noalias nocapture readonly align 1 dereferenceable(4) %self, %"fmt::Formatter"* nocapture align 1 dereferenceable(19) %fmt) unnamed_addr addrspace(1) #2 {
start:
  %self.val = load float, float* %self, align 1
  %0 = bitcast %"fmt::Formatter"* %fmt to i32*
  %_3.i.i = load i32, i32* %0, align 1, !alias.scope !3302
  %1 = trunc i32 %_3.i.i to i8
  %2 = shl i8 %1, 1
  %3 = and i8 %2, 2
  %4 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %fmt, i16 0, i32 9, i32 0
  %5 = load i8, i8* %4, align 1, !range !87
  %6 = icmp eq i8 %5, 0
  br i1 %6, label %bb5.i, label %bb6.i

bb5.i:                                            ; preds = %start
; call core::fmt::float::float_to_exponential_common_shortest
  %7 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt5float36float_to_exponential_common_shortest17hab51a3afe7f7cde6E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %fmt, float %self.val, i8 %3, i1 zeroext false)
  br label %_ZN4core3fmt5float27float_to_exponential_common17h90d61a545aa16de0E.exit

bb6.i:                                            ; preds = %start
  %8 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %fmt, i16 0, i32 9, i32 1
  %precision.i = load i16, i16* %8, align 1
  %_12.i = add i16 %precision.i, 1
; call core::fmt::float::float_to_exponential_common_exact
  %9 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt5float33float_to_exponential_common_exact17h50bf6f9b69950921E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %fmt, float %self.val, i8 %3, i16 %_12.i, i1 zeroext false)
  br label %_ZN4core3fmt5float27float_to_exponential_common17h90d61a545aa16de0E.exit

_ZN4core3fmt5float27float_to_exponential_common17h90d61a545aa16de0E.exit: ; preds = %bb5.i, %bb6.i
  %.0.in.i = phi i1 [ %9, %bb6.i ], [ %7, %bb5.i ]
  ret i1 %.0.in.i
}

; core::fmt::float::<impl core::fmt::UpperExp for f32>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt5float53_$LT$impl$u20$core..fmt..UpperExp$u20$for$u20$f32$GT$3fmt17h317a1371b84d9cc5E"(float* noalias nocapture readonly align 1 dereferenceable(4) %self, %"fmt::Formatter"* nocapture align 1 dereferenceable(19) %fmt) unnamed_addr addrspace(1) #2 {
start:
  %self.val = load float, float* %self, align 1
  %0 = bitcast %"fmt::Formatter"* %fmt to i32*
  %_3.i.i = load i32, i32* %0, align 1, !alias.scope !3305
  %1 = trunc i32 %_3.i.i to i8
  %2 = shl i8 %1, 1
  %3 = and i8 %2, 2
  %4 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %fmt, i16 0, i32 9, i32 0
  %5 = load i8, i8* %4, align 1, !range !87
  %6 = icmp eq i8 %5, 0
  br i1 %6, label %bb5.i, label %bb6.i

bb5.i:                                            ; preds = %start
; call core::fmt::float::float_to_exponential_common_shortest
  %7 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt5float36float_to_exponential_common_shortest17hab51a3afe7f7cde6E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %fmt, float %self.val, i8 %3, i1 zeroext true)
  br label %_ZN4core3fmt5float27float_to_exponential_common17h90d61a545aa16de0E.exit

bb6.i:                                            ; preds = %start
  %8 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %fmt, i16 0, i32 9, i32 1
  %precision.i = load i16, i16* %8, align 1
  %_12.i = add i16 %precision.i, 1
; call core::fmt::float::float_to_exponential_common_exact
  %9 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt5float33float_to_exponential_common_exact17h50bf6f9b69950921E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %fmt, float %self.val, i8 %3, i16 %_12.i, i1 zeroext true)
  br label %_ZN4core3fmt5float27float_to_exponential_common17h90d61a545aa16de0E.exit

_ZN4core3fmt5float27float_to_exponential_common17h90d61a545aa16de0E.exit: ; preds = %bb5.i, %bb6.i
  %.0.in.i = phi i1 [ %9, %bb6.i ], [ %7, %bb5.i ]
  ret i1 %.0.in.i
}

; core::fmt::float::<impl core::fmt::Debug for f64>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt5float50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$f64$GT$3fmt17h4fb123d93cfd2ed3E"(double* noalias nocapture readonly align 1 dereferenceable(8) %self, %"fmt::Formatter"* nocapture align 1 dereferenceable(19) %fmt) unnamed_addr addrspace(1) #2 {
start:
  %self.val = load double, double* %self, align 1
  %0 = bitcast %"fmt::Formatter"* %fmt to i32*
  %_3.i.i = load i32, i32* %0, align 1, !alias.scope !3308
  %_2.i.i = and i32 %_3.i.i, 1
  %1 = icmp eq i32 %_2.i.i, 0
  %sign.0.i = select i1 %1, i8 1, i8 3
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %fmt, i16 0, i32 9, i32 0
  %3 = load i8, i8* %2, align 1, !range !87
  %4 = icmp eq i8 %3, 0
  br i1 %4, label %bb9.i, label %bb10.i

bb9.i:                                            ; preds = %start
; call core::fmt::float::float_to_decimal_common_shortest
  %5 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt5float32float_to_decimal_common_shortest17h7feefefa083ebf6eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %fmt, double %self.val, i8 %sign.0.i, i16 1)
  br label %_ZN4core3fmt5float23float_to_decimal_common17h26f0af2217dd406dE.exit

bb10.i:                                           ; preds = %start
  %6 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %fmt, i16 0, i32 9, i32 1
  %precision.i = load i16, i16* %6, align 1
; call core::fmt::float::float_to_decimal_common_exact
  %7 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt5float29float_to_decimal_common_exact17h7149c4019af45629E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %fmt, double %self.val, i8 %sign.0.i, i16 %precision.i)
  br label %_ZN4core3fmt5float23float_to_decimal_common17h26f0af2217dd406dE.exit

_ZN4core3fmt5float23float_to_decimal_common17h26f0af2217dd406dE.exit: ; preds = %bb9.i, %bb10.i
  %.0.in.i = phi i1 [ %7, %bb10.i ], [ %5, %bb9.i ]
  ret i1 %.0.in.i
}

; core::fmt::float::<impl core::fmt::Display for f64>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt5float52_$LT$impl$u20$core..fmt..Display$u20$for$u20$f64$GT$3fmt17h16aaeffc70abea71E"(double* noalias nocapture readonly align 1 dereferenceable(8) %self, %"fmt::Formatter"* nocapture align 1 dereferenceable(19) %fmt) unnamed_addr addrspace(1) #2 {
start:
  %self.val = load double, double* %self, align 1
  %0 = bitcast %"fmt::Formatter"* %fmt to i32*
  %_3.i.i = load i32, i32* %0, align 1, !alias.scope !3311
  %1 = trunc i32 %_3.i.i to i8
  %2 = shl i8 %1, 1
  %3 = and i8 %2, 2
  %4 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %fmt, i16 0, i32 9, i32 0
  %5 = load i8, i8* %4, align 1, !range !87
  %6 = icmp eq i8 %5, 0
  br i1 %6, label %bb9.i, label %bb10.i

bb9.i:                                            ; preds = %start
; call core::fmt::float::float_to_decimal_common_shortest
  %7 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt5float32float_to_decimal_common_shortest17h7feefefa083ebf6eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %fmt, double %self.val, i8 %3, i16 0)
  br label %_ZN4core3fmt5float23float_to_decimal_common17h26f0af2217dd406dE.exit

bb10.i:                                           ; preds = %start
  %8 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %fmt, i16 0, i32 9, i32 1
  %precision.i = load i16, i16* %8, align 1
; call core::fmt::float::float_to_decimal_common_exact
  %9 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt5float29float_to_decimal_common_exact17h7149c4019af45629E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %fmt, double %self.val, i8 %3, i16 %precision.i)
  br label %_ZN4core3fmt5float23float_to_decimal_common17h26f0af2217dd406dE.exit

_ZN4core3fmt5float23float_to_decimal_common17h26f0af2217dd406dE.exit: ; preds = %bb9.i, %bb10.i
  %.0.in.i = phi i1 [ %9, %bb10.i ], [ %7, %bb9.i ]
  ret i1 %.0.in.i
}

; core::fmt::float::<impl core::fmt::LowerExp for f64>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt5float53_$LT$impl$u20$core..fmt..LowerExp$u20$for$u20$f64$GT$3fmt17h561de7bf027e92f5E"(double* noalias nocapture readonly align 1 dereferenceable(8) %self, %"fmt::Formatter"* nocapture align 1 dereferenceable(19) %fmt) unnamed_addr addrspace(1) #2 {
start:
  %self.val = load double, double* %self, align 1
  %0 = bitcast %"fmt::Formatter"* %fmt to i32*
  %_3.i.i = load i32, i32* %0, align 1, !alias.scope !3314
  %1 = trunc i32 %_3.i.i to i8
  %2 = shl i8 %1, 1
  %3 = and i8 %2, 2
  %4 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %fmt, i16 0, i32 9, i32 0
  %5 = load i8, i8* %4, align 1, !range !87
  %6 = icmp eq i8 %5, 0
  br i1 %6, label %bb5.i, label %bb6.i

bb5.i:                                            ; preds = %start
; call core::fmt::float::float_to_exponential_common_shortest
  %7 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt5float36float_to_exponential_common_shortest17hd7f25642eba2999eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %fmt, double %self.val, i8 %3, i1 zeroext false)
  br label %_ZN4core3fmt5float27float_to_exponential_common17h37adefc46a8ded8bE.exit

bb6.i:                                            ; preds = %start
  %8 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %fmt, i16 0, i32 9, i32 1
  %precision.i = load i16, i16* %8, align 1
  %_12.i = add i16 %precision.i, 1
; call core::fmt::float::float_to_exponential_common_exact
  %9 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt5float33float_to_exponential_common_exact17h116573ac2a34148fE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %fmt, double %self.val, i8 %3, i16 %_12.i, i1 zeroext false)
  br label %_ZN4core3fmt5float27float_to_exponential_common17h37adefc46a8ded8bE.exit

_ZN4core3fmt5float27float_to_exponential_common17h37adefc46a8ded8bE.exit: ; preds = %bb5.i, %bb6.i
  %.0.in.i = phi i1 [ %9, %bb6.i ], [ %7, %bb5.i ]
  ret i1 %.0.in.i
}

; core::fmt::float::<impl core::fmt::UpperExp for f64>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt5float53_$LT$impl$u20$core..fmt..UpperExp$u20$for$u20$f64$GT$3fmt17h963e0ecc01f1d5e5E"(double* noalias nocapture readonly align 1 dereferenceable(8) %self, %"fmt::Formatter"* nocapture align 1 dereferenceable(19) %fmt) unnamed_addr addrspace(1) #2 {
start:
  %self.val = load double, double* %self, align 1
  %0 = bitcast %"fmt::Formatter"* %fmt to i32*
  %_3.i.i = load i32, i32* %0, align 1, !alias.scope !3317
  %1 = trunc i32 %_3.i.i to i8
  %2 = shl i8 %1, 1
  %3 = and i8 %2, 2
  %4 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %fmt, i16 0, i32 9, i32 0
  %5 = load i8, i8* %4, align 1, !range !87
  %6 = icmp eq i8 %5, 0
  br i1 %6, label %bb5.i, label %bb6.i

bb5.i:                                            ; preds = %start
; call core::fmt::float::float_to_exponential_common_shortest
  %7 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt5float36float_to_exponential_common_shortest17hd7f25642eba2999eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %fmt, double %self.val, i8 %3, i1 zeroext true)
  br label %_ZN4core3fmt5float27float_to_exponential_common17h37adefc46a8ded8bE.exit

bb6.i:                                            ; preds = %start
  %8 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %fmt, i16 0, i32 9, i32 1
  %precision.i = load i16, i16* %8, align 1
  %_12.i = add i16 %precision.i, 1
; call core::fmt::float::float_to_exponential_common_exact
  %9 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt5float33float_to_exponential_common_exact17h116573ac2a34148fE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %fmt, double %self.val, i8 %3, i16 %_12.i, i1 zeroext true)
  br label %_ZN4core3fmt5float27float_to_exponential_common17h37adefc46a8ded8bE.exit

_ZN4core3fmt5float27float_to_exponential_common17h37adefc46a8ded8bE.exit: ; preds = %bb5.i, %bb6.i
  %.0.in.i = phi i1 [ %9, %bb6.i ], [ %7, %bb5.i ]
  ret i1 %.0.in.i
}

; <i8 as core::fmt::num::Int>::zero
; Function Attrs: norecurse nounwind readnone uwtable
define i8 @"_ZN42_$LT$i8$u20$as$u20$core..fmt..num..Int$GT$4zero17hac89f764e73299e7E"() unnamed_addr addrspace(1) #1 {
start:
  ret i8 0
}

; <i8 as core::fmt::num::Int>::from_u8
; Function Attrs: norecurse nounwind readnone uwtable
define i8 @"_ZN42_$LT$i8$u20$as$u20$core..fmt..num..Int$GT$7from_u817hf7ce69d8ef2c8667E"(i8 returned %u) unnamed_addr addrspace(1) #1 {
start:
  ret i8 %u
}

; <i8 as core::fmt::num::Int>::to_u8
; Function Attrs: norecurse nounwind readonly uwtable
define i8 @"_ZN42_$LT$i8$u20$as$u20$core..fmt..num..Int$GT$5to_u817h95e1881cce7a03c8E"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i8, i8* %self, align 1
  ret i8 %_2
}

; <i8 as core::fmt::num::Int>::to_u16
; Function Attrs: norecurse nounwind readonly uwtable
define i16 @"_ZN42_$LT$i8$u20$as$u20$core..fmt..num..Int$GT$6to_u1617h856ef4b224c4c2bbE"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i8, i8* %self, align 1
  %0 = sext i8 %_2 to i16
  ret i16 %0
}

; <i8 as core::fmt::num::Int>::to_u32
; Function Attrs: norecurse nounwind readonly uwtable
define i32 @"_ZN42_$LT$i8$u20$as$u20$core..fmt..num..Int$GT$6to_u3217hf1a62acd7bf5735eE"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i8, i8* %self, align 1
  %0 = sext i8 %_2 to i32
  ret i32 %0
}

; <i8 as core::fmt::num::Int>::to_u64
; Function Attrs: norecurse nounwind readonly uwtable
define i64 @"_ZN42_$LT$i8$u20$as$u20$core..fmt..num..Int$GT$6to_u6417h9f7e7048589eabcaE"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i8, i8* %self, align 1
  %0 = sext i8 %_2 to i64
  ret i64 %0
}

; <i8 as core::fmt::num::Int>::to_u128
; Function Attrs: norecurse nounwind readonly uwtable
define i128 @"_ZN42_$LT$i8$u20$as$u20$core..fmt..num..Int$GT$7to_u12817h38ae86fe18d65c28E"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i8, i8* %self, align 1
  %0 = sext i8 %_2 to i128
  ret i128 %0
}

; <i16 as core::fmt::num::Int>::zero
; Function Attrs: norecurse nounwind readnone uwtable
define i16 @"_ZN43_$LT$i16$u20$as$u20$core..fmt..num..Int$GT$4zero17he9c357d073c6f5c4E"() unnamed_addr addrspace(1) #1 {
start:
  ret i16 0
}

; <i16 as core::fmt::num::Int>::from_u8
; Function Attrs: norecurse nounwind readnone uwtable
define i16 @"_ZN43_$LT$i16$u20$as$u20$core..fmt..num..Int$GT$7from_u817h6040fe633953f297E"(i8 %u) unnamed_addr addrspace(1) #1 {
start:
  %0 = zext i8 %u to i16
  ret i16 %0
}

; <i16 as core::fmt::num::Int>::to_u8
; Function Attrs: norecurse nounwind readonly uwtable
define i8 @"_ZN43_$LT$i16$u20$as$u20$core..fmt..num..Int$GT$5to_u817h8495f6252eae5181E"(i16* noalias nocapture readonly align 1 dereferenceable(2) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i16, i16* %self, align 1
  %0 = trunc i16 %_2 to i8
  ret i8 %0
}

; <i16 as core::fmt::num::Int>::to_u16
; Function Attrs: norecurse nounwind readonly uwtable
define i16 @"_ZN43_$LT$i16$u20$as$u20$core..fmt..num..Int$GT$6to_u1617h8cbb65656a32a72dE"(i16* noalias nocapture readonly align 1 dereferenceable(2) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i16, i16* %self, align 1
  ret i16 %_2
}

; <i16 as core::fmt::num::Int>::to_u32
; Function Attrs: norecurse nounwind readonly uwtable
define i32 @"_ZN43_$LT$i16$u20$as$u20$core..fmt..num..Int$GT$6to_u3217h0fb0820f10a2243dE"(i16* noalias nocapture readonly align 1 dereferenceable(2) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i16, i16* %self, align 1
  %0 = sext i16 %_2 to i32
  ret i32 %0
}

; <i16 as core::fmt::num::Int>::to_u64
; Function Attrs: norecurse nounwind readonly uwtable
define i64 @"_ZN43_$LT$i16$u20$as$u20$core..fmt..num..Int$GT$6to_u6417hcea3caa116f89affE"(i16* noalias nocapture readonly align 1 dereferenceable(2) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i16, i16* %self, align 1
  %0 = sext i16 %_2 to i64
  ret i64 %0
}

; <i16 as core::fmt::num::Int>::to_u128
; Function Attrs: norecurse nounwind readonly uwtable
define i128 @"_ZN43_$LT$i16$u20$as$u20$core..fmt..num..Int$GT$7to_u12817h71acd2280271ccb6E"(i16* noalias nocapture readonly align 1 dereferenceable(2) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i16, i16* %self, align 1
  %0 = sext i16 %_2 to i128
  ret i128 %0
}

; <i32 as core::fmt::num::Int>::zero
; Function Attrs: norecurse nounwind readnone uwtable
define i32 @"_ZN43_$LT$i32$u20$as$u20$core..fmt..num..Int$GT$4zero17h67c6a7d331783363E"() unnamed_addr addrspace(1) #1 {
start:
  ret i32 0
}

; <i32 as core::fmt::num::Int>::from_u8
; Function Attrs: norecurse nounwind readnone uwtable
define i32 @"_ZN43_$LT$i32$u20$as$u20$core..fmt..num..Int$GT$7from_u817h6e89768d278f5116E"(i8 %u) unnamed_addr addrspace(1) #1 {
start:
  %0 = zext i8 %u to i32
  ret i32 %0
}

; <i32 as core::fmt::num::Int>::to_u8
; Function Attrs: norecurse nounwind readonly uwtable
define i8 @"_ZN43_$LT$i32$u20$as$u20$core..fmt..num..Int$GT$5to_u817h7de54af5a717242bE"(i32* noalias nocapture readonly align 1 dereferenceable(4) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i32, i32* %self, align 1
  %0 = trunc i32 %_2 to i8
  ret i8 %0
}

; <i32 as core::fmt::num::Int>::to_u16
; Function Attrs: norecurse nounwind readonly uwtable
define i16 @"_ZN43_$LT$i32$u20$as$u20$core..fmt..num..Int$GT$6to_u1617h7f672626f4ddf678E"(i32* noalias nocapture readonly align 1 dereferenceable(4) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i32, i32* %self, align 1
  %0 = trunc i32 %_2 to i16
  ret i16 %0
}

; <i32 as core::fmt::num::Int>::to_u32
; Function Attrs: norecurse nounwind readonly uwtable
define i32 @"_ZN43_$LT$i32$u20$as$u20$core..fmt..num..Int$GT$6to_u3217h28296c6cb7b4fd58E"(i32* noalias nocapture readonly align 1 dereferenceable(4) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i32, i32* %self, align 1
  ret i32 %_2
}

; <i32 as core::fmt::num::Int>::to_u64
; Function Attrs: norecurse nounwind readonly uwtable
define i64 @"_ZN43_$LT$i32$u20$as$u20$core..fmt..num..Int$GT$6to_u6417h917aed7a263b6421E"(i32* noalias nocapture readonly align 1 dereferenceable(4) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i32, i32* %self, align 1
  %0 = sext i32 %_2 to i64
  ret i64 %0
}

; <i32 as core::fmt::num::Int>::to_u128
; Function Attrs: norecurse nounwind readonly uwtable
define i128 @"_ZN43_$LT$i32$u20$as$u20$core..fmt..num..Int$GT$7to_u12817h2ad1b4cb56d23f7bE"(i32* noalias nocapture readonly align 1 dereferenceable(4) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i32, i32* %self, align 1
  %0 = sext i32 %_2 to i128
  ret i128 %0
}

; <i64 as core::fmt::num::Int>::zero
; Function Attrs: norecurse nounwind readnone uwtable
define i64 @"_ZN43_$LT$i64$u20$as$u20$core..fmt..num..Int$GT$4zero17h5af41034e7d89dd6E"() unnamed_addr addrspace(1) #1 {
start:
  ret i64 0
}

; <i64 as core::fmt::num::Int>::from_u8
; Function Attrs: norecurse nounwind readnone uwtable
define i64 @"_ZN43_$LT$i64$u20$as$u20$core..fmt..num..Int$GT$7from_u817h2c359657a5cb62ebE"(i8 %u) unnamed_addr addrspace(1) #1 {
start:
  %0 = zext i8 %u to i64
  ret i64 %0
}

; <i64 as core::fmt::num::Int>::to_u8
; Function Attrs: norecurse nounwind readonly uwtable
define i8 @"_ZN43_$LT$i64$u20$as$u20$core..fmt..num..Int$GT$5to_u817h92166536da2d75dcE"(i64* noalias nocapture readonly align 1 dereferenceable(8) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i64, i64* %self, align 1
  %0 = trunc i64 %_2 to i8
  ret i8 %0
}

; <i64 as core::fmt::num::Int>::to_u16
; Function Attrs: norecurse nounwind readonly uwtable
define i16 @"_ZN43_$LT$i64$u20$as$u20$core..fmt..num..Int$GT$6to_u1617h00c62a5e0e1777daE"(i64* noalias nocapture readonly align 1 dereferenceable(8) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i64, i64* %self, align 1
  %0 = trunc i64 %_2 to i16
  ret i16 %0
}

; <i64 as core::fmt::num::Int>::to_u32
; Function Attrs: norecurse nounwind readonly uwtable
define i32 @"_ZN43_$LT$i64$u20$as$u20$core..fmt..num..Int$GT$6to_u3217h1ae4aeaaf04e3954E"(i64* noalias nocapture readonly align 1 dereferenceable(8) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i64, i64* %self, align 1
  %0 = trunc i64 %_2 to i32
  ret i32 %0
}

; <i64 as core::fmt::num::Int>::to_u64
; Function Attrs: norecurse nounwind readonly uwtable
define i64 @"_ZN43_$LT$i64$u20$as$u20$core..fmt..num..Int$GT$6to_u6417hacb58487baf6aebeE"(i64* noalias nocapture readonly align 1 dereferenceable(8) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i64, i64* %self, align 1
  ret i64 %_2
}

; <i64 as core::fmt::num::Int>::to_u128
; Function Attrs: norecurse nounwind readonly uwtable
define i128 @"_ZN43_$LT$i64$u20$as$u20$core..fmt..num..Int$GT$7to_u12817h85fbefbad9040a7eE"(i64* noalias nocapture readonly align 1 dereferenceable(8) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i64, i64* %self, align 1
  %0 = sext i64 %_2 to i128
  ret i128 %0
}

; <i128 as core::fmt::num::Int>::zero
; Function Attrs: norecurse nounwind readnone uwtable
define i128 @"_ZN44_$LT$i128$u20$as$u20$core..fmt..num..Int$GT$4zero17h4e65ad729fb31e4fE"() unnamed_addr addrspace(1) #1 {
start:
  ret i128 0
}

; <i128 as core::fmt::num::Int>::from_u8
; Function Attrs: norecurse nounwind readnone uwtable
define i128 @"_ZN44_$LT$i128$u20$as$u20$core..fmt..num..Int$GT$7from_u817h7731059343a74512E"(i8 %u) unnamed_addr addrspace(1) #1 {
start:
  %0 = zext i8 %u to i128
  ret i128 %0
}

; <i128 as core::fmt::num::Int>::to_u8
; Function Attrs: norecurse nounwind readonly uwtable
define i8 @"_ZN44_$LT$i128$u20$as$u20$core..fmt..num..Int$GT$5to_u817heb077c9682d01badE"(i128* noalias nocapture readonly align 1 dereferenceable(16) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i128, i128* %self, align 1
  %0 = trunc i128 %_2 to i8
  ret i8 %0
}

; <i128 as core::fmt::num::Int>::to_u16
; Function Attrs: norecurse nounwind readonly uwtable
define i16 @"_ZN44_$LT$i128$u20$as$u20$core..fmt..num..Int$GT$6to_u1617hb0151545321a5863E"(i128* noalias nocapture readonly align 1 dereferenceable(16) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i128, i128* %self, align 1
  %0 = trunc i128 %_2 to i16
  ret i16 %0
}

; <i128 as core::fmt::num::Int>::to_u32
; Function Attrs: norecurse nounwind readonly uwtable
define i32 @"_ZN44_$LT$i128$u20$as$u20$core..fmt..num..Int$GT$6to_u3217hd613b485699fc404E"(i128* noalias nocapture readonly align 1 dereferenceable(16) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i128, i128* %self, align 1
  %0 = trunc i128 %_2 to i32
  ret i32 %0
}

; <i128 as core::fmt::num::Int>::to_u64
; Function Attrs: norecurse nounwind readonly uwtable
define i64 @"_ZN44_$LT$i128$u20$as$u20$core..fmt..num..Int$GT$6to_u6417h7573984034ab6802E"(i128* noalias nocapture readonly align 1 dereferenceable(16) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i128, i128* %self, align 1
  %0 = trunc i128 %_2 to i64
  ret i64 %0
}

; <i128 as core::fmt::num::Int>::to_u128
; Function Attrs: norecurse nounwind readonly uwtable
define i128 @"_ZN44_$LT$i128$u20$as$u20$core..fmt..num..Int$GT$7to_u12817h2ae67584dcb2366dE"(i128* noalias nocapture readonly align 1 dereferenceable(16) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i128, i128* %self, align 1
  ret i128 %_2
}

; <u8 as core::fmt::num::Int>::to_u16
; Function Attrs: norecurse nounwind readonly uwtable
define i16 @"_ZN42_$LT$u8$u20$as$u20$core..fmt..num..Int$GT$6to_u1617h60c55e71cf07f614E"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i8, i8* %self, align 1
  %0 = zext i8 %_2 to i16
  ret i16 %0
}

; <u8 as core::fmt::num::Int>::to_u32
; Function Attrs: norecurse nounwind readonly uwtable
define i32 @"_ZN42_$LT$u8$u20$as$u20$core..fmt..num..Int$GT$6to_u3217h7b012e1cb4b1d8bbE"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i8, i8* %self, align 1
  %0 = zext i8 %_2 to i32
  ret i32 %0
}

; <u8 as core::fmt::num::Int>::to_u64
; Function Attrs: norecurse nounwind readonly uwtable
define i64 @"_ZN42_$LT$u8$u20$as$u20$core..fmt..num..Int$GT$6to_u6417hcb159b0d65d9cbbdE"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i8, i8* %self, align 1
  %0 = zext i8 %_2 to i64
  ret i64 %0
}

; <u8 as core::fmt::num::Int>::to_u128
; Function Attrs: norecurse nounwind readonly uwtable
define i128 @"_ZN42_$LT$u8$u20$as$u20$core..fmt..num..Int$GT$7to_u12817h0374e086d1d8db60E"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i8, i8* %self, align 1
  %0 = zext i8 %_2 to i128
  ret i128 %0
}

; <u16 as core::fmt::num::Int>::to_u32
; Function Attrs: norecurse nounwind readonly uwtable
define i32 @"_ZN43_$LT$u16$u20$as$u20$core..fmt..num..Int$GT$6to_u3217hd607d5d46d82e016E"(i16* noalias nocapture readonly align 1 dereferenceable(2) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i16, i16* %self, align 1
  %0 = zext i16 %_2 to i32
  ret i32 %0
}

; <u16 as core::fmt::num::Int>::to_u64
; Function Attrs: norecurse nounwind readonly uwtable
define i64 @"_ZN43_$LT$u16$u20$as$u20$core..fmt..num..Int$GT$6to_u6417h8132477c30c9257aE"(i16* noalias nocapture readonly align 1 dereferenceable(2) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i16, i16* %self, align 1
  %0 = zext i16 %_2 to i64
  ret i64 %0
}

; <u16 as core::fmt::num::Int>::to_u128
; Function Attrs: norecurse nounwind readonly uwtable
define i128 @"_ZN43_$LT$u16$u20$as$u20$core..fmt..num..Int$GT$7to_u12817ha1433e42835a66fbE"(i16* noalias nocapture readonly align 1 dereferenceable(2) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i16, i16* %self, align 1
  %0 = zext i16 %_2 to i128
  ret i128 %0
}

; <u32 as core::fmt::num::Int>::to_u64
; Function Attrs: norecurse nounwind readonly uwtable
define i64 @"_ZN43_$LT$u32$u20$as$u20$core..fmt..num..Int$GT$6to_u6417h88d54d23206d69c4E"(i32* noalias nocapture readonly align 1 dereferenceable(4) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i32, i32* %self, align 1
  %0 = zext i32 %_2 to i64
  ret i64 %0
}

; <u32 as core::fmt::num::Int>::to_u128
; Function Attrs: norecurse nounwind readonly uwtable
define i128 @"_ZN43_$LT$u32$u20$as$u20$core..fmt..num..Int$GT$7to_u12817hefc5ee2947e2fe3dE"(i32* noalias nocapture readonly align 1 dereferenceable(4) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i32, i32* %self, align 1
  %0 = zext i32 %_2 to i128
  ret i128 %0
}

; <u64 as core::fmt::num::Int>::to_u128
; Function Attrs: norecurse nounwind readonly uwtable
define i128 @"_ZN43_$LT$u64$u20$as$u20$core..fmt..num..Int$GT$7to_u12817h7fb03c5562672d19E"(i64* noalias nocapture readonly align 1 dereferenceable(8) %self) unnamed_addr addrspace(1) #5 {
start:
  %_2 = load i64, i64* %self, align 1
  %0 = zext i64 %_2 to i128
  ret i128 %0
}

; <core::fmt::num::Binary as core::fmt::num::GenericRadix>::digit
; Function Attrs: uwtable
define i8 @"_ZN71_$LT$core..fmt..num..Binary$u20$as$u20$core..fmt..num..GenericRadix$GT$5digit17ha2d719b3209751faE"(i8 %x) unnamed_addr addrspace(1) #2 {
start:
  %_14 = alloca [2 x { i8*, i8 addrspace(1)* }], align 1
  %_7 = alloca %"fmt::Arguments", align 1
  %x1 = alloca i8, align 1
  %_3 = icmp ult i8 %x, 2
  br i1 %_3, label %bb3, label %bb2

bb2:                                              ; preds = %start
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 1, i8* nonnull %x1)
  store i8 %x, i8* %x1, align 1
  %0 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_7, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %0)
  %1 = bitcast [2 x { i8*, i8 addrspace(1)* }]* %_14 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %1)
  %2 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_14, i16 0, i16 0, i32 0
  store i8* getelementptr inbounds (<{ [1 x i8] }>, <{ [1 x i8] }>* @alloc17526, i16 0, i32 0, i16 0), i8** %2, align 1
  %3 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_14, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 (i8*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp51_$LT$impl$u20$core..fmt..Display$u20$for$u20$u8$GT$3fmt17h15a9d9444c491f95E" to i8 addrspace(1)*), i8 addrspace(1)** %3, align 1
  %4 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_14, i16 0, i16 1, i32 0
  store i8* %x1, i8** %4, align 1
  %5 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_14, i16 0, i16 1, i32 1
  store i8 addrspace(1)* bitcast (i1 (i8*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp51_$LT$impl$u20$core..fmt..Display$u20$for$u20$u8$GT$3fmt17h15a9d9444c491f95E" to i8 addrspace(1)*), i8 addrspace(1)** %5, align 1
  %6 = bitcast %"fmt::Arguments"* %_7 to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8], i8*, [2 x i8] }>* @alloc15925 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %6, align 1, !alias.scope !3320, !noalias !3323
  %7 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_7, i16 0, i32 1, i32 1
  store i16 2, i16* %7, align 1, !alias.scope !3320, !noalias !3323
  %8 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_7, i16 0, i32 3, i32 0
  store i8* null, i8** %8, align 1, !alias.scope !3320, !noalias !3323
  %9 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_7, i16 0, i32 5, i32 0
  %10 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %9 to [2 x { i8*, i8 addrspace(1)* }]**
  store [2 x { i8*, i8 addrspace(1)* }]* %_14, [2 x { i8*, i8 addrspace(1)* }]** %10, align 1, !alias.scope !3320, !noalias !3323
  %11 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_7, i16 0, i32 5, i32 1
  store i16 2, i16* %11, align 1, !alias.scope !3320, !noalias !3323
; call core::panicking::panic_fmt
  call addrspace(1) void @_ZN4core9panicking9panic_fmt17hb7ee2cb815ea49cfE(%"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_7, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc19092 to %"panic::Location"*))
  unreachable

bb3:                                              ; preds = %start
  %12 = add nuw nsw i8 %x, 48
  ret i8 %12
}

; <core::fmt::num::Octal as core::fmt::num::GenericRadix>::digit
; Function Attrs: uwtable
define i8 @"_ZN70_$LT$core..fmt..num..Octal$u20$as$u20$core..fmt..num..GenericRadix$GT$5digit17hcbf78bbb86e9689fE"(i8 %x) unnamed_addr addrspace(1) #2 {
start:
  %_14 = alloca [2 x { i8*, i8 addrspace(1)* }], align 1
  %_7 = alloca %"fmt::Arguments", align 1
  %x1 = alloca i8, align 1
  %_3 = icmp ult i8 %x, 8
  br i1 %_3, label %bb3, label %bb2

bb2:                                              ; preds = %start
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 1, i8* nonnull %x1)
  store i8 %x, i8* %x1, align 1
  %0 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_7, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %0)
  %1 = bitcast [2 x { i8*, i8 addrspace(1)* }]* %_14 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %1)
  %2 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_14, i16 0, i16 0, i32 0
  store i8* getelementptr inbounds (<{ [1 x i8] }>, <{ [1 x i8] }>* @alloc17539, i16 0, i32 0, i16 0), i8** %2, align 1
  %3 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_14, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 (i8*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp51_$LT$impl$u20$core..fmt..Display$u20$for$u20$u8$GT$3fmt17h15a9d9444c491f95E" to i8 addrspace(1)*), i8 addrspace(1)** %3, align 1
  %4 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_14, i16 0, i16 1, i32 0
  store i8* %x1, i8** %4, align 1
  %5 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_14, i16 0, i16 1, i32 1
  store i8 addrspace(1)* bitcast (i1 (i8*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp51_$LT$impl$u20$core..fmt..Display$u20$for$u20$u8$GT$3fmt17h15a9d9444c491f95E" to i8 addrspace(1)*), i8 addrspace(1)** %5, align 1
  %6 = bitcast %"fmt::Arguments"* %_7 to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8], i8*, [2 x i8] }>* @alloc15925 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %6, align 1, !alias.scope !3326, !noalias !3329
  %7 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_7, i16 0, i32 1, i32 1
  store i16 2, i16* %7, align 1, !alias.scope !3326, !noalias !3329
  %8 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_7, i16 0, i32 3, i32 0
  store i8* null, i8** %8, align 1, !alias.scope !3326, !noalias !3329
  %9 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_7, i16 0, i32 5, i32 0
  %10 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %9 to [2 x { i8*, i8 addrspace(1)* }]**
  store [2 x { i8*, i8 addrspace(1)* }]* %_14, [2 x { i8*, i8 addrspace(1)* }]** %10, align 1, !alias.scope !3326, !noalias !3329
  %11 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_7, i16 0, i32 5, i32 1
  store i16 2, i16* %11, align 1, !alias.scope !3326, !noalias !3329
; call core::panicking::panic_fmt
  call addrspace(1) void @_ZN4core9panicking9panic_fmt17hb7ee2cb815ea49cfE(%"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_7, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc19094 to %"panic::Location"*))
  unreachable

bb3:                                              ; preds = %start
  %12 = add nuw nsw i8 %x, 48
  ret i8 %12
}

; <core::fmt::num::LowerHex as core::fmt::num::GenericRadix>::digit
; Function Attrs: uwtable
define i8 @"_ZN73_$LT$core..fmt..num..LowerHex$u20$as$u20$core..fmt..num..GenericRadix$GT$5digit17h413f3fd96643e5ceE"(i8 %x) unnamed_addr addrspace(1) #2 {
start:
  %_19 = alloca [2 x { i8*, i8 addrspace(1)* }], align 1
  %_12 = alloca %"fmt::Arguments", align 1
  %x1 = alloca i8, align 1
  %_5 = icmp ult i8 %x, 10
  br i1 %_5, label %bb10, label %bb2

bb2:                                              ; preds = %start
  %_3 = icmp ult i8 %x, 16
  br i1 %_3, label %bb10, label %bb4

bb4:                                              ; preds = %bb2
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 1, i8* nonnull %x1)
  store i8 %x, i8* %x1, align 1
  %0 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_12, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %0)
  %1 = bitcast [2 x { i8*, i8 addrspace(1)* }]* %_19 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %1)
  %2 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_19, i16 0, i16 0, i32 0
  store i8* getelementptr inbounds (<{ [1 x i8] }>, <{ [1 x i8] }>* @alloc15929, i16 0, i32 0, i16 0), i8** %2, align 1
  %3 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_19, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 (i8*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp51_$LT$impl$u20$core..fmt..Display$u20$for$u20$u8$GT$3fmt17h15a9d9444c491f95E" to i8 addrspace(1)*), i8 addrspace(1)** %3, align 1
  %4 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_19, i16 0, i16 1, i32 0
  store i8* %x1, i8** %4, align 1
  %5 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_19, i16 0, i16 1, i32 1
  store i8 addrspace(1)* bitcast (i1 (i8*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp51_$LT$impl$u20$core..fmt..Display$u20$for$u20$u8$GT$3fmt17h15a9d9444c491f95E" to i8 addrspace(1)*), i8 addrspace(1)** %5, align 1
  %6 = bitcast %"fmt::Arguments"* %_12 to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8], i8*, [2 x i8] }>* @alloc15925 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %6, align 1, !alias.scope !3332, !noalias !3335
  %7 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_12, i16 0, i32 1, i32 1
  store i16 2, i16* %7, align 1, !alias.scope !3332, !noalias !3335
  %8 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_12, i16 0, i32 3, i32 0
  store i8* null, i8** %8, align 1, !alias.scope !3332, !noalias !3335
  %9 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_12, i16 0, i32 5, i32 0
  %10 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %9 to [2 x { i8*, i8 addrspace(1)* }]**
  store [2 x { i8*, i8 addrspace(1)* }]* %_19, [2 x { i8*, i8 addrspace(1)* }]** %10, align 1, !alias.scope !3332, !noalias !3335
  %11 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_12, i16 0, i32 5, i32 1
  store i16 2, i16* %11, align 1, !alias.scope !3332, !noalias !3335
; call core::panicking::panic_fmt
  call addrspace(1) void @_ZN4core9panicking9panic_fmt17hb7ee2cb815ea49cfE(%"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_12, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc19096 to %"panic::Location"*))
  unreachable

bb10:                                             ; preds = %bb2, %start
  %.sink = phi i8 [ 48, %start ], [ 87, %bb2 ]
  %12 = add nuw nsw i8 %.sink, %x
  ret i8 %12
}

; <core::fmt::num::UpperHex as core::fmt::num::GenericRadix>::digit
; Function Attrs: uwtable
define i8 @"_ZN73_$LT$core..fmt..num..UpperHex$u20$as$u20$core..fmt..num..GenericRadix$GT$5digit17h9036ce7d0373696bE"(i8 %x) unnamed_addr addrspace(1) #2 {
start:
  %_19 = alloca [2 x { i8*, i8 addrspace(1)* }], align 1
  %_12 = alloca %"fmt::Arguments", align 1
  %x1 = alloca i8, align 1
  %_5 = icmp ult i8 %x, 10
  br i1 %_5, label %bb10, label %bb2

bb2:                                              ; preds = %start
  %_3 = icmp ult i8 %x, 16
  br i1 %_3, label %bb10, label %bb4

bb4:                                              ; preds = %bb2
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 1, i8* nonnull %x1)
  store i8 %x, i8* %x1, align 1
  %0 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_12, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %0)
  %1 = bitcast [2 x { i8*, i8 addrspace(1)* }]* %_19 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %1)
  %2 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_19, i16 0, i16 0, i32 0
  store i8* getelementptr inbounds (<{ [1 x i8] }>, <{ [1 x i8] }>* @alloc15929, i16 0, i32 0, i16 0), i8** %2, align 1
  %3 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_19, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 (i8*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp51_$LT$impl$u20$core..fmt..Display$u20$for$u20$u8$GT$3fmt17h15a9d9444c491f95E" to i8 addrspace(1)*), i8 addrspace(1)** %3, align 1
  %4 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_19, i16 0, i16 1, i32 0
  store i8* %x1, i8** %4, align 1
  %5 = getelementptr inbounds [2 x { i8*, i8 addrspace(1)* }], [2 x { i8*, i8 addrspace(1)* }]* %_19, i16 0, i16 1, i32 1
  store i8 addrspace(1)* bitcast (i1 (i8*, %"fmt::Formatter"*) addrspace(1)* @"_ZN4core3fmt3num3imp51_$LT$impl$u20$core..fmt..Display$u20$for$u20$u8$GT$3fmt17h15a9d9444c491f95E" to i8 addrspace(1)*), i8 addrspace(1)** %5, align 1
  %6 = bitcast %"fmt::Arguments"* %_12 to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8], i8*, [2 x i8] }>* @alloc15925 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %6, align 1, !alias.scope !3338, !noalias !3341
  %7 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_12, i16 0, i32 1, i32 1
  store i16 2, i16* %7, align 1, !alias.scope !3338, !noalias !3341
  %8 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_12, i16 0, i32 3, i32 0
  store i8* null, i8** %8, align 1, !alias.scope !3338, !noalias !3341
  %9 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_12, i16 0, i32 5, i32 0
  %10 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %9 to [2 x { i8*, i8 addrspace(1)* }]**
  store [2 x { i8*, i8 addrspace(1)* }]* %_19, [2 x { i8*, i8 addrspace(1)* }]** %10, align 1, !alias.scope !3338, !noalias !3341
  %11 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_12, i16 0, i32 5, i32 1
  store i16 2, i16* %11, align 1, !alias.scope !3338, !noalias !3341
; call core::panicking::panic_fmt
  call addrspace(1) void @_ZN4core9panicking9panic_fmt17hb7ee2cb815ea49cfE(%"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_12, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc19098 to %"panic::Location"*))
  unreachable

bb10:                                             ; preds = %bb2, %start
  %.sink = phi i8 [ 48, %start ], [ 55, %bb2 ]
  %12 = add nuw nsw i8 %.sink, %x
  ret i8 %12
}

; core::fmt::num::<impl core::fmt::Debug for usize>::fmt
; Function Attrs: inlinehint uwtable
define internal zeroext i1 @"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..Debug$u20$for$u20$usize$GT$3fmt17h5b03f6e1e4826f97E"(i16* noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #12 {
start:
  %buf.i.i16 = alloca [39 x i8], align 1
  %buf.i.i = alloca [128 x i8], align 1
  %0 = bitcast %"fmt::Formatter"* %f to i32*
  %_3.i = load i32, i32* %0, align 1, !alias.scope !3344
  %_2.i = and i32 %_3.i, 16
  %1 = icmp eq i32 %_2.i, 0
  br i1 %1, label %bb2, label %bb3

bb2:                                              ; preds = %start
  %_2.i2 = and i32 %_3.i, 32
  %2 = icmp eq i32 %_2.i2, 0
  %_4.i = load i16, i16* %self, align 1
  br i1 %2, label %bb6, label %bb7

bb3:                                              ; preds = %start
  %_4.i4 = load i16, i16* %self, align 1, !alias.scope !3347
  %3 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %3), !noalias !3347
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %3, i8 undef, i16 128, i1 false), !noalias !3347
  %4 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i, i16 0, i16 128
  br label %bb15.i.i10

bb15.i.i10:                                       ; preds = %bb15.i.i10, %bb3
  %iter.sroa.4.0.i.i5 = phi i8* [ %4, %bb3 ], [ %5, %bb15.i.i10 ]
  %x.0.i.i6 = phi i16 [ %_4.i4, %bb3 ], [ %6, %bb15.i.i10 ]
  %curr.0.i.i7 = phi i16 [ 128, %bb3 ], [ %11, %bb15.i.i10 ]
  %5 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i.i5, i16 -1
  %6 = lshr i16 %x.0.i.i6, 4
  %7 = trunc i16 %x.0.i.i6 to i8
  %8 = and i8 %7, 15
  %_5.i9.i.i8 = icmp ult i8 %8, 10
  %9 = or i8 %8, 48
  %10 = add nuw nsw i8 %8, 87
  %.0.i15.i.i9 = select i1 %_5.i9.i.i8, i8 %9, i8 %10
  store i8 %.0.i15.i.i9, i8* %5, align 1, !noalias !3347
  %11 = add nsw i16 %curr.0.i.i7, -1
  %12 = icmp eq i16 %6, 0
  br i1 %12, label %bb43.i.i12, label %bb15.i.i10

bb43.i.i12:                                       ; preds = %bb15.i.i10
  %_3.i.i.i.i.i11 = icmp ugt i16 %11, 128
  br i1 %_3.i.i.i.i.i11, label %bb2.i.i.i.i.i13, label %"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$usize$GT$3fmt17he5ed7a2681b30ea1E.exit"

bb2.i.i.i.i.i13:                                  ; preds = %bb43.i.i12
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %11, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*)), !noalias !3347
  unreachable

"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$usize$GT$3fmt17he5ed7a2681b30ea1E.exit": ; preds = %bb43.i.i12
  %13 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i, i16 0, i16 %11
  %_7.i.i.i.i.i.i14 = sub nuw nsw i16 129, %curr.0.i.i7
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i15 = bitcast i8* %13 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %14 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i15, i16 %_7.i.i.i.i.i.i14), !noalias !3347
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %3), !noalias !3347
  br label %bb11

bb6:                                              ; preds = %bb2
  %15 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i16, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 39, i8* nonnull %15), !noalias !3350
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(39) %15, i8 undef, i16 39, i1 false), !noalias !3350
  %_2329.i.i = icmp ugt i16 %_4.i, 9999
  br i1 %_2329.i.i, label %bb26.i.thread.i, label %bb9.i.i

bb26.i.thread.i:                                  ; preds = %bb6
  %16 = udiv i16 %_4.i, 10000
  %17 = mul i16 %16, 10000
  %_26.i2.i.decomposed = sub i16 %_4.i, %17
  %_29.i.i = udiv i16 %_26.i2.i.decomposed, 100
  %d1.i.i = shl nuw nsw i16 %_29.i.i, 1
  %18 = mul i16 %_29.i.i, 100
  %_35.i.i.decomposed = sub i16 %_26.i2.i.decomposed, %18
  %d2.i.i = shl nuw nsw i16 %_35.i.i.decomposed, 1
  %19 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d1.i.i
  %20 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i16, i16 0, i16 35
  %21 = bitcast i8* %19 to i16*
  %22 = bitcast i8* %20 to i16*
  %23 = load i16, i16* %21, align 1, !noalias !3350
  store i16 %23, i16* %22, align 1, !noalias !3350
  %24 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d2.i.i
  %25 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i16, i16 0, i16 37
  %26 = bitcast i8* %24 to i16*
  %27 = bitcast i8* %25 to i16*
  %28 = load i16, i16* %26, align 1, !noalias !3350
  store i16 %28, i16* %27, align 1, !noalias !3350
  %extract.t.i = trunc i16 %16 to i8
  br label %bb28.i.i

bb9.i.i:                                          ; preds = %bb6
  %_57.i.i = icmp sgt i16 %_4.i, 99
  br i1 %_57.i.i, label %bb22.i.i, label %bb26.i.i

bb22.i.i:                                         ; preds = %bb9.i.i
  %29 = udiv i16 %_4.i, 100
  %30 = mul i16 %29, 100
  %_6028.i.i.decomposed = sub i16 %_4.i, %30
  %d14.i.i = shl nuw nsw i16 %_6028.i.i.decomposed, 1
  %31 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d14.i.i
  %32 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i16, i16 0, i16 37
  %33 = bitcast i8* %31 to i16*
  %34 = bitcast i8* %32 to i16*
  %35 = load i16, i16* %33, align 1, !noalias !3350
  store i16 %35, i16* %34, align 1, !noalias !3350
  br label %bb26.i.i

bb26.i.i:                                         ; preds = %bb22.i.i, %bb9.i.i
  %n1.0.i.i = phi i16 [ %29, %bb22.i.i ], [ %_4.i, %bb9.i.i ]
  %curr.1.i.i = phi i16 [ 37, %bb22.i.i ], [ 39, %bb9.i.i ]
  %_75.i.i = icmp slt i16 %n1.0.i.i, 10
  %extract.t11.i = trunc i16 %n1.0.i.i to i8
  br i1 %_75.i.i, label %bb28.i.i, label %bb27.i.i

bb27.i.i:                                         ; preds = %bb26.i.i
  %d16.i.i = shl nuw nsw i16 %n1.0.i.i, 1
  %36 = add nsw i16 %curr.1.i.i, -2
  %37 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d16.i.i
  %38 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i16, i16 0, i16 %36
  %39 = bitcast i8* %37 to i16*
  %40 = bitcast i8* %38 to i16*
  %41 = load i16, i16* %39, align 1, !noalias !3350
  store i16 %41, i16* %40, align 1, !noalias !3350
  br label %"_ZN4core3fmt3num3imp54_$LT$impl$u20$core..fmt..Display$u20$for$u20$usize$GT$3fmt17h322c7240ebdab40eE.exit"

bb28.i.i:                                         ; preds = %bb26.i.i, %bb26.i.thread.i
  %curr.1.i10.i = phi i16 [ 35, %bb26.i.thread.i ], [ %curr.1.i.i, %bb26.i.i ]
  %n1.0.i9.off0.i = phi i8 [ %extract.t.i, %bb26.i.thread.i ], [ %extract.t11.i, %bb26.i.i ]
  %42 = add nsw i16 %curr.1.i10.i, -1
  %43 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i16, i16 0, i16 %42
  %44 = add nuw nsw i8 %n1.0.i9.off0.i, 48
  store i8 %44, i8* %43, align 1, !noalias !3350
  br label %"_ZN4core3fmt3num3imp54_$LT$impl$u20$core..fmt..Display$u20$for$u20$usize$GT$3fmt17h322c7240ebdab40eE.exit"

"_ZN4core3fmt3num3imp54_$LT$impl$u20$core..fmt..Display$u20$for$u20$usize$GT$3fmt17h322c7240ebdab40eE.exit": ; preds = %bb27.i.i, %bb28.i.i
  %curr.2.i.i = phi i16 [ %42, %bb28.i.i ], [ %36, %bb27.i.i ]
  %45 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i16, i16 0, i16 %curr.2.i.i
  %_98.i.i = sub nuw nsw i16 39, %curr.2.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i17 = bitcast i8* %45 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %46 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), i16 0, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i17, i16 %_98.i.i), !noalias !3350
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 39, i8* nonnull %15), !noalias !3350
  br label %bb11

bb7:                                              ; preds = %bb2
  %47 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %47), !noalias !3353
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %47, i8 undef, i16 128, i1 false), !noalias !3353
  %48 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i, i16 0, i16 128
  br label %bb15.i.i

bb15.i.i:                                         ; preds = %bb15.i.i, %bb7
  %iter.sroa.4.0.i.i = phi i8* [ %48, %bb7 ], [ %49, %bb15.i.i ]
  %x.0.i.i = phi i16 [ %_4.i, %bb7 ], [ %50, %bb15.i.i ]
  %curr.0.i.i = phi i16 [ 128, %bb7 ], [ %55, %bb15.i.i ]
  %49 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i.i, i16 -1
  %50 = lshr i16 %x.0.i.i, 4
  %51 = trunc i16 %x.0.i.i to i8
  %52 = and i8 %51, 15
  %_5.i9.i.i = icmp ult i8 %52, 10
  %53 = or i8 %52, 48
  %54 = add nuw nsw i8 %52, 55
  %.0.i15.i.i = select i1 %_5.i9.i.i, i8 %53, i8 %54
  store i8 %.0.i15.i.i, i8* %49, align 1, !noalias !3353
  %55 = add nsw i16 %curr.0.i.i, -1
  %56 = icmp eq i16 %50, 0
  br i1 %56, label %bb43.i.i, label %bb15.i.i

bb43.i.i:                                         ; preds = %bb15.i.i
  %_3.i.i.i.i.i = icmp ugt i16 %55, 128
  br i1 %_3.i.i.i.i.i, label %bb2.i.i.i.i.i, label %"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$usize$GT$3fmt17h4b84f8ccc51f0806E.exit"

bb2.i.i.i.i.i:                                    ; preds = %bb43.i.i
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %55, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*)), !noalias !3353
  unreachable

"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$usize$GT$3fmt17h4b84f8ccc51f0806E.exit": ; preds = %bb43.i.i
  %57 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i, i16 0, i16 %55
  %_7.i.i.i.i.i.i = sub nuw nsw i16 129, %curr.0.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i = bitcast i8* %57 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %58 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i, i16 %_7.i.i.i.i.i.i), !noalias !3353
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %47), !noalias !3353
  br label %bb11

bb11:                                             ; preds = %"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$usize$GT$3fmt17h4b84f8ccc51f0806E.exit", %"_ZN4core3fmt3num3imp54_$LT$impl$u20$core..fmt..Display$u20$for$u20$usize$GT$3fmt17h322c7240ebdab40eE.exit", %"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$usize$GT$3fmt17he5ed7a2681b30ea1E.exit"
  %.0.in = phi i1 [ %14, %"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$usize$GT$3fmt17he5ed7a2681b30ea1E.exit" ], [ %58, %"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$usize$GT$3fmt17h4b84f8ccc51f0806E.exit" ], [ %46, %"_ZN4core3fmt3num3imp54_$LT$impl$u20$core..fmt..Display$u20$for$u20$usize$GT$3fmt17h322c7240ebdab40eE.exit" ]
  ret i1 %.0.in
}

; core::fmt::num::<impl core::fmt::Binary for i8>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Binary$u20$for$u20$i8$GT$3fmt17hbc734efa183f2c21E"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i = alloca [128 x i8], align 1
  %_5 = load i8, i8* %self, align 1
  %0 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %0)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %0, i8 undef, i16 128, i1 false)
  %1 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 128
  br label %"_ZN71_$LT$core..fmt..num..Binary$u20$as$u20$core..fmt..num..GenericRadix$GT$5digit17ha2d719b3209751faE.exit10.i"

"_ZN71_$LT$core..fmt..num..Binary$u20$as$u20$core..fmt..num..GenericRadix$GT$5digit17ha2d719b3209751faE.exit10.i": ; preds = %"_ZN71_$LT$core..fmt..num..Binary$u20$as$u20$core..fmt..num..GenericRadix$GT$5digit17ha2d719b3209751faE.exit10.i", %start
  %iter.sroa.4.0.i = phi i8* [ %1, %start ], [ %2, %"_ZN71_$LT$core..fmt..num..Binary$u20$as$u20$core..fmt..num..GenericRadix$GT$5digit17ha2d719b3209751faE.exit10.i" ]
  %x.0.i = phi i8 [ %_5, %start ], [ %4, %"_ZN71_$LT$core..fmt..num..Binary$u20$as$u20$core..fmt..num..GenericRadix$GT$5digit17ha2d719b3209751faE.exit10.i" ]
  %curr.0.i = phi i16 [ 128, %start ], [ %6, %"_ZN71_$LT$core..fmt..num..Binary$u20$as$u20$core..fmt..num..GenericRadix$GT$5digit17ha2d719b3209751faE.exit10.i" ]
  %2 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i, i16 -1
  %3 = and i8 %x.0.i, 1
  %4 = lshr i8 %x.0.i, 1
  %5 = or i8 %3, 48
  store i8 %5, i8* %2, align 1
  %6 = add nsw i16 %curr.0.i, -1
  %7 = icmp eq i8 %4, 0
  br i1 %7, label %bb43.i, label %"_ZN71_$LT$core..fmt..num..Binary$u20$as$u20$core..fmt..num..GenericRadix$GT$5digit17ha2d719b3209751faE.exit10.i"

bb43.i:                                           ; preds = %"_ZN71_$LT$core..fmt..num..Binary$u20$as$u20$core..fmt..num..GenericRadix$GT$5digit17ha2d719b3209751faE.exit10.i"
  %_3.i.i.i.i = icmp ugt i16 %6, 128
  br i1 %_3.i.i.i.i, label %bb2.i.i.i.i, label %_ZN4core3fmt3num12GenericRadix7fmt_int17h427e81778d7c787fE.exit

bb2.i.i.i.i:                                      ; preds = %bb43.i
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %6, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*))
  unreachable

_ZN4core3fmt3num12GenericRadix7fmt_int17h427e81778d7c787fE.exit: ; preds = %bb43.i
  %8 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 %6
  %_7.i.i.i.i.i = sub nuw nsw i16 129, %curr.0.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i = bitcast i8* %8 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %9 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18697 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i, i16 %_7.i.i.i.i.i)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %0)
  ret i1 %9
}

; core::fmt::num::<impl core::fmt::Octal for i8>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num49_$LT$impl$u20$core..fmt..Octal$u20$for$u20$i8$GT$3fmt17h6a53c27400875c65E"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i = alloca [128 x i8], align 1
  %_5 = load i8, i8* %self, align 1
  %0 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %0)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %0, i8 undef, i16 128, i1 false)
  %1 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 128
  br label %"_ZN70_$LT$core..fmt..num..Octal$u20$as$u20$core..fmt..num..GenericRadix$GT$5digit17hcbf78bbb86e9689fE.exit10.i"

"_ZN70_$LT$core..fmt..num..Octal$u20$as$u20$core..fmt..num..GenericRadix$GT$5digit17hcbf78bbb86e9689fE.exit10.i": ; preds = %"_ZN70_$LT$core..fmt..num..Octal$u20$as$u20$core..fmt..num..GenericRadix$GT$5digit17hcbf78bbb86e9689fE.exit10.i", %start
  %iter.sroa.4.0.i = phi i8* [ %1, %start ], [ %2, %"_ZN70_$LT$core..fmt..num..Octal$u20$as$u20$core..fmt..num..GenericRadix$GT$5digit17hcbf78bbb86e9689fE.exit10.i" ]
  %x.0.i = phi i8 [ %_5, %start ], [ %4, %"_ZN70_$LT$core..fmt..num..Octal$u20$as$u20$core..fmt..num..GenericRadix$GT$5digit17hcbf78bbb86e9689fE.exit10.i" ]
  %curr.0.i = phi i16 [ 128, %start ], [ %6, %"_ZN70_$LT$core..fmt..num..Octal$u20$as$u20$core..fmt..num..GenericRadix$GT$5digit17hcbf78bbb86e9689fE.exit10.i" ]
  %2 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i, i16 -1
  %3 = and i8 %x.0.i, 7
  %4 = lshr i8 %x.0.i, 3
  %5 = or i8 %3, 48
  store i8 %5, i8* %2, align 1
  %6 = add nsw i16 %curr.0.i, -1
  %7 = icmp eq i8 %4, 0
  br i1 %7, label %bb43.i, label %"_ZN70_$LT$core..fmt..num..Octal$u20$as$u20$core..fmt..num..GenericRadix$GT$5digit17hcbf78bbb86e9689fE.exit10.i"

bb43.i:                                           ; preds = %"_ZN70_$LT$core..fmt..num..Octal$u20$as$u20$core..fmt..num..GenericRadix$GT$5digit17hcbf78bbb86e9689fE.exit10.i"
  %_3.i.i.i.i = icmp ugt i16 %6, 128
  br i1 %_3.i.i.i.i, label %bb2.i.i.i.i, label %_ZN4core3fmt3num12GenericRadix7fmt_int17ha91a49b06b678eaaE.exit

bb2.i.i.i.i:                                      ; preds = %bb43.i
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %6, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*))
  unreachable

_ZN4core3fmt3num12GenericRadix7fmt_int17ha91a49b06b678eaaE.exit: ; preds = %bb43.i
  %8 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 %6
  %_7.i.i.i.i.i = sub nuw nsw i16 129, %curr.0.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i = bitcast i8* %8 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %9 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18699 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i, i16 %_7.i.i.i.i.i)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %0)
  ret i1 %9
}

; core::fmt::num::<impl core::fmt::LowerHex for i8>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i8$GT$3fmt17h7943257fc24ac32eE"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i = alloca [128 x i8], align 1
  %_5 = load i8, i8* %self, align 1
  %0 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %0)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %0, i8 undef, i16 128, i1 false)
  %1 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 128
  br label %bb15.i

bb15.i:                                           ; preds = %bb15.i, %start
  %iter.sroa.4.0.i = phi i8* [ %1, %start ], [ %2, %bb15.i ]
  %x.0.i = phi i8 [ %_5, %start ], [ %4, %bb15.i ]
  %curr.0.i = phi i16 [ 128, %start ], [ %7, %bb15.i ]
  %2 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i, i16 -1
  %3 = and i8 %x.0.i, 15
  %4 = lshr i8 %x.0.i, 4
  %_5.i8.i = icmp ult i8 %3, 10
  %5 = or i8 %3, 48
  %6 = add nuw nsw i8 %3, 87
  %.0.i14.i = select i1 %_5.i8.i, i8 %5, i8 %6
  store i8 %.0.i14.i, i8* %2, align 1
  %7 = add nsw i16 %curr.0.i, -1
  %8 = icmp eq i8 %4, 0
  br i1 %8, label %bb43.i, label %bb15.i

bb43.i:                                           ; preds = %bb15.i
  %_3.i.i.i.i = icmp ugt i16 %7, 128
  br i1 %_3.i.i.i.i, label %bb2.i.i.i.i, label %_ZN4core3fmt3num12GenericRadix7fmt_int17hce8aa83ff7ffc5f2E.exit

bb2.i.i.i.i:                                      ; preds = %bb43.i
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %7, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*))
  unreachable

_ZN4core3fmt3num12GenericRadix7fmt_int17hce8aa83ff7ffc5f2E.exit: ; preds = %bb43.i
  %9 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 %7
  %_7.i.i.i.i.i = sub nuw nsw i16 129, %curr.0.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i = bitcast i8* %9 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %10 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i, i16 %_7.i.i.i.i.i)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %0)
  ret i1 %10
}

; core::fmt::num::<impl core::fmt::UpperHex for i8>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i8$GT$3fmt17h405967de1e4d6acaE"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i = alloca [128 x i8], align 1
  %_5 = load i8, i8* %self, align 1
  %0 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %0)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %0, i8 undef, i16 128, i1 false)
  %1 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 128
  br label %bb15.i

bb15.i:                                           ; preds = %bb15.i, %start
  %iter.sroa.4.0.i = phi i8* [ %1, %start ], [ %2, %bb15.i ]
  %x.0.i = phi i8 [ %_5, %start ], [ %4, %bb15.i ]
  %curr.0.i = phi i16 [ 128, %start ], [ %7, %bb15.i ]
  %2 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i, i16 -1
  %3 = and i8 %x.0.i, 15
  %4 = lshr i8 %x.0.i, 4
  %_5.i8.i = icmp ult i8 %3, 10
  %5 = or i8 %3, 48
  %6 = add nuw nsw i8 %3, 55
  %.0.i14.i = select i1 %_5.i8.i, i8 %5, i8 %6
  store i8 %.0.i14.i, i8* %2, align 1
  %7 = add nsw i16 %curr.0.i, -1
  %8 = icmp eq i8 %4, 0
  br i1 %8, label %bb43.i, label %bb15.i

bb43.i:                                           ; preds = %bb15.i
  %_3.i.i.i.i = icmp ugt i16 %7, 128
  br i1 %_3.i.i.i.i, label %bb2.i.i.i.i, label %_ZN4core3fmt3num12GenericRadix7fmt_int17hba3eb109ceb897f1E.exit

bb2.i.i.i.i:                                      ; preds = %bb43.i
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %7, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*))
  unreachable

_ZN4core3fmt3num12GenericRadix7fmt_int17hba3eb109ceb897f1E.exit: ; preds = %bb43.i
  %9 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 %7
  %_7.i.i.i.i.i = sub nuw nsw i16 129, %curr.0.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i = bitcast i8* %9 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %10 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i, i16 %_7.i.i.i.i.i)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %0)
  ret i1 %10
}

; core::fmt::num::<impl core::fmt::Binary for i16>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num51_$LT$impl$u20$core..fmt..Binary$u20$for$u20$i16$GT$3fmt17h123d318960f83c97E"(i16* noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i = alloca [128 x i8], align 1
  %_5 = load i16, i16* %self, align 1
  %0 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %0)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %0, i8 undef, i16 128, i1 false)
  %1 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 128
  br label %bb15.i

bb15.i:                                           ; preds = %bb15.i, %start
  %iter.sroa.4.0.i = phi i8* [ %1, %start ], [ %2, %bb15.i ]
  %x.0.i = phi i16 [ %_5, %start ], [ %3, %bb15.i ]
  %curr.0.i = phi i16 [ 128, %start ], [ %7, %bb15.i ]
  %2 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i, i16 -1
  %3 = lshr i16 %x.0.i, 1
  %4 = trunc i16 %x.0.i to i8
  %5 = and i8 %4, 1
  %6 = or i8 %5, 48
  store i8 %6, i8* %2, align 1
  %7 = add nsw i16 %curr.0.i, -1
  %8 = icmp eq i16 %3, 0
  br i1 %8, label %bb43.i, label %bb15.i

bb43.i:                                           ; preds = %bb15.i
  %_3.i.i.i.i = icmp ugt i16 %7, 128
  br i1 %_3.i.i.i.i, label %bb2.i.i.i.i, label %_ZN4core3fmt3num12GenericRadix7fmt_int17h2831a826c7c09abfE.exit

bb2.i.i.i.i:                                      ; preds = %bb43.i
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %7, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*))
  unreachable

_ZN4core3fmt3num12GenericRadix7fmt_int17h2831a826c7c09abfE.exit: ; preds = %bb43.i
  %9 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 %7
  %_7.i.i.i.i.i = sub nuw nsw i16 129, %curr.0.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i = bitcast i8* %9 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %10 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18697 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i, i16 %_7.i.i.i.i.i)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %0)
  ret i1 %10
}

; core::fmt::num::<impl core::fmt::Octal for i16>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Octal$u20$for$u20$i16$GT$3fmt17h89dc187a377e47afE"(i16* noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i = alloca [128 x i8], align 1
  %_5 = load i16, i16* %self, align 1
  %0 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %0)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %0, i8 undef, i16 128, i1 false)
  %1 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 128
  br label %bb15.i

bb15.i:                                           ; preds = %bb15.i, %start
  %iter.sroa.4.0.i = phi i8* [ %1, %start ], [ %2, %bb15.i ]
  %x.0.i = phi i16 [ %_5, %start ], [ %3, %bb15.i ]
  %curr.0.i = phi i16 [ 128, %start ], [ %7, %bb15.i ]
  %2 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i, i16 -1
  %3 = lshr i16 %x.0.i, 3
  %4 = trunc i16 %x.0.i to i8
  %5 = and i8 %4, 7
  %6 = or i8 %5, 48
  store i8 %6, i8* %2, align 1
  %7 = add nsw i16 %curr.0.i, -1
  %8 = icmp eq i16 %3, 0
  br i1 %8, label %bb43.i, label %bb15.i

bb43.i:                                           ; preds = %bb15.i
  %_3.i.i.i.i = icmp ugt i16 %7, 128
  br i1 %_3.i.i.i.i, label %bb2.i.i.i.i, label %_ZN4core3fmt3num12GenericRadix7fmt_int17h4adb9fc91181a104E.exit

bb2.i.i.i.i:                                      ; preds = %bb43.i
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %7, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*))
  unreachable

_ZN4core3fmt3num12GenericRadix7fmt_int17h4adb9fc91181a104E.exit: ; preds = %bb43.i
  %9 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 %7
  %_7.i.i.i.i.i = sub nuw nsw i16 129, %curr.0.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i = bitcast i8* %9 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %10 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18699 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i, i16 %_7.i.i.i.i.i)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %0)
  ret i1 %10
}

; core::fmt::num::<impl core::fmt::LowerHex for i16>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i16$GT$3fmt17hbe4318a26c58a6ceE"(i16* noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i = alloca [128 x i8], align 1
  %_5 = load i16, i16* %self, align 1
  %0 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %0)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %0, i8 undef, i16 128, i1 false)
  %1 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 128
  br label %bb15.i

bb15.i:                                           ; preds = %bb15.i, %start
  %iter.sroa.4.0.i = phi i8* [ %1, %start ], [ %2, %bb15.i ]
  %x.0.i = phi i16 [ %_5, %start ], [ %3, %bb15.i ]
  %curr.0.i = phi i16 [ 128, %start ], [ %8, %bb15.i ]
  %2 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i, i16 -1
  %3 = lshr i16 %x.0.i, 4
  %4 = trunc i16 %x.0.i to i8
  %5 = and i8 %4, 15
  %_5.i9.i = icmp ult i8 %5, 10
  %6 = or i8 %5, 48
  %7 = add nuw nsw i8 %5, 87
  %.0.i15.i = select i1 %_5.i9.i, i8 %6, i8 %7
  store i8 %.0.i15.i, i8* %2, align 1
  %8 = add nsw i16 %curr.0.i, -1
  %9 = icmp eq i16 %3, 0
  br i1 %9, label %bb43.i, label %bb15.i

bb43.i:                                           ; preds = %bb15.i
  %_3.i.i.i.i = icmp ugt i16 %8, 128
  br i1 %_3.i.i.i.i, label %bb2.i.i.i.i, label %_ZN4core3fmt3num12GenericRadix7fmt_int17hda15196046cab4faE.exit

bb2.i.i.i.i:                                      ; preds = %bb43.i
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %8, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*))
  unreachable

_ZN4core3fmt3num12GenericRadix7fmt_int17hda15196046cab4faE.exit: ; preds = %bb43.i
  %10 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 %8
  %_7.i.i.i.i.i = sub nuw nsw i16 129, %curr.0.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i = bitcast i8* %10 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %11 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i, i16 %_7.i.i.i.i.i)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %0)
  ret i1 %11
}

; core::fmt::num::<impl core::fmt::UpperHex for i16>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i16$GT$3fmt17hbf7433b6c707aeabE"(i16* noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i = alloca [128 x i8], align 1
  %_5 = load i16, i16* %self, align 1
  %0 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %0)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %0, i8 undef, i16 128, i1 false)
  %1 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 128
  br label %bb15.i

bb15.i:                                           ; preds = %bb15.i, %start
  %iter.sroa.4.0.i = phi i8* [ %1, %start ], [ %2, %bb15.i ]
  %x.0.i = phi i16 [ %_5, %start ], [ %3, %bb15.i ]
  %curr.0.i = phi i16 [ 128, %start ], [ %8, %bb15.i ]
  %2 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i, i16 -1
  %3 = lshr i16 %x.0.i, 4
  %4 = trunc i16 %x.0.i to i8
  %5 = and i8 %4, 15
  %_5.i9.i = icmp ult i8 %5, 10
  %6 = or i8 %5, 48
  %7 = add nuw nsw i8 %5, 55
  %.0.i15.i = select i1 %_5.i9.i, i8 %6, i8 %7
  store i8 %.0.i15.i, i8* %2, align 1
  %8 = add nsw i16 %curr.0.i, -1
  %9 = icmp eq i16 %3, 0
  br i1 %9, label %bb43.i, label %bb15.i

bb43.i:                                           ; preds = %bb15.i
  %_3.i.i.i.i = icmp ugt i16 %8, 128
  br i1 %_3.i.i.i.i, label %bb2.i.i.i.i, label %_ZN4core3fmt3num12GenericRadix7fmt_int17h341aa7b017af43a8E.exit

bb2.i.i.i.i:                                      ; preds = %bb43.i
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %8, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*))
  unreachable

_ZN4core3fmt3num12GenericRadix7fmt_int17h341aa7b017af43a8E.exit: ; preds = %bb43.i
  %10 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 %8
  %_7.i.i.i.i.i = sub nuw nsw i16 129, %curr.0.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i = bitcast i8* %10 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %11 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i, i16 %_7.i.i.i.i.i)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %0)
  ret i1 %11
}

; core::fmt::num::<impl core::fmt::Binary for i32>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num51_$LT$impl$u20$core..fmt..Binary$u20$for$u20$i32$GT$3fmt17ha09d6646116c986eE"(i32* noalias nocapture readonly align 1 dereferenceable(4) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i = alloca [128 x i8], align 1
  %_5 = load i32, i32* %self, align 1
  %0 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %0)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %0, i8 undef, i16 128, i1 false)
  %1 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 128
  br label %bb11.i

bb11.i:                                           ; preds = %bb15.i, %start
  %iter.sroa.4.0.i = phi i8* [ %1, %start ], [ %2, %bb15.i ]
  %x.0.i = phi i32 [ %_5, %start ], [ %3, %bb15.i ]
  %curr.0.i = phi i16 [ 128, %start ], [ %7, %bb15.i ]
  %_13.i.i14.i = icmp eq i8* %0, %iter.sroa.4.0.i
  br i1 %_13.i.i14.i, label %_ZN4core3fmt3num12GenericRadix7fmt_int17h71b21545c0ded40aE.exit, label %bb15.i

bb15.i:                                           ; preds = %bb11.i
  %2 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i, i16 -1
  %3 = lshr i32 %x.0.i, 1
  %4 = trunc i32 %x.0.i to i8
  %5 = and i8 %4, 1
  %6 = or i8 %5, 48
  store i8 %6, i8* %2, align 1
  %7 = add nsw i16 %curr.0.i, -1
  %8 = icmp eq i32 %3, 0
  br i1 %8, label %bb43.i, label %bb11.i

bb43.i:                                           ; preds = %bb15.i
  %_3.i.i.i.i = icmp ugt i16 %7, 128
  br i1 %_3.i.i.i.i, label %bb2.i.i.i.i, label %_ZN4core3fmt3num12GenericRadix7fmt_int17h71b21545c0ded40aE.exit

bb2.i.i.i.i:                                      ; preds = %bb43.i
; call core::slice::slice_index_order_fail
  call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %7, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*))
  unreachable

_ZN4core3fmt3num12GenericRadix7fmt_int17h71b21545c0ded40aE.exit: ; preds = %bb11.i, %bb43.i
  %curr.440.i = phi i16 [ %7, %bb43.i ], [ 0, %bb11.i ]
  %9 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 %curr.440.i
  %_7.i.i.i.i.i = sub nuw nsw i16 128, %curr.440.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i = bitcast i8* %9 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %10 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18697 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i, i16 %_7.i.i.i.i.i)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %0)
  ret i1 %10
}

; core::fmt::num::<impl core::fmt::Octal for i32>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Octal$u20$for$u20$i32$GT$3fmt17hc86fdb5c97f09d41E"(i32* noalias nocapture readonly align 1 dereferenceable(4) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i = alloca [128 x i8], align 1
  %_5 = load i32, i32* %self, align 1
  %0 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %0)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %0, i8 undef, i16 128, i1 false)
  %1 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 128
  br label %bb11.i

bb11.i:                                           ; preds = %bb15.i, %start
  %iter.sroa.4.0.i = phi i8* [ %1, %start ], [ %2, %bb15.i ]
  %x.0.i = phi i32 [ %_5, %start ], [ %3, %bb15.i ]
  %curr.0.i = phi i16 [ 128, %start ], [ %7, %bb15.i ]
  %_13.i.i14.i = icmp eq i8* %0, %iter.sroa.4.0.i
  br i1 %_13.i.i14.i, label %_ZN4core3fmt3num12GenericRadix7fmt_int17h9e0ea2fd6ee013ebE.exit, label %bb15.i

bb15.i:                                           ; preds = %bb11.i
  %2 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i, i16 -1
  %3 = lshr i32 %x.0.i, 3
  %4 = trunc i32 %x.0.i to i8
  %5 = and i8 %4, 7
  %6 = or i8 %5, 48
  store i8 %6, i8* %2, align 1
  %7 = add nsw i16 %curr.0.i, -1
  %8 = icmp eq i32 %3, 0
  br i1 %8, label %bb43.i, label %bb11.i

bb43.i:                                           ; preds = %bb15.i
  %_3.i.i.i.i = icmp ugt i16 %7, 128
  br i1 %_3.i.i.i.i, label %bb2.i.i.i.i, label %_ZN4core3fmt3num12GenericRadix7fmt_int17h9e0ea2fd6ee013ebE.exit

bb2.i.i.i.i:                                      ; preds = %bb43.i
; call core::slice::slice_index_order_fail
  call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %7, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*))
  unreachable

_ZN4core3fmt3num12GenericRadix7fmt_int17h9e0ea2fd6ee013ebE.exit: ; preds = %bb11.i, %bb43.i
  %curr.440.i = phi i16 [ %7, %bb43.i ], [ 0, %bb11.i ]
  %9 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 %curr.440.i
  %_7.i.i.i.i.i = sub nuw nsw i16 128, %curr.440.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i = bitcast i8* %9 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %10 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18699 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i, i16 %_7.i.i.i.i.i)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %0)
  ret i1 %10
}

; core::fmt::num::<impl core::fmt::LowerHex for i32>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i32$GT$3fmt17h980e7dc46f13d3abE"(i32* noalias nocapture readonly align 1 dereferenceable(4) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i = alloca [128 x i8], align 1
  %_5 = load i32, i32* %self, align 1
  %0 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %0)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %0, i8 undef, i16 128, i1 false)
  %1 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 128
  br label %bb11.i

bb11.i:                                           ; preds = %bb15.i, %start
  %iter.sroa.4.0.i = phi i8* [ %1, %start ], [ %2, %bb15.i ]
  %x.0.i = phi i32 [ %_5, %start ], [ %3, %bb15.i ]
  %curr.0.i = phi i16 [ 128, %start ], [ %8, %bb15.i ]
  %_13.i.i20.i = icmp eq i8* %0, %iter.sroa.4.0.i
  br i1 %_13.i.i20.i, label %_ZN4core3fmt3num12GenericRadix7fmt_int17h1f0b0f799182dc6aE.exit, label %bb15.i

bb15.i:                                           ; preds = %bb11.i
  %2 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i, i16 -1
  %3 = lshr i32 %x.0.i, 4
  %4 = trunc i32 %x.0.i to i8
  %5 = and i8 %4, 15
  %_5.i9.i = icmp ult i8 %5, 10
  %6 = or i8 %5, 48
  %7 = add nuw nsw i8 %5, 87
  %.0.i15.i = select i1 %_5.i9.i, i8 %6, i8 %7
  store i8 %.0.i15.i, i8* %2, align 1
  %8 = add nsw i16 %curr.0.i, -1
  %9 = icmp eq i32 %3, 0
  br i1 %9, label %bb43.i, label %bb11.i

bb43.i:                                           ; preds = %bb15.i
  %_3.i.i.i.i = icmp ugt i16 %8, 128
  br i1 %_3.i.i.i.i, label %bb2.i.i.i.i, label %_ZN4core3fmt3num12GenericRadix7fmt_int17h1f0b0f799182dc6aE.exit

bb2.i.i.i.i:                                      ; preds = %bb43.i
; call core::slice::slice_index_order_fail
  call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %8, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*))
  unreachable

_ZN4core3fmt3num12GenericRadix7fmt_int17h1f0b0f799182dc6aE.exit: ; preds = %bb11.i, %bb43.i
  %curr.446.i = phi i16 [ %8, %bb43.i ], [ 0, %bb11.i ]
  %10 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 %curr.446.i
  %_7.i.i.i.i.i = sub nuw nsw i16 128, %curr.446.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i = bitcast i8* %10 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %11 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i, i16 %_7.i.i.i.i.i)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %0)
  ret i1 %11
}

; core::fmt::num::<impl core::fmt::UpperHex for i32>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i32$GT$3fmt17h9869bb78d76c2b48E"(i32* noalias nocapture readonly align 1 dereferenceable(4) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i = alloca [128 x i8], align 1
  %_5 = load i32, i32* %self, align 1
  %0 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %0)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %0, i8 undef, i16 128, i1 false)
  %1 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 128
  br label %bb11.i

bb11.i:                                           ; preds = %bb15.i, %start
  %iter.sroa.4.0.i = phi i8* [ %1, %start ], [ %2, %bb15.i ]
  %x.0.i = phi i32 [ %_5, %start ], [ %3, %bb15.i ]
  %curr.0.i = phi i16 [ 128, %start ], [ %8, %bb15.i ]
  %_13.i.i20.i = icmp eq i8* %0, %iter.sroa.4.0.i
  br i1 %_13.i.i20.i, label %_ZN4core3fmt3num12GenericRadix7fmt_int17h52c17cf4d922d6a7E.exit, label %bb15.i

bb15.i:                                           ; preds = %bb11.i
  %2 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i, i16 -1
  %3 = lshr i32 %x.0.i, 4
  %4 = trunc i32 %x.0.i to i8
  %5 = and i8 %4, 15
  %_5.i9.i = icmp ult i8 %5, 10
  %6 = or i8 %5, 48
  %7 = add nuw nsw i8 %5, 55
  %.0.i15.i = select i1 %_5.i9.i, i8 %6, i8 %7
  store i8 %.0.i15.i, i8* %2, align 1
  %8 = add nsw i16 %curr.0.i, -1
  %9 = icmp eq i32 %3, 0
  br i1 %9, label %bb43.i, label %bb11.i

bb43.i:                                           ; preds = %bb15.i
  %_3.i.i.i.i = icmp ugt i16 %8, 128
  br i1 %_3.i.i.i.i, label %bb2.i.i.i.i, label %_ZN4core3fmt3num12GenericRadix7fmt_int17h52c17cf4d922d6a7E.exit

bb2.i.i.i.i:                                      ; preds = %bb43.i
; call core::slice::slice_index_order_fail
  call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %8, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*))
  unreachable

_ZN4core3fmt3num12GenericRadix7fmt_int17h52c17cf4d922d6a7E.exit: ; preds = %bb11.i, %bb43.i
  %curr.446.i = phi i16 [ %8, %bb43.i ], [ 0, %bb11.i ]
  %10 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 %curr.446.i
  %_7.i.i.i.i.i = sub nuw nsw i16 128, %curr.446.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i = bitcast i8* %10 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %11 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i, i16 %_7.i.i.i.i.i)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %0)
  ret i1 %11
}

; core::fmt::num::<impl core::fmt::Binary for i64>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num51_$LT$impl$u20$core..fmt..Binary$u20$for$u20$i64$GT$3fmt17h4583eb7fcf02bafeE"(i64* noalias nocapture readonly align 1 dereferenceable(8) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i = alloca [128 x i8], align 1
  %_5 = load i64, i64* %self, align 1
  %0 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %0)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %0, i8 undef, i16 128, i1 false)
  %1 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 128
  br label %bb11.i

bb11.i:                                           ; preds = %bb15.i, %start
  %iter.sroa.4.0.i = phi i8* [ %1, %start ], [ %2, %bb15.i ]
  %x.0.i = phi i64 [ %_5, %start ], [ %3, %bb15.i ]
  %curr.0.i = phi i16 [ 128, %start ], [ %7, %bb15.i ]
  %_13.i.i14.i = icmp eq i8* %0, %iter.sroa.4.0.i
  br i1 %_13.i.i14.i, label %_ZN4core3fmt3num12GenericRadix7fmt_int17h80959584b3de8e52E.exit, label %bb15.i

bb15.i:                                           ; preds = %bb11.i
  %2 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i, i16 -1
  %3 = lshr i64 %x.0.i, 1
  %4 = trunc i64 %x.0.i to i8
  %5 = and i8 %4, 1
  %6 = or i8 %5, 48
  store i8 %6, i8* %2, align 1
  %7 = add nsw i16 %curr.0.i, -1
  %8 = icmp eq i64 %3, 0
  br i1 %8, label %bb43.i, label %bb11.i

bb43.i:                                           ; preds = %bb15.i
  %_3.i.i.i.i = icmp ugt i16 %7, 128
  br i1 %_3.i.i.i.i, label %bb2.i.i.i.i, label %_ZN4core3fmt3num12GenericRadix7fmt_int17h80959584b3de8e52E.exit

bb2.i.i.i.i:                                      ; preds = %bb43.i
; call core::slice::slice_index_order_fail
  call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %7, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*))
  unreachable

_ZN4core3fmt3num12GenericRadix7fmt_int17h80959584b3de8e52E.exit: ; preds = %bb11.i, %bb43.i
  %curr.440.i = phi i16 [ %7, %bb43.i ], [ 0, %bb11.i ]
  %9 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 %curr.440.i
  %_7.i.i.i.i.i = sub nuw nsw i16 128, %curr.440.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i = bitcast i8* %9 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %10 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18697 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i, i16 %_7.i.i.i.i.i)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %0)
  ret i1 %10
}

; core::fmt::num::<impl core::fmt::Octal for i64>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Octal$u20$for$u20$i64$GT$3fmt17hdcc035834c8d4f67E"(i64* noalias nocapture readonly align 1 dereferenceable(8) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i = alloca [128 x i8], align 1
  %_5 = load i64, i64* %self, align 1
  %0 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %0)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %0, i8 undef, i16 128, i1 false)
  %1 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 128
  br label %bb11.i

bb11.i:                                           ; preds = %bb15.i, %start
  %iter.sroa.4.0.i = phi i8* [ %1, %start ], [ %2, %bb15.i ]
  %x.0.i = phi i64 [ %_5, %start ], [ %3, %bb15.i ]
  %curr.0.i = phi i16 [ 128, %start ], [ %7, %bb15.i ]
  %_13.i.i14.i = icmp eq i8* %0, %iter.sroa.4.0.i
  br i1 %_13.i.i14.i, label %_ZN4core3fmt3num12GenericRadix7fmt_int17h30cf927bb88dd96cE.exit, label %bb15.i

bb15.i:                                           ; preds = %bb11.i
  %2 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i, i16 -1
  %3 = lshr i64 %x.0.i, 3
  %4 = trunc i64 %x.0.i to i8
  %5 = and i8 %4, 7
  %6 = or i8 %5, 48
  store i8 %6, i8* %2, align 1
  %7 = add nsw i16 %curr.0.i, -1
  %8 = icmp eq i64 %3, 0
  br i1 %8, label %bb43.i, label %bb11.i

bb43.i:                                           ; preds = %bb15.i
  %_3.i.i.i.i = icmp ugt i16 %7, 128
  br i1 %_3.i.i.i.i, label %bb2.i.i.i.i, label %_ZN4core3fmt3num12GenericRadix7fmt_int17h30cf927bb88dd96cE.exit

bb2.i.i.i.i:                                      ; preds = %bb43.i
; call core::slice::slice_index_order_fail
  call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %7, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*))
  unreachable

_ZN4core3fmt3num12GenericRadix7fmt_int17h30cf927bb88dd96cE.exit: ; preds = %bb11.i, %bb43.i
  %curr.440.i = phi i16 [ %7, %bb43.i ], [ 0, %bb11.i ]
  %9 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 %curr.440.i
  %_7.i.i.i.i.i = sub nuw nsw i16 128, %curr.440.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i = bitcast i8* %9 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %10 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18699 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i, i16 %_7.i.i.i.i.i)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %0)
  ret i1 %10
}

; core::fmt::num::<impl core::fmt::LowerHex for i64>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i64$GT$3fmt17he773bf19e2d9299eE"(i64* noalias nocapture readonly align 1 dereferenceable(8) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i = alloca [128 x i8], align 1
  %_5 = load i64, i64* %self, align 1
  %0 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %0)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %0, i8 undef, i16 128, i1 false)
  %1 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 128
  br label %bb11.i

bb11.i:                                           ; preds = %bb15.i, %start
  %iter.sroa.4.0.i = phi i8* [ %1, %start ], [ %2, %bb15.i ]
  %x.0.i = phi i64 [ %_5, %start ], [ %3, %bb15.i ]
  %curr.0.i = phi i16 [ 128, %start ], [ %8, %bb15.i ]
  %_13.i.i20.i = icmp eq i8* %0, %iter.sroa.4.0.i
  br i1 %_13.i.i20.i, label %_ZN4core3fmt3num12GenericRadix7fmt_int17he53953026be15231E.exit, label %bb15.i

bb15.i:                                           ; preds = %bb11.i
  %2 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i, i16 -1
  %3 = lshr i64 %x.0.i, 4
  %4 = trunc i64 %x.0.i to i8
  %5 = and i8 %4, 15
  %_5.i9.i = icmp ult i8 %5, 10
  %6 = or i8 %5, 48
  %7 = add nuw nsw i8 %5, 87
  %.0.i15.i = select i1 %_5.i9.i, i8 %6, i8 %7
  store i8 %.0.i15.i, i8* %2, align 1
  %8 = add nsw i16 %curr.0.i, -1
  %9 = icmp eq i64 %3, 0
  br i1 %9, label %bb43.i, label %bb11.i

bb43.i:                                           ; preds = %bb15.i
  %_3.i.i.i.i = icmp ugt i16 %8, 128
  br i1 %_3.i.i.i.i, label %bb2.i.i.i.i, label %_ZN4core3fmt3num12GenericRadix7fmt_int17he53953026be15231E.exit

bb2.i.i.i.i:                                      ; preds = %bb43.i
; call core::slice::slice_index_order_fail
  call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %8, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*))
  unreachable

_ZN4core3fmt3num12GenericRadix7fmt_int17he53953026be15231E.exit: ; preds = %bb11.i, %bb43.i
  %curr.446.i = phi i16 [ %8, %bb43.i ], [ 0, %bb11.i ]
  %10 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 %curr.446.i
  %_7.i.i.i.i.i = sub nuw nsw i16 128, %curr.446.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i = bitcast i8* %10 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %11 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i, i16 %_7.i.i.i.i.i)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %0)
  ret i1 %11
}

; core::fmt::num::<impl core::fmt::UpperHex for i64>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i64$GT$3fmt17hd747966a00df068dE"(i64* noalias nocapture readonly align 1 dereferenceable(8) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i = alloca [128 x i8], align 1
  %_5 = load i64, i64* %self, align 1
  %0 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %0)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %0, i8 undef, i16 128, i1 false)
  %1 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 128
  br label %bb11.i

bb11.i:                                           ; preds = %bb15.i, %start
  %iter.sroa.4.0.i = phi i8* [ %1, %start ], [ %2, %bb15.i ]
  %x.0.i = phi i64 [ %_5, %start ], [ %3, %bb15.i ]
  %curr.0.i = phi i16 [ 128, %start ], [ %8, %bb15.i ]
  %_13.i.i20.i = icmp eq i8* %0, %iter.sroa.4.0.i
  br i1 %_13.i.i20.i, label %_ZN4core3fmt3num12GenericRadix7fmt_int17hfd6a9eaafb57abf8E.exit, label %bb15.i

bb15.i:                                           ; preds = %bb11.i
  %2 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i, i16 -1
  %3 = lshr i64 %x.0.i, 4
  %4 = trunc i64 %x.0.i to i8
  %5 = and i8 %4, 15
  %_5.i9.i = icmp ult i8 %5, 10
  %6 = or i8 %5, 48
  %7 = add nuw nsw i8 %5, 55
  %.0.i15.i = select i1 %_5.i9.i, i8 %6, i8 %7
  store i8 %.0.i15.i, i8* %2, align 1
  %8 = add nsw i16 %curr.0.i, -1
  %9 = icmp eq i64 %3, 0
  br i1 %9, label %bb43.i, label %bb11.i

bb43.i:                                           ; preds = %bb15.i
  %_3.i.i.i.i = icmp ugt i16 %8, 128
  br i1 %_3.i.i.i.i, label %bb2.i.i.i.i, label %_ZN4core3fmt3num12GenericRadix7fmt_int17hfd6a9eaafb57abf8E.exit

bb2.i.i.i.i:                                      ; preds = %bb43.i
; call core::slice::slice_index_order_fail
  call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %8, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*))
  unreachable

_ZN4core3fmt3num12GenericRadix7fmt_int17hfd6a9eaafb57abf8E.exit: ; preds = %bb11.i, %bb43.i
  %curr.446.i = phi i16 [ %8, %bb43.i ], [ 0, %bb11.i ]
  %10 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 %curr.446.i
  %_7.i.i.i.i.i = sub nuw nsw i16 128, %curr.446.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i = bitcast i8* %10 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %11 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i, i16 %_7.i.i.i.i.i)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %0)
  ret i1 %11
}

; core::fmt::num::<impl core::fmt::Binary for i128>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..Binary$u20$for$u20$i128$GT$3fmt17h6377cbff058dbecdE"(i128* noalias nocapture readonly align 1 dereferenceable(16) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i = alloca [128 x i8], align 1
  %_5 = load i128, i128* %self, align 1
  %0 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %0)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %0, i8 undef, i16 128, i1 false)
  %1 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 128
  br label %bb11.i

bb11.i:                                           ; preds = %bb15.i, %start
  %iter.sroa.4.0.i = phi i8* [ %1, %start ], [ %2, %bb15.i ]
  %x.0.i = phi i128 [ %_5, %start ], [ %3, %bb15.i ]
  %curr.0.i = phi i16 [ 128, %start ], [ %7, %bb15.i ]
  %_13.i.i14.i = icmp eq i8* %0, %iter.sroa.4.0.i
  br i1 %_13.i.i14.i, label %_ZN4core3fmt3num12GenericRadix7fmt_int17h56db26cc4b7cd0b3E.exit, label %bb15.i

bb15.i:                                           ; preds = %bb11.i
  %2 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i, i16 -1
  %3 = lshr i128 %x.0.i, 1
  %4 = trunc i128 %x.0.i to i8
  %5 = and i8 %4, 1
  %6 = or i8 %5, 48
  store i8 %6, i8* %2, align 1
  %7 = add nsw i16 %curr.0.i, -1
  %8 = icmp eq i128 %3, 0
  br i1 %8, label %bb43.i, label %bb11.i

bb43.i:                                           ; preds = %bb15.i
  %_3.i.i.i.i = icmp ugt i16 %7, 128
  br i1 %_3.i.i.i.i, label %bb2.i.i.i.i, label %_ZN4core3fmt3num12GenericRadix7fmt_int17h56db26cc4b7cd0b3E.exit

bb2.i.i.i.i:                                      ; preds = %bb43.i
; call core::slice::slice_index_order_fail
  call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %7, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*))
  unreachable

_ZN4core3fmt3num12GenericRadix7fmt_int17h56db26cc4b7cd0b3E.exit: ; preds = %bb11.i, %bb43.i
  %curr.440.i = phi i16 [ %7, %bb43.i ], [ 0, %bb11.i ]
  %9 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 %curr.440.i
  %_7.i.i.i.i.i = sub nuw nsw i16 128, %curr.440.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i = bitcast i8* %9 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %10 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18697 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i, i16 %_7.i.i.i.i.i)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %0)
  ret i1 %10
}

; core::fmt::num::<impl core::fmt::Octal for i128>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num51_$LT$impl$u20$core..fmt..Octal$u20$for$u20$i128$GT$3fmt17h018f102a3a752ccbE"(i128* noalias nocapture readonly align 1 dereferenceable(16) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i = alloca [128 x i8], align 1
  %_5 = load i128, i128* %self, align 1
  %0 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %0)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %0, i8 undef, i16 128, i1 false)
  %1 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 128
  br label %bb11.i

bb11.i:                                           ; preds = %bb15.i, %start
  %iter.sroa.4.0.i = phi i8* [ %1, %start ], [ %2, %bb15.i ]
  %x.0.i = phi i128 [ %_5, %start ], [ %3, %bb15.i ]
  %curr.0.i = phi i16 [ 128, %start ], [ %7, %bb15.i ]
  %_13.i.i14.i = icmp eq i8* %0, %iter.sroa.4.0.i
  br i1 %_13.i.i14.i, label %_ZN4core3fmt3num12GenericRadix7fmt_int17h68cf7dd0531e912aE.exit, label %bb15.i

bb15.i:                                           ; preds = %bb11.i
  %2 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i, i16 -1
  %3 = lshr i128 %x.0.i, 3
  %4 = trunc i128 %x.0.i to i8
  %5 = and i8 %4, 7
  %6 = or i8 %5, 48
  store i8 %6, i8* %2, align 1
  %7 = add nsw i16 %curr.0.i, -1
  %8 = icmp eq i128 %3, 0
  br i1 %8, label %bb43.i, label %bb11.i

bb43.i:                                           ; preds = %bb15.i
  %_3.i.i.i.i = icmp ugt i16 %7, 128
  br i1 %_3.i.i.i.i, label %bb2.i.i.i.i, label %_ZN4core3fmt3num12GenericRadix7fmt_int17h68cf7dd0531e912aE.exit

bb2.i.i.i.i:                                      ; preds = %bb43.i
; call core::slice::slice_index_order_fail
  call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %7, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*))
  unreachable

_ZN4core3fmt3num12GenericRadix7fmt_int17h68cf7dd0531e912aE.exit: ; preds = %bb11.i, %bb43.i
  %curr.440.i = phi i16 [ %7, %bb43.i ], [ 0, %bb11.i ]
  %9 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 %curr.440.i
  %_7.i.i.i.i.i = sub nuw nsw i16 128, %curr.440.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i = bitcast i8* %9 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %10 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18699 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i, i16 %_7.i.i.i.i.i)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %0)
  ret i1 %10
}

; core::fmt::num::<impl core::fmt::LowerHex for i128>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num54_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i128$GT$3fmt17hff3976b100fb1b9aE"(i128* noalias nocapture readonly align 1 dereferenceable(16) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i = alloca [128 x i8], align 1
  %_5 = load i128, i128* %self, align 1
  %0 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %0)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %0, i8 undef, i16 128, i1 false)
  %1 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 128
  br label %bb11.i

bb11.i:                                           ; preds = %bb15.i, %start
  %iter.sroa.4.0.i = phi i8* [ %1, %start ], [ %2, %bb15.i ]
  %x.0.i = phi i128 [ %_5, %start ], [ %3, %bb15.i ]
  %curr.0.i = phi i16 [ 128, %start ], [ %8, %bb15.i ]
  %_13.i.i20.i = icmp eq i8* %0, %iter.sroa.4.0.i
  br i1 %_13.i.i20.i, label %_ZN4core3fmt3num12GenericRadix7fmt_int17hb553417f6955f25cE.exit, label %bb15.i

bb15.i:                                           ; preds = %bb11.i
  %2 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i, i16 -1
  %3 = lshr i128 %x.0.i, 4
  %4 = trunc i128 %x.0.i to i8
  %5 = and i8 %4, 15
  %_5.i9.i = icmp ult i8 %5, 10
  %6 = or i8 %5, 48
  %7 = add nuw nsw i8 %5, 87
  %.0.i15.i = select i1 %_5.i9.i, i8 %6, i8 %7
  store i8 %.0.i15.i, i8* %2, align 1
  %8 = add nsw i16 %curr.0.i, -1
  %9 = icmp eq i128 %3, 0
  br i1 %9, label %bb43.i, label %bb11.i

bb43.i:                                           ; preds = %bb15.i
  %_3.i.i.i.i = icmp ugt i16 %8, 128
  br i1 %_3.i.i.i.i, label %bb2.i.i.i.i, label %_ZN4core3fmt3num12GenericRadix7fmt_int17hb553417f6955f25cE.exit

bb2.i.i.i.i:                                      ; preds = %bb43.i
; call core::slice::slice_index_order_fail
  call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %8, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*))
  unreachable

_ZN4core3fmt3num12GenericRadix7fmt_int17hb553417f6955f25cE.exit: ; preds = %bb11.i, %bb43.i
  %curr.446.i = phi i16 [ %8, %bb43.i ], [ 0, %bb11.i ]
  %10 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 %curr.446.i
  %_7.i.i.i.i.i = sub nuw nsw i16 128, %curr.446.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i = bitcast i8* %10 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %11 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i, i16 %_7.i.i.i.i.i)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %0)
  ret i1 %11
}

; core::fmt::num::<impl core::fmt::UpperHex for i128>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num54_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i128$GT$3fmt17ha1a408fa56c0179eE"(i128* noalias nocapture readonly align 1 dereferenceable(16) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i = alloca [128 x i8], align 1
  %_5 = load i128, i128* %self, align 1
  %0 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %0)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %0, i8 undef, i16 128, i1 false)
  %1 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 128
  br label %bb11.i

bb11.i:                                           ; preds = %bb15.i, %start
  %iter.sroa.4.0.i = phi i8* [ %1, %start ], [ %2, %bb15.i ]
  %x.0.i = phi i128 [ %_5, %start ], [ %3, %bb15.i ]
  %curr.0.i = phi i16 [ 128, %start ], [ %8, %bb15.i ]
  %_13.i.i20.i = icmp eq i8* %0, %iter.sroa.4.0.i
  br i1 %_13.i.i20.i, label %_ZN4core3fmt3num12GenericRadix7fmt_int17haae780377851fa78E.exit, label %bb15.i

bb15.i:                                           ; preds = %bb11.i
  %2 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i, i16 -1
  %3 = lshr i128 %x.0.i, 4
  %4 = trunc i128 %x.0.i to i8
  %5 = and i8 %4, 15
  %_5.i9.i = icmp ult i8 %5, 10
  %6 = or i8 %5, 48
  %7 = add nuw nsw i8 %5, 55
  %.0.i15.i = select i1 %_5.i9.i, i8 %6, i8 %7
  store i8 %.0.i15.i, i8* %2, align 1
  %8 = add nsw i16 %curr.0.i, -1
  %9 = icmp eq i128 %3, 0
  br i1 %9, label %bb43.i, label %bb11.i

bb43.i:                                           ; preds = %bb15.i
  %_3.i.i.i.i = icmp ugt i16 %8, 128
  br i1 %_3.i.i.i.i, label %bb2.i.i.i.i, label %_ZN4core3fmt3num12GenericRadix7fmt_int17haae780377851fa78E.exit

bb2.i.i.i.i:                                      ; preds = %bb43.i
; call core::slice::slice_index_order_fail
  call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %8, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*))
  unreachable

_ZN4core3fmt3num12GenericRadix7fmt_int17haae780377851fa78E.exit: ; preds = %bb11.i, %bb43.i
  %curr.446.i = phi i16 [ %8, %bb43.i ], [ 0, %bb11.i ]
  %10 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i, i16 0, i16 %curr.446.i
  %_7.i.i.i.i.i = sub nuw nsw i16 128, %curr.446.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i = bitcast i8* %10 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %11 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i, i16 %_7.i.i.i.i.i)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %0)
  ret i1 %11
}

; core::fmt::num::imp::<impl core::fmt::Display for i8>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num3imp51_$LT$impl$u20$core..fmt..Display$u20$for$u20$i8$GT$3fmt17h240822c14587e42dE"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i = alloca [39 x i8], align 1
  %_4 = load i8, i8* %self, align 1
  %is_nonnegative = icmp sgt i8 %_4, -1
  %0 = sext i8 %_4 to i32
  %1 = sub nsw i32 0, %0
  %n.0 = select i1 %is_nonnegative, i32 %0, i32 %1
  %2 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 39, i8* nonnull %2)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(39) %2, i8 undef, i16 39, i1 false)
  %_2329.i = icmp ugt i32 %n.0, 9999
  %extract.t.i = trunc i32 %n.0 to i16
  br i1 %_2329.i, label %bb10.i, label %bb9.i

bb9.loopexit.i:                                   ; preds = %bb10.i
  %extract.t33.i = trunc i32 %3 to i16
  br label %bb9.i

bb9.i:                                            ; preds = %bb9.loopexit.i, %start
  %curr.0.lcssa.i = phi i16 [ 39, %start ], [ %6, %bb9.loopexit.i ]
  %n.0.lcssa.off0.i = phi i16 [ %extract.t.i, %start ], [ %extract.t33.i, %bb9.loopexit.i ]
  %_57.i = icmp sgt i16 %n.0.lcssa.off0.i, 99
  br i1 %_57.i, label %bb22.i, label %bb26.i

bb10.i:                                           ; preds = %start, %bb10.i
  %n.031.i = phi i32 [ %3, %bb10.i ], [ %n.0, %start ]
  %curr.030.i = phi i16 [ %6, %bb10.i ], [ 39, %start ]
  %3 = udiv i32 %n.031.i, 10000
  %4 = mul i32 %3, 10000
  %_26.i.decomposed = sub i32 %n.031.i, %4
  %rem.i = trunc i32 %_26.i.decomposed to i16
  %_29.i = udiv i16 %rem.i, 100
  %d1.i = shl nuw nsw i16 %_29.i, 1
  %5 = mul i16 %_29.i, 100
  %_35.i.decomposed = sub i16 %rem.i, %5
  %d2.i = shl nuw nsw i16 %_35.i.decomposed, 1
  %6 = add i16 %curr.030.i, -4
  %7 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d1.i
  %8 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %6
  %9 = bitcast i8* %7 to i16*
  %10 = bitcast i8* %8 to i16*
  %11 = load i16, i16* %9, align 1
  store i16 %11, i16* %10, align 1
  %12 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d2.i
  %_53.i = add nsw i16 %curr.030.i, -2
  %13 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %_53.i
  %14 = bitcast i8* %12 to i16*
  %15 = bitcast i8* %13 to i16*
  %16 = load i16, i16* %14, align 1
  store i16 %16, i16* %15, align 1
  %_23.i = icmp ugt i32 %n.031.i, 99999999
  br i1 %_23.i, label %bb10.i, label %bb9.loopexit.i

bb22.i:                                           ; preds = %bb9.i
  %17 = udiv i16 %n.0.lcssa.off0.i, 100
  %18 = mul i16 %17, 100
  %_6028.i.decomposed = sub i16 %n.0.lcssa.off0.i, %18
  %d14.i = shl nuw nsw i16 %_6028.i.decomposed, 1
  %19 = add i16 %curr.0.lcssa.i, -2
  %20 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d14.i
  %21 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %19
  %22 = bitcast i8* %20 to i16*
  %23 = bitcast i8* %21 to i16*
  %24 = load i16, i16* %22, align 1
  store i16 %24, i16* %23, align 1
  br label %bb26.i

bb26.i:                                           ; preds = %bb22.i, %bb9.i
  %n1.0.i = phi i16 [ %17, %bb22.i ], [ %n.0.lcssa.off0.i, %bb9.i ]
  %curr.1.i = phi i16 [ %19, %bb22.i ], [ %curr.0.lcssa.i, %bb9.i ]
  %_75.i = icmp slt i16 %n1.0.i, 10
  br i1 %_75.i, label %bb28.i, label %bb27.i

bb27.i:                                           ; preds = %bb26.i
  %d16.i = shl nuw nsw i16 %n1.0.i, 1
  %25 = add i16 %curr.1.i, -2
  %26 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d16.i
  %27 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %25
  %28 = bitcast i8* %26 to i16*
  %29 = bitcast i8* %27 to i16*
  %30 = load i16, i16* %28, align 1
  store i16 %30, i16* %29, align 1
  br label %_ZN4core3fmt3num3imp7fmt_u3217h7d739cf3ebba48e4E.exit

bb28.i:                                           ; preds = %bb26.i
  %31 = add i16 %curr.1.i, -1
  %_77.i = trunc i16 %n1.0.i to i8
  %32 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %31
  %33 = add nuw nsw i8 %_77.i, 48
  store i8 %33, i8* %32, align 1
  br label %_ZN4core3fmt3num3imp7fmt_u3217h7d739cf3ebba48e4E.exit

_ZN4core3fmt3num3imp7fmt_u3217h7d739cf3ebba48e4E.exit: ; preds = %bb27.i, %bb28.i
  %curr.2.i = phi i16 [ %31, %bb28.i ], [ %25, %bb27.i ]
  %34 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %curr.2.i
  %_98.i = sub i16 39, %curr.2.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i = bitcast i8* %34 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %35 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext %is_nonnegative, [0 x i8]* noalias nonnull readonly align 1 getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), i16 0, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i, i16 %_98.i)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 39, i8* nonnull %2)
  ret i1 %35
}

; core::fmt::num::imp::<impl core::fmt::Display for u8>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num3imp51_$LT$impl$u20$core..fmt..Display$u20$for$u20$u8$GT$3fmt17h15a9d9444c491f95E"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i = alloca [39 x i8], align 1
  %_2.i = load i8, i8* %self, align 1, !alias.scope !3356
  %0 = zext i8 %_2.i to i16
  %1 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 39, i8* nonnull %1)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(39) %1, i8 undef, i16 39, i1 false)
  %_57.i = icmp ugt i8 %_2.i, 99
  br i1 %_57.i, label %bb26.i.thread, label %bb26.i

bb26.i.thread:                                    ; preds = %start
  %2 = udiv i8 %_2.i, 100
  %3 = mul i8 %2, 100
  %_6028.i7.decomposed = sub i8 %_2.i, %3
  %4 = shl nuw i8 %_6028.i7.decomposed, 1
  %d14.i = zext i8 %4 to i16
  %5 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d14.i
  %6 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 37
  %7 = bitcast i8* %5 to i16*
  %8 = bitcast i8* %6 to i16*
  %9 = load i16, i16* %7, align 1
  store i16 %9, i16* %8, align 1
  br label %bb28.i

bb26.i:                                           ; preds = %start
  %_75.i = icmp ult i8 %_2.i, 10
  br i1 %_75.i, label %bb28.i, label %bb27.i

bb27.i:                                           ; preds = %bb26.i
  %d16.i = shl nuw nsw i16 %0, 1
  %10 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d16.i
  %11 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 37
  %12 = bitcast i8* %10 to i16*
  %13 = bitcast i8* %11 to i16*
  %14 = load i16, i16* %12, align 1
  store i16 %14, i16* %13, align 1
  br label %_ZN4core3fmt3num3imp7fmt_u3217h7d739cf3ebba48e4E.exit

bb28.i:                                           ; preds = %bb26.i.thread, %bb26.i
  %curr.1.i6 = phi i16 [ 36, %bb26.i.thread ], [ 38, %bb26.i ]
  %n1.0.i5.off0 = phi i8 [ %2, %bb26.i.thread ], [ %_2.i, %bb26.i ]
  %15 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %curr.1.i6
  %16 = add nuw nsw i8 %n1.0.i5.off0, 48
  store i8 %16, i8* %15, align 1
  br label %_ZN4core3fmt3num3imp7fmt_u3217h7d739cf3ebba48e4E.exit

_ZN4core3fmt3num3imp7fmt_u3217h7d739cf3ebba48e4E.exit: ; preds = %bb27.i, %bb28.i
  %curr.2.i = phi i16 [ %curr.1.i6, %bb28.i ], [ 37, %bb27.i ]
  %17 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %curr.2.i
  %_98.i = sub nuw nsw i16 39, %curr.2.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i = bitcast i8* %17 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %18 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), i16 0, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i, i16 %_98.i)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 39, i8* nonnull %1)
  ret i1 %18
}

; core::fmt::num::imp::<impl core::fmt::Display for i16>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$i16$GT$3fmt17hb97f6f3d4d1ad318E"(i16* noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i = alloca [39 x i8], align 1
  %_4 = load i16, i16* %self, align 1
  %is_nonnegative = icmp sgt i16 %_4, -1
  %0 = sext i16 %_4 to i32
  %1 = sub nsw i32 0, %0
  %n.0 = select i1 %is_nonnegative, i32 %0, i32 %1
  %2 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 39, i8* nonnull %2)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(39) %2, i8 undef, i16 39, i1 false)
  %_2329.i = icmp ugt i32 %n.0, 9999
  %extract.t.i = trunc i32 %n.0 to i16
  br i1 %_2329.i, label %bb9.loopexit.i, label %bb9.i

bb9.loopexit.i:                                   ; preds = %start
  %_26.i.lhs.trunc = trunc i32 %n.0 to i16
  %_26.i4 = urem i16 %_26.i.lhs.trunc, 10000
  %.lhs.trunc = trunc i32 %n.0 to i16
  %3 = udiv i16 %.lhs.trunc, 10000
  %_29.i = udiv i16 %_26.i4, 100
  %d1.i = shl nuw nsw i16 %_29.i, 1
  %4 = mul i16 %_29.i, 100
  %_35.i.decomposed = sub i16 %_26.i4, %4
  %d2.i = shl nuw nsw i16 %_35.i.decomposed, 1
  %5 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d1.i
  %6 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 35
  %7 = bitcast i8* %5 to i16*
  %8 = bitcast i8* %6 to i16*
  %9 = load i16, i16* %7, align 1
  store i16 %9, i16* %8, align 1
  %10 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d2.i
  %11 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 37
  %12 = bitcast i8* %10 to i16*
  %13 = bitcast i8* %11 to i16*
  %14 = load i16, i16* %12, align 1
  store i16 %14, i16* %13, align 1
  br label %bb9.i

bb9.i:                                            ; preds = %bb9.loopexit.i, %start
  %curr.0.lcssa.i = phi i16 [ 39, %start ], [ 35, %bb9.loopexit.i ]
  %n.0.lcssa.off0.i = phi i16 [ %extract.t.i, %start ], [ %3, %bb9.loopexit.i ]
  %_57.i = icmp sgt i16 %n.0.lcssa.off0.i, 99
  br i1 %_57.i, label %bb22.i, label %bb26.i

bb22.i:                                           ; preds = %bb9.i
  %15 = udiv i16 %n.0.lcssa.off0.i, 100
  %16 = mul i16 %15, 100
  %_6028.i.decomposed = sub i16 %n.0.lcssa.off0.i, %16
  %d14.i = shl nuw nsw i16 %_6028.i.decomposed, 1
  %17 = add nsw i16 %curr.0.lcssa.i, -2
  %18 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d14.i
  %19 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %17
  %20 = bitcast i8* %18 to i16*
  %21 = bitcast i8* %19 to i16*
  %22 = load i16, i16* %20, align 1
  store i16 %22, i16* %21, align 1
  br label %bb26.i

bb26.i:                                           ; preds = %bb22.i, %bb9.i
  %n1.0.i = phi i16 [ %15, %bb22.i ], [ %n.0.lcssa.off0.i, %bb9.i ]
  %curr.1.i = phi i16 [ %17, %bb22.i ], [ %curr.0.lcssa.i, %bb9.i ]
  %_75.i = icmp slt i16 %n1.0.i, 10
  br i1 %_75.i, label %bb28.i, label %bb27.i

bb27.i:                                           ; preds = %bb26.i
  %d16.i = shl nuw nsw i16 %n1.0.i, 1
  %23 = add nsw i16 %curr.1.i, -2
  %24 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d16.i
  %25 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %23
  %26 = bitcast i8* %24 to i16*
  %27 = bitcast i8* %25 to i16*
  %28 = load i16, i16* %26, align 1
  store i16 %28, i16* %27, align 1
  br label %_ZN4core3fmt3num3imp7fmt_u3217h7d739cf3ebba48e4E.exit

bb28.i:                                           ; preds = %bb26.i
  %29 = add nsw i16 %curr.1.i, -1
  %_77.i = trunc i16 %n1.0.i to i8
  %30 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %29
  %31 = add nuw nsw i8 %_77.i, 48
  store i8 %31, i8* %30, align 1
  br label %_ZN4core3fmt3num3imp7fmt_u3217h7d739cf3ebba48e4E.exit

_ZN4core3fmt3num3imp7fmt_u3217h7d739cf3ebba48e4E.exit: ; preds = %bb27.i, %bb28.i
  %curr.2.i = phi i16 [ %29, %bb28.i ], [ %23, %bb27.i ]
  %32 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %curr.2.i
  %_98.i = sub nuw nsw i16 39, %curr.2.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i = bitcast i8* %32 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %33 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext %is_nonnegative, [0 x i8]* noalias nonnull readonly align 1 getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), i16 0, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i, i16 %_98.i)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 39, i8* nonnull %2)
  ret i1 %33
}

; core::fmt::num::imp::<impl core::fmt::Display for u16>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u16$GT$3fmt17ha65397985f1509e1E"(i16* noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i = alloca [39 x i8], align 1
  %_2.i = load i16, i16* %self, align 1, !alias.scope !3359
  %0 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 39, i8* nonnull %0)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(39) %0, i8 undef, i16 39, i1 false)
  %_2329.i = icmp ugt i16 %_2.i, 9999
  br i1 %_2329.i, label %bb26.i.thread, label %bb9.i

bb26.i.thread:                                    ; preds = %start
  %1 = udiv i16 %_2.i, 10000
  %2 = mul i16 %1, 10000
  %_26.i2.decomposed = sub i16 %_2.i, %2
  %_29.i = udiv i16 %_26.i2.decomposed, 100
  %d1.i = shl nuw nsw i16 %_29.i, 1
  %3 = mul i16 %_29.i, 100
  %_35.i.decomposed = sub i16 %_26.i2.decomposed, %3
  %d2.i = shl nuw nsw i16 %_35.i.decomposed, 1
  %4 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d1.i
  %5 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 35
  %6 = bitcast i8* %4 to i16*
  %7 = bitcast i8* %5 to i16*
  %8 = load i16, i16* %6, align 1
  store i16 %8, i16* %7, align 1
  %9 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d2.i
  %10 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 37
  %11 = bitcast i8* %9 to i16*
  %12 = bitcast i8* %10 to i16*
  %13 = load i16, i16* %11, align 1
  store i16 %13, i16* %12, align 1
  %extract.t = trunc i16 %1 to i8
  br label %bb28.i

bb9.i:                                            ; preds = %start
  %_57.i = icmp sgt i16 %_2.i, 99
  br i1 %_57.i, label %bb22.i, label %bb26.i

bb22.i:                                           ; preds = %bb9.i
  %14 = udiv i16 %_2.i, 100
  %15 = mul i16 %14, 100
  %_6028.i.decomposed = sub i16 %_2.i, %15
  %d14.i = shl nuw nsw i16 %_6028.i.decomposed, 1
  %16 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d14.i
  %17 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 37
  %18 = bitcast i8* %16 to i16*
  %19 = bitcast i8* %17 to i16*
  %20 = load i16, i16* %18, align 1
  store i16 %20, i16* %19, align 1
  br label %bb26.i

bb26.i:                                           ; preds = %bb22.i, %bb9.i
  %n1.0.i = phi i16 [ %14, %bb22.i ], [ %_2.i, %bb9.i ]
  %curr.1.i = phi i16 [ 37, %bb22.i ], [ 39, %bb9.i ]
  %_75.i = icmp slt i16 %n1.0.i, 10
  %extract.t11 = trunc i16 %n1.0.i to i8
  br i1 %_75.i, label %bb28.i, label %bb27.i

bb27.i:                                           ; preds = %bb26.i
  %d16.i = shl nuw nsw i16 %n1.0.i, 1
  %21 = add nsw i16 %curr.1.i, -2
  %22 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d16.i
  %23 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %21
  %24 = bitcast i8* %22 to i16*
  %25 = bitcast i8* %23 to i16*
  %26 = load i16, i16* %24, align 1
  store i16 %26, i16* %25, align 1
  br label %_ZN4core3fmt3num3imp7fmt_u3217h7d739cf3ebba48e4E.exit

bb28.i:                                           ; preds = %bb26.i.thread, %bb26.i
  %curr.1.i10 = phi i16 [ 35, %bb26.i.thread ], [ %curr.1.i, %bb26.i ]
  %n1.0.i9.off0 = phi i8 [ %extract.t, %bb26.i.thread ], [ %extract.t11, %bb26.i ]
  %27 = add nsw i16 %curr.1.i10, -1
  %28 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %27
  %29 = add nuw nsw i8 %n1.0.i9.off0, 48
  store i8 %29, i8* %28, align 1
  br label %_ZN4core3fmt3num3imp7fmt_u3217h7d739cf3ebba48e4E.exit

_ZN4core3fmt3num3imp7fmt_u3217h7d739cf3ebba48e4E.exit: ; preds = %bb27.i, %bb28.i
  %curr.2.i = phi i16 [ %27, %bb28.i ], [ %21, %bb27.i ]
  %30 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %curr.2.i
  %_98.i = sub nuw nsw i16 39, %curr.2.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i = bitcast i8* %30 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %31 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), i16 0, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i, i16 %_98.i)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 39, i8* nonnull %0)
  ret i1 %31
}

; core::fmt::num::imp::<impl core::fmt::Display for i32>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$i32$GT$3fmt17he31040999156b94dE"(i32* noalias nocapture readonly align 1 dereferenceable(4) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i = alloca [39 x i8], align 1
  %_4 = load i32, i32* %self, align 1
  %is_nonnegative = icmp sgt i32 %_4, -1
  %0 = sub i32 0, %_4
  %n.0 = select i1 %is_nonnegative, i32 %_4, i32 %0
  %1 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 39, i8* nonnull %1)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(39) %1, i8 undef, i16 39, i1 false)
  %_2329.i = icmp ugt i32 %n.0, 9999
  %extract.t.i = trunc i32 %n.0 to i16
  br i1 %_2329.i, label %bb10.i, label %bb9.i

bb9.loopexit.i:                                   ; preds = %bb10.i
  %extract.t33.i = trunc i32 %2 to i16
  br label %bb9.i

bb9.i:                                            ; preds = %bb9.loopexit.i, %start
  %curr.0.lcssa.i = phi i16 [ 39, %start ], [ %5, %bb9.loopexit.i ]
  %n.0.lcssa.off0.i = phi i16 [ %extract.t.i, %start ], [ %extract.t33.i, %bb9.loopexit.i ]
  %_57.i = icmp sgt i16 %n.0.lcssa.off0.i, 99
  br i1 %_57.i, label %bb22.i, label %bb26.i

bb10.i:                                           ; preds = %start, %bb10.i
  %n.031.i = phi i32 [ %2, %bb10.i ], [ %n.0, %start ]
  %curr.030.i = phi i16 [ %5, %bb10.i ], [ 39, %start ]
  %2 = udiv i32 %n.031.i, 10000
  %3 = mul i32 %2, 10000
  %_26.i.decomposed = sub i32 %n.031.i, %3
  %rem.i = trunc i32 %_26.i.decomposed to i16
  %_29.i = udiv i16 %rem.i, 100
  %d1.i = shl nuw nsw i16 %_29.i, 1
  %4 = mul i16 %_29.i, 100
  %_35.i.decomposed = sub i16 %rem.i, %4
  %d2.i = shl nuw nsw i16 %_35.i.decomposed, 1
  %5 = add i16 %curr.030.i, -4
  %6 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d1.i
  %7 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %5
  %8 = bitcast i8* %6 to i16*
  %9 = bitcast i8* %7 to i16*
  %10 = load i16, i16* %8, align 1
  store i16 %10, i16* %9, align 1
  %11 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d2.i
  %_53.i = add nsw i16 %curr.030.i, -2
  %12 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %_53.i
  %13 = bitcast i8* %11 to i16*
  %14 = bitcast i8* %12 to i16*
  %15 = load i16, i16* %13, align 1
  store i16 %15, i16* %14, align 1
  %_23.i = icmp ugt i32 %n.031.i, 99999999
  br i1 %_23.i, label %bb10.i, label %bb9.loopexit.i

bb22.i:                                           ; preds = %bb9.i
  %16 = udiv i16 %n.0.lcssa.off0.i, 100
  %17 = mul i16 %16, 100
  %_6028.i.decomposed = sub i16 %n.0.lcssa.off0.i, %17
  %d14.i = shl nuw nsw i16 %_6028.i.decomposed, 1
  %18 = add i16 %curr.0.lcssa.i, -2
  %19 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d14.i
  %20 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %18
  %21 = bitcast i8* %19 to i16*
  %22 = bitcast i8* %20 to i16*
  %23 = load i16, i16* %21, align 1
  store i16 %23, i16* %22, align 1
  br label %bb26.i

bb26.i:                                           ; preds = %bb22.i, %bb9.i
  %n1.0.i = phi i16 [ %16, %bb22.i ], [ %n.0.lcssa.off0.i, %bb9.i ]
  %curr.1.i = phi i16 [ %18, %bb22.i ], [ %curr.0.lcssa.i, %bb9.i ]
  %_75.i = icmp slt i16 %n1.0.i, 10
  br i1 %_75.i, label %bb28.i, label %bb27.i

bb27.i:                                           ; preds = %bb26.i
  %d16.i = shl nuw nsw i16 %n1.0.i, 1
  %24 = add i16 %curr.1.i, -2
  %25 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d16.i
  %26 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %24
  %27 = bitcast i8* %25 to i16*
  %28 = bitcast i8* %26 to i16*
  %29 = load i16, i16* %27, align 1
  store i16 %29, i16* %28, align 1
  br label %_ZN4core3fmt3num3imp7fmt_u3217h7d739cf3ebba48e4E.exit

bb28.i:                                           ; preds = %bb26.i
  %30 = add i16 %curr.1.i, -1
  %_77.i = trunc i16 %n1.0.i to i8
  %31 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %30
  %32 = add nuw nsw i8 %_77.i, 48
  store i8 %32, i8* %31, align 1
  br label %_ZN4core3fmt3num3imp7fmt_u3217h7d739cf3ebba48e4E.exit

_ZN4core3fmt3num3imp7fmt_u3217h7d739cf3ebba48e4E.exit: ; preds = %bb27.i, %bb28.i
  %curr.2.i = phi i16 [ %30, %bb28.i ], [ %24, %bb27.i ]
  %33 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %curr.2.i
  %_98.i = sub i16 39, %curr.2.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i = bitcast i8* %33 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %34 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext %is_nonnegative, [0 x i8]* noalias nonnull readonly align 1 getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), i16 0, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i, i16 %_98.i)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 39, i8* nonnull %1)
  ret i1 %34
}

; core::fmt::num::imp::<impl core::fmt::Display for u32>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u32$GT$3fmt17h4fc4f96f0a2da0eaE"(i32* noalias nocapture readonly align 1 dereferenceable(4) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i = alloca [39 x i8], align 1
  %0 = load i32, i32* %self, align 1, !alias.scope !3362
  %1 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 39, i8* nonnull %1)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(39) %1, i8 undef, i16 39, i1 false)
  %_2329.i = icmp ugt i32 %0, 9999
  %extract.t.i = trunc i32 %0 to i16
  br i1 %_2329.i, label %bb10.i, label %bb9.i

bb9.loopexit.i:                                   ; preds = %bb10.i
  %extract.t33.i = trunc i32 %2 to i16
  br label %bb9.i

bb9.i:                                            ; preds = %bb9.loopexit.i, %start
  %curr.0.lcssa.i = phi i16 [ 39, %start ], [ %5, %bb9.loopexit.i ]
  %n.0.lcssa.off0.i = phi i16 [ %extract.t.i, %start ], [ %extract.t33.i, %bb9.loopexit.i ]
  %_57.i = icmp sgt i16 %n.0.lcssa.off0.i, 99
  br i1 %_57.i, label %bb22.i, label %bb26.i

bb10.i:                                           ; preds = %start, %bb10.i
  %n.031.i = phi i32 [ %2, %bb10.i ], [ %0, %start ]
  %curr.030.i = phi i16 [ %5, %bb10.i ], [ 39, %start ]
  %2 = udiv i32 %n.031.i, 10000
  %3 = mul i32 %2, 10000
  %_26.i.decomposed = sub i32 %n.031.i, %3
  %rem.i = trunc i32 %_26.i.decomposed to i16
  %_29.i = udiv i16 %rem.i, 100
  %d1.i = shl nuw nsw i16 %_29.i, 1
  %4 = mul i16 %_29.i, 100
  %_35.i.decomposed = sub i16 %rem.i, %4
  %d2.i = shl nuw nsw i16 %_35.i.decomposed, 1
  %5 = add i16 %curr.030.i, -4
  %6 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d1.i
  %7 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %5
  %8 = bitcast i8* %6 to i16*
  %9 = bitcast i8* %7 to i16*
  %10 = load i16, i16* %8, align 1
  store i16 %10, i16* %9, align 1
  %11 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d2.i
  %_53.i = add nsw i16 %curr.030.i, -2
  %12 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %_53.i
  %13 = bitcast i8* %11 to i16*
  %14 = bitcast i8* %12 to i16*
  %15 = load i16, i16* %13, align 1
  store i16 %15, i16* %14, align 1
  %_23.i = icmp ugt i32 %n.031.i, 99999999
  br i1 %_23.i, label %bb10.i, label %bb9.loopexit.i

bb22.i:                                           ; preds = %bb9.i
  %16 = udiv i16 %n.0.lcssa.off0.i, 100
  %17 = mul i16 %16, 100
  %_6028.i.decomposed = sub i16 %n.0.lcssa.off0.i, %17
  %d14.i = shl nuw nsw i16 %_6028.i.decomposed, 1
  %18 = add i16 %curr.0.lcssa.i, -2
  %19 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d14.i
  %20 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %18
  %21 = bitcast i8* %19 to i16*
  %22 = bitcast i8* %20 to i16*
  %23 = load i16, i16* %21, align 1
  store i16 %23, i16* %22, align 1
  br label %bb26.i

bb26.i:                                           ; preds = %bb22.i, %bb9.i
  %n1.0.i = phi i16 [ %16, %bb22.i ], [ %n.0.lcssa.off0.i, %bb9.i ]
  %curr.1.i = phi i16 [ %18, %bb22.i ], [ %curr.0.lcssa.i, %bb9.i ]
  %_75.i = icmp slt i16 %n1.0.i, 10
  br i1 %_75.i, label %bb28.i, label %bb27.i

bb27.i:                                           ; preds = %bb26.i
  %d16.i = shl nuw nsw i16 %n1.0.i, 1
  %24 = add i16 %curr.1.i, -2
  %25 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d16.i
  %26 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %24
  %27 = bitcast i8* %25 to i16*
  %28 = bitcast i8* %26 to i16*
  %29 = load i16, i16* %27, align 1
  store i16 %29, i16* %28, align 1
  br label %_ZN4core3fmt3num3imp7fmt_u3217h7d739cf3ebba48e4E.exit

bb28.i:                                           ; preds = %bb26.i
  %30 = add i16 %curr.1.i, -1
  %_77.i = trunc i16 %n1.0.i to i8
  %31 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %30
  %32 = add nuw nsw i8 %_77.i, 48
  store i8 %32, i8* %31, align 1
  br label %_ZN4core3fmt3num3imp7fmt_u3217h7d739cf3ebba48e4E.exit

_ZN4core3fmt3num3imp7fmt_u3217h7d739cf3ebba48e4E.exit: ; preds = %bb27.i, %bb28.i
  %curr.2.i = phi i16 [ %30, %bb28.i ], [ %24, %bb27.i ]
  %33 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %curr.2.i
  %_98.i = sub i16 39, %curr.2.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i = bitcast i8* %33 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %34 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), i16 0, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i, i16 %_98.i)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 39, i8* nonnull %1)
  ret i1 %34
}

; core::fmt::num::imp::<impl core::fmt::Display for i64>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$i64$GT$3fmt17h9489bbcffd672eb4E"(i64* noalias nocapture readonly align 1 dereferenceable(8) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i = alloca [39 x i8], align 1
  %_4 = load i64, i64* %self, align 1
  %is_nonnegative = icmp sgt i64 %_4, -1
  %0 = sub i64 0, %_4
  %n.0 = select i1 %is_nonnegative, i64 %_4, i64 %0
  %1 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 39, i8* nonnull %1)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(39) %1, i8 undef, i16 39, i1 false)
  %_2329.i = icmp ugt i64 %n.0, 9999
  %extract.t.i = trunc i64 %n.0 to i16
  br i1 %_2329.i, label %bb10.i, label %bb9.i

bb9.loopexit.i:                                   ; preds = %bb10.i
  %extract.t33.i = trunc i64 %2 to i16
  br label %bb9.i

bb9.i:                                            ; preds = %bb9.loopexit.i, %start
  %curr.0.lcssa.i = phi i16 [ 39, %start ], [ %5, %bb9.loopexit.i ]
  %n.0.lcssa.off0.i = phi i16 [ %extract.t.i, %start ], [ %extract.t33.i, %bb9.loopexit.i ]
  %_57.i = icmp sgt i16 %n.0.lcssa.off0.i, 99
  br i1 %_57.i, label %bb22.i, label %bb26.i

bb10.i:                                           ; preds = %start, %bb10.i
  %n.031.i = phi i64 [ %2, %bb10.i ], [ %n.0, %start ]
  %curr.030.i = phi i16 [ %5, %bb10.i ], [ 39, %start ]
  %2 = udiv i64 %n.031.i, 10000
  %3 = mul i64 %2, 10000
  %_26.i.decomposed = sub i64 %n.031.i, %3
  %rem.i = trunc i64 %_26.i.decomposed to i16
  %_29.i = udiv i16 %rem.i, 100
  %d1.i = shl nuw nsw i16 %_29.i, 1
  %4 = mul i16 %_29.i, 100
  %_35.i.decomposed = sub i16 %rem.i, %4
  %d2.i = shl nuw nsw i16 %_35.i.decomposed, 1
  %5 = add i16 %curr.030.i, -4
  %6 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d1.i
  %7 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %5
  %8 = bitcast i8* %6 to i16*
  %9 = bitcast i8* %7 to i16*
  %10 = load i16, i16* %8, align 1
  store i16 %10, i16* %9, align 1
  %11 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d2.i
  %_53.i = add nsw i16 %curr.030.i, -2
  %12 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %_53.i
  %13 = bitcast i8* %11 to i16*
  %14 = bitcast i8* %12 to i16*
  %15 = load i16, i16* %13, align 1
  store i16 %15, i16* %14, align 1
  %_23.i = icmp ugt i64 %n.031.i, 99999999
  br i1 %_23.i, label %bb10.i, label %bb9.loopexit.i

bb22.i:                                           ; preds = %bb9.i
  %16 = udiv i16 %n.0.lcssa.off0.i, 100
  %17 = mul i16 %16, 100
  %_6028.i.decomposed = sub i16 %n.0.lcssa.off0.i, %17
  %d14.i = shl nuw nsw i16 %_6028.i.decomposed, 1
  %18 = add i16 %curr.0.lcssa.i, -2
  %19 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d14.i
  %20 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %18
  %21 = bitcast i8* %19 to i16*
  %22 = bitcast i8* %20 to i16*
  %23 = load i16, i16* %21, align 1
  store i16 %23, i16* %22, align 1
  br label %bb26.i

bb26.i:                                           ; preds = %bb22.i, %bb9.i
  %n1.0.i = phi i16 [ %16, %bb22.i ], [ %n.0.lcssa.off0.i, %bb9.i ]
  %curr.1.i = phi i16 [ %18, %bb22.i ], [ %curr.0.lcssa.i, %bb9.i ]
  %_75.i = icmp slt i16 %n1.0.i, 10
  br i1 %_75.i, label %bb28.i, label %bb27.i

bb27.i:                                           ; preds = %bb26.i
  %d16.i = shl nuw nsw i16 %n1.0.i, 1
  %24 = add i16 %curr.1.i, -2
  %25 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d16.i
  %26 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %24
  %27 = bitcast i8* %25 to i16*
  %28 = bitcast i8* %26 to i16*
  %29 = load i16, i16* %27, align 1
  store i16 %29, i16* %28, align 1
  br label %_ZN4core3fmt3num3imp7fmt_u6417h8ab4bcb5d247b457E.exit

bb28.i:                                           ; preds = %bb26.i
  %30 = add i16 %curr.1.i, -1
  %_77.i = trunc i16 %n1.0.i to i8
  %31 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %30
  %32 = add nuw nsw i8 %_77.i, 48
  store i8 %32, i8* %31, align 1
  br label %_ZN4core3fmt3num3imp7fmt_u6417h8ab4bcb5d247b457E.exit

_ZN4core3fmt3num3imp7fmt_u6417h8ab4bcb5d247b457E.exit: ; preds = %bb27.i, %bb28.i
  %curr.2.i = phi i16 [ %30, %bb28.i ], [ %24, %bb27.i ]
  %33 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %curr.2.i
  %_98.i = sub i16 39, %curr.2.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i = bitcast i8* %33 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %34 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext %is_nonnegative, [0 x i8]* noalias nonnull readonly align 1 getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), i16 0, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i, i16 %_98.i)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 39, i8* nonnull %1)
  ret i1 %34
}

; core::fmt::num::imp::<impl core::fmt::Display for u64>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u64$GT$3fmt17h82635f2897f163daE"(i64* noalias nocapture readonly align 1 dereferenceable(8) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i = alloca [39 x i8], align 1
  %0 = load i64, i64* %self, align 1, !alias.scope !3365
  %1 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 39, i8* nonnull %1)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(39) %1, i8 undef, i16 39, i1 false)
  %_2329.i = icmp ugt i64 %0, 9999
  %extract.t.i = trunc i64 %0 to i16
  br i1 %_2329.i, label %bb10.i, label %bb9.i

bb9.loopexit.i:                                   ; preds = %bb10.i
  %extract.t33.i = trunc i64 %2 to i16
  br label %bb9.i

bb9.i:                                            ; preds = %bb9.loopexit.i, %start
  %curr.0.lcssa.i = phi i16 [ 39, %start ], [ %5, %bb9.loopexit.i ]
  %n.0.lcssa.off0.i = phi i16 [ %extract.t.i, %start ], [ %extract.t33.i, %bb9.loopexit.i ]
  %_57.i = icmp sgt i16 %n.0.lcssa.off0.i, 99
  br i1 %_57.i, label %bb22.i, label %bb26.i

bb10.i:                                           ; preds = %start, %bb10.i
  %n.031.i = phi i64 [ %2, %bb10.i ], [ %0, %start ]
  %curr.030.i = phi i16 [ %5, %bb10.i ], [ 39, %start ]
  %2 = udiv i64 %n.031.i, 10000
  %3 = mul i64 %2, 10000
  %_26.i.decomposed = sub i64 %n.031.i, %3
  %rem.i = trunc i64 %_26.i.decomposed to i16
  %_29.i = udiv i16 %rem.i, 100
  %d1.i = shl nuw nsw i16 %_29.i, 1
  %4 = mul i16 %_29.i, 100
  %_35.i.decomposed = sub i16 %rem.i, %4
  %d2.i = shl nuw nsw i16 %_35.i.decomposed, 1
  %5 = add i16 %curr.030.i, -4
  %6 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d1.i
  %7 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %5
  %8 = bitcast i8* %6 to i16*
  %9 = bitcast i8* %7 to i16*
  %10 = load i16, i16* %8, align 1
  store i16 %10, i16* %9, align 1
  %11 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d2.i
  %_53.i = add nsw i16 %curr.030.i, -2
  %12 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %_53.i
  %13 = bitcast i8* %11 to i16*
  %14 = bitcast i8* %12 to i16*
  %15 = load i16, i16* %13, align 1
  store i16 %15, i16* %14, align 1
  %_23.i = icmp ugt i64 %n.031.i, 99999999
  br i1 %_23.i, label %bb10.i, label %bb9.loopexit.i

bb22.i:                                           ; preds = %bb9.i
  %16 = udiv i16 %n.0.lcssa.off0.i, 100
  %17 = mul i16 %16, 100
  %_6028.i.decomposed = sub i16 %n.0.lcssa.off0.i, %17
  %d14.i = shl nuw nsw i16 %_6028.i.decomposed, 1
  %18 = add i16 %curr.0.lcssa.i, -2
  %19 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d14.i
  %20 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %18
  %21 = bitcast i8* %19 to i16*
  %22 = bitcast i8* %20 to i16*
  %23 = load i16, i16* %21, align 1
  store i16 %23, i16* %22, align 1
  br label %bb26.i

bb26.i:                                           ; preds = %bb22.i, %bb9.i
  %n1.0.i = phi i16 [ %16, %bb22.i ], [ %n.0.lcssa.off0.i, %bb9.i ]
  %curr.1.i = phi i16 [ %18, %bb22.i ], [ %curr.0.lcssa.i, %bb9.i ]
  %_75.i = icmp slt i16 %n1.0.i, 10
  br i1 %_75.i, label %bb28.i, label %bb27.i

bb27.i:                                           ; preds = %bb26.i
  %d16.i = shl nuw nsw i16 %n1.0.i, 1
  %24 = add i16 %curr.1.i, -2
  %25 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d16.i
  %26 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %24
  %27 = bitcast i8* %25 to i16*
  %28 = bitcast i8* %26 to i16*
  %29 = load i16, i16* %27, align 1
  store i16 %29, i16* %28, align 1
  br label %_ZN4core3fmt3num3imp7fmt_u6417h8ab4bcb5d247b457E.exit

bb28.i:                                           ; preds = %bb26.i
  %30 = add i16 %curr.1.i, -1
  %_77.i = trunc i16 %n1.0.i to i8
  %31 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %30
  %32 = add nuw nsw i8 %_77.i, 48
  store i8 %32, i8* %31, align 1
  br label %_ZN4core3fmt3num3imp7fmt_u6417h8ab4bcb5d247b457E.exit

_ZN4core3fmt3num3imp7fmt_u6417h8ab4bcb5d247b457E.exit: ; preds = %bb27.i, %bb28.i
  %curr.2.i = phi i16 [ %30, %bb28.i ], [ %24, %bb27.i ]
  %33 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %curr.2.i
  %_98.i = sub i16 39, %curr.2.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i = bitcast i8* %33 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %34 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), i16 0, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i, i16 %_98.i)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 39, i8* nonnull %1)
  ret i1 %34
}

; core::fmt::num::imp::exp_u32
; Function Attrs: uwtable
define internal fastcc zeroext i1 @_ZN4core3fmt3num3imp7exp_u3217h0fa2b98992dc2879E(i32 %0, i1 zeroext %is_nonnegative, i1 zeroext %upper, %"fmt::Formatter"* nocapture align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %formatted = alloca %"num::flt2dec::Formatted", align 1
  %_152 = alloca [3 x %"num::flt2dec::Part"], align 1
  %exp_buf = alloca [3 x i8], align 1
  %buf = alloca [40 x i8], align 1
  %_13120 = urem i32 %0, 10
  %_12121 = icmp eq i32 %_13120, 0
  %_15122 = icmp ugt i32 %0, 9
  %or.cond123 = and i1 %_15122, %_12121
  br i1 %or.cond123, label %bb7, label %bb6

bb6:                                              ; preds = %bb7, %start
  %exponent2.0.lcssa = phi i16 [ 0, %start ], [ %6, %bb7 ]
  %n.0.lcssa = phi i32 [ %0, %start ], [ %5, %bb7 ]
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 9, i32 0
  %2 = load i8, i8* %1, align 1, !range !87, !alias.scope !3368
  %3 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 9, i32 1
  %4 = load i16, i16* %3, align 1, !alias.scope !3368
  %switch = icmp eq i8 %2, 0
  br i1 %switch, label %bb29, label %bb12.preheader

bb12.preheader:                                   ; preds = %bb6
  %_27116 = icmp ugt i32 %n.0.lcssa, 9
  br i1 %_27116, label %bb14, label %bb17

bb7:                                              ; preds = %start, %bb7
  %n.0125 = phi i32 [ %5, %bb7 ], [ %0, %start ]
  %exponent2.0124 = phi i16 [ %6, %bb7 ], [ 0, %start ]
  %5 = udiv i32 %n.0125, 10
  %6 = add i16 %exponent2.0124, 1
  %_13 = urem i32 %5, 10
  %_12 = icmp eq i32 %_13, 0
  %_15 = icmp ugt i32 %n.0125, 99
  %or.cond = and i1 %_15, %_12
  br i1 %or.cond, label %bb7, label %bb6

bb14:                                             ; preds = %bb12.preheader, %bb14
  %tmp.0118 = phi i32 [ %7, %bb14 ], [ %n.0.lcssa, %bb12.preheader ]
  %prec.0117 = phi i16 [ %8, %bb14 ], [ 0, %bb12.preheader ]
  %7 = udiv i32 %tmp.0118, 10
  %8 = add i16 %prec.0117, 1
  %_27 = icmp ugt i32 %tmp.0118, 99
  br i1 %_27, label %bb14, label %bb17

bb17:                                             ; preds = %bb14, %bb12.preheader
  %prec.0.lcssa = phi i16 [ 0, %bb12.preheader ], [ %8, %bb14 ]
  %9 = tail call addrspace(1) i16 @llvm.usub.sat.i16(i16 %4, i16 %prec.0.lcssa) #20
  %10 = tail call addrspace(1) i16 @llvm.usub.sat.i16(i16 %prec.0.lcssa, i16 %4) #20
  %11 = icmp ugt i16 %10, 1
  br i1 %11, label %bb23.preheader, label %bb21

bb23.preheader:                                   ; preds = %bb17
  %12 = add i16 %10, %exponent2.0.lcssa
  br label %bb23

bb21.thread148:                                   ; preds = %bb23
  %13 = add i16 %12, -1
  br label %bb25

bb21:                                             ; preds = %bb17
  %_46 = icmp ugt i16 %prec.0.lcssa, %4
  br i1 %_46, label %bb25, label %bb29

bb23:                                             ; preds = %bb23.preheader, %bb23
  %n.1113 = phi i32 [ %15, %bb23 ], [ %n.0.lcssa, %bb23.preheader ]
  %iter.sroa.0.0111 = phi i16 [ %14, %bb23 ], [ 1, %bb23.preheader ]
  %14 = add nuw i16 %iter.sroa.0.0111, 1
  %15 = udiv i32 %n.1113, 10
  %16 = icmp ult i16 %14, %10
  br i1 %16, label %bb23, label %bb21.thread148

bb25:                                             ; preds = %bb21, %bb21.thread148
  %n.1.lcssa156 = phi i32 [ %15, %bb21.thread148 ], [ %n.0.lcssa, %bb21 ]
  %exponent2.1.lcssa155 = phi i16 [ %13, %bb21.thread148 ], [ %exponent2.0.lcssa, %bb21 ]
  %17 = udiv i32 %n.1.lcssa156, 10
  %18 = mul i32 %17, 10
  %rem.decomposed = sub i32 %n.1.lcssa156, %18
  %19 = add i16 %exponent2.1.lcssa155, 1
  %_50 = icmp ugt i32 %rem.decomposed, 4
  %20 = zext i1 %_50 to i32
  %spec.select = add nuw nsw i32 %17, %20
  br label %bb29

bb29:                                             ; preds = %bb21, %bb6, %bb25
  %_20.sroa.0.0141147 = phi i16 [ %9, %bb21 ], [ %9, %bb25 ], [ 0, %bb6 ]
  %exponent2.2 = phi i16 [ %exponent2.0.lcssa, %bb21 ], [ %19, %bb25 ], [ %exponent2.0.lcssa, %bb6 ]
  %n.2 = phi i32 [ %n.0.lcssa, %bb21 ], [ %spec.select, %bb25 ], [ %n.0.lcssa, %bb6 ]
  %21 = getelementptr inbounds [40 x i8], [40 x i8]* %buf, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 40, i8* nonnull %21)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(40) %21, i8 undef, i16 40, i1 false)
  %_70105 = icmp ugt i32 %n.2, 99
  %extract.t = trunc i32 %n.2 to i8
  %extract.t130 = trunc i32 %n.2 to i16
  br i1 %_70105, label %bb36, label %bb35

bb35.loopexit:                                    ; preds = %bb36
  %extract.t131 = trunc i32 %22 to i16
  %extract.t128 = trunc i32 %22 to i8
  br label %bb35

bb35:                                             ; preds = %bb35.loopexit, %bb29
  %curr.0.lcssa = phi i16 [ 40, %bb29 ], [ %24, %bb35.loopexit ]
  %exponent.0.lcssa = phi i16 [ %exponent2.2, %bb29 ], [ %30, %bb35.loopexit ]
  %n1.0.lcssa.off0 = phi i8 [ %extract.t, %bb29 ], [ %extract.t128, %bb35.loopexit ]
  %n1.0.lcssa.off0129 = phi i16 [ %extract.t130, %bb29 ], [ %extract.t131, %bb35.loopexit ]
  %_85 = icmp sgt i16 %n1.0.lcssa.off0129, 9
  br i1 %_85, label %bb41, label %bb44

bb36:                                             ; preds = %bb29, %bb36
  %n1.0108 = phi i32 [ %22, %bb36 ], [ %n.2, %bb29 ]
  %exponent.0107 = phi i16 [ %30, %bb36 ], [ %exponent2.2, %bb29 ]
  %curr.0106 = phi i16 [ %24, %bb36 ], [ 40, %bb29 ]
  %22 = udiv i32 %n1.0108, 100
  %23 = mul i32 %22, 100
  %_74.decomposed = sub i32 %n1.0108, %23
  %_73 = trunc i32 %_74.decomposed to i16
  %d1 = shl nuw nsw i16 %_73, 1
  %24 = add i16 %curr.0106, -2
  %25 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d1
  %26 = getelementptr inbounds [40 x i8], [40 x i8]* %buf, i16 0, i16 %24
  %27 = bitcast i8* %25 to i16*
  %28 = bitcast i8* %26 to i16*
  %29 = load i16, i16* %27, align 1
  store i16 %29, i16* %28, align 1
  %30 = add i16 %exponent.0107, 2
  %_70 = icmp ugt i32 %n1.0108, 9999
  br i1 %_70, label %bb36, label %bb35.loopexit

bb41:                                             ; preds = %bb35
  %31 = add i16 %curr.0.lcssa, -1
  %32 = udiv i8 %n1.0.lcssa.off0, 10
  %33 = mul i8 %32, 10
  %_87.decomposed = sub i8 %n1.0.lcssa.off0, %33
  %34 = getelementptr inbounds [40 x i8], [40 x i8]* %buf, i16 0, i16 %31
  %35 = or i8 %_87.decomposed, 48
  store i8 %35, i8* %34, align 1
  %36 = add i16 %exponent.0.lcssa, 1
  br label %bb44

bb44:                                             ; preds = %bb35, %bb41
  %curr.1 = phi i16 [ %31, %bb41 ], [ %curr.0.lcssa, %bb35 ]
  %n3.0.off0 = phi i8 [ %32, %bb41 ], [ %n1.0.lcssa.off0, %bb35 ]
  %exponent.1 = phi i16 [ %36, %bb41 ], [ %exponent.0.lcssa, %bb35 ]
  %_97 = icmp ne i16 %exponent.1, %exponent2.0.lcssa
  %_100 = icmp ne i16 %_20.sroa.0.0141147, 0
  %or.cond7 = or i1 %_100, %_97
  br i1 %or.cond7, label %bb50, label %bb52

bb50:                                             ; preds = %bb44
  %37 = add i16 %curr.1, -1
  %38 = getelementptr inbounds [40 x i8], [40 x i8]* %buf, i16 0, i16 %37
  store i8 46, i8* %38, align 1
  br label %bb52

bb52:                                             ; preds = %bb44, %bb50
  %curr.2 = phi i16 [ %37, %bb50 ], [ %curr.1, %bb44 ]
  %39 = add i16 %curr.2, -1
  %40 = getelementptr inbounds [40 x i8], [40 x i8]* %buf, i16 0, i16 %39
  %41 = add nuw i8 %n3.0.off0, 48
  store i8 %41, i8* %40, align 1
  %len6 = sub i16 41, %curr.2
  %42 = getelementptr inbounds [3 x i8], [3 x i8]* %exp_buf, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 3, i8* nonnull %42)
  %.93 = select i1 %upper, i8 69, i8 101
  %_134 = icmp slt i16 %exponent.1, 10
  call addrspace(1) void @llvm.memset.p0i8.i64(i8* nonnull align 1 dereferenceable(3) %42, i8 %.93, i64 3, i1 false)
  br i1 %_134, label %bb64, label %bb63

bb63:                                             ; preds = %bb52
  %off = shl nuw i16 %exponent.1, 1
  %43 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %off
  %44 = getelementptr inbounds [3 x i8], [3 x i8]* %exp_buf, i16 0, i16 1
  %45 = bitcast i8* %43 to i16*
  %46 = bitcast i8* %44 to i16*
  %47 = load i16, i16* %45, align 1
  store i16 %47, i16* %46, align 1
  br label %bb69

bb64:                                             ; preds = %bb52
  %_136 = trunc i16 %exponent.1 to i8
  %48 = getelementptr inbounds [3 x i8], [3 x i8]* %exp_buf, i16 0, i16 1
  %49 = add i8 %_136, 48
  store i8 %49, i8* %48, align 1
  br label %bb69

bb69:                                             ; preds = %bb63, %bb64
  %.sink169 = phi i16 [ 3, %bb63 ], [ 2, %bb64 ]
  %50 = getelementptr inbounds [3 x %"num::flt2dec::Part"], [3 x %"num::flt2dec::Part"]* %_152, i16 0, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 15, i8* nonnull %50)
  store i8 2, i8* %50, align 1
  %_153.sroa.4.0..sroa_idx = getelementptr inbounds [3 x %"num::flt2dec::Part"], [3 x %"num::flt2dec::Part"]* %_152, i16 0, i16 0, i32 2
  %51 = bitcast [4 x i8]* %_153.sroa.4.0..sroa_idx to i8**
  store i8* %40, i8** %51, align 1
  %_153.sroa.5.0..sroa_idx = getelementptr inbounds [3 x %"num::flt2dec::Part"], [3 x %"num::flt2dec::Part"]* %_152, i16 0, i16 0, i32 2, i16 2
  %_153.sroa.5.0..sroa_cast71 = bitcast i8* %_153.sroa.5.0..sroa_idx to i16*
  store i16 %len6, i16* %_153.sroa.5.0..sroa_cast71, align 1
  %_155.sroa.0.0..sroa_idx = getelementptr inbounds [3 x %"num::flt2dec::Part"], [3 x %"num::flt2dec::Part"]* %_152, i16 0, i16 1, i32 0, i16 0
  store i8 0, i8* %_155.sroa.0.0..sroa_idx, align 1
  %_155.sroa.4.0..sroa_idx73 = getelementptr inbounds [3 x %"num::flt2dec::Part"], [3 x %"num::flt2dec::Part"]* %_152, i16 0, i16 1, i32 2
  %_155.sroa.4.0..sroa_cast74 = bitcast [4 x i8]* %_155.sroa.4.0..sroa_idx73 to i16*
  store i16 %_20.sroa.0.0141147, i16* %_155.sroa.4.0..sroa_cast74, align 1
  %_157.sroa.0.0..sroa_idx = getelementptr inbounds [3 x %"num::flt2dec::Part"], [3 x %"num::flt2dec::Part"]* %_152, i16 0, i16 2, i32 0, i16 0
  store i8 2, i8* %_157.sroa.0.0..sroa_idx, align 1
  %_157.sroa.4.0..sroa_idx81 = getelementptr inbounds [3 x %"num::flt2dec::Part"], [3 x %"num::flt2dec::Part"]* %_152, i16 0, i16 2, i32 2
  %52 = bitcast [4 x i8]* %_157.sroa.4.0..sroa_idx81 to [3 x i8]**
  store [3 x i8]* %exp_buf, [3 x i8]** %52, align 1
  %_157.sroa.5.0..sroa_idx84 = getelementptr inbounds [3 x %"num::flt2dec::Part"], [3 x %"num::flt2dec::Part"]* %_152, i16 0, i16 2, i32 2, i16 2
  %_157.sroa.5.0..sroa_cast85 = bitcast i8* %_157.sroa.5.0..sroa_idx84 to i16*
  store i16 %.sink169, i16* %_157.sroa.5.0..sroa_cast85, align 1
  br i1 %is_nonnegative, label %bb71, label %bb77

bb71:                                             ; preds = %bb69
  %53 = bitcast %"fmt::Formatter"* %f to i32*
  %_3.i = load i32, i32* %53, align 1, !alias.scope !3371
  %_2.i = and i32 %_3.i, 1
  %54 = icmp eq i32 %_2.i, 0
  %.94 = select i1 %54, [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19124 to [0 x i8]*)
  %55 = trunc i32 %_2.i to i16
  br label %bb77

bb77:                                             ; preds = %bb69, %bb71
  %sign.sroa.0.0 = phi [0 x i8]* [ %.94, %bb71 ], [ bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), %bb69 ]
  %sign.sroa.5.0 = phi i16 [ %55, %bb71 ], [ 1, %bb69 ]
  %56 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %56)
  %57 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %sign.sroa.0.0, [0 x i8]** %57, align 1
  %58 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 1, i32 1
  store i16 %sign.sroa.5.0, i16* %58, align 1
  %59 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3
  %60 = bitcast { [0 x %"num::flt2dec::Part"]*, i16 }* %59 to [3 x %"num::flt2dec::Part"]**
  store [3 x %"num::flt2dec::Part"]* %_152, [3 x %"num::flt2dec::Part"]** %60, align 1
  %61 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 1
  store i16 3, i16* %61, align 1
; call core::fmt::Formatter::pad_formatted_parts
  %62 = call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter19pad_formatted_parts17hd831476560d54163E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, %"num::flt2dec::Formatted"* noalias nonnull readonly align 1 dereferenceable(8) %formatted)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 8, i8* nonnull %56)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 15, i8* nonnull %50)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 3, i8* nonnull %42)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 40, i8* nonnull %21)
  ret i1 %62
}

; core::fmt::num::imp::<impl core::fmt::LowerExp for i8>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..LowerExp$u20$for$u20$i8$GT$3fmt17hb0774690d2561bf5E"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self, %"fmt::Formatter"* nocapture align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_4 = load i8, i8* %self, align 1
  %is_nonnegative = icmp sgt i8 %_4, -1
  %0 = sext i8 %_4 to i32
  %1 = sub nsw i32 0, %0
  %n.0 = select i1 %is_nonnegative, i32 %0, i32 %1
; call core::fmt::num::imp::exp_u32
  %2 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt3num3imp7exp_u3217h0fa2b98992dc2879E(i32 %n.0, i1 zeroext %is_nonnegative, i1 zeroext false, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %2
}

; core::fmt::num::imp::<impl core::fmt::LowerExp for u8>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..LowerExp$u20$for$u20$u8$GT$3fmt17h6c07bd1bb7ce25d1E"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self, %"fmt::Formatter"* nocapture align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_2.i = load i8, i8* %self, align 1, !alias.scope !3374
  %0 = zext i8 %_2.i to i32
; call core::fmt::num::imp::exp_u32
  %1 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt3num3imp7exp_u3217h0fa2b98992dc2879E(i32 %0, i1 zeroext true, i1 zeroext false, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %1
}

; core::fmt::num::imp::<impl core::fmt::LowerExp for i16>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num3imp53_$LT$impl$u20$core..fmt..LowerExp$u20$for$u20$i16$GT$3fmt17h4f63267f9ad7d44eE"(i16* noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* nocapture align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_4 = load i16, i16* %self, align 1
  %is_nonnegative = icmp sgt i16 %_4, -1
  %0 = sext i16 %_4 to i32
  %1 = sub nsw i32 0, %0
  %n.0 = select i1 %is_nonnegative, i32 %0, i32 %1
; call core::fmt::num::imp::exp_u32
  %2 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt3num3imp7exp_u3217h0fa2b98992dc2879E(i32 %n.0, i1 zeroext %is_nonnegative, i1 zeroext false, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %2
}

; core::fmt::num::imp::<impl core::fmt::LowerExp for u16>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num3imp53_$LT$impl$u20$core..fmt..LowerExp$u20$for$u20$u16$GT$3fmt17hab9c02f2e31d0bfdE"(i16* noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* nocapture align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_2.i = load i16, i16* %self, align 1, !alias.scope !3377
  %0 = zext i16 %_2.i to i32
; call core::fmt::num::imp::exp_u32
  %1 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt3num3imp7exp_u3217h0fa2b98992dc2879E(i32 %0, i1 zeroext true, i1 zeroext false, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %1
}

; core::fmt::num::imp::<impl core::fmt::LowerExp for i32>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num3imp53_$LT$impl$u20$core..fmt..LowerExp$u20$for$u20$i32$GT$3fmt17hb6a172aab44227a3E"(i32* noalias nocapture readonly align 1 dereferenceable(4) %self, %"fmt::Formatter"* nocapture align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_4 = load i32, i32* %self, align 1
  %is_nonnegative = icmp sgt i32 %_4, -1
  %0 = sub i32 0, %_4
  %n.0 = select i1 %is_nonnegative, i32 %_4, i32 %0
; call core::fmt::num::imp::exp_u32
  %1 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt3num3imp7exp_u3217h0fa2b98992dc2879E(i32 %n.0, i1 zeroext %is_nonnegative, i1 zeroext false, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %1
}

; core::fmt::num::imp::<impl core::fmt::LowerExp for u32>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num3imp53_$LT$impl$u20$core..fmt..LowerExp$u20$for$u20$u32$GT$3fmt17he049575f59b0de46E"(i32* noalias nocapture readonly align 1 dereferenceable(4) %self, %"fmt::Formatter"* nocapture align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %0 = load i32, i32* %self, align 1, !alias.scope !3380
; call core::fmt::num::imp::exp_u32
  %1 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt3num3imp7exp_u3217h0fa2b98992dc2879E(i32 %0, i1 zeroext true, i1 zeroext false, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %1
}

; core::fmt::num::imp::<impl core::fmt::UpperExp for i8>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..UpperExp$u20$for$u20$i8$GT$3fmt17hf69bf4606a924b61E"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self, %"fmt::Formatter"* nocapture align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_4 = load i8, i8* %self, align 1
  %is_nonnegative = icmp sgt i8 %_4, -1
  %0 = sext i8 %_4 to i32
  %1 = sub nsw i32 0, %0
  %n.0 = select i1 %is_nonnegative, i32 %0, i32 %1
; call core::fmt::num::imp::exp_u32
  %2 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt3num3imp7exp_u3217h0fa2b98992dc2879E(i32 %n.0, i1 zeroext %is_nonnegative, i1 zeroext true, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %2
}

; core::fmt::num::imp::<impl core::fmt::UpperExp for u8>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..UpperExp$u20$for$u20$u8$GT$3fmt17hcbb666186d4a40f2E"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self, %"fmt::Formatter"* nocapture align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_2.i = load i8, i8* %self, align 1, !alias.scope !3383
  %0 = zext i8 %_2.i to i32
; call core::fmt::num::imp::exp_u32
  %1 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt3num3imp7exp_u3217h0fa2b98992dc2879E(i32 %0, i1 zeroext true, i1 zeroext true, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %1
}

; core::fmt::num::imp::<impl core::fmt::UpperExp for i16>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num3imp53_$LT$impl$u20$core..fmt..UpperExp$u20$for$u20$i16$GT$3fmt17h3b9ac9f9dcf0aa43E"(i16* noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* nocapture align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_4 = load i16, i16* %self, align 1
  %is_nonnegative = icmp sgt i16 %_4, -1
  %0 = sext i16 %_4 to i32
  %1 = sub nsw i32 0, %0
  %n.0 = select i1 %is_nonnegative, i32 %0, i32 %1
; call core::fmt::num::imp::exp_u32
  %2 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt3num3imp7exp_u3217h0fa2b98992dc2879E(i32 %n.0, i1 zeroext %is_nonnegative, i1 zeroext true, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %2
}

; core::fmt::num::imp::<impl core::fmt::UpperExp for u16>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num3imp53_$LT$impl$u20$core..fmt..UpperExp$u20$for$u20$u16$GT$3fmt17h5bffd2fc2b793d30E"(i16* noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* nocapture align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_2.i = load i16, i16* %self, align 1, !alias.scope !3386
  %0 = zext i16 %_2.i to i32
; call core::fmt::num::imp::exp_u32
  %1 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt3num3imp7exp_u3217h0fa2b98992dc2879E(i32 %0, i1 zeroext true, i1 zeroext true, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %1
}

; core::fmt::num::imp::<impl core::fmt::UpperExp for i32>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num3imp53_$LT$impl$u20$core..fmt..UpperExp$u20$for$u20$i32$GT$3fmt17h6aa5b3662b5ab63eE"(i32* noalias nocapture readonly align 1 dereferenceable(4) %self, %"fmt::Formatter"* nocapture align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_4 = load i32, i32* %self, align 1
  %is_nonnegative = icmp sgt i32 %_4, -1
  %0 = sub i32 0, %_4
  %n.0 = select i1 %is_nonnegative, i32 %_4, i32 %0
; call core::fmt::num::imp::exp_u32
  %1 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt3num3imp7exp_u3217h0fa2b98992dc2879E(i32 %n.0, i1 zeroext %is_nonnegative, i1 zeroext true, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %1
}

; core::fmt::num::imp::<impl core::fmt::UpperExp for u32>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num3imp53_$LT$impl$u20$core..fmt..UpperExp$u20$for$u20$u32$GT$3fmt17ha040a4bdd5ebef7fE"(i32* noalias nocapture readonly align 1 dereferenceable(4) %self, %"fmt::Formatter"* nocapture align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %0 = load i32, i32* %self, align 1, !alias.scope !3389
; call core::fmt::num::imp::exp_u32
  %1 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt3num3imp7exp_u3217h0fa2b98992dc2879E(i32 %0, i1 zeroext true, i1 zeroext true, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %1
}

; core::fmt::num::imp::exp_u64
; Function Attrs: uwtable
define internal fastcc zeroext i1 @_ZN4core3fmt3num3imp7exp_u6417h82e35387f2ba9f26E(i64 %0, i1 zeroext %is_nonnegative, i1 zeroext %upper, %"fmt::Formatter"* nocapture align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %formatted = alloca %"num::flt2dec::Formatted", align 1
  %_152 = alloca [3 x %"num::flt2dec::Part"], align 1
  %exp_buf = alloca [3 x i8], align 1
  %buf = alloca [40 x i8], align 1
  %_13120 = urem i64 %0, 10
  %_12121 = icmp eq i64 %_13120, 0
  %_15122 = icmp ugt i64 %0, 9
  %or.cond123 = and i1 %_15122, %_12121
  br i1 %or.cond123, label %bb7, label %bb6

bb6:                                              ; preds = %bb7, %start
  %exponent2.0.lcssa = phi i16 [ 0, %start ], [ %6, %bb7 ]
  %n.0.lcssa = phi i64 [ %0, %start ], [ %5, %bb7 ]
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 9, i32 0
  %2 = load i8, i8* %1, align 1, !range !87, !alias.scope !3392
  %3 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 9, i32 1
  %4 = load i16, i16* %3, align 1, !alias.scope !3392
  %switch = icmp eq i8 %2, 0
  br i1 %switch, label %bb29, label %bb12.preheader

bb12.preheader:                                   ; preds = %bb6
  %_27116 = icmp ugt i64 %n.0.lcssa, 9
  br i1 %_27116, label %bb14, label %bb17

bb7:                                              ; preds = %start, %bb7
  %n.0125 = phi i64 [ %5, %bb7 ], [ %0, %start ]
  %exponent2.0124 = phi i16 [ %6, %bb7 ], [ 0, %start ]
  %5 = udiv i64 %n.0125, 10
  %6 = add i16 %exponent2.0124, 1
  %_13 = urem i64 %5, 10
  %_12 = icmp eq i64 %_13, 0
  %_15 = icmp ugt i64 %n.0125, 99
  %or.cond = and i1 %_15, %_12
  br i1 %or.cond, label %bb7, label %bb6

bb14:                                             ; preds = %bb12.preheader, %bb14
  %tmp.0118 = phi i64 [ %7, %bb14 ], [ %n.0.lcssa, %bb12.preheader ]
  %prec.0117 = phi i16 [ %8, %bb14 ], [ 0, %bb12.preheader ]
  %7 = udiv i64 %tmp.0118, 10
  %8 = add i16 %prec.0117, 1
  %_27 = icmp ugt i64 %tmp.0118, 99
  br i1 %_27, label %bb14, label %bb17

bb17:                                             ; preds = %bb14, %bb12.preheader
  %prec.0.lcssa = phi i16 [ 0, %bb12.preheader ], [ %8, %bb14 ]
  %9 = tail call addrspace(1) i16 @llvm.usub.sat.i16(i16 %4, i16 %prec.0.lcssa) #20
  %10 = tail call addrspace(1) i16 @llvm.usub.sat.i16(i16 %prec.0.lcssa, i16 %4) #20
  %11 = icmp ugt i16 %10, 1
  br i1 %11, label %bb23.preheader, label %bb21

bb23.preheader:                                   ; preds = %bb17
  %12 = add i16 %10, %exponent2.0.lcssa
  br label %bb23

bb21.thread148:                                   ; preds = %bb23
  %13 = add i16 %12, -1
  br label %bb25

bb21:                                             ; preds = %bb17
  %_46 = icmp ugt i16 %prec.0.lcssa, %4
  br i1 %_46, label %bb25, label %bb29

bb23:                                             ; preds = %bb23.preheader, %bb23
  %n.1113 = phi i64 [ %15, %bb23 ], [ %n.0.lcssa, %bb23.preheader ]
  %iter.sroa.0.0111 = phi i16 [ %14, %bb23 ], [ 1, %bb23.preheader ]
  %14 = add nuw i16 %iter.sroa.0.0111, 1
  %15 = udiv i64 %n.1113, 10
  %16 = icmp ult i16 %14, %10
  br i1 %16, label %bb23, label %bb21.thread148

bb25:                                             ; preds = %bb21, %bb21.thread148
  %n.1.lcssa156 = phi i64 [ %15, %bb21.thread148 ], [ %n.0.lcssa, %bb21 ]
  %exponent2.1.lcssa155 = phi i16 [ %13, %bb21.thread148 ], [ %exponent2.0.lcssa, %bb21 ]
  %17 = udiv i64 %n.1.lcssa156, 10
  %18 = mul i64 %17, 10
  %rem.decomposed = sub i64 %n.1.lcssa156, %18
  %19 = add i16 %exponent2.1.lcssa155, 1
  %_50 = icmp ugt i64 %rem.decomposed, 4
  %20 = zext i1 %_50 to i64
  %spec.select = add nuw nsw i64 %17, %20
  br label %bb29

bb29:                                             ; preds = %bb21, %bb6, %bb25
  %_20.sroa.0.0141147 = phi i16 [ %9, %bb21 ], [ %9, %bb25 ], [ 0, %bb6 ]
  %exponent2.2 = phi i16 [ %exponent2.0.lcssa, %bb21 ], [ %19, %bb25 ], [ %exponent2.0.lcssa, %bb6 ]
  %n.2 = phi i64 [ %n.0.lcssa, %bb21 ], [ %spec.select, %bb25 ], [ %n.0.lcssa, %bb6 ]
  %21 = getelementptr inbounds [40 x i8], [40 x i8]* %buf, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 40, i8* nonnull %21)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(40) %21, i8 undef, i16 40, i1 false)
  %_70105 = icmp ugt i64 %n.2, 99
  %extract.t = trunc i64 %n.2 to i8
  %extract.t130 = trunc i64 %n.2 to i16
  br i1 %_70105, label %bb36, label %bb35

bb35.loopexit:                                    ; preds = %bb36
  %extract.t131 = trunc i64 %22 to i16
  %extract.t128 = trunc i64 %22 to i8
  br label %bb35

bb35:                                             ; preds = %bb35.loopexit, %bb29
  %curr.0.lcssa = phi i16 [ 40, %bb29 ], [ %24, %bb35.loopexit ]
  %exponent.0.lcssa = phi i16 [ %exponent2.2, %bb29 ], [ %30, %bb35.loopexit ]
  %n1.0.lcssa.off0 = phi i8 [ %extract.t, %bb29 ], [ %extract.t128, %bb35.loopexit ]
  %n1.0.lcssa.off0129 = phi i16 [ %extract.t130, %bb29 ], [ %extract.t131, %bb35.loopexit ]
  %_85 = icmp sgt i16 %n1.0.lcssa.off0129, 9
  br i1 %_85, label %bb41, label %bb44

bb36:                                             ; preds = %bb29, %bb36
  %n1.0108 = phi i64 [ %22, %bb36 ], [ %n.2, %bb29 ]
  %exponent.0107 = phi i16 [ %30, %bb36 ], [ %exponent2.2, %bb29 ]
  %curr.0106 = phi i16 [ %24, %bb36 ], [ 40, %bb29 ]
  %22 = udiv i64 %n1.0108, 100
  %23 = mul i64 %22, 100
  %_74.decomposed = sub i64 %n1.0108, %23
  %_73 = trunc i64 %_74.decomposed to i16
  %d1 = shl nuw nsw i16 %_73, 1
  %24 = add i16 %curr.0106, -2
  %25 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d1
  %26 = getelementptr inbounds [40 x i8], [40 x i8]* %buf, i16 0, i16 %24
  %27 = bitcast i8* %25 to i16*
  %28 = bitcast i8* %26 to i16*
  %29 = load i16, i16* %27, align 1
  store i16 %29, i16* %28, align 1
  %30 = add i16 %exponent.0107, 2
  %_70 = icmp ugt i64 %n1.0108, 9999
  br i1 %_70, label %bb36, label %bb35.loopexit

bb41:                                             ; preds = %bb35
  %31 = add i16 %curr.0.lcssa, -1
  %32 = udiv i8 %n1.0.lcssa.off0, 10
  %33 = mul i8 %32, 10
  %_87.decomposed = sub i8 %n1.0.lcssa.off0, %33
  %34 = getelementptr inbounds [40 x i8], [40 x i8]* %buf, i16 0, i16 %31
  %35 = or i8 %_87.decomposed, 48
  store i8 %35, i8* %34, align 1
  %36 = add i16 %exponent.0.lcssa, 1
  br label %bb44

bb44:                                             ; preds = %bb35, %bb41
  %curr.1 = phi i16 [ %31, %bb41 ], [ %curr.0.lcssa, %bb35 ]
  %n3.0.off0 = phi i8 [ %32, %bb41 ], [ %n1.0.lcssa.off0, %bb35 ]
  %exponent.1 = phi i16 [ %36, %bb41 ], [ %exponent.0.lcssa, %bb35 ]
  %_97 = icmp ne i16 %exponent.1, %exponent2.0.lcssa
  %_100 = icmp ne i16 %_20.sroa.0.0141147, 0
  %or.cond7 = or i1 %_100, %_97
  br i1 %or.cond7, label %bb50, label %bb52

bb50:                                             ; preds = %bb44
  %37 = add i16 %curr.1, -1
  %38 = getelementptr inbounds [40 x i8], [40 x i8]* %buf, i16 0, i16 %37
  store i8 46, i8* %38, align 1
  br label %bb52

bb52:                                             ; preds = %bb44, %bb50
  %curr.2 = phi i16 [ %37, %bb50 ], [ %curr.1, %bb44 ]
  %39 = add i16 %curr.2, -1
  %40 = getelementptr inbounds [40 x i8], [40 x i8]* %buf, i16 0, i16 %39
  %41 = add nuw i8 %n3.0.off0, 48
  store i8 %41, i8* %40, align 1
  %len6 = sub i16 41, %curr.2
  %42 = getelementptr inbounds [3 x i8], [3 x i8]* %exp_buf, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 3, i8* nonnull %42)
  %.93 = select i1 %upper, i8 69, i8 101
  %_134 = icmp slt i16 %exponent.1, 10
  call addrspace(1) void @llvm.memset.p0i8.i64(i8* nonnull align 1 dereferenceable(3) %42, i8 %.93, i64 3, i1 false)
  br i1 %_134, label %bb64, label %bb63

bb63:                                             ; preds = %bb52
  %off = shl nuw i16 %exponent.1, 1
  %43 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %off
  %44 = getelementptr inbounds [3 x i8], [3 x i8]* %exp_buf, i16 0, i16 1
  %45 = bitcast i8* %43 to i16*
  %46 = bitcast i8* %44 to i16*
  %47 = load i16, i16* %45, align 1
  store i16 %47, i16* %46, align 1
  br label %bb69

bb64:                                             ; preds = %bb52
  %_136 = trunc i16 %exponent.1 to i8
  %48 = getelementptr inbounds [3 x i8], [3 x i8]* %exp_buf, i16 0, i16 1
  %49 = add i8 %_136, 48
  store i8 %49, i8* %48, align 1
  br label %bb69

bb69:                                             ; preds = %bb63, %bb64
  %.sink169 = phi i16 [ 3, %bb63 ], [ 2, %bb64 ]
  %50 = getelementptr inbounds [3 x %"num::flt2dec::Part"], [3 x %"num::flt2dec::Part"]* %_152, i16 0, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 15, i8* nonnull %50)
  store i8 2, i8* %50, align 1
  %_153.sroa.4.0..sroa_idx = getelementptr inbounds [3 x %"num::flt2dec::Part"], [3 x %"num::flt2dec::Part"]* %_152, i16 0, i16 0, i32 2
  %51 = bitcast [4 x i8]* %_153.sroa.4.0..sroa_idx to i8**
  store i8* %40, i8** %51, align 1
  %_153.sroa.5.0..sroa_idx = getelementptr inbounds [3 x %"num::flt2dec::Part"], [3 x %"num::flt2dec::Part"]* %_152, i16 0, i16 0, i32 2, i16 2
  %_153.sroa.5.0..sroa_cast71 = bitcast i8* %_153.sroa.5.0..sroa_idx to i16*
  store i16 %len6, i16* %_153.sroa.5.0..sroa_cast71, align 1
  %_155.sroa.0.0..sroa_idx = getelementptr inbounds [3 x %"num::flt2dec::Part"], [3 x %"num::flt2dec::Part"]* %_152, i16 0, i16 1, i32 0, i16 0
  store i8 0, i8* %_155.sroa.0.0..sroa_idx, align 1
  %_155.sroa.4.0..sroa_idx73 = getelementptr inbounds [3 x %"num::flt2dec::Part"], [3 x %"num::flt2dec::Part"]* %_152, i16 0, i16 1, i32 2
  %_155.sroa.4.0..sroa_cast74 = bitcast [4 x i8]* %_155.sroa.4.0..sroa_idx73 to i16*
  store i16 %_20.sroa.0.0141147, i16* %_155.sroa.4.0..sroa_cast74, align 1
  %_157.sroa.0.0..sroa_idx = getelementptr inbounds [3 x %"num::flt2dec::Part"], [3 x %"num::flt2dec::Part"]* %_152, i16 0, i16 2, i32 0, i16 0
  store i8 2, i8* %_157.sroa.0.0..sroa_idx, align 1
  %_157.sroa.4.0..sroa_idx81 = getelementptr inbounds [3 x %"num::flt2dec::Part"], [3 x %"num::flt2dec::Part"]* %_152, i16 0, i16 2, i32 2
  %52 = bitcast [4 x i8]* %_157.sroa.4.0..sroa_idx81 to [3 x i8]**
  store [3 x i8]* %exp_buf, [3 x i8]** %52, align 1
  %_157.sroa.5.0..sroa_idx84 = getelementptr inbounds [3 x %"num::flt2dec::Part"], [3 x %"num::flt2dec::Part"]* %_152, i16 0, i16 2, i32 2, i16 2
  %_157.sroa.5.0..sroa_cast85 = bitcast i8* %_157.sroa.5.0..sroa_idx84 to i16*
  store i16 %.sink169, i16* %_157.sroa.5.0..sroa_cast85, align 1
  br i1 %is_nonnegative, label %bb71, label %bb77

bb71:                                             ; preds = %bb69
  %53 = bitcast %"fmt::Formatter"* %f to i32*
  %_3.i = load i32, i32* %53, align 1, !alias.scope !3395
  %_2.i = and i32 %_3.i, 1
  %54 = icmp eq i32 %_2.i, 0
  %.94 = select i1 %54, [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19124 to [0 x i8]*)
  %55 = trunc i32 %_2.i to i16
  br label %bb77

bb77:                                             ; preds = %bb69, %bb71
  %sign.sroa.0.0 = phi [0 x i8]* [ %.94, %bb71 ], [ bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), %bb69 ]
  %sign.sroa.5.0 = phi i16 [ %55, %bb71 ], [ 1, %bb69 ]
  %56 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %56)
  %57 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %sign.sroa.0.0, [0 x i8]** %57, align 1
  %58 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 1, i32 1
  store i16 %sign.sroa.5.0, i16* %58, align 1
  %59 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3
  %60 = bitcast { [0 x %"num::flt2dec::Part"]*, i16 }* %59 to [3 x %"num::flt2dec::Part"]**
  store [3 x %"num::flt2dec::Part"]* %_152, [3 x %"num::flt2dec::Part"]** %60, align 1
  %61 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 1
  store i16 3, i16* %61, align 1
; call core::fmt::Formatter::pad_formatted_parts
  %62 = call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter19pad_formatted_parts17hd831476560d54163E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, %"num::flt2dec::Formatted"* noalias nonnull readonly align 1 dereferenceable(8) %formatted)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 8, i8* nonnull %56)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 15, i8* nonnull %50)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 3, i8* nonnull %42)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 40, i8* nonnull %21)
  ret i1 %62
}

; core::fmt::num::imp::<impl core::fmt::LowerExp for i64>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num3imp53_$LT$impl$u20$core..fmt..LowerExp$u20$for$u20$i64$GT$3fmt17h35cc04b6bbb62edcE"(i64* noalias nocapture readonly align 1 dereferenceable(8) %self, %"fmt::Formatter"* nocapture align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_4 = load i64, i64* %self, align 1
  %is_nonnegative = icmp sgt i64 %_4, -1
  %0 = sub i64 0, %_4
  %n.0 = select i1 %is_nonnegative, i64 %_4, i64 %0
; call core::fmt::num::imp::exp_u64
  %1 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt3num3imp7exp_u6417h82e35387f2ba9f26E(i64 %n.0, i1 zeroext %is_nonnegative, i1 zeroext false, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %1
}

; core::fmt::num::imp::<impl core::fmt::LowerExp for u64>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num3imp53_$LT$impl$u20$core..fmt..LowerExp$u20$for$u20$u64$GT$3fmt17h602c0bfefb3b59deE"(i64* noalias nocapture readonly align 1 dereferenceable(8) %self, %"fmt::Formatter"* nocapture align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %0 = load i64, i64* %self, align 1, !alias.scope !3398
; call core::fmt::num::imp::exp_u64
  %1 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt3num3imp7exp_u6417h82e35387f2ba9f26E(i64 %0, i1 zeroext true, i1 zeroext false, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %1
}

; core::fmt::num::imp::<impl core::fmt::UpperExp for i64>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num3imp53_$LT$impl$u20$core..fmt..UpperExp$u20$for$u20$i64$GT$3fmt17hb724cbca185d3724E"(i64* noalias nocapture readonly align 1 dereferenceable(8) %self, %"fmt::Formatter"* nocapture align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_4 = load i64, i64* %self, align 1
  %is_nonnegative = icmp sgt i64 %_4, -1
  %0 = sub i64 0, %_4
  %n.0 = select i1 %is_nonnegative, i64 %_4, i64 %0
; call core::fmt::num::imp::exp_u64
  %1 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt3num3imp7exp_u6417h82e35387f2ba9f26E(i64 %n.0, i1 zeroext %is_nonnegative, i1 zeroext true, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %1
}

; core::fmt::num::imp::<impl core::fmt::UpperExp for u64>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num3imp53_$LT$impl$u20$core..fmt..UpperExp$u20$for$u20$u64$GT$3fmt17h7bf1ec3fea159f70E"(i64* noalias nocapture readonly align 1 dereferenceable(8) %self, %"fmt::Formatter"* nocapture align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %0 = load i64, i64* %self, align 1, !alias.scope !3401
; call core::fmt::num::imp::exp_u64
  %1 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt3num3imp7exp_u6417h82e35387f2ba9f26E(i64 %0, i1 zeroext true, i1 zeroext true, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %1
}

; core::fmt::num::<impl core::fmt::Display for i128>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..Display$u20$for$u20$i128$GT$3fmt17h435e645cc370f52bE"(i128* noalias nocapture readonly align 1 dereferenceable(16) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i = alloca [39 x i8], align 1
  %_4 = load i128, i128* %self, align 1
  %is_nonnegative = icmp sgt i128 %_4, -1
  %0 = sub i128 0, %_4
  %n.0 = select i1 %is_nonnegative, i128 %_4, i128 %0
  %1 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 39, i8* nonnull %1)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(39) %1, i8 undef, i16 39, i1 false)
  %_2329.i = icmp ugt i128 %n.0, 9999
  %extract.t.i = trunc i128 %n.0 to i16
  br i1 %_2329.i, label %bb10.i, label %bb9.i

bb9.loopexit.i:                                   ; preds = %bb10.i
  %extract.t33.i = trunc i128 %2 to i16
  br label %bb9.i

bb9.i:                                            ; preds = %bb9.loopexit.i, %start
  %curr.0.lcssa.i = phi i16 [ 39, %start ], [ %5, %bb9.loopexit.i ]
  %n.0.lcssa.off0.i = phi i16 [ %extract.t.i, %start ], [ %extract.t33.i, %bb9.loopexit.i ]
  %_57.i = icmp sgt i16 %n.0.lcssa.off0.i, 99
  br i1 %_57.i, label %bb22.i, label %bb26.i

bb10.i:                                           ; preds = %start, %bb10.i
  %n.031.i = phi i128 [ %2, %bb10.i ], [ %n.0, %start ]
  %curr.030.i = phi i16 [ %5, %bb10.i ], [ 39, %start ]
  %2 = udiv i128 %n.031.i, 10000
  %3 = mul i128 %2, 10000
  %_26.i.decomposed = sub i128 %n.031.i, %3
  %rem.i = trunc i128 %_26.i.decomposed to i16
  %_29.i = udiv i16 %rem.i, 100
  %d1.i = shl nuw nsw i16 %_29.i, 1
  %4 = mul i16 %_29.i, 100
  %_35.i.decomposed = sub i16 %rem.i, %4
  %d2.i = shl nuw nsw i16 %_35.i.decomposed, 1
  %5 = add i16 %curr.030.i, -4
  %6 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d1.i
  %7 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %5
  %8 = bitcast i8* %6 to i16*
  %9 = bitcast i8* %7 to i16*
  %10 = load i16, i16* %8, align 1
  store i16 %10, i16* %9, align 1
  %11 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d2.i
  %_53.i = add nsw i16 %curr.030.i, -2
  %12 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %_53.i
  %13 = bitcast i8* %11 to i16*
  %14 = bitcast i8* %12 to i16*
  %15 = load i16, i16* %13, align 1
  store i16 %15, i16* %14, align 1
  %_23.i = icmp ugt i128 %n.031.i, 99999999
  br i1 %_23.i, label %bb10.i, label %bb9.loopexit.i

bb22.i:                                           ; preds = %bb9.i
  %16 = udiv i16 %n.0.lcssa.off0.i, 100
  %17 = mul i16 %16, 100
  %_6028.i.decomposed = sub i16 %n.0.lcssa.off0.i, %17
  %d14.i = shl nuw nsw i16 %_6028.i.decomposed, 1
  %18 = add i16 %curr.0.lcssa.i, -2
  %19 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d14.i
  %20 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %18
  %21 = bitcast i8* %19 to i16*
  %22 = bitcast i8* %20 to i16*
  %23 = load i16, i16* %21, align 1
  store i16 %23, i16* %22, align 1
  br label %bb26.i

bb26.i:                                           ; preds = %bb22.i, %bb9.i
  %n1.0.i = phi i16 [ %16, %bb22.i ], [ %n.0.lcssa.off0.i, %bb9.i ]
  %curr.1.i = phi i16 [ %18, %bb22.i ], [ %curr.0.lcssa.i, %bb9.i ]
  %_75.i = icmp slt i16 %n1.0.i, 10
  br i1 %_75.i, label %bb28.i, label %bb27.i

bb27.i:                                           ; preds = %bb26.i
  %d16.i = shl nuw nsw i16 %n1.0.i, 1
  %24 = add i16 %curr.1.i, -2
  %25 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d16.i
  %26 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %24
  %27 = bitcast i8* %25 to i16*
  %28 = bitcast i8* %26 to i16*
  %29 = load i16, i16* %27, align 1
  store i16 %29, i16* %28, align 1
  br label %_ZN4core3fmt3num8fmt_u12817h793ccd3d03f365e2E.exit

bb28.i:                                           ; preds = %bb26.i
  %30 = add i16 %curr.1.i, -1
  %_77.i = trunc i16 %n1.0.i to i8
  %31 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %30
  %32 = add nuw nsw i8 %_77.i, 48
  store i8 %32, i8* %31, align 1
  br label %_ZN4core3fmt3num8fmt_u12817h793ccd3d03f365e2E.exit

_ZN4core3fmt3num8fmt_u12817h793ccd3d03f365e2E.exit: ; preds = %bb27.i, %bb28.i
  %curr.2.i = phi i16 [ %30, %bb28.i ], [ %24, %bb27.i ]
  %33 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %curr.2.i
  %_98.i = sub i16 39, %curr.2.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i = bitcast i8* %33 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %34 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext %is_nonnegative, [0 x i8]* noalias nonnull readonly align 1 getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), i16 0, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i, i16 %_98.i)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 39, i8* nonnull %1)
  ret i1 %34
}

; core::fmt::num::<impl core::fmt::Display for u128>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..Display$u20$for$u20$u128$GT$3fmt17hcc6b57e63c083a7eE"(i128* noalias nocapture readonly align 1 dereferenceable(16) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i = alloca [39 x i8], align 1
  %0 = load i128, i128* %self, align 1, !alias.scope !3404
  %1 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 39, i8* nonnull %1)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(39) %1, i8 undef, i16 39, i1 false)
  %_2329.i = icmp ugt i128 %0, 9999
  %extract.t.i = trunc i128 %0 to i16
  br i1 %_2329.i, label %bb10.i, label %bb9.i

bb9.loopexit.i:                                   ; preds = %bb10.i
  %extract.t33.i = trunc i128 %2 to i16
  br label %bb9.i

bb9.i:                                            ; preds = %bb9.loopexit.i, %start
  %curr.0.lcssa.i = phi i16 [ 39, %start ], [ %5, %bb9.loopexit.i ]
  %n.0.lcssa.off0.i = phi i16 [ %extract.t.i, %start ], [ %extract.t33.i, %bb9.loopexit.i ]
  %_57.i = icmp sgt i16 %n.0.lcssa.off0.i, 99
  br i1 %_57.i, label %bb22.i, label %bb26.i

bb10.i:                                           ; preds = %start, %bb10.i
  %n.031.i = phi i128 [ %2, %bb10.i ], [ %0, %start ]
  %curr.030.i = phi i16 [ %5, %bb10.i ], [ 39, %start ]
  %2 = udiv i128 %n.031.i, 10000
  %3 = mul i128 %2, 10000
  %_26.i.decomposed = sub i128 %n.031.i, %3
  %rem.i = trunc i128 %_26.i.decomposed to i16
  %_29.i = udiv i16 %rem.i, 100
  %d1.i = shl nuw nsw i16 %_29.i, 1
  %4 = mul i16 %_29.i, 100
  %_35.i.decomposed = sub i16 %rem.i, %4
  %d2.i = shl nuw nsw i16 %_35.i.decomposed, 1
  %5 = add i16 %curr.030.i, -4
  %6 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d1.i
  %7 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %5
  %8 = bitcast i8* %6 to i16*
  %9 = bitcast i8* %7 to i16*
  %10 = load i16, i16* %8, align 1
  store i16 %10, i16* %9, align 1
  %11 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d2.i
  %_53.i = add nsw i16 %curr.030.i, -2
  %12 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %_53.i
  %13 = bitcast i8* %11 to i16*
  %14 = bitcast i8* %12 to i16*
  %15 = load i16, i16* %13, align 1
  store i16 %15, i16* %14, align 1
  %_23.i = icmp ugt i128 %n.031.i, 99999999
  br i1 %_23.i, label %bb10.i, label %bb9.loopexit.i

bb22.i:                                           ; preds = %bb9.i
  %16 = udiv i16 %n.0.lcssa.off0.i, 100
  %17 = mul i16 %16, 100
  %_6028.i.decomposed = sub i16 %n.0.lcssa.off0.i, %17
  %d14.i = shl nuw nsw i16 %_6028.i.decomposed, 1
  %18 = add i16 %curr.0.lcssa.i, -2
  %19 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d14.i
  %20 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %18
  %21 = bitcast i8* %19 to i16*
  %22 = bitcast i8* %20 to i16*
  %23 = load i16, i16* %21, align 1
  store i16 %23, i16* %22, align 1
  br label %bb26.i

bb26.i:                                           ; preds = %bb22.i, %bb9.i
  %n1.0.i = phi i16 [ %16, %bb22.i ], [ %n.0.lcssa.off0.i, %bb9.i ]
  %curr.1.i = phi i16 [ %18, %bb22.i ], [ %curr.0.lcssa.i, %bb9.i ]
  %_75.i = icmp slt i16 %n1.0.i, 10
  br i1 %_75.i, label %bb28.i, label %bb27.i

bb27.i:                                           ; preds = %bb26.i
  %d16.i = shl nuw nsw i16 %n1.0.i, 1
  %24 = add i16 %curr.1.i, -2
  %25 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d16.i
  %26 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %24
  %27 = bitcast i8* %25 to i16*
  %28 = bitcast i8* %26 to i16*
  %29 = load i16, i16* %27, align 1
  store i16 %29, i16* %28, align 1
  br label %_ZN4core3fmt3num8fmt_u12817h793ccd3d03f365e2E.exit

bb28.i:                                           ; preds = %bb26.i
  %30 = add i16 %curr.1.i, -1
  %_77.i = trunc i16 %n1.0.i to i8
  %31 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %30
  %32 = add nuw nsw i8 %_77.i, 48
  store i8 %32, i8* %31, align 1
  br label %_ZN4core3fmt3num8fmt_u12817h793ccd3d03f365e2E.exit

_ZN4core3fmt3num8fmt_u12817h793ccd3d03f365e2E.exit: ; preds = %bb27.i, %bb28.i
  %curr.2.i = phi i16 [ %30, %bb28.i ], [ %24, %bb27.i ]
  %33 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i, i16 0, i16 %curr.2.i
  %_98.i = sub i16 39, %curr.2.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i = bitcast i8* %33 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %34 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), i16 0, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i, i16 %_98.i)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 39, i8* nonnull %1)
  ret i1 %34
}

; core::fmt::num::exp_u128
; Function Attrs: uwtable
define internal fastcc zeroext i1 @_ZN4core3fmt3num8exp_u12817h09c03fd5691fe48eE(i128 %0, i1 zeroext %is_nonnegative, i1 zeroext %upper, %"fmt::Formatter"* nocapture align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %formatted = alloca %"num::flt2dec::Formatted", align 1
  %_152 = alloca [3 x %"num::flt2dec::Part"], align 1
  %exp_buf = alloca [3 x i8], align 1
  %buf = alloca [40 x i8], align 1
  %_13120 = urem i128 %0, 10
  %_12121 = icmp eq i128 %_13120, 0
  %_15122 = icmp ugt i128 %0, 9
  %or.cond123 = and i1 %_15122, %_12121
  br i1 %or.cond123, label %bb7, label %bb6

bb6:                                              ; preds = %bb7, %start
  %exponent2.0.lcssa = phi i16 [ 0, %start ], [ %6, %bb7 ]
  %n.0.lcssa = phi i128 [ %0, %start ], [ %5, %bb7 ]
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 9, i32 0
  %2 = load i8, i8* %1, align 1, !range !87, !alias.scope !3407
  %3 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 9, i32 1
  %4 = load i16, i16* %3, align 1, !alias.scope !3407
  %switch = icmp eq i8 %2, 0
  br i1 %switch, label %bb29, label %bb12.preheader

bb12.preheader:                                   ; preds = %bb6
  %_27116 = icmp ugt i128 %n.0.lcssa, 9
  br i1 %_27116, label %bb14, label %bb17

bb7:                                              ; preds = %start, %bb7
  %n.0125 = phi i128 [ %5, %bb7 ], [ %0, %start ]
  %exponent2.0124 = phi i16 [ %6, %bb7 ], [ 0, %start ]
  %5 = udiv i128 %n.0125, 10
  %6 = add i16 %exponent2.0124, 1
  %_13 = urem i128 %5, 10
  %_12 = icmp eq i128 %_13, 0
  %_15 = icmp ugt i128 %n.0125, 99
  %or.cond = and i1 %_15, %_12
  br i1 %or.cond, label %bb7, label %bb6

bb14:                                             ; preds = %bb12.preheader, %bb14
  %tmp.0118 = phi i128 [ %7, %bb14 ], [ %n.0.lcssa, %bb12.preheader ]
  %prec.0117 = phi i16 [ %8, %bb14 ], [ 0, %bb12.preheader ]
  %7 = udiv i128 %tmp.0118, 10
  %8 = add i16 %prec.0117, 1
  %_27 = icmp ugt i128 %tmp.0118, 99
  br i1 %_27, label %bb14, label %bb17

bb17:                                             ; preds = %bb14, %bb12.preheader
  %prec.0.lcssa = phi i16 [ 0, %bb12.preheader ], [ %8, %bb14 ]
  %9 = tail call addrspace(1) i16 @llvm.usub.sat.i16(i16 %4, i16 %prec.0.lcssa) #20
  %10 = tail call addrspace(1) i16 @llvm.usub.sat.i16(i16 %prec.0.lcssa, i16 %4) #20
  %11 = icmp ugt i16 %10, 1
  br i1 %11, label %bb23.preheader, label %bb21

bb23.preheader:                                   ; preds = %bb17
  %12 = add i16 %10, %exponent2.0.lcssa
  br label %bb23

bb21.thread148:                                   ; preds = %bb23
  %13 = add i16 %12, -1
  br label %bb25

bb21:                                             ; preds = %bb17
  %_46 = icmp ugt i16 %prec.0.lcssa, %4
  br i1 %_46, label %bb25, label %bb29

bb23:                                             ; preds = %bb23.preheader, %bb23
  %n.1113 = phi i128 [ %15, %bb23 ], [ %n.0.lcssa, %bb23.preheader ]
  %iter.sroa.0.0111 = phi i16 [ %14, %bb23 ], [ 1, %bb23.preheader ]
  %14 = add nuw i16 %iter.sroa.0.0111, 1
  %15 = udiv i128 %n.1113, 10
  %16 = icmp ult i16 %14, %10
  br i1 %16, label %bb23, label %bb21.thread148

bb25:                                             ; preds = %bb21, %bb21.thread148
  %n.1.lcssa156 = phi i128 [ %15, %bb21.thread148 ], [ %n.0.lcssa, %bb21 ]
  %exponent2.1.lcssa155 = phi i16 [ %13, %bb21.thread148 ], [ %exponent2.0.lcssa, %bb21 ]
  %17 = udiv i128 %n.1.lcssa156, 10
  %18 = mul i128 %17, 10
  %rem.decomposed = sub i128 %n.1.lcssa156, %18
  %19 = add i16 %exponent2.1.lcssa155, 1
  %_50 = icmp ugt i128 %rem.decomposed, 4
  %20 = zext i1 %_50 to i128
  %spec.select = add nuw nsw i128 %17, %20
  br label %bb29

bb29:                                             ; preds = %bb21, %bb6, %bb25
  %_20.sroa.0.0141147 = phi i16 [ %9, %bb21 ], [ %9, %bb25 ], [ 0, %bb6 ]
  %exponent2.2 = phi i16 [ %exponent2.0.lcssa, %bb21 ], [ %19, %bb25 ], [ %exponent2.0.lcssa, %bb6 ]
  %n.2 = phi i128 [ %n.0.lcssa, %bb21 ], [ %spec.select, %bb25 ], [ %n.0.lcssa, %bb6 ]
  %21 = getelementptr inbounds [40 x i8], [40 x i8]* %buf, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 40, i8* nonnull %21)
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(40) %21, i8 undef, i16 40, i1 false)
  %_70105 = icmp ugt i128 %n.2, 99
  %extract.t = trunc i128 %n.2 to i8
  %extract.t130 = trunc i128 %n.2 to i16
  br i1 %_70105, label %bb36, label %bb35

bb35.loopexit:                                    ; preds = %bb36
  %extract.t131 = trunc i128 %22 to i16
  %extract.t128 = trunc i128 %22 to i8
  br label %bb35

bb35:                                             ; preds = %bb35.loopexit, %bb29
  %curr.0.lcssa = phi i16 [ 40, %bb29 ], [ %24, %bb35.loopexit ]
  %exponent.0.lcssa = phi i16 [ %exponent2.2, %bb29 ], [ %30, %bb35.loopexit ]
  %n1.0.lcssa.off0 = phi i8 [ %extract.t, %bb29 ], [ %extract.t128, %bb35.loopexit ]
  %n1.0.lcssa.off0129 = phi i16 [ %extract.t130, %bb29 ], [ %extract.t131, %bb35.loopexit ]
  %_85 = icmp sgt i16 %n1.0.lcssa.off0129, 9
  br i1 %_85, label %bb41, label %bb44

bb36:                                             ; preds = %bb29, %bb36
  %n1.0108 = phi i128 [ %22, %bb36 ], [ %n.2, %bb29 ]
  %exponent.0107 = phi i16 [ %30, %bb36 ], [ %exponent2.2, %bb29 ]
  %curr.0106 = phi i16 [ %24, %bb36 ], [ 40, %bb29 ]
  %22 = udiv i128 %n1.0108, 100
  %23 = mul i128 %22, 100
  %_74.decomposed = sub i128 %n1.0108, %23
  %_73 = trunc i128 %_74.decomposed to i16
  %d1 = shl nuw nsw i16 %_73, 1
  %24 = add i16 %curr.0106, -2
  %25 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d1
  %26 = getelementptr inbounds [40 x i8], [40 x i8]* %buf, i16 0, i16 %24
  %27 = bitcast i8* %25 to i16*
  %28 = bitcast i8* %26 to i16*
  %29 = load i16, i16* %27, align 1
  store i16 %29, i16* %28, align 1
  %30 = add i16 %exponent.0107, 2
  %_70 = icmp ugt i128 %n1.0108, 9999
  br i1 %_70, label %bb36, label %bb35.loopexit

bb41:                                             ; preds = %bb35
  %31 = add i16 %curr.0.lcssa, -1
  %32 = udiv i8 %n1.0.lcssa.off0, 10
  %33 = mul i8 %32, 10
  %_87.decomposed = sub i8 %n1.0.lcssa.off0, %33
  %34 = getelementptr inbounds [40 x i8], [40 x i8]* %buf, i16 0, i16 %31
  %35 = or i8 %_87.decomposed, 48
  store i8 %35, i8* %34, align 1
  %36 = add i16 %exponent.0.lcssa, 1
  br label %bb44

bb44:                                             ; preds = %bb35, %bb41
  %curr.1 = phi i16 [ %31, %bb41 ], [ %curr.0.lcssa, %bb35 ]
  %n3.0.off0 = phi i8 [ %32, %bb41 ], [ %n1.0.lcssa.off0, %bb35 ]
  %exponent.1 = phi i16 [ %36, %bb41 ], [ %exponent.0.lcssa, %bb35 ]
  %_97 = icmp ne i16 %exponent.1, %exponent2.0.lcssa
  %_100 = icmp ne i16 %_20.sroa.0.0141147, 0
  %or.cond7 = or i1 %_100, %_97
  br i1 %or.cond7, label %bb50, label %bb52

bb50:                                             ; preds = %bb44
  %37 = add i16 %curr.1, -1
  %38 = getelementptr inbounds [40 x i8], [40 x i8]* %buf, i16 0, i16 %37
  store i8 46, i8* %38, align 1
  br label %bb52

bb52:                                             ; preds = %bb44, %bb50
  %curr.2 = phi i16 [ %37, %bb50 ], [ %curr.1, %bb44 ]
  %39 = add i16 %curr.2, -1
  %40 = getelementptr inbounds [40 x i8], [40 x i8]* %buf, i16 0, i16 %39
  %41 = add nuw i8 %n3.0.off0, 48
  store i8 %41, i8* %40, align 1
  %len6 = sub i16 41, %curr.2
  %42 = getelementptr inbounds [3 x i8], [3 x i8]* %exp_buf, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 3, i8* nonnull %42)
  %.93 = select i1 %upper, i8 69, i8 101
  %_134 = icmp slt i16 %exponent.1, 10
  call addrspace(1) void @llvm.memset.p0i8.i64(i8* nonnull align 1 dereferenceable(3) %42, i8 %.93, i64 3, i1 false)
  br i1 %_134, label %bb64, label %bb63

bb63:                                             ; preds = %bb52
  %off = shl nuw i16 %exponent.1, 1
  %43 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %off
  %44 = getelementptr inbounds [3 x i8], [3 x i8]* %exp_buf, i16 0, i16 1
  %45 = bitcast i8* %43 to i16*
  %46 = bitcast i8* %44 to i16*
  %47 = load i16, i16* %45, align 1
  store i16 %47, i16* %46, align 1
  br label %bb69

bb64:                                             ; preds = %bb52
  %_136 = trunc i16 %exponent.1 to i8
  %48 = getelementptr inbounds [3 x i8], [3 x i8]* %exp_buf, i16 0, i16 1
  %49 = add i8 %_136, 48
  store i8 %49, i8* %48, align 1
  br label %bb69

bb69:                                             ; preds = %bb63, %bb64
  %.sink169 = phi i16 [ 3, %bb63 ], [ 2, %bb64 ]
  %50 = getelementptr inbounds [3 x %"num::flt2dec::Part"], [3 x %"num::flt2dec::Part"]* %_152, i16 0, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 15, i8* nonnull %50)
  store i8 2, i8* %50, align 1
  %_153.sroa.4.0..sroa_idx = getelementptr inbounds [3 x %"num::flt2dec::Part"], [3 x %"num::flt2dec::Part"]* %_152, i16 0, i16 0, i32 2
  %51 = bitcast [4 x i8]* %_153.sroa.4.0..sroa_idx to i8**
  store i8* %40, i8** %51, align 1
  %_153.sroa.5.0..sroa_idx = getelementptr inbounds [3 x %"num::flt2dec::Part"], [3 x %"num::flt2dec::Part"]* %_152, i16 0, i16 0, i32 2, i16 2
  %_153.sroa.5.0..sroa_cast71 = bitcast i8* %_153.sroa.5.0..sroa_idx to i16*
  store i16 %len6, i16* %_153.sroa.5.0..sroa_cast71, align 1
  %_155.sroa.0.0..sroa_idx = getelementptr inbounds [3 x %"num::flt2dec::Part"], [3 x %"num::flt2dec::Part"]* %_152, i16 0, i16 1, i32 0, i16 0
  store i8 0, i8* %_155.sroa.0.0..sroa_idx, align 1
  %_155.sroa.4.0..sroa_idx73 = getelementptr inbounds [3 x %"num::flt2dec::Part"], [3 x %"num::flt2dec::Part"]* %_152, i16 0, i16 1, i32 2
  %_155.sroa.4.0..sroa_cast74 = bitcast [4 x i8]* %_155.sroa.4.0..sroa_idx73 to i16*
  store i16 %_20.sroa.0.0141147, i16* %_155.sroa.4.0..sroa_cast74, align 1
  %_157.sroa.0.0..sroa_idx = getelementptr inbounds [3 x %"num::flt2dec::Part"], [3 x %"num::flt2dec::Part"]* %_152, i16 0, i16 2, i32 0, i16 0
  store i8 2, i8* %_157.sroa.0.0..sroa_idx, align 1
  %_157.sroa.4.0..sroa_idx81 = getelementptr inbounds [3 x %"num::flt2dec::Part"], [3 x %"num::flt2dec::Part"]* %_152, i16 0, i16 2, i32 2
  %52 = bitcast [4 x i8]* %_157.sroa.4.0..sroa_idx81 to [3 x i8]**
  store [3 x i8]* %exp_buf, [3 x i8]** %52, align 1
  %_157.sroa.5.0..sroa_idx84 = getelementptr inbounds [3 x %"num::flt2dec::Part"], [3 x %"num::flt2dec::Part"]* %_152, i16 0, i16 2, i32 2, i16 2
  %_157.sroa.5.0..sroa_cast85 = bitcast i8* %_157.sroa.5.0..sroa_idx84 to i16*
  store i16 %.sink169, i16* %_157.sroa.5.0..sroa_cast85, align 1
  br i1 %is_nonnegative, label %bb71, label %bb77

bb71:                                             ; preds = %bb69
  %53 = bitcast %"fmt::Formatter"* %f to i32*
  %_3.i = load i32, i32* %53, align 1, !alias.scope !3410
  %_2.i = and i32 %_3.i, 1
  %54 = icmp eq i32 %_2.i, 0
  %.94 = select i1 %54, [0 x i8]* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), [0 x i8]* bitcast (<{ [1 x i8] }>* @alloc19124 to [0 x i8]*)
  %55 = trunc i32 %_2.i to i16
  br label %bb77

bb77:                                             ; preds = %bb69, %bb71
  %sign.sroa.0.0 = phi [0 x i8]* [ %.94, %bb71 ], [ bitcast (<{ [1 x i8] }>* @alloc19123 to [0 x i8]*), %bb69 ]
  %sign.sroa.5.0 = phi i16 [ %55, %bb71 ], [ 1, %bb69 ]
  %56 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %56)
  %57 = bitcast %"num::flt2dec::Formatted"* %formatted to [0 x i8]**
  store [0 x i8]* %sign.sroa.0.0, [0 x i8]** %57, align 1
  %58 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 1, i32 1
  store i16 %sign.sroa.5.0, i16* %58, align 1
  %59 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3
  %60 = bitcast { [0 x %"num::flt2dec::Part"]*, i16 }* %59 to [3 x %"num::flt2dec::Part"]**
  store [3 x %"num::flt2dec::Part"]* %_152, [3 x %"num::flt2dec::Part"]** %60, align 1
  %61 = getelementptr inbounds %"num::flt2dec::Formatted", %"num::flt2dec::Formatted"* %formatted, i16 0, i32 3, i32 1
  store i16 3, i16* %61, align 1
; call core::fmt::Formatter::pad_formatted_parts
  %62 = call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter19pad_formatted_parts17hd831476560d54163E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, %"num::flt2dec::Formatted"* noalias nonnull readonly align 1 dereferenceable(8) %formatted)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 8, i8* nonnull %56)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 15, i8* nonnull %50)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 3, i8* nonnull %42)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 40, i8* nonnull %21)
  ret i1 %62
}

; core::fmt::num::<impl core::fmt::LowerExp for i128>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num54_$LT$impl$u20$core..fmt..LowerExp$u20$for$u20$i128$GT$3fmt17he4e4f0925480fa50E"(i128* noalias nocapture readonly align 1 dereferenceable(16) %self, %"fmt::Formatter"* nocapture align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_4 = load i128, i128* %self, align 1
  %is_nonnegative = icmp sgt i128 %_4, -1
  %0 = sub i128 0, %_4
  %n.0 = select i1 %is_nonnegative, i128 %_4, i128 %0
; call core::fmt::num::exp_u128
  %1 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt3num8exp_u12817h09c03fd5691fe48eE(i128 %n.0, i1 zeroext %is_nonnegative, i1 zeroext false, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %1
}

; core::fmt::num::<impl core::fmt::LowerExp for u128>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num54_$LT$impl$u20$core..fmt..LowerExp$u20$for$u20$u128$GT$3fmt17h6193cb5a8ee14506E"(i128* noalias nocapture readonly align 1 dereferenceable(16) %self, %"fmt::Formatter"* nocapture align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %0 = load i128, i128* %self, align 1, !alias.scope !3413
; call core::fmt::num::exp_u128
  %1 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt3num8exp_u12817h09c03fd5691fe48eE(i128 %0, i1 zeroext true, i1 zeroext false, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %1
}

; core::fmt::num::<impl core::fmt::UpperExp for i128>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num54_$LT$impl$u20$core..fmt..UpperExp$u20$for$u20$i128$GT$3fmt17h3c4a6553fbfbad37E"(i128* noalias nocapture readonly align 1 dereferenceable(16) %self, %"fmt::Formatter"* nocapture align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_4 = load i128, i128* %self, align 1
  %is_nonnegative = icmp sgt i128 %_4, -1
  %0 = sub i128 0, %_4
  %n.0 = select i1 %is_nonnegative, i128 %_4, i128 %0
; call core::fmt::num::exp_u128
  %1 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt3num8exp_u12817h09c03fd5691fe48eE(i128 %n.0, i1 zeroext %is_nonnegative, i1 zeroext true, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %1
}

; core::fmt::num::<impl core::fmt::UpperExp for u128>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN4core3fmt3num54_$LT$impl$u20$core..fmt..UpperExp$u20$for$u20$u128$GT$3fmt17h78cd08bee56bcd7cE"(i128* noalias nocapture readonly align 1 dereferenceable(16) %self, %"fmt::Formatter"* nocapture align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %0 = load i128, i128* %self, align 1, !alias.scope !3416
; call core::fmt::num::exp_u128
  %1 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt3num8exp_u12817h09c03fd5691fe48eE(i128 %0, i1 zeroext true, i1 zeroext true, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %1
}

; <core::fmt::Alignment as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN57_$LT$core..fmt..Alignment$u20$as$u20$core..fmt..Debug$GT$3fmt17ha66a03564a891e33E"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = load i8, i8* %self, align 1, !range !564
  %trunc = trunc i8 %0 to i2
  switch i2 %trunc, label %bb2 [
    i2 0, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30
    i2 1, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit57
    i2 -2, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit
  ]

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !3419, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !3419, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !3419, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc19126 to [0 x i8]*), i16 6), !noalias !3428
  br label %bb11

bb2:                                              ; preds = %start
  unreachable

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30: ; preds = %start
  %7 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i4 = load {}*, {}** %7, align 1, !noalias !3429, !nonnull !568
  %8 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %9 = bitcast [3 x i16]** %8 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %9, align 1, !noalias !3429, !nonnull !568
  %10 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i5, i16 3
  %11 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %10, align 1, !invariant.load !568, !noalias !3429, !nonnull !568
  %12 = tail call zeroext addrspace(1) i1 %11({}* nonnull align 1 %_3.0.i.i.i4, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19128 to [0 x i8]*), i16 4), !noalias !3438
  br label %bb11

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit57: ; preds = %start
  %13 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i31 = load {}*, {}** %13, align 1, !noalias !3439, !nonnull !568
  %14 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %15 = bitcast [3 x i16]** %14 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i32 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %15, align 1, !noalias !3439, !nonnull !568
  %16 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i32, i16 3
  %17 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %16, align 1, !invariant.load !568, !noalias !3439, !nonnull !568
  %18 = tail call zeroext addrspace(1) i1 %17({}* nonnull align 1 %_3.0.i.i.i31, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19127 to [0 x i8]*), i16 5), !noalias !3448
  br label %bb11

bb11:                                             ; preds = %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit57, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit
  %.0.in = phi i1 [ %6, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit ], [ %18, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit57 ], [ %12, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30 ]
  ret i1 %.0.in
}

; <core::fmt::Error as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN53_$LT$core..fmt..Error$u20$as$u20$core..fmt..Debug$GT$3fmt17h6bdaf6acae307526E"(%"fmt::Error"* noalias nocapture nonnull readonly align 1 %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit:
  %0 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %0, align 1, !noalias !3449, !nonnull !568
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %2 = bitcast [3 x i16]** %1 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %2, align 1, !noalias !3449, !nonnull !568
  %3 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %4 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %3, align 1, !invariant.load !568, !noalias !3449, !nonnull !568
  %5 = tail call zeroext addrspace(1) i1 %4({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19129 to [0 x i8]*), i16 5), !noalias !3458
  ret i1 %5
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h00488a9b328e83d3E"(i16** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_4.i = alloca i16, align 1
  %_4 = load i16*, i16** %self, align 1, !nonnull !568
  %_4.val = load i16, i16* %_4, align 1
  %0 = bitcast i16* %_4.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %0)
  store i16 %_4.val, i16* %_4.i, align 1
; call core::fmt::num::<impl core::fmt::Debug for usize>::fmt
  %1 = call zeroext addrspace(1) i1 @"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..Debug$u20$for$u20$usize$GT$3fmt17h5b03f6e1e4826f97E"(i16* noalias nonnull readonly align 1 dereferenceable(2) %_4.i, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %0)
  ret i1 %1
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h04e6f2a75d864e2aE"(i8*** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_21.i = alloca %"fmt::Arguments"**, align 1
  %debug_trait_builder1.i = alloca %"fmt::builders::DebugTuple", align 1
  %_4 = load i8**, i8*** %self, align 1, !nonnull !568
  %0 = bitcast i8** %_4 to {}**
  %1 = load {}*, {}** %0, align 1, !alias.scope !3459
  %2 = icmp eq {}* %1, null
  br i1 %2, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i, label %bb1.i

bb1.i:                                            ; preds = %start
  %3 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %3), !noalias !3459
  %4 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %4, align 1, !noalias !3462, !nonnull !568
  %5 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %6 = bitcast [3 x i16]** %5 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %6, align 1, !noalias !3462, !nonnull !568
  %7 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %8 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %7, align 1, !invariant.load !568, !noalias !3462, !nonnull !568
  %9 = tail call zeroext addrspace(1) i1 %8({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19071 to [0 x i8]*), i16 4), !noalias !3471
  %10 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder1.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %10, align 1, !alias.scope !3472, !noalias !3473
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 3
  %12 = zext i1 %9 to i8
  store i8 %12, i8* %11, align 1, !alias.scope !3472, !noalias !3473
  %13 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 5
  store i16 0, i16* %13, align 1, !alias.scope !3472, !noalias !3473
  %14 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 7
  store i8 0, i8* %14, align 1, !alias.scope !3472, !noalias !3473
  %15 = bitcast %"fmt::Arguments"*** %_21.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15), !noalias !3459
  %16 = bitcast %"fmt::Arguments"*** %_21.i to i8***
  store i8** %_4, i8*** %16, align 1, !noalias !3459
  %_18.0.i = bitcast %"fmt::Arguments"*** %_21.i to {}*
; call core::fmt::builders::DebugTuple::field
  %_16.i = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder1.i, {}* nonnull align 1 %_18.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"fmt::Arguments"***) addrspace(1)*, i16, i16, i1 (%"fmt::Arguments"***, %"fmt::Formatter"*) addrspace(1)* }* @vtable.11 to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15), !noalias !3459
  %_3.i.i = load i16, i16* %13, align 1, !noalias !3459
  %_2.i.i = icmp eq i16 %_3.i.i, 0
  %.pre.i.i = load i8, i8* %11, align 1, !range !87, !noalias !3459
  br i1 %_2.i.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i, label %bb2.i.i

bb2.i.i:                                          ; preds = %bb1.i
  %_5.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_5.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %_5.i.i.i.i = icmp ne i16 %_3.i.i, 1
  %17 = load i8, i8* %14, align 1, !noalias !3459
  %_7.i.i.i.i = icmp eq i8 %17, 0
  %or.cond.i = or i1 %_5.i.i.i.i, %_7.i.i.i.i
  br i1 %or.cond.i, label %bb20.i.i.i.i, label %bb3.i.i.i.i

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %18 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder1.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %18, align 1, !alias.scope !3474, !noalias !3459, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !3477, !noalias !3474
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %19 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %20 = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  br i1 %19, label %bb11.i.i.i.i, label %bb20.i.i.i.i

bb11.i.i.i.i:                                     ; preds = %bb3.i.i.i.i
  %21 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %20, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i.i = load {}*, {}** %21, align 1, !noalias !3480, !nonnull !568
  %22 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %20, i16 0, i32 11, i32 1
  %23 = bitcast [3 x i16]** %22 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %23, align 1, !noalias !3480, !nonnull !568
  %24 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i.i, i16 3
  %25 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %24, align 1, !invariant.load !568, !noalias !3480, !nonnull !568
  %26 = call zeroext addrspace(1) i1 %25({}* nonnull align 1 %_3.0.i2.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %26, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i", label %bb20.i.i.i.i

bb20.i.i.i.i:                                     ; preds = %bb11.i.i.i.i, %bb3.i.i.i.i, %bb3.i.i.i
  %_21.i.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %10, align 1, !noalias !3459, !nonnull !568
  %27 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %27, align 1, !noalias !3483, !nonnull !568
  %28 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i.i, i16 0, i32 11, i32 1
  %29 = bitcast [3 x i16]** %28 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %29, align 1, !noalias !3483, !nonnull !568
  %30 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %31 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %30, align 1, !invariant.load !568, !noalias !3483, !nonnull !568
  %32 = call zeroext addrspace(1) i1 %31({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i.i = zext i1 %32 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i": ; preds = %bb20.i.i.i.i, %bb11.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i8 [ 1, %bb2.i.i ], [ %phitmp.i.i, %bb20.i.i.i.i ], [ 1, %bb11.i.i.i.i ]
  store i8 %.0.i.i.i, i8* %11, align 1, !noalias !3459
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i: ; preds = %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i", %bb1.i
  %33 = phi i8 [ %.0.i.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i" ], [ %.pre.i.i, %bb1.i ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %3), !noalias !3459
  br label %"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h24e2be19e2f9ea86E.exit"

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i: ; preds = %start
  %34 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i4.i = load {}*, {}** %34, align 1, !noalias !3486, !nonnull !568
  %35 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %36 = bitcast [3 x i16]** %35 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i5.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %36, align 1, !noalias !3486, !nonnull !568
  %37 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i5.i, i16 3
  %38 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %37, align 1, !invariant.load !568, !noalias !3495, !nonnull !568
  %39 = tail call zeroext addrspace(1) i1 %38({}* nonnull align 1 %_3.0.i.i.i4.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19072 to [0 x i8]*), i16 4), !noalias !3496
  %40 = zext i1 %39 to i8
  br label %"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h24e2be19e2f9ea86E.exit"

"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h24e2be19e2f9ea86E.exit": ; preds = %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i
  %.0.in.in.i = phi i8 [ %40, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i ], [ %33, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i ]
  %.0.in.i = icmp ne i8 %.0.in.in.i, 0
  ret i1 %.0.in.i
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h050a83c689ffae1bE"(%"option::Option<char::EscapeDefault>"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_21.i = alloca %"char::EscapeDefault"*, align 1
  %debug_trait_builder1.i = alloca %"fmt::builders::DebugTuple", align 1
  %_4 = load %"option::Option<char::EscapeDefault>"*, %"option::Option<char::EscapeDefault>"** %self, align 1, !nonnull !568
  %0 = getelementptr inbounds %"option::Option<char::EscapeDefault>", %"option::Option<char::EscapeDefault>"* %_4, i16 0, i32 0, i16 0
  %1 = load i8, i8* %0, align 1, !range !632, !alias.scope !3497
  %2 = icmp eq i8 %1, 4
  br i1 %2, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i, label %bb1.i

bb1.i:                                            ; preds = %start
  %3 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %3), !noalias !3497
  %4 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %4, align 1, !noalias !3500, !nonnull !568
  %5 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %6 = bitcast [3 x i16]** %5 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %6, align 1, !noalias !3500, !nonnull !568
  %7 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %8 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %7, align 1, !invariant.load !568, !noalias !3500, !nonnull !568
  %9 = tail call zeroext addrspace(1) i1 %8({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19071 to [0 x i8]*), i16 4), !noalias !3509
  %10 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder1.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %10, align 1, !alias.scope !3510, !noalias !3511
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 3
  %12 = zext i1 %9 to i8
  store i8 %12, i8* %11, align 1, !alias.scope !3510, !noalias !3511
  %13 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 5
  store i16 0, i16* %13, align 1, !alias.scope !3510, !noalias !3511
  %14 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 7
  store i8 0, i8* %14, align 1, !alias.scope !3510, !noalias !3511
  %15 = bitcast %"char::EscapeDefault"** %_21.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15), !noalias !3497
  %16 = bitcast %"char::EscapeDefault"** %_21.i to %"option::Option<char::EscapeDefault>"**
  store %"option::Option<char::EscapeDefault>"* %_4, %"option::Option<char::EscapeDefault>"** %16, align 1, !noalias !3497
  %_18.0.i = bitcast %"char::EscapeDefault"** %_21.i to {}*
; call core::fmt::builders::DebugTuple::field
  %_16.i = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder1.i, {}* nonnull align 1 %_18.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"char::EscapeDefault"**) addrspace(1)*, i16, i16, i1 (%"char::EscapeDefault"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.J to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15), !noalias !3497
  %_3.i.i = load i16, i16* %13, align 1, !noalias !3497
  %_2.i.i = icmp eq i16 %_3.i.i, 0
  %.pre.i.i = load i8, i8* %11, align 1, !range !87, !noalias !3497
  br i1 %_2.i.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i, label %bb2.i.i

bb2.i.i:                                          ; preds = %bb1.i
  %_5.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_5.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %_5.i.i.i.i = icmp ne i16 %_3.i.i, 1
  %17 = load i8, i8* %14, align 1, !noalias !3497
  %_7.i.i.i.i = icmp eq i8 %17, 0
  %or.cond.i = or i1 %_5.i.i.i.i, %_7.i.i.i.i
  br i1 %or.cond.i, label %bb20.i.i.i.i, label %bb3.i.i.i.i

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %18 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder1.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %18, align 1, !alias.scope !3512, !noalias !3497, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !3515, !noalias !3512
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %19 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %20 = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  br i1 %19, label %bb11.i.i.i.i, label %bb20.i.i.i.i

bb11.i.i.i.i:                                     ; preds = %bb3.i.i.i.i
  %21 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %20, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i.i = load {}*, {}** %21, align 1, !noalias !3518, !nonnull !568
  %22 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %20, i16 0, i32 11, i32 1
  %23 = bitcast [3 x i16]** %22 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %23, align 1, !noalias !3518, !nonnull !568
  %24 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i.i, i16 3
  %25 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %24, align 1, !invariant.load !568, !noalias !3518, !nonnull !568
  %26 = call zeroext addrspace(1) i1 %25({}* nonnull align 1 %_3.0.i2.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %26, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i", label %bb20.i.i.i.i

bb20.i.i.i.i:                                     ; preds = %bb11.i.i.i.i, %bb3.i.i.i.i, %bb3.i.i.i
  %_21.i.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %10, align 1, !noalias !3497, !nonnull !568
  %27 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %27, align 1, !noalias !3521, !nonnull !568
  %28 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i.i, i16 0, i32 11, i32 1
  %29 = bitcast [3 x i16]** %28 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %29, align 1, !noalias !3521, !nonnull !568
  %30 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %31 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %30, align 1, !invariant.load !568, !noalias !3521, !nonnull !568
  %32 = call zeroext addrspace(1) i1 %31({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i.i = zext i1 %32 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i": ; preds = %bb20.i.i.i.i, %bb11.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i8 [ 1, %bb2.i.i ], [ %phitmp.i.i, %bb20.i.i.i.i ], [ 1, %bb11.i.i.i.i ]
  store i8 %.0.i.i.i, i8* %11, align 1, !noalias !3497
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i: ; preds = %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i", %bb1.i
  %33 = phi i8 [ %.0.i.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i" ], [ %.pre.i.i, %bb1.i ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %3), !noalias !3497
  br label %"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h43af4211205e4bc8E.exit"

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i: ; preds = %start
  %34 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i4.i = load {}*, {}** %34, align 1, !noalias !3524, !nonnull !568
  %35 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %36 = bitcast [3 x i16]** %35 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i5.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %36, align 1, !noalias !3524, !nonnull !568
  %37 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i5.i, i16 3
  %38 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %37, align 1, !invariant.load !568, !noalias !3533, !nonnull !568
  %39 = tail call zeroext addrspace(1) i1 %38({}* nonnull align 1 %_3.0.i.i.i4.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19072 to [0 x i8]*), i16 4), !noalias !3534
  %40 = zext i1 %39 to i8
  br label %"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h43af4211205e4bc8E.exit"

"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h43af4211205e4bc8E.exit": ; preds = %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i
  %.0.in.in.i = phi i8 [ %40, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i ], [ %33, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i ]
  %.0.in.i = icmp ne i8 %.0.in.in.i, 0
  ret i1 %.0.in.i
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h05a188b30092c262E"(i64** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i.i.i = alloca [128 x i8], align 1
  %_4 = load i64*, i64** %self, align 1, !nonnull !568
  %0 = bitcast %"fmt::Formatter"* %f to i32*
  %_3.i.i = load i32, i32* %0, align 1, !alias.scope !3535, !noalias !3538
  %_2.i.i = and i32 %_3.i.i, 16
  %1 = icmp eq i32 %_2.i.i, 0
  br i1 %1, label %bb2.i, label %bb3.i

bb2.i:                                            ; preds = %start
  %_2.i2.i = and i32 %_3.i.i, 32
  %2 = icmp eq i32 %_2.i2.i, 0
  br i1 %2, label %bb6.i, label %bb7.i

bb3.i:                                            ; preds = %start
  %_5.i4.i = load i64, i64* %_4, align 1, !alias.scope !3541
  %3 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %3), !noalias !3541
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %3, i8 undef, i16 128, i1 false), !noalias !3541
  %4 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 128
  br label %bb11.i.i9.i

bb11.i.i9.i:                                      ; preds = %bb15.i.i12.i, %bb3.i
  %iter.sroa.4.0.i.i5.i = phi i8* [ %4, %bb3.i ], [ %5, %bb15.i.i12.i ]
  %x.0.i.i6.i = phi i64 [ %_5.i4.i, %bb3.i ], [ %6, %bb15.i.i12.i ]
  %curr.0.i.i7.i = phi i16 [ 128, %bb3.i ], [ %11, %bb15.i.i12.i ]
  %_13.i.i20.i.i8.i = icmp eq i8* %3, %iter.sroa.4.0.i.i5.i
  br i1 %_13.i.i20.i.i8.i, label %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i64$GT$3fmt17he773bf19e2d9299eE.exit.i", label %bb15.i.i12.i

bb15.i.i12.i:                                     ; preds = %bb11.i.i9.i
  %5 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i.i5.i, i16 -1
  %6 = lshr i64 %x.0.i.i6.i, 4
  %7 = trunc i64 %x.0.i.i6.i to i8
  %8 = and i8 %7, 15
  %_5.i9.i.i10.i = icmp ult i8 %8, 10
  %9 = or i8 %8, 48
  %10 = add nuw nsw i8 %8, 87
  %.0.i15.i.i11.i = select i1 %_5.i9.i.i10.i, i8 %9, i8 %10
  store i8 %.0.i15.i.i11.i, i8* %5, align 1, !noalias !3541
  %11 = add nsw i16 %curr.0.i.i7.i, -1
  %12 = icmp eq i64 %6, 0
  br i1 %12, label %bb43.i.i14.i, label %bb11.i.i9.i

bb43.i.i14.i:                                     ; preds = %bb15.i.i12.i
  %_3.i.i.i.i.i13.i = icmp ugt i16 %11, 128
  br i1 %_3.i.i.i.i.i13.i, label %bb2.i.i.i.i.i15.i, label %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i64$GT$3fmt17he773bf19e2d9299eE.exit.i"

bb2.i.i.i.i.i15.i:                                ; preds = %bb43.i.i14.i
; call core::slice::slice_index_order_fail
  call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %11, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*)), !noalias !3541
  unreachable

"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i64$GT$3fmt17he773bf19e2d9299eE.exit.i": ; preds = %bb11.i.i9.i, %bb43.i.i14.i
  %curr.446.i.i16.i = phi i16 [ %11, %bb43.i.i14.i ], [ 0, %bb11.i.i9.i ]
  %13 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 %curr.446.i.i16.i
  %_7.i.i.i.i.i.i17.i = sub nuw nsw i16 128, %curr.446.i.i16.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i18.i = bitcast i8* %13 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %14 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i18.i, i16 %_7.i.i.i.i.i.i17.i), !noalias !3541
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %3), !noalias !3541
  br label %"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i64$GT$3fmt17h2eed73db067b8bfdE.exit"

bb6.i:                                            ; preds = %bb2.i
; call core::fmt::num::imp::<impl core::fmt::Display for i64>::fmt
  %15 = tail call zeroext addrspace(1) i1 @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$i64$GT$3fmt17h9489bbcffd672eb4E"(i64* noalias nonnull readonly align 1 dereferenceable(8) %_4, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  br label %"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i64$GT$3fmt17h2eed73db067b8bfdE.exit"

bb7.i:                                            ; preds = %bb2.i
  %_5.i.i = load i64, i64* %_4, align 1, !alias.scope !3544
  %16 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %16), !noalias !3544
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %16, i8 undef, i16 128, i1 false), !noalias !3544
  %17 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 128
  br label %bb11.i.i.i

bb11.i.i.i:                                       ; preds = %bb15.i.i.i, %bb7.i
  %iter.sroa.4.0.i.i.i = phi i8* [ %17, %bb7.i ], [ %18, %bb15.i.i.i ]
  %x.0.i.i.i = phi i64 [ %_5.i.i, %bb7.i ], [ %19, %bb15.i.i.i ]
  %curr.0.i.i.i = phi i16 [ 128, %bb7.i ], [ %24, %bb15.i.i.i ]
  %_13.i.i20.i.i.i = icmp eq i8* %16, %iter.sroa.4.0.i.i.i
  br i1 %_13.i.i20.i.i.i, label %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i64$GT$3fmt17hd747966a00df068dE.exit.i", label %bb15.i.i.i

bb15.i.i.i:                                       ; preds = %bb11.i.i.i
  %18 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i.i.i, i16 -1
  %19 = lshr i64 %x.0.i.i.i, 4
  %20 = trunc i64 %x.0.i.i.i to i8
  %21 = and i8 %20, 15
  %_5.i9.i.i.i = icmp ult i8 %21, 10
  %22 = or i8 %21, 48
  %23 = add nuw nsw i8 %21, 55
  %.0.i15.i.i.i = select i1 %_5.i9.i.i.i, i8 %22, i8 %23
  store i8 %.0.i15.i.i.i, i8* %18, align 1, !noalias !3544
  %24 = add nsw i16 %curr.0.i.i.i, -1
  %25 = icmp eq i64 %19, 0
  br i1 %25, label %bb43.i.i.i, label %bb11.i.i.i

bb43.i.i.i:                                       ; preds = %bb15.i.i.i
  %_3.i.i.i.i.i.i = icmp ugt i16 %24, 128
  br i1 %_3.i.i.i.i.i.i, label %bb2.i.i.i.i.i.i, label %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i64$GT$3fmt17hd747966a00df068dE.exit.i"

bb2.i.i.i.i.i.i:                                  ; preds = %bb43.i.i.i
; call core::slice::slice_index_order_fail
  call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %24, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*)), !noalias !3544
  unreachable

"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i64$GT$3fmt17hd747966a00df068dE.exit.i": ; preds = %bb11.i.i.i, %bb43.i.i.i
  %curr.446.i.i.i = phi i16 [ %24, %bb43.i.i.i ], [ 0, %bb11.i.i.i ]
  %26 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 %curr.446.i.i.i
  %_7.i.i.i.i.i.i.i = sub nuw nsw i16 128, %curr.446.i.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i = bitcast i8* %26 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %27 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i, i16 %_7.i.i.i.i.i.i.i), !noalias !3544
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %16), !noalias !3544
  br label %"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i64$GT$3fmt17h2eed73db067b8bfdE.exit"

"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i64$GT$3fmt17h2eed73db067b8bfdE.exit": ; preds = %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i64$GT$3fmt17he773bf19e2d9299eE.exit.i", %bb6.i, %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i64$GT$3fmt17hd747966a00df068dE.exit.i"
  %.0.in.i = phi i1 [ %14, %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i64$GT$3fmt17he773bf19e2d9299eE.exit.i" ], [ %27, %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i64$GT$3fmt17hd747966a00df068dE.exit.i" ], [ %15, %bb6.i ]
  ret i1 %.0.in.i
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h0c82b523e8a69ae6E"(i8** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_4 = load i8*, i8** %self, align 1, !nonnull !568
  %0 = load i8, i8* %_4, align 1, !range !87, !alias.scope !3547
  %switch.i = icmp eq i8 %0, 1
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %1, align 1, !noalias !3547, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !3547, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !3547, !nonnull !568
  br i1 %switch.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i: ; preds = %start
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [7 x i8] }>* @alloc18941 to [0 x i8]*), i16 7), !noalias !3550
  br label %"_ZN71_$LT$core..num..dec2flt..FloatErrorKind$u20$as$u20$core..fmt..Debug$GT$3fmt17hec307482de6e6a8cE.exit"

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i: ; preds = %start
  %7 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19178 to [0 x i8]*), i16 5), !noalias !3555
  br label %"_ZN71_$LT$core..num..dec2flt..FloatErrorKind$u20$as$u20$core..fmt..Debug$GT$3fmt17hec307482de6e6a8cE.exit"

"_ZN71_$LT$core..num..dec2flt..FloatErrorKind$u20$as$u20$core..fmt..Debug$GT$3fmt17hec307482de6e6a8cE.exit": ; preds = %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i
  %.0.in.i = phi i1 [ %7, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i ], [ %6, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i ]
  ret i1 %.0.in.i
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h1371892eb709759bE"(%"iter::adapters::Map<str::SplitTerminator<char>, str::LinesAnyMap>"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_6.i = alloca %"fmt::builders::DebugStruct", align 1
  %0 = bitcast %"iter::adapters::Map<str::SplitTerminator<char>, str::LinesAnyMap>"** %self to {}**
  %_41 = load {}*, {}** %0, align 1, !nonnull !568
  %1 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_6.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %1), !noalias !3560
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %2, align 1, !noalias !3563, !nonnull !568
  %3 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %4 = bitcast [3 x i16]** %3 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %4, align 1, !noalias !3563, !nonnull !568
  %5 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %6 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %5, align 1, !invariant.load !568, !noalias !3563, !nonnull !568
  %7 = tail call zeroext addrspace(1) i1 %6({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [3 x i8] }>* @alloc18600 to [0 x i8]*), i16 3), !noalias !3572
  %8 = bitcast %"fmt::builders::DebugStruct"* %_6.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %8, align 1, !alias.scope !3573, !noalias !3574
  %9 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_6.i, i16 0, i32 3
  %10 = zext i1 %7 to i8
  store i8 %10, i8* %9, align 1, !alias.scope !3573, !noalias !3574
  %11 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_6.i, i16 0, i32 5
  store i8 0, i8* %11, align 1, !alias.scope !3573, !noalias !3574
; call core::fmt::builders::DebugStruct::field
  %_4.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %_6.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19203 to [0 x i8]*), i16 4, {}* nonnull align 1 %_41, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"str::SplitTerminator<char>"*) addrspace(1)*, i16, i16, i1 (%"str::SplitTerminator<char>"*, %"fmt::Formatter"*) addrspace(1)* }* @vtable.9 to [3 x i16]*))
  %12 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_4.i, i16 0, i32 5
  %13 = load i8, i8* %12, align 1, !range !87
  %_2.i.i = icmp eq i8 %13, 0
  %.phi.trans.insert.i.i = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_4.i, i16 0, i32 3
  %.pre.i.i = load i8, i8* %.phi.trans.insert.i.i, align 1, !range !87
  br i1 %_2.i.i, label %"_ZN75_$LT$core..iter..adapters..Map$LT$I$C$F$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h97978796004150b5E.exit", label %bb2.i.i

bb2.i.i:                                          ; preds = %start
  %_4.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_4.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %14 = bitcast %"fmt::builders::DebugStruct"* %_4.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %14, align 1, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !3575, !noalias !3578
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %15 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %_5.cast.i.i.i.i = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %16, align 1, !nonnull !568
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 1
  %18 = bitcast [3 x i16]** %17 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %20 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %19, align 1, !invariant.load !568, !nonnull !568
  br i1 %15, label %bb2.i.i.i.i, label %bb3.i.i.i.i

bb2.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %21 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %22 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i": ; preds = %bb3.i.i.i.i, %bb2.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i1 [ true, %bb2.i.i ], [ %22, %bb3.i.i.i.i ], [ %21, %bb2.i.i.i.i ]
  %23 = zext i1 %.0.i.i.i to i8
  store i8 %23, i8* %.phi.trans.insert.i.i, align 1
  br label %"_ZN75_$LT$core..iter..adapters..Map$LT$I$C$F$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h97978796004150b5E.exit"

"_ZN75_$LT$core..iter..adapters..Map$LT$I$C$F$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h97978796004150b5E.exit": ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"
  %24 = phi i8 [ %23, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i" ], [ %.pre.i.i, %start ]
  %25 = icmp ne i8 %24, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %1), !noalias !3560
  ret i1 %25
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h13ec643071344407E"(double** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* nocapture align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_4 = load double*, double** %self, align 1, !nonnull !568
  %self.val.i = load double, double* %_4, align 1, !alias.scope !3581
  %0 = bitcast %"fmt::Formatter"* %f to i32*
  %_3.i.i.i = load i32, i32* %0, align 1, !alias.scope !3584, !noalias !3581
  %_2.i.i.i = and i32 %_3.i.i.i, 1
  %1 = icmp eq i32 %_2.i.i.i, 0
  %sign.0.i.i = select i1 %1, i8 1, i8 3
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 9, i32 0
  %3 = load i8, i8* %2, align 1, !range !87, !noalias !3581
  %4 = icmp eq i8 %3, 0
  br i1 %4, label %bb9.i.i, label %bb10.i.i

bb9.i.i:                                          ; preds = %start
; call core::fmt::float::float_to_decimal_common_shortest
  %5 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt5float32float_to_decimal_common_shortest17h7feefefa083ebf6eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, double %self.val.i, i8 %sign.0.i.i, i16 1), !noalias !3581
  br label %"_ZN4core3fmt5float50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$f64$GT$3fmt17h4fb123d93cfd2ed3E.exit"

bb10.i.i:                                         ; preds = %start
  %6 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 9, i32 1
  %precision.i.i = load i16, i16* %6, align 1, !noalias !3581
; call core::fmt::float::float_to_decimal_common_exact
  %7 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt5float29float_to_decimal_common_exact17h7149c4019af45629E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, double %self.val.i, i8 %sign.0.i.i, i16 %precision.i.i), !noalias !3581
  br label %"_ZN4core3fmt5float50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$f64$GT$3fmt17h4fb123d93cfd2ed3E.exit"

"_ZN4core3fmt5float50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$f64$GT$3fmt17h4fb123d93cfd2ed3E.exit": ; preds = %bb9.i.i, %bb10.i.i
  %.0.in.i.i = phi i1 [ %7, %bb10.i.i ], [ %5, %bb9.i.i ]
  ret i1 %.0.in.i.i
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h18be12700c6d2634E"(%"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeUnicode, str::CharEscapeUnicode>"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_6.i = alloca %"fmt::builders::DebugStruct", align 1
  %0 = bitcast %"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeUnicode, str::CharEscapeUnicode>"** %self to {}**
  %_41 = load {}*, {}** %0, align 1, !nonnull !568
  %1 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_6.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %1), !noalias !3587
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %2, align 1, !noalias !3590, !nonnull !568
  %3 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %4 = bitcast [3 x i16]** %3 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %4, align 1, !noalias !3590, !nonnull !568
  %5 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %6 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %5, align 1, !invariant.load !568, !noalias !3590, !nonnull !568
  %7 = tail call zeroext addrspace(1) i1 %6({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [7 x i8] }>* @alloc18588 to [0 x i8]*), i16 7), !noalias !3599
  %8 = bitcast %"fmt::builders::DebugStruct"* %_6.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %8, align 1, !alias.scope !3600, !noalias !3601
  %9 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_6.i, i16 0, i32 3
  %10 = zext i1 %7 to i8
  store i8 %10, i8* %9, align 1, !alias.scope !3600, !noalias !3601
  %11 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_6.i, i16 0, i32 5
  store i8 0, i8* %11, align 1, !alias.scope !3600, !noalias !3601
; call core::fmt::builders::DebugStruct::field
  %_4.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %_6.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19218 to [0 x i8]*), i16 5, {}* nonnull align 1 %_41, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeUnicode>, char::EscapeUnicode>"*) addrspace(1)*, i16, i16, i1 (%"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeUnicode>, char::EscapeUnicode>"*, %"fmt::Formatter"*) addrspace(1)* }* @vtable.5 to [3 x i16]*))
  %12 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_4.i, i16 0, i32 5
  %13 = load i8, i8* %12, align 1, !range !87
  %_2.i.i = icmp eq i8 %13, 0
  %.phi.trans.insert.i.i = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_4.i, i16 0, i32 3
  %.pre.i.i = load i8, i8* %.phi.trans.insert.i.i, align 1, !range !87
  br i1 %_2.i.i, label %"_ZN92_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hf0fb616880a8dfc9E.exit", label %bb2.i.i

bb2.i.i:                                          ; preds = %start
  %_4.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_4.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %14 = bitcast %"fmt::builders::DebugStruct"* %_4.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %14, align 1, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !3602, !noalias !3605
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %15 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %_5.cast.i.i.i.i = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %16, align 1, !nonnull !568
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 1
  %18 = bitcast [3 x i16]** %17 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %20 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %19, align 1, !invariant.load !568, !nonnull !568
  br i1 %15, label %bb2.i.i.i.i, label %bb3.i.i.i.i

bb2.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %21 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %22 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i": ; preds = %bb3.i.i.i.i, %bb2.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i1 [ true, %bb2.i.i ], [ %22, %bb3.i.i.i.i ], [ %21, %bb2.i.i.i.i ]
  %23 = zext i1 %.0.i.i.i to i8
  store i8 %23, i8* %.phi.trans.insert.i.i, align 1
  br label %"_ZN92_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hf0fb616880a8dfc9E.exit"

"_ZN92_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hf0fb616880a8dfc9E.exit": ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"
  %24 = phi i8 [ %23, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i" ], [ %.pre.i.i, %start ]
  %25 = icmp ne i8 %24, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %1), !noalias !3587
  ret i1 %25
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h19007f371b6db07cE"([4 x i8]** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %entry.i.i.i.i = alloca i8*, align 1
  %_6.i.i.i = alloca %"fmt::builders::DebugList", align 1
  %_4 = load [4 x i8]*, [4 x i8]** %self, align 1, !nonnull !568
  %0 = getelementptr inbounds %"fmt::builders::DebugList", %"fmt::builders::DebugList"* %_6.i.i.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0), !noalias !3608
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i.i = load {}*, {}** %1, align 1, !noalias !3615, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !3615, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !3615, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18664 to [0 x i8]*), i16 1), !noalias !3622
  %7 = zext i1 %6 to i8
  %_6.sroa.0.0..sroa_cast1.i.i.i.i.i = bitcast %"fmt::builders::DebugList"* %_6.i.i.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %_6.sroa.0.0..sroa_cast1.i.i.i.i.i, align 1, !alias.scope !3623, !noalias !3608
  %8 = getelementptr inbounds %"fmt::builders::DebugList", %"fmt::builders::DebugList"* %_6.i.i.i, i16 0, i32 1, i32 3
  store i8 %7, i8* %8, align 1, !alias.scope !3623, !noalias !3608
  %9 = getelementptr inbounds %"fmt::builders::DebugList", %"fmt::builders::DebugList"* %_6.i.i.i, i16 0, i32 1, i32 5
  store i8 0, i8* %9, align 1, !alias.scope !3623, !noalias !3608
  %10 = getelementptr [4 x i8], [4 x i8]* %_4, i16 0, i16 0
  %11 = bitcast i8** %entry.i.i.i.i to i8*
  %_17.0.i.i.i.i = bitcast i8** %entry.i.i.i.i to {}*
  %_5.i.i.i.i.i = bitcast %"fmt::builders::DebugList"* %_6.i.i.i to %"fmt::builders::DebugInner"*
  %12 = getelementptr inbounds [4 x i8], [4 x i8]* %_4, i16 0, i16 1
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11), !noalias !3608
  store i8* %10, i8** %entry.i.i.i.i, align 1, !noalias !3608
; call core::fmt::builders::DebugInner::entry
  call fastcc addrspace(1) void @_ZN4core3fmt8builders10DebugInner5entry17h8e131ef85fccf0c6E(%"fmt::builders::DebugInner"* nonnull align 1 dereferenceable(4) %_5.i.i.i.i.i, {}* nonnull align 1 %_17.0.i.i.i.i, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*)), !noalias !3624
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11), !noalias !3608
  %13 = getelementptr inbounds [4 x i8], [4 x i8]* %_4, i16 0, i16 2
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11), !noalias !3608
  store i8* %12, i8** %entry.i.i.i.i, align 1, !noalias !3608
; call core::fmt::builders::DebugInner::entry
  call fastcc addrspace(1) void @_ZN4core3fmt8builders10DebugInner5entry17h8e131ef85fccf0c6E(%"fmt::builders::DebugInner"* nonnull align 1 dereferenceable(4) %_5.i.i.i.i.i, {}* nonnull align 1 %_17.0.i.i.i.i, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*)), !noalias !3624
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11), !noalias !3608
  %14 = getelementptr inbounds [4 x i8], [4 x i8]* %_4, i16 0, i16 3
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11), !noalias !3608
  store i8* %13, i8** %entry.i.i.i.i, align 1, !noalias !3608
; call core::fmt::builders::DebugInner::entry
  call fastcc addrspace(1) void @_ZN4core3fmt8builders10DebugInner5entry17h8e131ef85fccf0c6E(%"fmt::builders::DebugInner"* nonnull align 1 dereferenceable(4) %_5.i.i.i.i.i, {}* nonnull align 1 %_17.0.i.i.i.i, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*)), !noalias !3624
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11), !noalias !3608
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11), !noalias !3608
  store i8* %14, i8** %entry.i.i.i.i, align 1, !noalias !3608
; call core::fmt::builders::DebugInner::entry
  call fastcc addrspace(1) void @_ZN4core3fmt8builders10DebugInner5entry17h8e131ef85fccf0c6E(%"fmt::builders::DebugInner"* nonnull align 1 dereferenceable(4) %_5.i.i.i.i.i, {}* nonnull align 1 %_17.0.i.i.i.i, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*)), !noalias !3624
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11), !noalias !3608
  %.pre.i.i.i = load i8, i8* %8, align 1, !range !87, !noalias !3608
  %_2.i.i.i.i = icmp eq i8 %.pre.i.i.i, 0
  br i1 %_2.i.i.i.i, label %bb3.i.i.i.i.i, label %"_ZN4core5array153_$LT$impl$u20$core..fmt..Debug$u20$for$u20$$u5b$T$u3b$$u20$Const$u20$$u7b$$u20$ty.$u20$usize$C$$u20$val.$u20$Param$LP$N$u2f$$u23$1$RP$$u20$$u7d$$u5d$$GT$3fmt17h5e389f4e3aa597e0E.exit"

bb3.i.i.i.i.i:                                    ; preds = %start
  %_3.i.i.i.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %_6.sroa.0.0..sroa_cast1.i.i.i.i.i, align 1, !noalias !3608, !nonnull !568
  %15 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_3.i.i.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i.i.i = load {}*, {}** %15, align 1, !noalias !3625, !nonnull !568
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_3.i.i.i.i.i.i, i16 0, i32 11, i32 1
  %17 = bitcast [3 x i16]** %16 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %17, align 1, !noalias !3625, !nonnull !568
  %18 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i.i.i, i16 3
  %19 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %18, align 1, !invariant.load !568, !noalias !3625, !nonnull !568
  %20 = call zeroext addrspace(1) i1 %19({}* nonnull align 1 %_3.0.i.i.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18665 to [0 x i8]*), i16 1), !noalias !3624
  br label %"_ZN4core5array153_$LT$impl$u20$core..fmt..Debug$u20$for$u20$$u5b$T$u3b$$u20$Const$u20$$u7b$$u20$ty.$u20$usize$C$$u20$val.$u20$Param$LP$N$u2f$$u23$1$RP$$u20$$u7d$$u5d$$GT$3fmt17h5e389f4e3aa597e0E.exit"

"_ZN4core5array153_$LT$impl$u20$core..fmt..Debug$u20$for$u20$$u5b$T$u3b$$u20$Const$u20$$u7b$$u20$ty.$u20$usize$C$$u20$val.$u20$Param$LP$N$u2f$$u23$1$RP$$u20$$u7d$$u5d$$GT$3fmt17h5e389f4e3aa597e0E.exit": ; preds = %start, %bb3.i.i.i.i.i
  %.0.i.i.i.i.i = phi i1 [ true, %start ], [ %20, %bb3.i.i.i.i.i ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0), !noalias !3608
  ret i1 %.0.i.i.i.i.i
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h20ef4209d2049bbcE"(i8** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_4 = load i8*, i8** %self, align 1, !nonnull !568
  %0 = load i8, i8* %_4, align 1, !range !87, !alias.scope !3628
  %switch.i = icmp eq i8 %0, 1
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %1, align 1, !noalias !3628, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !3628, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !3628, !nonnull !568
  br i1 %switch.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i: ; preds = %start
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [12 x i8] }>* @alloc18989 to [0 x i8]*), i16 12), !noalias !3631
  br label %"_ZN71_$LT$core..char..convert..CharErrorKind$u20$as$u20$core..fmt..Debug$GT$3fmt17h05b29b1774f4b3c6E.exit"

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i: ; preds = %start
  %7 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [11 x i8] }>* @alloc18990 to [0 x i8]*), i16 11), !noalias !3636
  br label %"_ZN71_$LT$core..char..convert..CharErrorKind$u20$as$u20$core..fmt..Debug$GT$3fmt17h05b29b1774f4b3c6E.exit"

"_ZN71_$LT$core..char..convert..CharErrorKind$u20$as$u20$core..fmt..Debug$GT$3fmt17h05b29b1774f4b3c6E.exit": ; preds = %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i
  %.0.in.i = phi i1 [ %7, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i ], [ %6, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i ]
  ret i1 %.0.in.i
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h2206fedbeb894c1cE"(i8*** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_5.i.i = alloca %"fmt::Arguments", align 1
  %_11.i = alloca [1 x { i8*, i8 addrspace(1)* }], align 1
  %_4 = load i8**, i8*** %self, align 1, !nonnull !568
  %0 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_11.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0), !noalias !3641
  %1 = bitcast [1 x { i8*, i8 addrspace(1)* }]* %_11.i to i8***
  store i8** %_4, i8*** %1, align 1, !noalias !3641
  %2 = getelementptr inbounds [1 x { i8*, i8 addrspace(1)* }], [1 x { i8*, i8 addrspace(1)* }]* %_11.i, i16 0, i16 0, i32 1
  store i8 addrspace(1)* bitcast (i1 (i8**, %"fmt::Formatter"*) addrspace(1)* @"_ZN52_$LT$$BP$mut$u20$T$u20$as$u20$core..fmt..Pointer$GT$3fmt17he7e35628f78eac2bE" to i8 addrspace(1)*), i8 addrspace(1)** %2, align 1, !noalias !3641
  %3 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_4.0.i.i = load {}*, {}** %3, align 1, !noalias !3644, !nonnull !568
  %4 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %_4.1.i.i = load [3 x i16]*, [3 x i16]** %4, align 1, !noalias !3644, !nonnull !568
  %5 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %5), !noalias !3644
  %_4.sroa.0.0..sroa_cast3.i = bitcast %"fmt::Arguments"* %_5.i.i to [0 x { [0 x i8]*, i16 }]**
  store [0 x { [0 x i8]*, i16 }]* bitcast (<{ i8*, [2 x i8] }>* @alloc16542 to [0 x { [0 x i8]*, i16 }]*), [0 x { [0 x i8]*, i16 }]** %_4.sroa.0.0..sroa_cast3.i, align 1, !noalias !3641
  %_4.sroa.4.0..sroa_idx.i = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i.i, i16 0, i32 1, i32 1
  store i16 1, i16* %_4.sroa.4.0..sroa_idx.i, align 1, !noalias !3641
  %_4.sroa.5.0..sroa_idx.i = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i.i, i16 0, i32 3, i32 0
  store i8* null, i8** %_4.sroa.5.0..sroa_idx.i, align 1, !noalias !3641
  %_4.sroa.67.0..sroa_idx.i = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i.i, i16 0, i32 5, i32 0
  %6 = bitcast [0 x { i8*, i8 addrspace(1)* }]** %_4.sroa.67.0..sroa_idx.i to [1 x { i8*, i8 addrspace(1)* }]**
  store [1 x { i8*, i8 addrspace(1)* }]* %_11.i, [1 x { i8*, i8 addrspace(1)* }]** %6, align 1, !noalias !3641
  %_4.sroa.7.0..sroa_idx.i = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i.i, i16 0, i32 5, i32 1
  store i16 1, i16* %_4.sroa.7.0..sroa_idx.i, align 1, !noalias !3641
; call core::fmt::write
  %7 = call zeroext addrspace(1) i1 @_ZN4core3fmt5write17hf4cd163abe69055cE({}* nonnull align 1 %_4.0.i.i, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) %_4.1.i.i, %"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_5.i.i), !noalias !3647
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 12, i8* nonnull %5), !noalias !3644
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0), !noalias !3641
  ret i1 %7
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h2a19fa79c5660501E"(%"char::EscapeDefault"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_15.i = alloca %"char::EscapeDefaultState"*, align 1
  %debug_trait_builder.i = alloca %"fmt::builders::DebugStruct", align 1
  %_4 = load %"char::EscapeDefault"*, %"char::EscapeDefault"** %self, align 1, !nonnull !568
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0), !noalias !3648
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %1, align 1, !noalias !3651, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !3651, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !3651, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [13 x i8] }>* @alloc19215 to [0 x i8]*), i16 13), !noalias !3660
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !3661, !noalias !3662
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !3661, !noalias !3662
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !3661, !noalias !3662
  %11 = bitcast %"char::EscapeDefaultState"** %_15.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11), !noalias !3648
  %12 = bitcast %"char::EscapeDefaultState"** %_15.i to %"char::EscapeDefault"**
  store %"char::EscapeDefault"* %_4, %"char::EscapeDefault"** %12, align 1, !noalias !3648
  %_12.0.i = bitcast %"char::EscapeDefaultState"** %_15.i to {}*
; call core::fmt::builders::DebugStruct::field
  %_8.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19147 to [0 x i8]*), i16 5, {}* nonnull align 1 %_12.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"char::EscapeDefaultState"**) addrspace(1)*, i16, i16, i1 (%"char::EscapeDefaultState"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.H to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11), !noalias !3648
  %13 = load i8, i8* %10, align 1, !range !87, !noalias !3648
  %_2.i.i = icmp eq i8 %13, 0
  %.pre.i.i = load i8, i8* %8, align 1, !range !87, !noalias !3648
  br i1 %_2.i.i, label %"_ZN62_$LT$core..char..EscapeDefault$u20$as$u20$core..fmt..Debug$GT$3fmt17h5468203a1e644711E.exit", label %bb2.i.i

bb2.i.i:                                          ; preds = %start
  %_4.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_4.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %14 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %14, align 1, !noalias !3648, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !3663, !noalias !3666
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %15 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %_5.cast.i.i.i.i = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %16, align 1, !nonnull !568
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 1
  %18 = bitcast [3 x i16]** %17 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %20 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %19, align 1, !invariant.load !568, !nonnull !568
  br i1 %15, label %bb2.i.i.i.i, label %bb3.i.i.i.i

bb2.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %21 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %22 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i": ; preds = %bb3.i.i.i.i, %bb2.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i1 [ true, %bb2.i.i ], [ %22, %bb3.i.i.i.i ], [ %21, %bb2.i.i.i.i ]
  %23 = zext i1 %.0.i.i.i to i8
  store i8 %23, i8* %8, align 1, !noalias !3648
  br label %"_ZN62_$LT$core..char..EscapeDefault$u20$as$u20$core..fmt..Debug$GT$3fmt17h5468203a1e644711E.exit"

"_ZN62_$LT$core..char..EscapeDefault$u20$as$u20$core..fmt..Debug$GT$3fmt17h5468203a1e644711E.exit": ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"
  %24 = phi i8 [ %23, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i" ], [ %.pre.i.i, %start ]
  %25 = icmp ne i8 %24, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0), !noalias !3648
  ret i1 %25
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h2a22e96f65471a62E"(%"option::Option<iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_21.i = alloca %"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>"*, align 1
  %debug_trait_builder1.i = alloca %"fmt::builders::DebugTuple", align 1
  %_4 = load %"option::Option<iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"*, %"option::Option<iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"** %self, align 1, !nonnull !568
  %0 = getelementptr inbounds %"option::Option<iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>", %"option::Option<iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"* %_4, i16 0, i32 1
  %1 = load i8, i8* %0, align 1, !range !689, !alias.scope !3669
  %2 = icmp eq i8 %1, 5
  br i1 %2, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i, label %bb1.i

bb1.i:                                            ; preds = %start
  %3 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %3), !noalias !3669
  %4 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %4, align 1, !noalias !3672, !nonnull !568
  %5 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %6 = bitcast [3 x i16]** %5 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %6, align 1, !noalias !3672, !nonnull !568
  %7 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %8 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %7, align 1, !invariant.load !568, !noalias !3672, !nonnull !568
  %9 = tail call zeroext addrspace(1) i1 %8({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19071 to [0 x i8]*), i16 4), !noalias !3681
  %10 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder1.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %10, align 1, !alias.scope !3682, !noalias !3683
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 3
  %12 = zext i1 %9 to i8
  store i8 %12, i8* %11, align 1, !alias.scope !3682, !noalias !3683
  %13 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 5
  store i16 0, i16* %13, align 1, !alias.scope !3682, !noalias !3683
  %14 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 7
  store i8 0, i8* %14, align 1, !alias.scope !3682, !noalias !3683
  %15 = bitcast %"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>"** %_21.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15), !noalias !3669
  %16 = bitcast %"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>"** %_21.i to %"option::Option<iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"**
  store %"option::Option<iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"* %_4, %"option::Option<iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"** %16, align 1, !noalias !3669
  %_18.0.i = bitcast %"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>"** %_21.i to {}*
; call core::fmt::builders::DebugTuple::field
  %_16.i = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder1.i, {}* nonnull align 1 %_18.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>"**) addrspace(1)*, i16, i16, i1 (%"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.15 to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15), !noalias !3669
  %_3.i.i = load i16, i16* %13, align 1, !noalias !3669
  %_2.i.i = icmp eq i16 %_3.i.i, 0
  %.pre.i.i = load i8, i8* %11, align 1, !range !87, !noalias !3669
  br i1 %_2.i.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i, label %bb2.i.i

bb2.i.i:                                          ; preds = %bb1.i
  %_5.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_5.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %_5.i.i.i.i = icmp ne i16 %_3.i.i, 1
  %17 = load i8, i8* %14, align 1, !noalias !3669
  %_7.i.i.i.i = icmp eq i8 %17, 0
  %or.cond.i = or i1 %_5.i.i.i.i, %_7.i.i.i.i
  br i1 %or.cond.i, label %bb20.i.i.i.i, label %bb3.i.i.i.i

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %18 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder1.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %18, align 1, !alias.scope !3684, !noalias !3669, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !3687, !noalias !3684
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %19 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %20 = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  br i1 %19, label %bb11.i.i.i.i, label %bb20.i.i.i.i

bb11.i.i.i.i:                                     ; preds = %bb3.i.i.i.i
  %21 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %20, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i.i = load {}*, {}** %21, align 1, !noalias !3690, !nonnull !568
  %22 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %20, i16 0, i32 11, i32 1
  %23 = bitcast [3 x i16]** %22 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %23, align 1, !noalias !3690, !nonnull !568
  %24 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i.i, i16 3
  %25 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %24, align 1, !invariant.load !568, !noalias !3690, !nonnull !568
  %26 = call zeroext addrspace(1) i1 %25({}* nonnull align 1 %_3.0.i2.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %26, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i", label %bb20.i.i.i.i

bb20.i.i.i.i:                                     ; preds = %bb11.i.i.i.i, %bb3.i.i.i.i, %bb3.i.i.i
  %_21.i.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %10, align 1, !noalias !3669, !nonnull !568
  %27 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %27, align 1, !noalias !3693, !nonnull !568
  %28 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i.i, i16 0, i32 11, i32 1
  %29 = bitcast [3 x i16]** %28 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %29, align 1, !noalias !3693, !nonnull !568
  %30 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %31 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %30, align 1, !invariant.load !568, !noalias !3693, !nonnull !568
  %32 = call zeroext addrspace(1) i1 %31({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i.i = zext i1 %32 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i": ; preds = %bb20.i.i.i.i, %bb11.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i8 [ 1, %bb2.i.i ], [ %phitmp.i.i, %bb20.i.i.i.i ], [ 1, %bb11.i.i.i.i ]
  store i8 %.0.i.i.i, i8* %11, align 1, !noalias !3669
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i: ; preds = %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i", %bb1.i
  %33 = phi i8 [ %.0.i.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i" ], [ %.pre.i.i, %bb1.i ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %3), !noalias !3669
  br label %"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hadde3dd2cd957aa6E.exit"

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i: ; preds = %start
  %34 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i4.i = load {}*, {}** %34, align 1, !noalias !3696, !nonnull !568
  %35 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %36 = bitcast [3 x i16]** %35 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i5.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %36, align 1, !noalias !3696, !nonnull !568
  %37 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i5.i, i16 3
  %38 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %37, align 1, !invariant.load !568, !noalias !3705, !nonnull !568
  %39 = tail call zeroext addrspace(1) i1 %38({}* nonnull align 1 %_3.0.i.i.i4.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19072 to [0 x i8]*), i16 4), !noalias !3706
  %40 = zext i1 %39 to i8
  br label %"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hadde3dd2cd957aa6E.exit"

"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hadde3dd2cd957aa6E.exit": ; preds = %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i
  %.0.in.in.i = phi i8 [ %40, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i ], [ %33, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i ]
  %.0.in.i = icmp ne i8 %.0.in.in.i, 0
  ret i1 %.0.in.i
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h2bfbd9733f088f10E"({ i8*, i8* }** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_6.i = alloca %"fmt::builders::DebugStruct", align 1
  %0 = bitcast { i8*, i8* }** %self to {}**
  %_41 = load {}*, {}** %0, align 1, !nonnull !568
  %1 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_6.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %1), !noalias !3707
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %2, align 1, !noalias !3710, !nonnull !568
  %3 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %4 = bitcast [3 x i16]** %3 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %4, align 1, !noalias !3710, !nonnull !568
  %5 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %6 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %5, align 1, !invariant.load !568, !noalias !3710, !nonnull !568
  %7 = tail call zeroext addrspace(1) i1 %6({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [3 x i8] }>* @alloc18600 to [0 x i8]*), i16 3), !noalias !3719
  %8 = bitcast %"fmt::builders::DebugStruct"* %_6.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %8, align 1, !alias.scope !3720, !noalias !3721
  %9 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_6.i, i16 0, i32 3
  %10 = zext i1 %7 to i8
  store i8 %10, i8* %9, align 1, !alias.scope !3720, !noalias !3721
  %11 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_6.i, i16 0, i32 5
  store i8 0, i8* %11, align 1, !alias.scope !3720, !noalias !3721
; call core::fmt::builders::DebugStruct::field
  %_4.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %_6.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19203 to [0 x i8]*), i16 4, {}* nonnull align 1 %_41, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({ i8*, i8* }*) addrspace(1)*, i16, i16, i1 ({ i8*, i8* }*, %"fmt::Formatter"*) addrspace(1)* }* @vtable.7 to [3 x i16]*))
  %12 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_4.i, i16 0, i32 5
  %13 = load i8, i8* %12, align 1, !range !87
  %_2.i.i = icmp eq i8 %13, 0
  %.phi.trans.insert.i.i = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_4.i, i16 0, i32 3
  %.pre.i.i = load i8, i8* %.phi.trans.insert.i.i, align 1, !range !87
  br i1 %_2.i.i, label %"_ZN75_$LT$core..iter..adapters..Map$LT$I$C$F$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h395c4c043c94051cE.exit", label %bb2.i.i

bb2.i.i:                                          ; preds = %start
  %_4.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_4.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %14 = bitcast %"fmt::builders::DebugStruct"* %_4.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %14, align 1, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !3722, !noalias !3725
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %15 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %_5.cast.i.i.i.i = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %16, align 1, !nonnull !568
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 1
  %18 = bitcast [3 x i16]** %17 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %20 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %19, align 1, !invariant.load !568, !nonnull !568
  br i1 %15, label %bb2.i.i.i.i, label %bb3.i.i.i.i

bb2.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %21 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %22 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i": ; preds = %bb3.i.i.i.i, %bb2.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i1 [ true, %bb2.i.i ], [ %22, %bb3.i.i.i.i ], [ %21, %bb2.i.i.i.i ]
  %23 = zext i1 %.0.i.i.i to i8
  store i8 %23, i8* %.phi.trans.insert.i.i, align 1
  br label %"_ZN75_$LT$core..iter..adapters..Map$LT$I$C$F$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h395c4c043c94051cE.exit"

"_ZN75_$LT$core..iter..adapters..Map$LT$I$C$F$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h395c4c043c94051cE.exit": ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"
  %24 = phi i8 [ %23, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i" ], [ %.pre.i.i, %start ]
  %25 = icmp ne i8 %24, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %1), !noalias !3707
  ret i1 %25
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h2cdbbe20c9071db5E"(%"option::Option<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>>"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_21.i = alloca %"iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>"*, align 1
  %debug_trait_builder1.i = alloca %"fmt::builders::DebugTuple", align 1
  %_4 = load %"option::Option<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>>"*, %"option::Option<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>>"** %self, align 1, !nonnull !568
  %0 = getelementptr inbounds %"option::Option<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>>", %"option::Option<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>>"* %_4, i16 0, i32 1
  %1 = load i8, i8* %0, align 1, !range !689, !alias.scope !3728
  %2 = icmp eq i8 %1, 5
  br i1 %2, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i, label %bb1.i

bb1.i:                                            ; preds = %start
  %3 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %3), !noalias !3728
  %4 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %4, align 1, !noalias !3731, !nonnull !568
  %5 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %6 = bitcast [3 x i16]** %5 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %6, align 1, !noalias !3731, !nonnull !568
  %7 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %8 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %7, align 1, !invariant.load !568, !noalias !3731, !nonnull !568
  %9 = tail call zeroext addrspace(1) i1 %8({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19071 to [0 x i8]*), i16 4), !noalias !3740
  %10 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder1.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %10, align 1, !alias.scope !3741, !noalias !3742
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 3
  %12 = zext i1 %9 to i8
  store i8 %12, i8* %11, align 1, !alias.scope !3741, !noalias !3742
  %13 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 5
  store i16 0, i16* %13, align 1, !alias.scope !3741, !noalias !3742
  %14 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 7
  store i8 0, i8* %14, align 1, !alias.scope !3741, !noalias !3742
  %15 = bitcast %"iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>"** %_21.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15), !noalias !3728
  %16 = bitcast %"iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>"** %_21.i to %"option::Option<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>>"**
  store %"option::Option<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>>"* %_4, %"option::Option<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>>"** %16, align 1, !noalias !3728
  %_18.0.i = bitcast %"iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>"** %_21.i to {}*
; call core::fmt::builders::DebugTuple::field
  %_16.i = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder1.i, {}* nonnull align 1 %_18.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>"**) addrspace(1)*, i16, i16, i1 (%"iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.13 to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15), !noalias !3728
  %_3.i.i = load i16, i16* %13, align 1, !noalias !3728
  %_2.i.i = icmp eq i16 %_3.i.i, 0
  %.pre.i.i = load i8, i8* %11, align 1, !range !87, !noalias !3728
  br i1 %_2.i.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i, label %bb2.i.i

bb2.i.i:                                          ; preds = %bb1.i
  %_5.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_5.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %_5.i.i.i.i = icmp ne i16 %_3.i.i, 1
  %17 = load i8, i8* %14, align 1, !noalias !3728
  %_7.i.i.i.i = icmp eq i8 %17, 0
  %or.cond.i = or i1 %_5.i.i.i.i, %_7.i.i.i.i
  br i1 %or.cond.i, label %bb20.i.i.i.i, label %bb3.i.i.i.i

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %18 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder1.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %18, align 1, !alias.scope !3743, !noalias !3728, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !3746, !noalias !3743
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %19 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %20 = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  br i1 %19, label %bb11.i.i.i.i, label %bb20.i.i.i.i

bb11.i.i.i.i:                                     ; preds = %bb3.i.i.i.i
  %21 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %20, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i.i = load {}*, {}** %21, align 1, !noalias !3749, !nonnull !568
  %22 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %20, i16 0, i32 11, i32 1
  %23 = bitcast [3 x i16]** %22 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %23, align 1, !noalias !3749, !nonnull !568
  %24 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i.i, i16 3
  %25 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %24, align 1, !invariant.load !568, !noalias !3749, !nonnull !568
  %26 = call zeroext addrspace(1) i1 %25({}* nonnull align 1 %_3.0.i2.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %26, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i", label %bb20.i.i.i.i

bb20.i.i.i.i:                                     ; preds = %bb11.i.i.i.i, %bb3.i.i.i.i, %bb3.i.i.i
  %_21.i.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %10, align 1, !noalias !3728, !nonnull !568
  %27 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %27, align 1, !noalias !3752, !nonnull !568
  %28 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i.i, i16 0, i32 11, i32 1
  %29 = bitcast [3 x i16]** %28 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %29, align 1, !noalias !3752, !nonnull !568
  %30 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %31 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %30, align 1, !invariant.load !568, !noalias !3752, !nonnull !568
  %32 = call zeroext addrspace(1) i1 %31({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i.i = zext i1 %32 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i": ; preds = %bb20.i.i.i.i, %bb11.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i8 [ 1, %bb2.i.i ], [ %phitmp.i.i, %bb20.i.i.i.i ], [ 1, %bb11.i.i.i.i ]
  store i8 %.0.i.i.i, i8* %11, align 1, !noalias !3728
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i: ; preds = %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i", %bb1.i
  %33 = phi i8 [ %.0.i.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i" ], [ %.pre.i.i, %bb1.i ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %3), !noalias !3728
  br label %"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h38fcb1865327813dE.exit"

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i: ; preds = %start
  %34 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i4.i = load {}*, {}** %34, align 1, !noalias !3755, !nonnull !568
  %35 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %36 = bitcast [3 x i16]** %35 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i5.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %36, align 1, !noalias !3755, !nonnull !568
  %37 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i5.i, i16 3
  %38 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %37, align 1, !invariant.load !568, !noalias !3764, !nonnull !568
  %39 = tail call zeroext addrspace(1) i1 %38({}* nonnull align 1 %_3.0.i.i.i4.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19072 to [0 x i8]*), i16 4), !noalias !3765
  %40 = zext i1 %39 to i8
  br label %"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h38fcb1865327813dE.exit"

"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h38fcb1865327813dE.exit": ; preds = %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i
  %.0.in.in.i = phi i8 [ %40, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i ], [ %33, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i ]
  %.0.in.i = icmp ne i8 %.0.in.in.i, 0
  ret i1 %.0.in.i
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h2dc31f322889dd28E"({ i8*, i8* } ({}*) addrspace(1)*** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i.i.i.i = alloca [128 x i8], align 1
  %0 = bitcast { i8*, i8* } ({}*) addrspace(1)*** %self to i16**
  %_41 = load i16*, i16** %0, align 1, !nonnull !568
  %_7124.i = load i16, i16* %_41, align 1, !range !1138, !alias.scope !3766
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 7, i32 0
  %2 = load i8, i8* %1, align 1, !range !87, !noalias !3769
  %3 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 7, i32 1
  %old_width.1.i.i = load i16, i16* %3, align 1, !noalias !3769
  %4 = bitcast %"fmt::Formatter"* %f to i32*
  %old_flags.i.i = load i32, i32* %4, align 1, !noalias !3769
  %_2.i.i.i = and i32 %old_flags.i.i, 4
  %5 = icmp eq i32 %_2.i.i.i, 0
  br i1 %5, label %bb9.i.i, label %bb3.i.i

bb3.i.i:                                          ; preds = %start
  %6 = or i32 %old_flags.i.i, 8
  store i32 %6, i32* %4, align 1, !noalias !3769
  %7 = icmp eq i8 %2, 0
  br i1 %7, label %bb6.i.i, label %bb9.i.i

bb6.i.i:                                          ; preds = %bb3.i.i
  store i8 1, i8* %1, align 1, !noalias !3769
  store i16 6, i16* %3, align 1, !noalias !3769
  br label %bb9.i.i

bb9.i.i:                                          ; preds = %bb6.i.i, %bb3.i.i, %start
  %8 = phi i32 [ %old_flags.i.i, %start ], [ %6, %bb6.i.i ], [ %6, %bb3.i.i ]
  %9 = or i32 %8, 4
  store i32 %9, i32* %4, align 1, !noalias !3769
  %10 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %10), !noalias !3772
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %10, i8 undef, i16 128, i1 false), !noalias !3772
  %11 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i.i, i16 0, i16 128
  br label %bb15.i.i.i.i

bb15.i.i.i.i:                                     ; preds = %bb15.i.i.i.i, %bb9.i.i
  %iter.sroa.4.0.i.i.i.i = phi i8* [ %11, %bb9.i.i ], [ %12, %bb15.i.i.i.i ]
  %x.0.i.i.i.i = phi i16 [ %_7124.i, %bb9.i.i ], [ %13, %bb15.i.i.i.i ]
  %curr.0.i.i.i.i = phi i16 [ 128, %bb9.i.i ], [ %18, %bb15.i.i.i.i ]
  %12 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i.i.i.i, i16 -1
  %13 = lshr i16 %x.0.i.i.i.i, 4
  %14 = trunc i16 %x.0.i.i.i.i to i8
  %15 = and i8 %14, 15
  %_5.i9.i.i.i.i = icmp ult i8 %15, 10
  %16 = or i8 %15, 48
  %17 = add nuw nsw i8 %15, 87
  %.0.i15.i.i.i.i = select i1 %_5.i9.i.i.i.i, i8 %16, i8 %17
  store i8 %.0.i15.i.i.i.i, i8* %12, align 1, !noalias !3772
  %18 = add nsw i16 %curr.0.i.i.i.i, -1
  %19 = icmp eq i16 %13, 0
  br i1 %19, label %bb43.i.i.i.i, label %bb15.i.i.i.i

bb43.i.i.i.i:                                     ; preds = %bb15.i.i.i.i
  %_3.i.i.i.i.i.i.i = icmp ugt i16 %18, 128
  br i1 %_3.i.i.i.i.i.i.i, label %bb2.i.i.i.i.i.i.i, label %"_ZN4core3ptr87_$LT$impl$u20$core..fmt..Debug$u20$for$u20$unsafe$u20$fn$LP$A$RP$$u20$.$GT$$u20$Ret$GT$3fmt17h8037b98962b3d368E.exit"

bb2.i.i.i.i.i.i.i:                                ; preds = %bb43.i.i.i.i
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %18, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*)), !noalias !3772
  unreachable

"_ZN4core3ptr87_$LT$impl$u20$core..fmt..Debug$u20$for$u20$unsafe$u20$fn$LP$A$RP$$u20$.$GT$$u20$Ret$GT$3fmt17h8037b98962b3d368E.exit": ; preds = %bb43.i.i.i.i
  %20 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i.i, i16 0, i16 %18
  %_7.i.i.i.i.i.i.i.i = sub nuw nsw i16 129, %curr.0.i.i.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i = bitcast i8* %20 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %21 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i, i16 %_7.i.i.i.i.i.i.i.i), !noalias !3772
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %10), !noalias !3772
  store i8 %2, i8* %1, align 1, !noalias !3769
  store i16 %old_width.1.i.i, i16* %3, align 1, !noalias !3769
  store i32 %old_flags.i.i, i32* %4, align 1, !noalias !3769
  ret i1 %21
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h368dd2a1a9d960beE"(%"str::pattern::MultiCharEqSearcher<&[char]>"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_33.i = alloca %"str::CharIndices"*, align 1
  %_25.i = alloca { [0 x i8]*, i16 }*, align 1
  %_17.i = alloca { [0 x i32]*, i16 }*, align 1
  %debug_trait_builder.i = alloca %"fmt::builders::DebugStruct", align 1
  %_4 = load %"str::pattern::MultiCharEqSearcher<&[char]>"*, %"str::pattern::MultiCharEqSearcher<&[char]>"** %self, align 1, !nonnull !568
  %__self_0_1.i = getelementptr inbounds %"str::pattern::MultiCharEqSearcher<&[char]>", %"str::pattern::MultiCharEqSearcher<&[char]>"* %_4, i16 0, i32 3
  %__self_0_2.i = getelementptr inbounds %"str::pattern::MultiCharEqSearcher<&[char]>", %"str::pattern::MultiCharEqSearcher<&[char]>"* %_4, i16 0, i32 5
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0), !noalias !3775
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %1, align 1, !noalias !3778, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !3778, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !3778, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [19 x i8] }>* @alloc19168 to [0 x i8]*), i16 19), !noalias !3787
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !3788, !noalias !3789
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !3788, !noalias !3789
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !3788, !noalias !3789
  %11 = bitcast { [0 x i32]*, i16 }** %_17.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11), !noalias !3775
  %12 = bitcast { [0 x i32]*, i16 }** %_17.i to %"str::pattern::MultiCharEqSearcher<&[char]>"**
  store %"str::pattern::MultiCharEqSearcher<&[char]>"* %_4, %"str::pattern::MultiCharEqSearcher<&[char]>"** %12, align 1, !noalias !3775
  %_14.0.i = bitcast { [0 x i32]*, i16 }** %_17.i to {}*
; call core::fmt::builders::DebugStruct::field
  %_10.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [7 x i8] }>* @alloc19169 to [0 x i8]*), i16 7, {}* nonnull align 1 %_14.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({ [0 x i32]*, i16 }**) addrspace(1)*, i16, i16, i1 ({ [0 x i32]*, i16 }**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1n to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11), !noalias !3775
  %13 = bitcast { [0 x i8]*, i16 }** %_25.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13), !noalias !3775
  store { [0 x i8]*, i16 }* %__self_0_1.i, { [0 x i8]*, i16 }** %_25.i, align 1, !noalias !3775
  %_22.0.i = bitcast { [0 x i8]*, i16 }** %_25.i to {}*
; call core::fmt::builders::DebugStruct::field
  %_18.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [8 x i8] }>* @alloc19174 to [0 x i8]*), i16 8, {}* nonnull align 1 %_22.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({ [0 x i8]*, i16 }**) addrspace(1)*, i16, i16, i1 ({ [0 x i8]*, i16 }**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1d to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13), !noalias !3775
  %14 = bitcast %"str::CharIndices"** %_33.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14), !noalias !3775
  store %"str::CharIndices"* %__self_0_2.i, %"str::CharIndices"** %_33.i, align 1, !noalias !3775
  %_30.0.i = bitcast %"str::CharIndices"** %_33.i to {}*
; call core::fmt::builders::DebugStruct::field
  %_26.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [12 x i8] }>* @alloc19171 to [0 x i8]*), i16 12, {}* nonnull align 1 %_30.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"str::CharIndices"**) addrspace(1)*, i16, i16, i1 (%"str::CharIndices"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1o to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14), !noalias !3775
  %15 = load i8, i8* %10, align 1, !range !87, !noalias !3775
  %_2.i.i = icmp eq i8 %15, 0
  %.pre.i.i = load i8, i8* %8, align 1, !range !87, !noalias !3775
  br i1 %_2.i.i, label %"_ZN85_$LT$core..str..pattern..MultiCharEqSearcher$LT$C$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hee952db822c61fd2E.exit", label %bb2.i.i

bb2.i.i:                                          ; preds = %start
  %_4.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_4.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %16 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %16, align 1, !noalias !3775, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !3790, !noalias !3793
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %17 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %_5.cast.i.i.i.i = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !nonnull !568
  br i1 %17, label %bb2.i.i.i.i, label %bb3.i.i.i.i

bb2.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %23 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %24 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i": ; preds = %bb3.i.i.i.i, %bb2.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i1 [ true, %bb2.i.i ], [ %24, %bb3.i.i.i.i ], [ %23, %bb2.i.i.i.i ]
  %25 = zext i1 %.0.i.i.i to i8
  store i8 %25, i8* %8, align 1, !noalias !3775
  br label %"_ZN85_$LT$core..str..pattern..MultiCharEqSearcher$LT$C$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hee952db822c61fd2E.exit"

"_ZN85_$LT$core..str..pattern..MultiCharEqSearcher$LT$C$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hee952db822c61fd2E.exit": ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"
  %26 = phi i8 [ %25, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i" ], [ %.pre.i.i, %start ]
  %27 = icmp ne i8 %26, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0), !noalias !3775
  ret i1 %27
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h39e3ec3ca298ecfaE"(i8** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_4 = load i8*, i8** %self, align 1, !nonnull !568
  %0 = load i8, i8* %_4, align 1, !range !87, !alias.scope !3796
  %_4.i.i = icmp eq i8 %0, 0
  br i1 %_4.i.i, label %bb1.split.i.i, label %bb2.split.i.i

bb1.split.i.i:                                    ; preds = %start
; call core::fmt::Formatter::pad
  %1 = tail call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter3pad17h307fb261f2dc8a5eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc18725 to [0 x i8]*), i16 5), !noalias !3796
  br label %"_ZN41_$LT$bool$u20$as$u20$core..fmt..Debug$GT$3fmt17hac99d466b6ddfefdE.exit"

bb2.split.i.i:                                    ; preds = %start
; call core::fmt::Formatter::pad
  %2 = tail call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter3pad17h307fb261f2dc8a5eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc18724 to [0 x i8]*), i16 4), !noalias !3796
  br label %"_ZN41_$LT$bool$u20$as$u20$core..fmt..Debug$GT$3fmt17hac99d466b6ddfefdE.exit"

"_ZN41_$LT$bool$u20$as$u20$core..fmt..Debug$GT$3fmt17hac99d466b6ddfefdE.exit": ; preds = %bb1.split.i.i, %bb2.split.i.i
  %phi.call.i.i = phi i1 [ %1, %bb1.split.i.i ], [ %2, %bb2.split.i.i ]
  ret i1 %phi.call.i.i
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h3b0dbc4ce1ceefa8E"(%"option::Option<char::EscapeDebug>"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_21.i = alloca %"char::EscapeDebug"*, align 1
  %debug_trait_builder1.i = alloca %"fmt::builders::DebugTuple", align 1
  %_4 = load %"option::Option<char::EscapeDebug>"*, %"option::Option<char::EscapeDebug>"** %self, align 1, !nonnull !568
  %0 = getelementptr inbounds %"option::Option<char::EscapeDebug>", %"option::Option<char::EscapeDebug>"* %_4, i16 0, i32 0, i16 0
  %1 = load i8, i8* %0, align 1, !range !632, !alias.scope !3801
  %2 = icmp eq i8 %1, 4
  br i1 %2, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i, label %bb1.i

bb1.i:                                            ; preds = %start
  %3 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %3), !noalias !3801
  %4 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %4, align 1, !noalias !3804, !nonnull !568
  %5 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %6 = bitcast [3 x i16]** %5 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %6, align 1, !noalias !3804, !nonnull !568
  %7 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %8 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %7, align 1, !invariant.load !568, !noalias !3804, !nonnull !568
  %9 = tail call zeroext addrspace(1) i1 %8({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19071 to [0 x i8]*), i16 4), !noalias !3813
  %10 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder1.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %10, align 1, !alias.scope !3814, !noalias !3815
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 3
  %12 = zext i1 %9 to i8
  store i8 %12, i8* %11, align 1, !alias.scope !3814, !noalias !3815
  %13 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 5
  store i16 0, i16* %13, align 1, !alias.scope !3814, !noalias !3815
  %14 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 7
  store i8 0, i8* %14, align 1, !alias.scope !3814, !noalias !3815
  %15 = bitcast %"char::EscapeDebug"** %_21.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15), !noalias !3801
  %16 = bitcast %"char::EscapeDebug"** %_21.i to %"option::Option<char::EscapeDebug>"**
  store %"option::Option<char::EscapeDebug>"* %_4, %"option::Option<char::EscapeDebug>"** %16, align 1, !noalias !3801
  %_18.0.i = bitcast %"char::EscapeDebug"** %_21.i to {}*
; call core::fmt::builders::DebugTuple::field
  %_16.i = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder1.i, {}* nonnull align 1 %_18.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"char::EscapeDebug"**) addrspace(1)*, i16, i16, i1 (%"char::EscapeDebug"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.12 to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15), !noalias !3801
  %_3.i.i = load i16, i16* %13, align 1, !noalias !3801
  %_2.i.i = icmp eq i16 %_3.i.i, 0
  %.pre.i.i = load i8, i8* %11, align 1, !range !87, !noalias !3801
  br i1 %_2.i.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i, label %bb2.i.i

bb2.i.i:                                          ; preds = %bb1.i
  %_5.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_5.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %_5.i.i.i.i = icmp ne i16 %_3.i.i, 1
  %17 = load i8, i8* %14, align 1, !noalias !3801
  %_7.i.i.i.i = icmp eq i8 %17, 0
  %or.cond.i = or i1 %_5.i.i.i.i, %_7.i.i.i.i
  br i1 %or.cond.i, label %bb20.i.i.i.i, label %bb3.i.i.i.i

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %18 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder1.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %18, align 1, !alias.scope !3816, !noalias !3801, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !3819, !noalias !3816
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %19 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %20 = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  br i1 %19, label %bb11.i.i.i.i, label %bb20.i.i.i.i

bb11.i.i.i.i:                                     ; preds = %bb3.i.i.i.i
  %21 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %20, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i.i = load {}*, {}** %21, align 1, !noalias !3822, !nonnull !568
  %22 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %20, i16 0, i32 11, i32 1
  %23 = bitcast [3 x i16]** %22 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %23, align 1, !noalias !3822, !nonnull !568
  %24 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i.i, i16 3
  %25 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %24, align 1, !invariant.load !568, !noalias !3822, !nonnull !568
  %26 = call zeroext addrspace(1) i1 %25({}* nonnull align 1 %_3.0.i2.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %26, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i", label %bb20.i.i.i.i

bb20.i.i.i.i:                                     ; preds = %bb11.i.i.i.i, %bb3.i.i.i.i, %bb3.i.i.i
  %_21.i.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %10, align 1, !noalias !3801, !nonnull !568
  %27 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %27, align 1, !noalias !3825, !nonnull !568
  %28 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i.i, i16 0, i32 11, i32 1
  %29 = bitcast [3 x i16]** %28 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %29, align 1, !noalias !3825, !nonnull !568
  %30 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %31 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %30, align 1, !invariant.load !568, !noalias !3825, !nonnull !568
  %32 = call zeroext addrspace(1) i1 %31({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i.i = zext i1 %32 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i": ; preds = %bb20.i.i.i.i, %bb11.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i8 [ 1, %bb2.i.i ], [ %phitmp.i.i, %bb20.i.i.i.i ], [ 1, %bb11.i.i.i.i ]
  store i8 %.0.i.i.i, i8* %11, align 1, !noalias !3801
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i: ; preds = %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i", %bb1.i
  %33 = phi i8 [ %.0.i.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i" ], [ %.pre.i.i, %bb1.i ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %3), !noalias !3801
  br label %"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h3399c4ae4c62a484E.exit"

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i: ; preds = %start
  %34 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i4.i = load {}*, {}** %34, align 1, !noalias !3828, !nonnull !568
  %35 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %36 = bitcast [3 x i16]** %35 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i5.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %36, align 1, !noalias !3828, !nonnull !568
  %37 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i5.i, i16 3
  %38 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %37, align 1, !invariant.load !568, !noalias !3837, !nonnull !568
  %39 = tail call zeroext addrspace(1) i1 %38({}* nonnull align 1 %_3.0.i.i.i4.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19072 to [0 x i8]*), i16 4), !noalias !3838
  %40 = zext i1 %39 to i8
  br label %"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h3399c4ae4c62a484E.exit"

"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h3399c4ae4c62a484E.exit": ; preds = %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i
  %.0.in.in.i = phi i8 [ %40, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i ], [ %33, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i ]
  %.0.in.i = icmp ne i8 %.0.in.in.i, 0
  ret i1 %.0.in.i
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h417d25861390c6c8E"({ i8*, i8* }** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_15.i = alloca { i8*, i8* }*, align 1
  %debug_trait_builder.i = alloca %"fmt::builders::DebugStruct", align 1
  %_4 = load { i8*, i8* }*, { i8*, i8* }** %self, align 1, !nonnull !568
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0), !noalias !3839
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %1, align 1, !noalias !3842, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !3842, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !3842, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19045 to [0 x i8]*), i16 4), !noalias !3851
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !3852, !noalias !3853
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !3852, !noalias !3853
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !3852, !noalias !3853
  %11 = bitcast { i8*, i8* }** %_15.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11), !noalias !3839
  store { i8*, i8* }* %_4, { i8*, i8* }** %_15.i, align 1, !noalias !3839
  %_12.0.i = bitcast { i8*, i8* }** %_15.i to {}*
; call core::fmt::builders::DebugStruct::field
  %_8.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19203 to [0 x i8]*), i16 4, {}* nonnull align 1 %_12.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({ i8*, i8* }**) addrspace(1)*, i16, i16, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.Z to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11), !noalias !3839
  %12 = load i8, i8* %10, align 1, !range !87, !noalias !3839
  %_2.i.i = icmp eq i8 %12, 0
  %.pre.i.i = load i8, i8* %8, align 1, !range !87, !noalias !3839
  br i1 %_2.i.i, label %"_ZN78_$LT$core..iter..adapters..fuse..Fuse$LT$I$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hfb968a9605b1f748E.exit", label %bb2.i.i

bb2.i.i:                                          ; preds = %start
  %_4.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_4.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %13 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %13, align 1, !noalias !3839, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !3854, !noalias !3857
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %14 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %_5.cast.i.i.i.i = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  %15 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %15, align 1, !nonnull !568
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 1
  %17 = bitcast [3 x i16]** %16 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %17, align 1, !nonnull !568
  %18 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %19 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %18, align 1, !invariant.load !568, !nonnull !568
  br i1 %14, label %bb2.i.i.i.i, label %bb3.i.i.i.i

bb2.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %20 = call zeroext addrspace(1) i1 %19({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %21 = call zeroext addrspace(1) i1 %19({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i": ; preds = %bb3.i.i.i.i, %bb2.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i1 [ true, %bb2.i.i ], [ %21, %bb3.i.i.i.i ], [ %20, %bb2.i.i.i.i ]
  %22 = zext i1 %.0.i.i.i to i8
  store i8 %22, i8* %8, align 1, !noalias !3839
  br label %"_ZN78_$LT$core..iter..adapters..fuse..Fuse$LT$I$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hfb968a9605b1f748E.exit"

"_ZN78_$LT$core..iter..adapters..fuse..Fuse$LT$I$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hfb968a9605b1f748E.exit": ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"
  %23 = phi i8 [ %22, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i" ], [ %.pre.i.i, %start ]
  %24 = icmp ne i8 %23, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0), !noalias !3839
  ret i1 %24
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h42c7c3979db67d78E"({ [0 x i8]*, i16 }** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_4 = load { [0 x i8]*, i16 }*, { [0 x i8]*, i16 }** %self, align 1, !nonnull !568
  %0 = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %_4, i16 0, i32 0
  %_4.0.i = load [0 x i8]*, [0 x i8]** %0, align 1, !alias.scope !3860, !nonnull !568
  %1 = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %_4, i16 0, i32 1
  %_4.1.i = load i16, i16* %1, align 1, !alias.scope !3860
; call <str as core::fmt::Debug>::fmt
  %2 = tail call zeroext addrspace(1) i1 @"_ZN40_$LT$str$u20$as$u20$core..fmt..Debug$GT$3fmt17h453ad31d24f56a92E"([0 x i8]* noalias nonnull readonly align 1 %_4.0.i, i16 %_4.1.i, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f), !noalias !3860
  ret i1 %2
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h434e85a496737504E"(i32** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i.i.i = alloca [128 x i8], align 1
  %_4 = load i32*, i32** %self, align 1, !nonnull !568
  %0 = bitcast %"fmt::Formatter"* %f to i32*
  %_3.i.i = load i32, i32* %0, align 1, !alias.scope !3863, !noalias !3866
  %_2.i.i = and i32 %_3.i.i, 16
  %1 = icmp eq i32 %_2.i.i, 0
  br i1 %1, label %bb2.i, label %bb3.i

bb2.i:                                            ; preds = %start
  %_2.i2.i = and i32 %_3.i.i, 32
  %2 = icmp eq i32 %_2.i2.i, 0
  br i1 %2, label %bb6.i, label %bb7.i

bb3.i:                                            ; preds = %start
  %_5.i4.i = load i32, i32* %_4, align 1, !alias.scope !3869
  %3 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %3), !noalias !3869
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %3, i8 undef, i16 128, i1 false), !noalias !3869
  %4 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 128
  br label %bb11.i.i9.i

bb11.i.i9.i:                                      ; preds = %bb15.i.i12.i, %bb3.i
  %iter.sroa.4.0.i.i5.i = phi i8* [ %4, %bb3.i ], [ %5, %bb15.i.i12.i ]
  %x.0.i.i6.i = phi i32 [ %_5.i4.i, %bb3.i ], [ %6, %bb15.i.i12.i ]
  %curr.0.i.i7.i = phi i16 [ 128, %bb3.i ], [ %11, %bb15.i.i12.i ]
  %_13.i.i20.i.i8.i = icmp eq i8* %3, %iter.sroa.4.0.i.i5.i
  br i1 %_13.i.i20.i.i8.i, label %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i32$GT$3fmt17h980e7dc46f13d3abE.exit.i", label %bb15.i.i12.i

bb15.i.i12.i:                                     ; preds = %bb11.i.i9.i
  %5 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i.i5.i, i16 -1
  %6 = lshr i32 %x.0.i.i6.i, 4
  %7 = trunc i32 %x.0.i.i6.i to i8
  %8 = and i8 %7, 15
  %_5.i9.i.i10.i = icmp ult i8 %8, 10
  %9 = or i8 %8, 48
  %10 = add nuw nsw i8 %8, 87
  %.0.i15.i.i11.i = select i1 %_5.i9.i.i10.i, i8 %9, i8 %10
  store i8 %.0.i15.i.i11.i, i8* %5, align 1, !noalias !3869
  %11 = add nsw i16 %curr.0.i.i7.i, -1
  %12 = icmp eq i32 %6, 0
  br i1 %12, label %bb43.i.i14.i, label %bb11.i.i9.i

bb43.i.i14.i:                                     ; preds = %bb15.i.i12.i
  %_3.i.i.i.i.i13.i = icmp ugt i16 %11, 128
  br i1 %_3.i.i.i.i.i13.i, label %bb2.i.i.i.i.i15.i, label %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i32$GT$3fmt17h980e7dc46f13d3abE.exit.i"

bb2.i.i.i.i.i15.i:                                ; preds = %bb43.i.i14.i
; call core::slice::slice_index_order_fail
  call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %11, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*)), !noalias !3869
  unreachable

"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i32$GT$3fmt17h980e7dc46f13d3abE.exit.i": ; preds = %bb11.i.i9.i, %bb43.i.i14.i
  %curr.446.i.i16.i = phi i16 [ %11, %bb43.i.i14.i ], [ 0, %bb11.i.i9.i ]
  %13 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 %curr.446.i.i16.i
  %_7.i.i.i.i.i.i17.i = sub nuw nsw i16 128, %curr.446.i.i16.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i18.i = bitcast i8* %13 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %14 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i18.i, i16 %_7.i.i.i.i.i.i17.i), !noalias !3869
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %3), !noalias !3869
  br label %"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i32$GT$3fmt17h4ef1128abbb77ca8E.exit"

bb6.i:                                            ; preds = %bb2.i
; call core::fmt::num::imp::<impl core::fmt::Display for i32>::fmt
  %15 = tail call zeroext addrspace(1) i1 @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$i32$GT$3fmt17he31040999156b94dE"(i32* noalias nonnull readonly align 1 dereferenceable(4) %_4, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  br label %"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i32$GT$3fmt17h4ef1128abbb77ca8E.exit"

bb7.i:                                            ; preds = %bb2.i
  %_5.i.i = load i32, i32* %_4, align 1, !alias.scope !3872
  %16 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %16), !noalias !3872
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %16, i8 undef, i16 128, i1 false), !noalias !3872
  %17 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 128
  br label %bb11.i.i.i

bb11.i.i.i:                                       ; preds = %bb15.i.i.i, %bb7.i
  %iter.sroa.4.0.i.i.i = phi i8* [ %17, %bb7.i ], [ %18, %bb15.i.i.i ]
  %x.0.i.i.i = phi i32 [ %_5.i.i, %bb7.i ], [ %19, %bb15.i.i.i ]
  %curr.0.i.i.i = phi i16 [ 128, %bb7.i ], [ %24, %bb15.i.i.i ]
  %_13.i.i20.i.i.i = icmp eq i8* %16, %iter.sroa.4.0.i.i.i
  br i1 %_13.i.i20.i.i.i, label %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i32$GT$3fmt17h9869bb78d76c2b48E.exit.i", label %bb15.i.i.i

bb15.i.i.i:                                       ; preds = %bb11.i.i.i
  %18 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i.i.i, i16 -1
  %19 = lshr i32 %x.0.i.i.i, 4
  %20 = trunc i32 %x.0.i.i.i to i8
  %21 = and i8 %20, 15
  %_5.i9.i.i.i = icmp ult i8 %21, 10
  %22 = or i8 %21, 48
  %23 = add nuw nsw i8 %21, 55
  %.0.i15.i.i.i = select i1 %_5.i9.i.i.i, i8 %22, i8 %23
  store i8 %.0.i15.i.i.i, i8* %18, align 1, !noalias !3872
  %24 = add nsw i16 %curr.0.i.i.i, -1
  %25 = icmp eq i32 %19, 0
  br i1 %25, label %bb43.i.i.i, label %bb11.i.i.i

bb43.i.i.i:                                       ; preds = %bb15.i.i.i
  %_3.i.i.i.i.i.i = icmp ugt i16 %24, 128
  br i1 %_3.i.i.i.i.i.i, label %bb2.i.i.i.i.i.i, label %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i32$GT$3fmt17h9869bb78d76c2b48E.exit.i"

bb2.i.i.i.i.i.i:                                  ; preds = %bb43.i.i.i
; call core::slice::slice_index_order_fail
  call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %24, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*)), !noalias !3872
  unreachable

"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i32$GT$3fmt17h9869bb78d76c2b48E.exit.i": ; preds = %bb11.i.i.i, %bb43.i.i.i
  %curr.446.i.i.i = phi i16 [ %24, %bb43.i.i.i ], [ 0, %bb11.i.i.i ]
  %26 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 %curr.446.i.i.i
  %_7.i.i.i.i.i.i.i = sub nuw nsw i16 128, %curr.446.i.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i = bitcast i8* %26 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %27 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i, i16 %_7.i.i.i.i.i.i.i), !noalias !3872
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %16), !noalias !3872
  br label %"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i32$GT$3fmt17h4ef1128abbb77ca8E.exit"

"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i32$GT$3fmt17h4ef1128abbb77ca8E.exit": ; preds = %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i32$GT$3fmt17h980e7dc46f13d3abE.exit.i", %bb6.i, %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i32$GT$3fmt17h9869bb78d76c2b48E.exit.i"
  %.0.in.i = phi i1 [ %14, %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i32$GT$3fmt17h980e7dc46f13d3abE.exit.i" ], [ %27, %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i32$GT$3fmt17h9869bb78d76c2b48E.exit.i" ], [ %15, %bb6.i ]
  ret i1 %.0.in.i
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h442298b01a4bd039E"(i32** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_4 = load i32*, i32** %self, align 1, !nonnull !568
; call <char as core::fmt::Debug>::fmt
  %0 = tail call zeroext addrspace(1) i1 @"_ZN41_$LT$char$u20$as$u20$core..fmt..Debug$GT$3fmt17h03e3d18dd45a0945E"(i32* noalias nonnull readonly align 1 dereferenceable(4) %_4, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %0
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h46d91eb020b1c821E"({ i8*, i8* }** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_15.i = alloca { i8*, i8* }*, align 1
  %debug_trait_builder.i = alloca %"fmt::builders::DebugStruct", align 1
  %_4 = load { i8*, i8* }*, { i8*, i8* }** %self, align 1, !nonnull !568
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0), !noalias !3875
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %1, align 1, !noalias !3878, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !3878, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !3878, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19045 to [0 x i8]*), i16 4), !noalias !3887
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !3888, !noalias !3889
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !3888, !noalias !3889
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !3888, !noalias !3889
  %11 = bitcast { i8*, i8* }** %_15.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11), !noalias !3875
  store { i8*, i8* }* %_4, { i8*, i8* }** %_15.i, align 1, !noalias !3875
  %_12.0.i = bitcast { i8*, i8* }** %_15.i to {}*
; call core::fmt::builders::DebugStruct::field
  %_8.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19203 to [0 x i8]*), i16 4, {}* nonnull align 1 %_12.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({ i8*, i8* }**) addrspace(1)*, i16, i16, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.X to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11), !noalias !3875
  %12 = load i8, i8* %10, align 1, !range !87, !noalias !3875
  %_2.i.i = icmp eq i8 %12, 0
  %.pre.i.i = load i8, i8* %8, align 1, !range !87, !noalias !3875
  br i1 %_2.i.i, label %"_ZN78_$LT$core..iter..adapters..fuse..Fuse$LT$I$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h72543660c7a9e950E.exit", label %bb2.i.i

bb2.i.i:                                          ; preds = %start
  %_4.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_4.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %13 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %13, align 1, !noalias !3875, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !3890, !noalias !3893
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %14 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %_5.cast.i.i.i.i = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  %15 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %15, align 1, !nonnull !568
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 1
  %17 = bitcast [3 x i16]** %16 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %17, align 1, !nonnull !568
  %18 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %19 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %18, align 1, !invariant.load !568, !nonnull !568
  br i1 %14, label %bb2.i.i.i.i, label %bb3.i.i.i.i

bb2.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %20 = call zeroext addrspace(1) i1 %19({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %21 = call zeroext addrspace(1) i1 %19({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i": ; preds = %bb3.i.i.i.i, %bb2.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i1 [ true, %bb2.i.i ], [ %21, %bb3.i.i.i.i ], [ %20, %bb2.i.i.i.i ]
  %22 = zext i1 %.0.i.i.i to i8
  store i8 %22, i8* %8, align 1, !noalias !3875
  br label %"_ZN78_$LT$core..iter..adapters..fuse..Fuse$LT$I$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h72543660c7a9e950E.exit"

"_ZN78_$LT$core..iter..adapters..fuse..Fuse$LT$I$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h72543660c7a9e950E.exit": ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"
  %23 = phi i8 [ %22, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i" ], [ %.pre.i.i, %start ]
  %24 = icmp ne i8 %23, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0), !noalias !3875
  ret i1 %24
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h474306c80d8f5097E"(%"iter::adapters::fuse::Fuse<option::IntoIter<char::EscapeDebug>>"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_15.i = alloca %"option::Option<option::IntoIter<char::EscapeDebug>>"*, align 1
  %debug_trait_builder.i = alloca %"fmt::builders::DebugStruct", align 1
  %_4 = load %"iter::adapters::fuse::Fuse<option::IntoIter<char::EscapeDebug>>"*, %"iter::adapters::fuse::Fuse<option::IntoIter<char::EscapeDebug>>"** %self, align 1, !nonnull !568
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0), !noalias !3896
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %1, align 1, !noalias !3899, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !3899, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !3899, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19045 to [0 x i8]*), i16 4), !noalias !3908
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !3909, !noalias !3910
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !3909, !noalias !3910
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !3909, !noalias !3910
  %11 = bitcast %"option::Option<option::IntoIter<char::EscapeDebug>>"** %_15.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11), !noalias !3896
  %12 = bitcast %"option::Option<option::IntoIter<char::EscapeDebug>>"** %_15.i to %"iter::adapters::fuse::Fuse<option::IntoIter<char::EscapeDebug>>"**
  store %"iter::adapters::fuse::Fuse<option::IntoIter<char::EscapeDebug>>"* %_4, %"iter::adapters::fuse::Fuse<option::IntoIter<char::EscapeDebug>>"** %12, align 1, !noalias !3896
  %_12.0.i = bitcast %"option::Option<option::IntoIter<char::EscapeDebug>>"** %_15.i to {}*
; call core::fmt::builders::DebugStruct::field
  %_8.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19203 to [0 x i8]*), i16 4, {}* nonnull align 1 %_12.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"option::Option<option::IntoIter<char::EscapeDebug>>"**) addrspace(1)*, i16, i16, i1 (%"option::Option<option::IntoIter<char::EscapeDebug>>"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.W to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11), !noalias !3896
  %13 = load i8, i8* %10, align 1, !range !87, !noalias !3896
  %_2.i.i = icmp eq i8 %13, 0
  %.pre.i.i = load i8, i8* %8, align 1, !range !87, !noalias !3896
  br i1 %_2.i.i, label %"_ZN78_$LT$core..iter..adapters..fuse..Fuse$LT$I$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h27d3a20036229f9fE.exit", label %bb2.i.i

bb2.i.i:                                          ; preds = %start
  %_4.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_4.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %14 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %14, align 1, !noalias !3896, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !3911, !noalias !3914
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %15 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %_5.cast.i.i.i.i = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %16, align 1, !nonnull !568
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 1
  %18 = bitcast [3 x i16]** %17 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %20 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %19, align 1, !invariant.load !568, !nonnull !568
  br i1 %15, label %bb2.i.i.i.i, label %bb3.i.i.i.i

bb2.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %21 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %22 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i": ; preds = %bb3.i.i.i.i, %bb2.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i1 [ true, %bb2.i.i ], [ %22, %bb3.i.i.i.i ], [ %21, %bb2.i.i.i.i ]
  %23 = zext i1 %.0.i.i.i to i8
  store i8 %23, i8* %8, align 1, !noalias !3896
  br label %"_ZN78_$LT$core..iter..adapters..fuse..Fuse$LT$I$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h27d3a20036229f9fE.exit"

"_ZN78_$LT$core..iter..adapters..fuse..Fuse$LT$I$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h27d3a20036229f9fE.exit": ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"
  %24 = phi i8 [ %23, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i" ], [ %.pre.i.i, %start ]
  %25 = icmp ne i8 %24, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0), !noalias !3896
  ret i1 %25
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h49144c1eebc06d07E"({ [0 x i8]*, i16 }* noalias nocapture readonly align 1 dereferenceable(4) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %entry.i.i = alloca i8*, align 1
  %_6.i = alloca %"fmt::builders::DebugList", align 1
  %0 = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %self, i16 0, i32 0
  %_4.0 = load [0 x i8]*, [0 x i8]** %0, align 1, !nonnull !568
  %1 = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %self, i16 0, i32 1
  %_4.1 = load i16, i16* %1, align 1
  %2 = getelementptr inbounds %"fmt::builders::DebugList", %"fmt::builders::DebugList"* %_6.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %2), !noalias !3917
  %3 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %3, align 1, !noalias !3920, !nonnull !568
  %4 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %5 = bitcast [3 x i16]** %4 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %5, align 1, !noalias !3920, !nonnull !568
  %6 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %7 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %6, align 1, !invariant.load !568, !noalias !3920, !nonnull !568
  %8 = tail call zeroext addrspace(1) i1 %7({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18664 to [0 x i8]*), i16 1), !noalias !3927
  %9 = zext i1 %8 to i8
  %_6.sroa.0.0..sroa_cast1.i.i.i = bitcast %"fmt::builders::DebugList"* %_6.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %_6.sroa.0.0..sroa_cast1.i.i.i, align 1, !alias.scope !3928, !noalias !3917
  %10 = getelementptr inbounds %"fmt::builders::DebugList", %"fmt::builders::DebugList"* %_6.i, i16 0, i32 1, i32 3
  store i8 %9, i8* %10, align 1, !alias.scope !3928, !noalias !3917
  %11 = getelementptr inbounds %"fmt::builders::DebugList", %"fmt::builders::DebugList"* %_6.i, i16 0, i32 1, i32 5
  store i8 0, i8* %11, align 1, !alias.scope !3928, !noalias !3917
  %12 = getelementptr inbounds [0 x i8], [0 x i8]* %_4.0, i16 0, i16 %_4.1
  %_13.i12.i.i = icmp eq i16 %_4.1, 0
  br i1 %_13.i12.i.i, label %_ZN4core3fmt8builders9DebugList7entries17hd850b5e4d753927bE.exit.i, label %bb5.lr.ph.i.i

bb5.lr.ph.i.i:                                    ; preds = %start
  %13 = getelementptr [0 x i8], [0 x i8]* %_4.0, i16 0, i16 0
  %14 = bitcast i8** %entry.i.i to i8*
  %_17.0.i.i = bitcast i8** %entry.i.i to {}*
  %_5.i.i.i = bitcast %"fmt::builders::DebugList"* %_6.i to %"fmt::builders::DebugInner"*
  br label %bb5.i.i

bb5.i.i:                                          ; preds = %bb5.i.i, %bb5.lr.ph.i.i
  %iter.sroa.0.013.i.i = phi i8* [ %13, %bb5.lr.ph.i.i ], [ %15, %bb5.i.i ]
  %15 = getelementptr inbounds i8, i8* %iter.sroa.0.013.i.i, i16 1
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14), !noalias !3917
  store i8* %iter.sroa.0.013.i.i, i8** %entry.i.i, align 1, !noalias !3917
; call core::fmt::builders::DebugInner::entry
  call fastcc addrspace(1) void @_ZN4core3fmt8builders10DebugInner5entry17h8e131ef85fccf0c6E(%"fmt::builders::DebugInner"* nonnull align 1 dereferenceable(4) %_5.i.i.i, {}* nonnull align 1 %_17.0.i.i, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14), !noalias !3917
  %_13.i.i.i = icmp eq i8* %15, %12
  br i1 %_13.i.i.i, label %_ZN4core3fmt8builders9DebugList7entries17hd850b5e4d753927bE.exit.loopexit.i, label %bb5.i.i

_ZN4core3fmt8builders9DebugList7entries17hd850b5e4d753927bE.exit.loopexit.i: ; preds = %bb5.i.i
  %.pre.i = load i8, i8* %10, align 1, !range !87, !noalias !3917
  br label %_ZN4core3fmt8builders9DebugList7entries17hd850b5e4d753927bE.exit.i

_ZN4core3fmt8builders9DebugList7entries17hd850b5e4d753927bE.exit.i: ; preds = %_ZN4core3fmt8builders9DebugList7entries17hd850b5e4d753927bE.exit.loopexit.i, %start
  %16 = phi i8 [ %.pre.i, %_ZN4core3fmt8builders9DebugList7entries17hd850b5e4d753927bE.exit.loopexit.i ], [ %9, %start ]
  %_2.i.i = icmp eq i8 %16, 0
  br i1 %_2.i.i, label %bb3.i.i.i, label %"_ZN48_$LT$$u5b$T$u5d$$u20$as$u20$core..fmt..Debug$GT$3fmt17h1e286a4a3cc906c2E.exit"

bb3.i.i.i:                                        ; preds = %_ZN4core3fmt8builders9DebugList7entries17hd850b5e4d753927bE.exit.i
  %_3.i.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %_6.sroa.0.0..sroa_cast1.i.i.i, align 1, !noalias !3917, !nonnull !568
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_3.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %17, align 1, !noalias !3929, !nonnull !568
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_3.i.i.i.i, i16 0, i32 11, i32 1
  %19 = bitcast [3 x i16]** %18 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %19, align 1, !noalias !3929, !nonnull !568
  %20 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %21 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %20, align 1, !invariant.load !568, !noalias !3929, !nonnull !568
  %22 = call zeroext addrspace(1) i1 %21({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18665 to [0 x i8]*), i16 1)
  br label %"_ZN48_$LT$$u5b$T$u5d$$u20$as$u20$core..fmt..Debug$GT$3fmt17h1e286a4a3cc906c2E.exit"

"_ZN48_$LT$$u5b$T$u5d$$u20$as$u20$core..fmt..Debug$GT$3fmt17h1e286a4a3cc906c2E.exit": ; preds = %_ZN4core3fmt8builders9DebugList7entries17hd850b5e4d753927bE.exit.i, %bb3.i.i.i
  %.0.i.i.i = phi i1 [ true, %_ZN4core3fmt8builders9DebugList7entries17hd850b5e4d753927bE.exit.i ], [ %22, %bb3.i.i.i ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %2), !noalias !3917
  ret i1 %.0.i.i.i
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h4d498b79b8a21c3cE"({ {}*, [3 x i16]* }* noalias nocapture readonly align 1 dereferenceable(4) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %0 = getelementptr inbounds { {}*, [3 x i16]* }, { {}*, [3 x i16]* }* %self, i16 0, i32 0
  %_4.0 = load {}*, {}** %0, align 1, !nonnull !568
  %1 = getelementptr inbounds { {}*, [3 x i16]* }, { {}*, [3 x i16]* }* %self, i16 0, i32 1
  %2 = bitcast [3 x i16]** %1 to i1 ({}*, %"fmt::Formatter"*) addrspace(1)***
  %_4.11 = load i1 ({}*, %"fmt::Formatter"*) addrspace(1)**, i1 ({}*, %"fmt::Formatter"*) addrspace(1)*** %2, align 1, !nonnull !568
  %3 = getelementptr inbounds i1 ({}*, %"fmt::Formatter"*) addrspace(1)*, i1 ({}*, %"fmt::Formatter"*) addrspace(1)** %_4.11, i16 3
  %4 = load i1 ({}*, %"fmt::Formatter"*) addrspace(1)*, i1 ({}*, %"fmt::Formatter"*) addrspace(1)** %3, align 1, !invariant.load !568, !nonnull !568
  %5 = tail call zeroext addrspace(1) i1 %4({}* nonnull align 1 %_4.0, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %5
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h560767b56b1398f0E"({ i8*, i8* }** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_21.i = alloca { i8*, i8* }*, align 1
  %debug_trait_builder1.i = alloca %"fmt::builders::DebugTuple", align 1
  %_4 = load { i8*, i8* }*, { i8*, i8* }** %self, align 1, !nonnull !568
  %0 = bitcast { i8*, i8* }* %_4 to {}**
  %1 = load {}*, {}** %0, align 1, !alias.scope !3932
  %2 = icmp eq {}* %1, null
  br i1 %2, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit29.i, label %bb1.i

bb1.i:                                            ; preds = %start
  %3 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %3), !noalias !3932
  %4 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %4, align 1, !noalias !3935, !nonnull !568
  %5 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %6 = bitcast [3 x i16]** %5 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %6, align 1, !noalias !3935, !nonnull !568
  %7 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %8 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %7, align 1, !invariant.load !568, !noalias !3935, !nonnull !568
  %9 = tail call zeroext addrspace(1) i1 %8({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19071 to [0 x i8]*), i16 4), !noalias !3944
  %10 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder1.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %10, align 1, !alias.scope !3945, !noalias !3946
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 3
  %12 = zext i1 %9 to i8
  store i8 %12, i8* %11, align 1, !alias.scope !3945, !noalias !3946
  %13 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 5
  store i16 0, i16* %13, align 1, !alias.scope !3945, !noalias !3946
  %14 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 7
  store i8 0, i8* %14, align 1, !alias.scope !3945, !noalias !3946
  %15 = bitcast { i8*, i8* }** %_21.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15), !noalias !3932
  store { i8*, i8* }* %_4, { i8*, i8* }** %_21.i, align 1, !noalias !3932
  %_18.0.i = bitcast { i8*, i8* }** %_21.i to {}*
; call core::fmt::builders::DebugTuple::field
  %_16.i = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder1.i, {}* nonnull align 1 %_18.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({ i8*, i8* }**) addrspace(1)*, i16, i16, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.16 to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15), !noalias !3932
  %_3.i.i = load i16, i16* %13, align 1, !noalias !3932
  %_2.i.i = icmp eq i16 %_3.i.i, 0
  %.pre.i.i = load i8, i8* %11, align 1, !range !87, !noalias !3932
  br i1 %_2.i.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i, label %bb2.i.i

bb2.i.i:                                          ; preds = %bb1.i
  %_5.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_5.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %_5.i.i.i.i = icmp ne i16 %_3.i.i, 1
  %16 = load i8, i8* %14, align 1, !noalias !3932
  %_7.i.i.i.i = icmp eq i8 %16, 0
  %or.cond.i = or i1 %_5.i.i.i.i, %_7.i.i.i.i
  br i1 %or.cond.i, label %bb20.i.i.i.i, label %bb3.i.i.i.i

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %17 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder1.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %17, align 1, !alias.scope !3947, !noalias !3932, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !3950, !noalias !3947
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %18 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %19 = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  br i1 %18, label %bb11.i.i.i.i, label %bb20.i.i.i.i

bb11.i.i.i.i:                                     ; preds = %bb3.i.i.i.i
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %19, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i.i = load {}*, {}** %20, align 1, !noalias !3953, !nonnull !568
  %21 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %19, i16 0, i32 11, i32 1
  %22 = bitcast [3 x i16]** %21 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %22, align 1, !noalias !3953, !nonnull !568
  %23 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i.i, i16 3
  %24 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %23, align 1, !invariant.load !568, !noalias !3953, !nonnull !568
  %25 = call zeroext addrspace(1) i1 %24({}* nonnull align 1 %_3.0.i2.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %25, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i", label %bb20.i.i.i.i

bb20.i.i.i.i:                                     ; preds = %bb11.i.i.i.i, %bb3.i.i.i.i, %bb3.i.i.i
  %_21.i.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %10, align 1, !noalias !3932, !nonnull !568
  %26 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %26, align 1, !noalias !3956, !nonnull !568
  %27 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i.i, i16 0, i32 11, i32 1
  %28 = bitcast [3 x i16]** %27 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %28, align 1, !noalias !3956, !nonnull !568
  %29 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %30 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %29, align 1, !invariant.load !568, !noalias !3956, !nonnull !568
  %31 = call zeroext addrspace(1) i1 %30({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i.i = zext i1 %31 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i": ; preds = %bb20.i.i.i.i, %bb11.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i8 [ 1, %bb2.i.i ], [ %phitmp.i.i, %bb20.i.i.i.i ], [ 1, %bb11.i.i.i.i ]
  store i8 %.0.i.i.i, i8* %11, align 1, !noalias !3932
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i: ; preds = %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i", %bb1.i
  %32 = phi i8 [ %.0.i.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i" ], [ %.pre.i.i, %bb1.i ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %3), !noalias !3932
  br label %"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hce651a56c12ef7bfE.exit"

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit29.i: ; preds = %start
  %33 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i3.i = load {}*, {}** %33, align 1, !noalias !3959, !nonnull !568
  %34 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %35 = bitcast [3 x i16]** %34 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i4.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %35, align 1, !noalias !3959, !nonnull !568
  %36 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i4.i, i16 3
  %37 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %36, align 1, !invariant.load !568, !noalias !3968, !nonnull !568
  %38 = tail call zeroext addrspace(1) i1 %37({}* nonnull align 1 %_3.0.i.i.i3.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19072 to [0 x i8]*), i16 4), !noalias !3969
  %39 = zext i1 %38 to i8
  br label %"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hce651a56c12ef7bfE.exit"

"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hce651a56c12ef7bfE.exit": ; preds = %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit29.i
  %.0.in.in.i = phi i8 [ %39, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit29.i ], [ %32, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i ]
  %.0.in.i = icmp ne i8 %.0.in.in.i, 0
  ret i1 %.0.in.i
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h595ed638e5f36999E"(%"option::Option<option::IntoIter<char::EscapeDebug>>"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_21.i = alloca %"option::IntoIter<char::EscapeDebug>"*, align 1
  %debug_trait_builder1.i = alloca %"fmt::builders::DebugTuple", align 1
  %_4 = load %"option::Option<option::IntoIter<char::EscapeDebug>>"*, %"option::Option<option::IntoIter<char::EscapeDebug>>"** %self, align 1, !nonnull !568
  %0 = getelementptr inbounds %"option::Option<option::IntoIter<char::EscapeDebug>>", %"option::Option<option::IntoIter<char::EscapeDebug>>"* %_4, i16 0, i32 0, i16 0
  %1 = load i8, i8* %0, align 1, !range !689, !alias.scope !3970
  %2 = icmp eq i8 %1, 5
  br i1 %2, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i, label %bb1.i

bb1.i:                                            ; preds = %start
  %3 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %3), !noalias !3970
  %4 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %4, align 1, !noalias !3973, !nonnull !568
  %5 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %6 = bitcast [3 x i16]** %5 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %6, align 1, !noalias !3973, !nonnull !568
  %7 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %8 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %7, align 1, !invariant.load !568, !noalias !3973, !nonnull !568
  %9 = tail call zeroext addrspace(1) i1 %8({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19071 to [0 x i8]*), i16 4), !noalias !3982
  %10 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder1.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %10, align 1, !alias.scope !3983, !noalias !3984
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 3
  %12 = zext i1 %9 to i8
  store i8 %12, i8* %11, align 1, !alias.scope !3983, !noalias !3984
  %13 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 5
  store i16 0, i16* %13, align 1, !alias.scope !3983, !noalias !3984
  %14 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 7
  store i8 0, i8* %14, align 1, !alias.scope !3983, !noalias !3984
  %15 = bitcast %"option::IntoIter<char::EscapeDebug>"** %_21.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15), !noalias !3970
  %16 = bitcast %"option::IntoIter<char::EscapeDebug>"** %_21.i to %"option::Option<option::IntoIter<char::EscapeDebug>>"**
  store %"option::Option<option::IntoIter<char::EscapeDebug>>"* %_4, %"option::Option<option::IntoIter<char::EscapeDebug>>"** %16, align 1, !noalias !3970
  %_18.0.i = bitcast %"option::IntoIter<char::EscapeDebug>"** %_21.i to {}*
; call core::fmt::builders::DebugTuple::field
  %_16.i = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder1.i, {}* nonnull align 1 %_18.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"option::IntoIter<char::EscapeDebug>"**) addrspace(1)*, i16, i16, i1 (%"option::IntoIter<char::EscapeDebug>"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.14 to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15), !noalias !3970
  %_3.i.i = load i16, i16* %13, align 1, !noalias !3970
  %_2.i.i = icmp eq i16 %_3.i.i, 0
  %.pre.i.i = load i8, i8* %11, align 1, !range !87, !noalias !3970
  br i1 %_2.i.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i, label %bb2.i.i

bb2.i.i:                                          ; preds = %bb1.i
  %_5.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_5.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %_5.i.i.i.i = icmp ne i16 %_3.i.i, 1
  %17 = load i8, i8* %14, align 1, !noalias !3970
  %_7.i.i.i.i = icmp eq i8 %17, 0
  %or.cond.i = or i1 %_5.i.i.i.i, %_7.i.i.i.i
  br i1 %or.cond.i, label %bb20.i.i.i.i, label %bb3.i.i.i.i

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %18 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder1.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %18, align 1, !alias.scope !3985, !noalias !3970, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !3988, !noalias !3985
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %19 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %20 = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  br i1 %19, label %bb11.i.i.i.i, label %bb20.i.i.i.i

bb11.i.i.i.i:                                     ; preds = %bb3.i.i.i.i
  %21 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %20, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i.i = load {}*, {}** %21, align 1, !noalias !3991, !nonnull !568
  %22 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %20, i16 0, i32 11, i32 1
  %23 = bitcast [3 x i16]** %22 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %23, align 1, !noalias !3991, !nonnull !568
  %24 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i.i, i16 3
  %25 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %24, align 1, !invariant.load !568, !noalias !3991, !nonnull !568
  %26 = call zeroext addrspace(1) i1 %25({}* nonnull align 1 %_3.0.i2.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %26, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i", label %bb20.i.i.i.i

bb20.i.i.i.i:                                     ; preds = %bb11.i.i.i.i, %bb3.i.i.i.i, %bb3.i.i.i
  %_21.i.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %10, align 1, !noalias !3970, !nonnull !568
  %27 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %27, align 1, !noalias !3994, !nonnull !568
  %28 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i.i, i16 0, i32 11, i32 1
  %29 = bitcast [3 x i16]** %28 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %29, align 1, !noalias !3994, !nonnull !568
  %30 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %31 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %30, align 1, !invariant.load !568, !noalias !3994, !nonnull !568
  %32 = call zeroext addrspace(1) i1 %31({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i.i = zext i1 %32 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i": ; preds = %bb20.i.i.i.i, %bb11.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i8 [ 1, %bb2.i.i ], [ %phitmp.i.i, %bb20.i.i.i.i ], [ 1, %bb11.i.i.i.i ]
  store i8 %.0.i.i.i, i8* %11, align 1, !noalias !3970
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i: ; preds = %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i", %bb1.i
  %33 = phi i8 [ %.0.i.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i" ], [ %.pre.i.i, %bb1.i ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %3), !noalias !3970
  br label %"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h7f90a3dc3099f4bcE.exit"

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i: ; preds = %start
  %34 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i4.i = load {}*, {}** %34, align 1, !noalias !3997, !nonnull !568
  %35 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %36 = bitcast [3 x i16]** %35 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i5.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %36, align 1, !noalias !3997, !nonnull !568
  %37 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i5.i, i16 3
  %38 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %37, align 1, !invariant.load !568, !noalias !4006, !nonnull !568
  %39 = tail call zeroext addrspace(1) i1 %38({}* nonnull align 1 %_3.0.i.i.i4.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19072 to [0 x i8]*), i16 4), !noalias !4007
  %40 = zext i1 %39 to i8
  br label %"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h7f90a3dc3099f4bcE.exit"

"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h7f90a3dc3099f4bcE.exit": ; preds = %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i
  %.0.in.in.i = phi i8 [ %40, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i ], [ %33, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i ]
  %.0.in.i = icmp ne i8 %.0.in.in.i, 0
  ret i1 %.0.in.i
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h5a5b823814e019c8E"({ i8*, i8* }** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_21.i = alloca { i8*, i8* }*, align 1
  %debug_trait_builder1.i = alloca %"fmt::builders::DebugTuple", align 1
  %_4 = load { i8*, i8* }*, { i8*, i8* }** %self, align 1, !nonnull !568
  %0 = bitcast { i8*, i8* }* %_4 to {}**
  %1 = load {}*, {}** %0, align 1, !alias.scope !4008
  %2 = icmp eq {}* %1, null
  br i1 %2, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit29.i, label %bb1.i

bb1.i:                                            ; preds = %start
  %3 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %3), !noalias !4008
  %4 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %4, align 1, !noalias !4011, !nonnull !568
  %5 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %6 = bitcast [3 x i16]** %5 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %6, align 1, !noalias !4011, !nonnull !568
  %7 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %8 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %7, align 1, !invariant.load !568, !noalias !4011, !nonnull !568
  %9 = tail call zeroext addrspace(1) i1 %8({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19071 to [0 x i8]*), i16 4), !noalias !4020
  %10 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder1.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %10, align 1, !alias.scope !4021, !noalias !4022
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 3
  %12 = zext i1 %9 to i8
  store i8 %12, i8* %11, align 1, !alias.scope !4021, !noalias !4022
  %13 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 5
  store i16 0, i16* %13, align 1, !alias.scope !4021, !noalias !4022
  %14 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 7
  store i8 0, i8* %14, align 1, !alias.scope !4021, !noalias !4022
  %15 = bitcast { i8*, i8* }** %_21.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15), !noalias !4008
  store { i8*, i8* }* %_4, { i8*, i8* }** %_21.i, align 1, !noalias !4008
  %_18.0.i = bitcast { i8*, i8* }** %_21.i to {}*
; call core::fmt::builders::DebugTuple::field
  %_16.i = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder1.i, {}* nonnull align 1 %_18.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({ i8*, i8* }**) addrspace(1)*, i16, i16, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.18 to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15), !noalias !4008
  %_3.i.i = load i16, i16* %13, align 1, !noalias !4008
  %_2.i.i = icmp eq i16 %_3.i.i, 0
  %.pre.i.i = load i8, i8* %11, align 1, !range !87, !noalias !4008
  br i1 %_2.i.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i, label %bb2.i.i

bb2.i.i:                                          ; preds = %bb1.i
  %_5.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_5.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %_5.i.i.i.i = icmp ne i16 %_3.i.i, 1
  %16 = load i8, i8* %14, align 1, !noalias !4008
  %_7.i.i.i.i = icmp eq i8 %16, 0
  %or.cond.i = or i1 %_5.i.i.i.i, %_7.i.i.i.i
  br i1 %or.cond.i, label %bb20.i.i.i.i, label %bb3.i.i.i.i

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %17 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder1.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %17, align 1, !alias.scope !4023, !noalias !4008, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !4026, !noalias !4023
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %18 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %19 = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  br i1 %18, label %bb11.i.i.i.i, label %bb20.i.i.i.i

bb11.i.i.i.i:                                     ; preds = %bb3.i.i.i.i
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %19, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i.i = load {}*, {}** %20, align 1, !noalias !4029, !nonnull !568
  %21 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %19, i16 0, i32 11, i32 1
  %22 = bitcast [3 x i16]** %21 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %22, align 1, !noalias !4029, !nonnull !568
  %23 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i.i, i16 3
  %24 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %23, align 1, !invariant.load !568, !noalias !4029, !nonnull !568
  %25 = call zeroext addrspace(1) i1 %24({}* nonnull align 1 %_3.0.i2.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %25, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i", label %bb20.i.i.i.i

bb20.i.i.i.i:                                     ; preds = %bb11.i.i.i.i, %bb3.i.i.i.i, %bb3.i.i.i
  %_21.i.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %10, align 1, !noalias !4008, !nonnull !568
  %26 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %26, align 1, !noalias !4032, !nonnull !568
  %27 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i.i, i16 0, i32 11, i32 1
  %28 = bitcast [3 x i16]** %27 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %28, align 1, !noalias !4032, !nonnull !568
  %29 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %30 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %29, align 1, !invariant.load !568, !noalias !4032, !nonnull !568
  %31 = call zeroext addrspace(1) i1 %30({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i.i = zext i1 %31 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i": ; preds = %bb20.i.i.i.i, %bb11.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i8 [ 1, %bb2.i.i ], [ %phitmp.i.i, %bb20.i.i.i.i ], [ 1, %bb11.i.i.i.i ]
  store i8 %.0.i.i.i, i8* %11, align 1, !noalias !4008
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i: ; preds = %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i", %bb1.i
  %32 = phi i8 [ %.0.i.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i" ], [ %.pre.i.i, %bb1.i ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %3), !noalias !4008
  br label %"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hf5a74168530107b9E.exit"

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit29.i: ; preds = %start
  %33 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i3.i = load {}*, {}** %33, align 1, !noalias !4035, !nonnull !568
  %34 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %35 = bitcast [3 x i16]** %34 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i4.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %35, align 1, !noalias !4035, !nonnull !568
  %36 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i4.i, i16 3
  %37 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %36, align 1, !invariant.load !568, !noalias !4044, !nonnull !568
  %38 = tail call zeroext addrspace(1) i1 %37({}* nonnull align 1 %_3.0.i.i.i3.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19072 to [0 x i8]*), i16 4), !noalias !4045
  %39 = zext i1 %38 to i8
  br label %"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hf5a74168530107b9E.exit"

"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hf5a74168530107b9E.exit": ; preds = %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit29.i
  %.0.in.in.i = phi i8 [ %39, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit29.i ], [ %32, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i ]
  %.0.in.i = icmp ne i8 %.0.in.in.i, 0
  ret i1 %.0.in.i
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h5a78e8a9e6a82fe5E"(%"char::EscapeUnicode"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_4 = load %"char::EscapeUnicode"*, %"char::EscapeUnicode"** %self, align 1, !nonnull !568
; call <core::char::EscapeUnicode as core::fmt::Debug>::fmt
  %0 = tail call zeroext addrspace(1) i1 @"_ZN62_$LT$core..char..EscapeUnicode$u20$as$u20$core..fmt..Debug$GT$3fmt17h1e03c1a9b9bba235E"(%"char::EscapeUnicode"* noalias nonnull readonly align 1 dereferenceable(7) %_4, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %0
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h5d11d86792b314b8E"(%"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_6.i = alloca %"fmt::builders::DebugStruct", align 1
  %0 = bitcast %"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>"** %self to {}**
  %_41 = load {}*, {}** %0, align 1, !nonnull !568
  %1 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_6.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %1), !noalias !4046
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %2, align 1, !noalias !4049, !nonnull !568
  %3 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %4 = bitcast [3 x i16]** %3 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %4, align 1, !noalias !4049, !nonnull !568
  %5 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %6 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %5, align 1, !invariant.load !568, !noalias !4049, !nonnull !568
  %7 = tail call zeroext addrspace(1) i1 %6({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [7 x i8] }>* @alloc18588 to [0 x i8]*), i16 7), !noalias !4058
  %8 = bitcast %"fmt::builders::DebugStruct"* %_6.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %8, align 1, !alias.scope !4059, !noalias !4060
  %9 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_6.i, i16 0, i32 3
  %10 = zext i1 %7 to i8
  store i8 %10, i8* %9, align 1, !alias.scope !4059, !noalias !4060
  %11 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_6.i, i16 0, i32 5
  store i8 0, i8* %11, align 1, !alias.scope !4059, !noalias !4060
; call core::fmt::builders::DebugStruct::field
  %_4.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %_6.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19218 to [0 x i8]*), i16 5, {}* nonnull align 1 %_41, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeDebugContinue>, char::EscapeDebug>"*) addrspace(1)*, i16, i16, i1 (%"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeDebugContinue>, char::EscapeDebug>"*, %"fmt::Formatter"*) addrspace(1)* }* @vtable.3 to [3 x i16]*))
  %12 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_4.i, i16 0, i32 5
  %13 = load i8, i8* %12, align 1, !range !87
  %_2.i.i = icmp eq i8 %13, 0
  %.phi.trans.insert.i.i = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_4.i, i16 0, i32 3
  %.pre.i.i = load i8, i8* %.phi.trans.insert.i.i, align 1, !range !87
  br i1 %_2.i.i, label %"_ZN92_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h60bbe78e6df3a539E.exit", label %bb2.i.i

bb2.i.i:                                          ; preds = %start
  %_4.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_4.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %14 = bitcast %"fmt::builders::DebugStruct"* %_4.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %14, align 1, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !4061, !noalias !4064
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %15 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %_5.cast.i.i.i.i = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %16, align 1, !nonnull !568
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 1
  %18 = bitcast [3 x i16]** %17 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %20 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %19, align 1, !invariant.load !568, !nonnull !568
  br i1 %15, label %bb2.i.i.i.i, label %bb3.i.i.i.i

bb2.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %21 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %22 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i": ; preds = %bb3.i.i.i.i, %bb2.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i1 [ true, %bb2.i.i ], [ %22, %bb3.i.i.i.i ], [ %21, %bb2.i.i.i.i ]
  %23 = zext i1 %.0.i.i.i to i8
  store i8 %23, i8* %.phi.trans.insert.i.i, align 1
  br label %"_ZN92_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h60bbe78e6df3a539E.exit"

"_ZN92_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h60bbe78e6df3a539E.exit": ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"
  %24 = phi i8 [ %23, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i" ], [ %.pre.i.i, %start ]
  %25 = icmp ne i8 %24, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %1), !noalias !4046
  ret i1 %25
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h5de8cdf0567aa522E"(%"option::IntoIter<char::EscapeDebug>"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_15.i = alloca %"option::Item<char::EscapeDebug>"*, align 1
  %debug_trait_builder.i = alloca %"fmt::builders::DebugStruct", align 1
  %_4 = load %"option::IntoIter<char::EscapeDebug>"*, %"option::IntoIter<char::EscapeDebug>"** %self, align 1, !nonnull !568
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0), !noalias !4067
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %1, align 1, !noalias !4070, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !4070, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !4070, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [8 x i8] }>* @alloc19075 to [0 x i8]*), i16 8), !noalias !4079
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !4080, !noalias !4081
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !4080, !noalias !4081
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !4080, !noalias !4081
  %11 = bitcast %"option::Item<char::EscapeDebug>"** %_15.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11), !noalias !4067
  %12 = bitcast %"option::Item<char::EscapeDebug>"** %_15.i to %"option::IntoIter<char::EscapeDebug>"**
  store %"option::IntoIter<char::EscapeDebug>"* %_4, %"option::IntoIter<char::EscapeDebug>"** %12, align 1, !noalias !4067
  %_12.0.i = bitcast %"option::Item<char::EscapeDebug>"** %_15.i to {}*
; call core::fmt::builders::DebugStruct::field
  %_8.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19218 to [0 x i8]*), i16 5, {}* nonnull align 1 %_12.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"option::Item<char::EscapeDebug>"**) addrspace(1)*, i16, i16, i1 (%"option::Item<char::EscapeDebug>"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.19 to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11), !noalias !4067
  %13 = load i8, i8* %10, align 1, !range !87, !noalias !4067
  %_2.i.i = icmp eq i8 %13, 0
  %.pre.i.i = load i8, i8* %8, align 1, !range !87, !noalias !4067
  br i1 %_2.i.i, label %"_ZN68_$LT$core..option..IntoIter$LT$A$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hd66db158de3821e2E.exit", label %bb2.i.i

bb2.i.i:                                          ; preds = %start
  %_4.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_4.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %14 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %14, align 1, !noalias !4067, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !4082, !noalias !4085
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %15 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %_5.cast.i.i.i.i = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %16, align 1, !nonnull !568
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 1
  %18 = bitcast [3 x i16]** %17 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %20 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %19, align 1, !invariant.load !568, !nonnull !568
  br i1 %15, label %bb2.i.i.i.i, label %bb3.i.i.i.i

bb2.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %21 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %22 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i": ; preds = %bb3.i.i.i.i, %bb2.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i1 [ true, %bb2.i.i ], [ %22, %bb3.i.i.i.i ], [ %21, %bb2.i.i.i.i ]
  %23 = zext i1 %.0.i.i.i to i8
  store i8 %23, i8* %8, align 1, !noalias !4067
  br label %"_ZN68_$LT$core..option..IntoIter$LT$A$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hd66db158de3821e2E.exit"

"_ZN68_$LT$core..option..IntoIter$LT$A$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hd66db158de3821e2E.exit": ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"
  %24 = phi i8 [ %23, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i" ], [ %.pre.i.i, %start ]
  %25 = icmp ne i8 %24, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0), !noalias !4067
  ret i1 %25
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h5e03d16e8533a1f2E"(%"char::CaseMappingIter"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_4 = load %"char::CaseMappingIter"*, %"char::CaseMappingIter"** %self, align 1, !nonnull !568
; call <core::char::CaseMappingIter as core::fmt::Debug>::fmt
  %0 = tail call zeroext addrspace(1) i1 @"_ZN64_$LT$core..char..CaseMappingIter$u20$as$u20$core..fmt..Debug$GT$3fmt17h488ee2d12e3553b2E"(%"char::CaseMappingIter"* noalias nonnull readonly align 1 dereferenceable(13) %_4, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %0
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h6193a0c742a2c159E"(%"marker::PhantomData<hash::sip::Sip13Rounds>"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
; call core::fmt::Formatter::pad
  %0 = tail call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter3pad17h307fb261f2dc8a5eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [11 x i8] }>* @alloc18733 to [0 x i8]*), i16 11)
  ret i1 %0
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h61efb25cb6bd03a2E"(i8*** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i.i.i.i.i = alloca [128 x i8], align 1
  %0 = bitcast i8*** %self to i16**
  %_42 = load i16*, i16** %0, align 1, !nonnull !568
  %_4.val1 = load i16, i16* %_42, align 1
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 7, i32 0
  %2 = load i8, i8* %1, align 1, !range !87, !noalias !4088
  %3 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 7, i32 1
  %old_width.1.i.i.i = load i16, i16* %3, align 1, !noalias !4088
  %4 = bitcast %"fmt::Formatter"* %f to i32*
  %old_flags.i.i.i = load i32, i32* %4, align 1, !noalias !4088
  %_2.i.i.i.i = and i32 %old_flags.i.i.i, 4
  %5 = icmp eq i32 %_2.i.i.i.i, 0
  br i1 %5, label %bb9.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %start
  %6 = or i32 %old_flags.i.i.i, 8
  store i32 %6, i32* %4, align 1, !noalias !4088
  %7 = icmp eq i8 %2, 0
  br i1 %7, label %bb6.i.i.i, label %bb9.i.i.i

bb6.i.i.i:                                        ; preds = %bb3.i.i.i
  store i8 1, i8* %1, align 1, !noalias !4088
  store i16 6, i16* %3, align 1, !noalias !4088
  br label %bb9.i.i.i

bb9.i.i.i:                                        ; preds = %bb6.i.i.i, %bb3.i.i.i, %start
  %8 = phi i32 [ %old_flags.i.i.i, %start ], [ %6, %bb6.i.i.i ], [ %6, %bb3.i.i.i ]
  %9 = or i32 %8, 4
  store i32 %9, i32* %4, align 1, !noalias !4088
  %10 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i.i.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %10), !noalias !4091
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %10, i8 undef, i16 128, i1 false), !noalias !4091
  %11 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i.i.i, i16 0, i16 128
  br label %bb15.i.i.i.i.i

bb15.i.i.i.i.i:                                   ; preds = %bb15.i.i.i.i.i, %bb9.i.i.i
  %iter.sroa.4.0.i.i.i.i.i = phi i8* [ %11, %bb9.i.i.i ], [ %12, %bb15.i.i.i.i.i ]
  %x.0.i.i.i.i.i = phi i16 [ %_4.val1, %bb9.i.i.i ], [ %13, %bb15.i.i.i.i.i ]
  %curr.0.i.i.i.i.i = phi i16 [ 128, %bb9.i.i.i ], [ %18, %bb15.i.i.i.i.i ]
  %12 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i.i.i.i.i, i16 -1
  %13 = lshr i16 %x.0.i.i.i.i.i, 4
  %14 = trunc i16 %x.0.i.i.i.i.i to i8
  %15 = and i8 %14, 15
  %_5.i9.i.i.i.i.i = icmp ult i8 %15, 10
  %16 = or i8 %15, 48
  %17 = add nuw nsw i8 %15, 87
  %.0.i15.i.i.i.i.i = select i1 %_5.i9.i.i.i.i.i, i8 %16, i8 %17
  store i8 %.0.i15.i.i.i.i.i, i8* %12, align 1, !noalias !4091
  %18 = add nsw i16 %curr.0.i.i.i.i.i, -1
  %19 = icmp eq i16 %13, 0
  br i1 %19, label %bb43.i.i.i.i.i, label %bb15.i.i.i.i.i

bb43.i.i.i.i.i:                                   ; preds = %bb15.i.i.i.i.i
  %_3.i.i.i.i.i.i.i.i = icmp ugt i16 %18, 128
  br i1 %_3.i.i.i.i.i.i.i.i, label %bb2.i.i.i.i.i.i.i.i, label %"_ZN74_$LT$core..ptr..non_null..NonNull$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h65f545a2b5e7dce8E.exit"

bb2.i.i.i.i.i.i.i.i:                              ; preds = %bb43.i.i.i.i.i
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %18, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*)), !noalias !4091
  unreachable

"_ZN74_$LT$core..ptr..non_null..NonNull$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h65f545a2b5e7dce8E.exit": ; preds = %bb43.i.i.i.i.i
  %20 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i.i.i, i16 0, i16 %18
  %_7.i.i.i.i.i.i.i.i.i = sub nuw nsw i16 129, %curr.0.i.i.i.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i.i = bitcast i8* %20 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %21 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i.i, i16 %_7.i.i.i.i.i.i.i.i.i), !noalias !4091
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %10), !noalias !4091
  store i8 %2, i8* %1, align 1, !noalias !4088
  store i16 %old_width.1.i.i.i, i16* %3, align 1, !noalias !4088
  store i32 %old_flags.i.i.i, i32* %4, align 1, !noalias !4088
  ret i1 %21
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h69059f55176c630dE"(%"str::CharIndices"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_4 = load %"str::CharIndices"*, %"str::CharIndices"** %self, align 1, !nonnull !568
; call <core::str::CharIndices as core::fmt::Debug>::fmt
  %0 = tail call zeroext addrspace(1) i1 @"_ZN59_$LT$core..str..CharIndices$u20$as$u20$core..fmt..Debug$GT$3fmt17h16bb1cbf4154bae5E"(%"str::CharIndices"* noalias nonnull readonly align 1 dereferenceable(6) %_4, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %0
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h6a4b4f8d9fdb6b87E"(i16** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_4 = load i16*, i16** %self, align 1, !nonnull !568
; call core::fmt::num::<impl core::fmt::Debug for usize>::fmt
  %0 = tail call zeroext addrspace(1) i1 @"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..Debug$u20$for$u20$usize$GT$3fmt17h5b03f6e1e4826f97E"(i16* noalias nonnull readonly align 1 dereferenceable(2) %_4, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %0
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h73353b32fd015885E"({ i8*, i8* }** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_21.i = alloca { i8*, i8* }*, align 1
  %debug_trait_builder1.i = alloca %"fmt::builders::DebugTuple", align 1
  %_4 = load { i8*, i8* }*, { i8*, i8* }** %self, align 1, !nonnull !568
  %0 = bitcast { i8*, i8* }* %_4 to {}**
  %1 = load {}*, {}** %0, align 1, !alias.scope !4094
  %2 = icmp eq {}* %1, null
  br i1 %2, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit29.i, label %bb1.i

bb1.i:                                            ; preds = %start
  %3 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %3), !noalias !4094
  %4 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %4, align 1, !noalias !4097, !nonnull !568
  %5 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %6 = bitcast [3 x i16]** %5 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %6, align 1, !noalias !4097, !nonnull !568
  %7 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %8 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %7, align 1, !invariant.load !568, !noalias !4097, !nonnull !568
  %9 = tail call zeroext addrspace(1) i1 %8({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19071 to [0 x i8]*), i16 4), !noalias !4106
  %10 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder1.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %10, align 1, !alias.scope !4107, !noalias !4108
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 3
  %12 = zext i1 %9 to i8
  store i8 %12, i8* %11, align 1, !alias.scope !4107, !noalias !4108
  %13 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 5
  store i16 0, i16* %13, align 1, !alias.scope !4107, !noalias !4108
  %14 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 7
  store i8 0, i8* %14, align 1, !alias.scope !4107, !noalias !4108
  %15 = bitcast { i8*, i8* }** %_21.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15), !noalias !4094
  store { i8*, i8* }* %_4, { i8*, i8* }** %_21.i, align 1, !noalias !4094
  %_18.0.i = bitcast { i8*, i8* }** %_21.i to {}*
; call core::fmt::builders::DebugTuple::field
  %_16.i = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder1.i, {}* nonnull align 1 %_18.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({ i8*, i8* }**) addrspace(1)*, i16, i16, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.17 to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15), !noalias !4094
  %_3.i.i = load i16, i16* %13, align 1, !noalias !4094
  %_2.i.i = icmp eq i16 %_3.i.i, 0
  %.pre.i.i = load i8, i8* %11, align 1, !range !87, !noalias !4094
  br i1 %_2.i.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i, label %bb2.i.i

bb2.i.i:                                          ; preds = %bb1.i
  %_5.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_5.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %_5.i.i.i.i = icmp ne i16 %_3.i.i, 1
  %16 = load i8, i8* %14, align 1, !noalias !4094
  %_7.i.i.i.i = icmp eq i8 %16, 0
  %or.cond.i = or i1 %_5.i.i.i.i, %_7.i.i.i.i
  br i1 %or.cond.i, label %bb20.i.i.i.i, label %bb3.i.i.i.i

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %17 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder1.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %17, align 1, !alias.scope !4109, !noalias !4094, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !4112, !noalias !4109
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %18 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %19 = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  br i1 %18, label %bb11.i.i.i.i, label %bb20.i.i.i.i

bb11.i.i.i.i:                                     ; preds = %bb3.i.i.i.i
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %19, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i.i = load {}*, {}** %20, align 1, !noalias !4115, !nonnull !568
  %21 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %19, i16 0, i32 11, i32 1
  %22 = bitcast [3 x i16]** %21 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %22, align 1, !noalias !4115, !nonnull !568
  %23 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i.i, i16 3
  %24 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %23, align 1, !invariant.load !568, !noalias !4115, !nonnull !568
  %25 = call zeroext addrspace(1) i1 %24({}* nonnull align 1 %_3.0.i2.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %25, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i", label %bb20.i.i.i.i

bb20.i.i.i.i:                                     ; preds = %bb11.i.i.i.i, %bb3.i.i.i.i, %bb3.i.i.i
  %_21.i.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %10, align 1, !noalias !4094, !nonnull !568
  %26 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %26, align 1, !noalias !4118, !nonnull !568
  %27 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i.i, i16 0, i32 11, i32 1
  %28 = bitcast [3 x i16]** %27 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %28, align 1, !noalias !4118, !nonnull !568
  %29 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %30 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %29, align 1, !invariant.load !568, !noalias !4118, !nonnull !568
  %31 = call zeroext addrspace(1) i1 %30({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i.i = zext i1 %31 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i": ; preds = %bb20.i.i.i.i, %bb11.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i8 [ 1, %bb2.i.i ], [ %phitmp.i.i, %bb20.i.i.i.i ], [ 1, %bb11.i.i.i.i ]
  store i8 %.0.i.i.i, i8* %11, align 1, !noalias !4094
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i: ; preds = %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i", %bb1.i
  %32 = phi i8 [ %.0.i.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i" ], [ %.pre.i.i, %bb1.i ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %3), !noalias !4094
  br label %"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hf4cc3640200a9c39E.exit"

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit29.i: ; preds = %start
  %33 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i3.i = load {}*, {}** %33, align 1, !noalias !4121, !nonnull !568
  %34 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %35 = bitcast [3 x i16]** %34 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i4.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %35, align 1, !noalias !4121, !nonnull !568
  %36 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i4.i, i16 3
  %37 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %36, align 1, !invariant.load !568, !noalias !4130, !nonnull !568
  %38 = tail call zeroext addrspace(1) i1 %37({}* nonnull align 1 %_3.0.i.i.i3.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19072 to [0 x i8]*), i16 4), !noalias !4131
  %39 = zext i1 %38 to i8
  br label %"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hf4cc3640200a9c39E.exit"

"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hf4cc3640200a9c39E.exit": ; preds = %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit29.i
  %.0.in.in.i = phi i8 [ %39, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit29.i ], [ %32, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i ]
  %.0.in.i = icmp ne i8 %.0.in.in.i, 0
  ret i1 %.0.in.i
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h75013bf39c165a49E"(%"panic::Location"*** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_4 = load %"panic::Location"**, %"panic::Location"*** %self, align 1, !nonnull !568
  %_4.val = load %"panic::Location"*, %"panic::Location"** %_4, align 1
; call <core::panic::Location as core::fmt::Debug>::fmt
  %0 = tail call zeroext addrspace(1) i1 @"_ZN58_$LT$core..panic..Location$u20$as$u20$core..fmt..Debug$GT$3fmt17hbd5f07911552ab2bE"(%"panic::Location"* noalias nonnull readonly align 1 dereferenceable(12) %_4.val, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %0
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h7ec51cc19a0e3de7E"(%"option::Option<char::EscapeUnicode>"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_21.i = alloca %"char::EscapeUnicode"*, align 1
  %debug_trait_builder1.i = alloca %"fmt::builders::DebugTuple", align 1
  %_4 = load %"option::Option<char::EscapeUnicode>"*, %"option::Option<char::EscapeUnicode>"** %self, align 1, !nonnull !568
  %0 = bitcast %"option::Option<char::EscapeUnicode>"* %_4 to i32*
  %1 = load i32, i32* %0, align 1, !range !4132, !alias.scope !4133
  %2 = icmp eq i32 %1, 1114112
  br i1 %2, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i, label %bb1.i

bb1.i:                                            ; preds = %start
  %3 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %3), !noalias !4133
  %4 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %4, align 1, !noalias !4136, !nonnull !568
  %5 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %6 = bitcast [3 x i16]** %5 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %6, align 1, !noalias !4136, !nonnull !568
  %7 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %8 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %7, align 1, !invariant.load !568, !noalias !4136, !nonnull !568
  %9 = tail call zeroext addrspace(1) i1 %8({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19071 to [0 x i8]*), i16 4), !noalias !4145
  %10 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder1.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %10, align 1, !alias.scope !4146, !noalias !4147
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 3
  %12 = zext i1 %9 to i8
  store i8 %12, i8* %11, align 1, !alias.scope !4146, !noalias !4147
  %13 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 5
  store i16 0, i16* %13, align 1, !alias.scope !4146, !noalias !4147
  %14 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 7
  store i8 0, i8* %14, align 1, !alias.scope !4146, !noalias !4147
  %15 = bitcast %"char::EscapeUnicode"** %_21.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15), !noalias !4133
  %16 = bitcast %"char::EscapeUnicode"** %_21.i to %"option::Option<char::EscapeUnicode>"**
  store %"option::Option<char::EscapeUnicode>"* %_4, %"option::Option<char::EscapeUnicode>"** %16, align 1, !noalias !4133
  %_18.0.i = bitcast %"char::EscapeUnicode"** %_21.i to {}*
; call core::fmt::builders::DebugTuple::field
  %_16.i = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder1.i, {}* nonnull align 1 %_18.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"char::EscapeUnicode"**) addrspace(1)*, i16, i16, i1 (%"char::EscapeUnicode"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.I to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15), !noalias !4133
  %_3.i.i = load i16, i16* %13, align 1, !noalias !4133
  %_2.i.i = icmp eq i16 %_3.i.i, 0
  %.pre.i.i = load i8, i8* %11, align 1, !range !87, !noalias !4133
  br i1 %_2.i.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i, label %bb2.i.i

bb2.i.i:                                          ; preds = %bb1.i
  %_5.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_5.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %_5.i.i.i.i = icmp ne i16 %_3.i.i, 1
  %17 = load i8, i8* %14, align 1, !noalias !4133
  %_7.i.i.i.i = icmp eq i8 %17, 0
  %or.cond.i = or i1 %_5.i.i.i.i, %_7.i.i.i.i
  br i1 %or.cond.i, label %bb20.i.i.i.i, label %bb3.i.i.i.i

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %18 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder1.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %18, align 1, !alias.scope !4148, !noalias !4133, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !4151, !noalias !4148
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %19 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %20 = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  br i1 %19, label %bb11.i.i.i.i, label %bb20.i.i.i.i

bb11.i.i.i.i:                                     ; preds = %bb3.i.i.i.i
  %21 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %20, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i.i = load {}*, {}** %21, align 1, !noalias !4154, !nonnull !568
  %22 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %20, i16 0, i32 11, i32 1
  %23 = bitcast [3 x i16]** %22 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %23, align 1, !noalias !4154, !nonnull !568
  %24 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i.i, i16 3
  %25 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %24, align 1, !invariant.load !568, !noalias !4154, !nonnull !568
  %26 = call zeroext addrspace(1) i1 %25({}* nonnull align 1 %_3.0.i2.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %26, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i", label %bb20.i.i.i.i

bb20.i.i.i.i:                                     ; preds = %bb11.i.i.i.i, %bb3.i.i.i.i, %bb3.i.i.i
  %_21.i.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %10, align 1, !noalias !4133, !nonnull !568
  %27 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %27, align 1, !noalias !4157, !nonnull !568
  %28 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i.i, i16 0, i32 11, i32 1
  %29 = bitcast [3 x i16]** %28 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %29, align 1, !noalias !4157, !nonnull !568
  %30 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %31 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %30, align 1, !invariant.load !568, !noalias !4157, !nonnull !568
  %32 = call zeroext addrspace(1) i1 %31({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i.i = zext i1 %32 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i": ; preds = %bb20.i.i.i.i, %bb11.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i8 [ 1, %bb2.i.i ], [ %phitmp.i.i, %bb20.i.i.i.i ], [ 1, %bb11.i.i.i.i ]
  store i8 %.0.i.i.i, i8* %11, align 1, !noalias !4133
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i: ; preds = %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i", %bb1.i
  %33 = phi i8 [ %.0.i.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i" ], [ %.pre.i.i, %bb1.i ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %3), !noalias !4133
  br label %"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h085a39e8ba8cab83E.exit"

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i: ; preds = %start
  %34 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i4.i = load {}*, {}** %34, align 1, !noalias !4160, !nonnull !568
  %35 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %36 = bitcast [3 x i16]** %35 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i5.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %36, align 1, !noalias !4160, !nonnull !568
  %37 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i5.i, i16 3
  %38 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %37, align 1, !invariant.load !568, !noalias !4169, !nonnull !568
  %39 = tail call zeroext addrspace(1) i1 %38({}* nonnull align 1 %_3.0.i.i.i4.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19072 to [0 x i8]*), i16 4), !noalias !4170
  %40 = zext i1 %39 to i8
  br label %"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h085a39e8ba8cab83E.exit"

"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h085a39e8ba8cab83E.exit": ; preds = %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i
  %.0.in.in.i = phi i8 [ %40, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30.i ], [ %33, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i ]
  %.0.in.i = icmp ne i8 %.0.in.in.i, 0
  ret i1 %.0.in.i
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h89bf6075c5fedd4cE"(float** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* nocapture align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_4 = load float*, float** %self, align 1, !nonnull !568
  %self.val.i = load float, float* %_4, align 1, !alias.scope !4171
  %0 = bitcast %"fmt::Formatter"* %f to i32*
  %_3.i.i.i = load i32, i32* %0, align 1, !alias.scope !4174, !noalias !4171
  %_2.i.i.i = and i32 %_3.i.i.i, 1
  %1 = icmp eq i32 %_2.i.i.i, 0
  %sign.0.i.i = select i1 %1, i8 1, i8 3
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 9, i32 0
  %3 = load i8, i8* %2, align 1, !range !87, !noalias !4171
  %4 = icmp eq i8 %3, 0
  br i1 %4, label %bb9.i.i, label %bb10.i.i

bb9.i.i:                                          ; preds = %start
; call core::fmt::float::float_to_decimal_common_shortest
  %5 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt5float32float_to_decimal_common_shortest17he9fe45e94df9e1b4E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, float %self.val.i, i8 %sign.0.i.i, i16 1), !noalias !4171
  br label %"_ZN4core3fmt5float50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$f32$GT$3fmt17h1cbb009d29fe630cE.exit"

bb10.i.i:                                         ; preds = %start
  %6 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 9, i32 1
  %precision.i.i = load i16, i16* %6, align 1, !noalias !4171
; call core::fmt::float::float_to_decimal_common_exact
  %7 = tail call fastcc zeroext addrspace(1) i1 @_ZN4core3fmt5float29float_to_decimal_common_exact17h2d293e0c1d02ed88E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, float %self.val.i, i8 %sign.0.i.i, i16 %precision.i.i), !noalias !4171
  br label %"_ZN4core3fmt5float50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$f32$GT$3fmt17h1cbb009d29fe630cE.exit"

"_ZN4core3fmt5float50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$f32$GT$3fmt17h1cbb009d29fe630cE.exit": ; preds = %bb9.i.i, %bb10.i.i
  %.0.in.i.i = phi i1 [ %7, %bb10.i.i ], [ %5, %bb9.i.i ]
  ret i1 %.0.in.i.i
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h8a721444988fd973E"(%"option::Item<char::EscapeDebug>"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_15.i = alloca %"option::Option<char::EscapeDebug>"*, align 1
  %debug_trait_builder.i = alloca %"fmt::builders::DebugStruct", align 1
  %_4 = load %"option::Item<char::EscapeDebug>"*, %"option::Item<char::EscapeDebug>"** %self, align 1, !nonnull !568
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0), !noalias !4177
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %1, align 1, !noalias !4180, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !4180, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !4180, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19073 to [0 x i8]*), i16 4), !noalias !4189
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !4190, !noalias !4191
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !4190, !noalias !4191
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !4190, !noalias !4191
  %11 = bitcast %"option::Option<char::EscapeDebug>"** %_15.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11), !noalias !4177
  %12 = bitcast %"option::Option<char::EscapeDebug>"** %_15.i to %"option::Item<char::EscapeDebug>"**
  store %"option::Item<char::EscapeDebug>"* %_4, %"option::Item<char::EscapeDebug>"** %12, align 1, !noalias !4177
  %_12.0.i = bitcast %"option::Option<char::EscapeDebug>"** %_15.i to {}*
; call core::fmt::builders::DebugStruct::field
  %_8.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [3 x i8] }>* @alloc19074 to [0 x i8]*), i16 3, {}* nonnull align 1 %_12.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"option::Option<char::EscapeDebug>"**) addrspace(1)*, i16, i16, i1 (%"option::Option<char::EscapeDebug>"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.Q to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11), !noalias !4177
  %13 = load i8, i8* %10, align 1, !range !87, !noalias !4177
  %_2.i.i = icmp eq i8 %13, 0
  %.pre.i.i = load i8, i8* %8, align 1, !range !87, !noalias !4177
  br i1 %_2.i.i, label %"_ZN64_$LT$core..option..Item$LT$A$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h46bbcee402de1f7dE.exit", label %bb2.i.i

bb2.i.i:                                          ; preds = %start
  %_4.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_4.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %14 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %14, align 1, !noalias !4177, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !4192, !noalias !4195
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %15 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %_5.cast.i.i.i.i = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %16, align 1, !nonnull !568
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 1
  %18 = bitcast [3 x i16]** %17 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %20 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %19, align 1, !invariant.load !568, !nonnull !568
  br i1 %15, label %bb2.i.i.i.i, label %bb3.i.i.i.i

bb2.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %21 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %22 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i": ; preds = %bb3.i.i.i.i, %bb2.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i1 [ true, %bb2.i.i ], [ %22, %bb3.i.i.i.i ], [ %21, %bb2.i.i.i.i ]
  %23 = zext i1 %.0.i.i.i to i8
  store i8 %23, i8* %8, align 1, !noalias !4177
  br label %"_ZN64_$LT$core..option..Item$LT$A$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h46bbcee402de1f7dE.exit"

"_ZN64_$LT$core..option..Item$LT$A$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h46bbcee402de1f7dE.exit": ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"
  %24 = phi i8 [ %23, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i" ], [ %.pre.i.i, %start ]
  %25 = icmp ne i8 %24, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0), !noalias !4177
  ret i1 %25
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h9065caa0e6bfa575E"({ [0 x i8]*, i16 }** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %entry.i.i.i = alloca i8*, align 1
  %_6.i.i = alloca %"fmt::builders::DebugList", align 1
  %_4 = load { [0 x i8]*, i16 }*, { [0 x i8]*, i16 }** %self, align 1, !nonnull !568
  %0 = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %_4, i16 0, i32 0
  %_4.0.i = load [0 x i8]*, [0 x i8]** %0, align 1, !alias.scope !4198, !nonnull !568
  %1 = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %_4, i16 0, i32 1
  %_4.1.i = load i16, i16* %1, align 1, !alias.scope !4198
  %2 = getelementptr inbounds %"fmt::builders::DebugList", %"fmt::builders::DebugList"* %_6.i.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %2), !noalias !4201
  %3 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %3, align 1, !noalias !4204, !nonnull !568
  %4 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %5 = bitcast [3 x i16]** %4 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %5, align 1, !noalias !4204, !nonnull !568
  %6 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %7 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %6, align 1, !invariant.load !568, !noalias !4204, !nonnull !568
  %8 = tail call zeroext addrspace(1) i1 %7({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18664 to [0 x i8]*), i16 1), !noalias !4211
  %9 = zext i1 %8 to i8
  %_6.sroa.0.0..sroa_cast1.i.i.i.i = bitcast %"fmt::builders::DebugList"* %_6.i.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %_6.sroa.0.0..sroa_cast1.i.i.i.i, align 1, !alias.scope !4212, !noalias !4201
  %10 = getelementptr inbounds %"fmt::builders::DebugList", %"fmt::builders::DebugList"* %_6.i.i, i16 0, i32 1, i32 3
  store i8 %9, i8* %10, align 1, !alias.scope !4212, !noalias !4201
  %11 = getelementptr inbounds %"fmt::builders::DebugList", %"fmt::builders::DebugList"* %_6.i.i, i16 0, i32 1, i32 5
  store i8 0, i8* %11, align 1, !alias.scope !4212, !noalias !4201
  %12 = getelementptr inbounds [0 x i8], [0 x i8]* %_4.0.i, i16 0, i16 %_4.1.i
  %_13.i12.i.i.i = icmp eq i16 %_4.1.i, 0
  br i1 %_13.i12.i.i.i, label %_ZN4core3fmt8builders9DebugList7entries17hd850b5e4d753927bE.exit.i.i, label %bb5.lr.ph.i.i.i

bb5.lr.ph.i.i.i:                                  ; preds = %start
  %13 = getelementptr [0 x i8], [0 x i8]* %_4.0.i, i16 0, i16 0
  %14 = bitcast i8** %entry.i.i.i to i8*
  %_17.0.i.i.i = bitcast i8** %entry.i.i.i to {}*
  %_5.i.i.i.i = bitcast %"fmt::builders::DebugList"* %_6.i.i to %"fmt::builders::DebugInner"*
  br label %bb5.i.i.i

bb5.i.i.i:                                        ; preds = %bb5.i.i.i, %bb5.lr.ph.i.i.i
  %iter.sroa.0.013.i.i.i = phi i8* [ %13, %bb5.lr.ph.i.i.i ], [ %15, %bb5.i.i.i ]
  %15 = getelementptr inbounds i8, i8* %iter.sroa.0.013.i.i.i, i16 1
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14), !noalias !4201
  store i8* %iter.sroa.0.013.i.i.i, i8** %entry.i.i.i, align 1, !noalias !4201
; call core::fmt::builders::DebugInner::entry
  call fastcc addrspace(1) void @_ZN4core3fmt8builders10DebugInner5entry17h8e131ef85fccf0c6E(%"fmt::builders::DebugInner"* nonnull align 1 dereferenceable(4) %_5.i.i.i.i, {}* nonnull align 1 %_17.0.i.i.i, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*)), !noalias !4198
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14), !noalias !4201
  %_13.i.i.i.i = icmp eq i8* %15, %12
  br i1 %_13.i.i.i.i, label %_ZN4core3fmt8builders9DebugList7entries17hd850b5e4d753927bE.exit.loopexit.i.i, label %bb5.i.i.i

_ZN4core3fmt8builders9DebugList7entries17hd850b5e4d753927bE.exit.loopexit.i.i: ; preds = %bb5.i.i.i
  %.pre.i.i = load i8, i8* %10, align 1, !range !87, !noalias !4201
  br label %_ZN4core3fmt8builders9DebugList7entries17hd850b5e4d753927bE.exit.i.i

_ZN4core3fmt8builders9DebugList7entries17hd850b5e4d753927bE.exit.i.i: ; preds = %_ZN4core3fmt8builders9DebugList7entries17hd850b5e4d753927bE.exit.loopexit.i.i, %start
  %16 = phi i8 [ %.pre.i.i, %_ZN4core3fmt8builders9DebugList7entries17hd850b5e4d753927bE.exit.loopexit.i.i ], [ %9, %start ]
  %_2.i.i.i = icmp eq i8 %16, 0
  br i1 %_2.i.i.i, label %bb3.i.i.i.i, label %"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h49144c1eebc06d07E.exit"

bb3.i.i.i.i:                                      ; preds = %_ZN4core3fmt8builders9DebugList7entries17hd850b5e4d753927bE.exit.i.i
  %_3.i.i.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %_6.sroa.0.0..sroa_cast1.i.i.i.i, align 1, !noalias !4201, !nonnull !568
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_3.i.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i.i = load {}*, {}** %17, align 1, !noalias !4213, !nonnull !568
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_3.i.i.i.i.i, i16 0, i32 11, i32 1
  %19 = bitcast [3 x i16]** %18 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %19, align 1, !noalias !4213, !nonnull !568
  %20 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i.i, i16 3
  %21 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %20, align 1, !invariant.load !568, !noalias !4213, !nonnull !568
  %22 = call zeroext addrspace(1) i1 %21({}* nonnull align 1 %_3.0.i.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18665 to [0 x i8]*), i16 1), !noalias !4198
  br label %"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h49144c1eebc06d07E.exit"

"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h49144c1eebc06d07E.exit": ; preds = %_ZN4core3fmt8builders9DebugList7entries17hd850b5e4d753927bE.exit.i.i, %bb3.i.i.i.i
  %.0.i.i.i.i = phi i1 [ true, %_ZN4core3fmt8builders9DebugList7entries17hd850b5e4d753927bE.exit.i.i ], [ %22, %bb3.i.i.i.i ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %2), !noalias !4201
  ret i1 %.0.i.i.i.i
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h93a3617dbe1edcb4E"({ [0 x i8]*, i16 }* noalias nocapture readonly align 1 dereferenceable(4) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %0 = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %self, i16 0, i32 0
  %_4.0 = load [0 x i8]*, [0 x i8]** %0, align 1, !nonnull !568
  %1 = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %self, i16 0, i32 1
  %_4.1 = load i16, i16* %1, align 1
; call <str as core::fmt::Debug>::fmt
  %2 = tail call zeroext addrspace(1) i1 @"_ZN40_$LT$str$u20$as$u20$core..fmt..Debug$GT$3fmt17h453ad31d24f56a92E"([0 x i8]* noalias nonnull readonly align 1 %_4.0, i16 %_4.1, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %2
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h9903c2e3d91f0488E"(i8** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i.i2 = alloca [128 x i8], align 1
  %buf.i.i = alloca [39 x i8], align 1
  %buf.i.i.i = alloca [128 x i8], align 1
  %_4 = load i8*, i8** %self, align 1, !nonnull !568
  %0 = bitcast %"fmt::Formatter"* %f to i32*
  %_3.i.i = load i32, i32* %0, align 1, !alias.scope !4216, !noalias !4219
  %_2.i.i = and i32 %_3.i.i, 16
  %1 = icmp eq i32 %_2.i.i, 0
  br i1 %1, label %bb2.i, label %bb3.i

bb2.i:                                            ; preds = %start
  %_2.i2.i = and i32 %_3.i.i, 32
  %2 = icmp eq i32 %_2.i2.i, 0
  %_2.i.i1 = load i8, i8* %_4, align 1
  br i1 %2, label %bb6.i, label %bb7.i

bb3.i:                                            ; preds = %start
  %_4.i = load i8, i8* %_4, align 1, !alias.scope !4222
  %3 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i2, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %3), !noalias !4222
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %3, i8 undef, i16 128, i1 false), !noalias !4222
  %4 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i2, i16 0, i16 128
  br label %bb15.i.i

bb15.i.i:                                         ; preds = %bb15.i.i, %bb3.i
  %iter.sroa.4.0.i.i = phi i8* [ %4, %bb3.i ], [ %5, %bb15.i.i ]
  %x.0.i.i = phi i8 [ %_4.i, %bb3.i ], [ %7, %bb15.i.i ]
  %curr.0.i.i = phi i16 [ 128, %bb3.i ], [ %10, %bb15.i.i ]
  %5 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i.i, i16 -1
  %6 = and i8 %x.0.i.i, 15
  %7 = lshr i8 %x.0.i.i, 4
  %_5.i8.i.i = icmp ult i8 %6, 10
  %8 = or i8 %6, 48
  %9 = add nuw nsw i8 %6, 87
  %.0.i14.i.i = select i1 %_5.i8.i.i, i8 %8, i8 %9
  store i8 %.0.i14.i.i, i8* %5, align 1, !noalias !4222
  %10 = add nsw i16 %curr.0.i.i, -1
  %11 = icmp eq i8 %7, 0
  br i1 %11, label %bb43.i.i, label %bb15.i.i

bb43.i.i:                                         ; preds = %bb15.i.i
  %_3.i.i.i.i.i = icmp ugt i16 %10, 128
  br i1 %_3.i.i.i.i.i, label %bb2.i.i.i.i.i, label %"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u8$GT$3fmt17h60e0f1f08fe98d54E.exit"

bb2.i.i.i.i.i:                                    ; preds = %bb43.i.i
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %10, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*)), !noalias !4222
  unreachable

"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u8$GT$3fmt17h60e0f1f08fe98d54E.exit": ; preds = %bb43.i.i
  %12 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i2, i16 0, i16 %10
  %_7.i.i.i.i.i.i = sub nuw nsw i16 129, %curr.0.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i3 = bitcast i8* %12 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %13 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i3, i16 %_7.i.i.i.i.i.i), !noalias !4222
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %3), !noalias !4222
  br label %"_ZN4core3fmt3num49_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u8$GT$3fmt17h3a40db8b381f1ef4E.exit"

bb6.i:                                            ; preds = %bb2.i
  %14 = zext i8 %_2.i.i1 to i16
  %15 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 39, i8* nonnull %15), !noalias !4225
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(39) %15, i8 undef, i16 39, i1 false), !noalias !4225
  %_57.i.i = icmp ugt i8 %_2.i.i1, 99
  br i1 %_57.i.i, label %bb26.i.thread.i, label %bb26.i.i

bb26.i.thread.i:                                  ; preds = %bb6.i
  %16 = udiv i8 %_2.i.i1, 100
  %17 = mul i8 %16, 100
  %_6028.i7.i.decomposed = sub i8 %_2.i.i1, %17
  %18 = shl nuw i8 %_6028.i7.i.decomposed, 1
  %d14.i.i = zext i8 %18 to i16
  %19 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d14.i.i
  %20 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 37
  %21 = bitcast i8* %19 to i16*
  %22 = bitcast i8* %20 to i16*
  %23 = load i16, i16* %21, align 1, !noalias !4225
  store i16 %23, i16* %22, align 1, !noalias !4225
  br label %bb28.i.i

bb26.i.i:                                         ; preds = %bb6.i
  %_75.i.i = icmp ult i8 %_2.i.i1, 10
  br i1 %_75.i.i, label %bb28.i.i, label %bb27.i.i

bb27.i.i:                                         ; preds = %bb26.i.i
  %d16.i.i = shl nuw nsw i16 %14, 1
  %24 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d16.i.i
  %25 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 37
  %26 = bitcast i8* %24 to i16*
  %27 = bitcast i8* %25 to i16*
  %28 = load i16, i16* %26, align 1, !noalias !4225
  store i16 %28, i16* %27, align 1, !noalias !4225
  br label %"_ZN4core3fmt3num3imp51_$LT$impl$u20$core..fmt..Display$u20$for$u20$u8$GT$3fmt17h15a9d9444c491f95E.exit"

bb28.i.i:                                         ; preds = %bb26.i.i, %bb26.i.thread.i
  %curr.1.i6.i = phi i16 [ 36, %bb26.i.thread.i ], [ 38, %bb26.i.i ]
  %n1.0.i5.off0.i = phi i8 [ %16, %bb26.i.thread.i ], [ %_2.i.i1, %bb26.i.i ]
  %29 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 %curr.1.i6.i
  %30 = add nuw nsw i8 %n1.0.i5.off0.i, 48
  store i8 %30, i8* %29, align 1, !noalias !4225
  br label %"_ZN4core3fmt3num3imp51_$LT$impl$u20$core..fmt..Display$u20$for$u20$u8$GT$3fmt17h15a9d9444c491f95E.exit"

"_ZN4core3fmt3num3imp51_$LT$impl$u20$core..fmt..Display$u20$for$u20$u8$GT$3fmt17h15a9d9444c491f95E.exit": ; preds = %bb27.i.i, %bb28.i.i
  %curr.2.i.i = phi i16 [ %curr.1.i6.i, %bb28.i.i ], [ 37, %bb27.i.i ]
  %31 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 %curr.2.i.i
  %_98.i.i = sub nuw nsw i16 39, %curr.2.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i = bitcast i8* %31 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %32 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), i16 0, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i, i16 %_98.i.i), !noalias !4225
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 39, i8* nonnull %15), !noalias !4225
  br label %"_ZN4core3fmt3num49_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u8$GT$3fmt17h3a40db8b381f1ef4E.exit"

bb7.i:                                            ; preds = %bb2.i
  %33 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %33), !noalias !4228
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %33, i8 undef, i16 128, i1 false), !noalias !4228
  %34 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 128
  br label %bb15.i.i.i

bb15.i.i.i:                                       ; preds = %bb15.i.i.i, %bb7.i
  %iter.sroa.4.0.i.i.i = phi i8* [ %34, %bb7.i ], [ %35, %bb15.i.i.i ]
  %x.0.i.i.i = phi i8 [ %_2.i.i1, %bb7.i ], [ %37, %bb15.i.i.i ]
  %curr.0.i.i.i = phi i16 [ 128, %bb7.i ], [ %40, %bb15.i.i.i ]
  %35 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i.i.i, i16 -1
  %36 = and i8 %x.0.i.i.i, 15
  %37 = lshr i8 %x.0.i.i.i, 4
  %_5.i8.i.i.i = icmp ult i8 %36, 10
  %38 = or i8 %36, 48
  %39 = add nuw nsw i8 %36, 55
  %.0.i14.i.i.i = select i1 %_5.i8.i.i.i, i8 %38, i8 %39
  store i8 %.0.i14.i.i.i, i8* %35, align 1, !noalias !4228
  %40 = add nsw i16 %curr.0.i.i.i, -1
  %41 = icmp eq i8 %37, 0
  br i1 %41, label %bb43.i.i.i, label %bb15.i.i.i

bb43.i.i.i:                                       ; preds = %bb15.i.i.i
  %_3.i.i.i.i.i.i = icmp ugt i16 %40, 128
  br i1 %_3.i.i.i.i.i.i, label %bb2.i.i.i.i.i.i, label %"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u8$GT$3fmt17he584874f14cc0ebbE.exit.i"

bb2.i.i.i.i.i.i:                                  ; preds = %bb43.i.i.i
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %40, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*)), !noalias !4228
  unreachable

"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u8$GT$3fmt17he584874f14cc0ebbE.exit.i": ; preds = %bb43.i.i.i
  %42 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 %40
  %_7.i.i.i.i.i.i.i = sub nuw nsw i16 129, %curr.0.i.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i = bitcast i8* %42 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %43 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i, i16 %_7.i.i.i.i.i.i.i), !noalias !4228
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %33), !noalias !4228
  br label %"_ZN4core3fmt3num49_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u8$GT$3fmt17h3a40db8b381f1ef4E.exit"

"_ZN4core3fmt3num49_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u8$GT$3fmt17h3a40db8b381f1ef4E.exit": ; preds = %"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u8$GT$3fmt17h60e0f1f08fe98d54E.exit", %"_ZN4core3fmt3num3imp51_$LT$impl$u20$core..fmt..Display$u20$for$u20$u8$GT$3fmt17h15a9d9444c491f95E.exit", %"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u8$GT$3fmt17he584874f14cc0ebbE.exit.i"
  %.0.in.i = phi i1 [ %13, %"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u8$GT$3fmt17h60e0f1f08fe98d54E.exit" ], [ %43, %"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u8$GT$3fmt17he584874f14cc0ebbE.exit.i" ], [ %32, %"_ZN4core3fmt3num3imp51_$LT$impl$u20$core..fmt..Display$u20$for$u20$u8$GT$3fmt17h15a9d9444c491f95E.exit" ]
  ret i1 %.0.in.i
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h99ec5e2482d1373aE"(i32** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i.i.i = alloca [128 x i8], align 1
  %_4 = load i32*, i32** %self, align 1, !nonnull !568
  %0 = bitcast %"fmt::Formatter"* %f to i32*
  %_3.i.i = load i32, i32* %0, align 1, !alias.scope !4231, !noalias !4234
  %_2.i.i = and i32 %_3.i.i, 16
  %1 = icmp eq i32 %_2.i.i, 0
  br i1 %1, label %bb2.i, label %bb3.i

bb2.i:                                            ; preds = %start
  %_2.i2.i = and i32 %_3.i.i, 32
  %2 = icmp eq i32 %_2.i2.i, 0
  br i1 %2, label %bb6.i, label %bb7.i

bb3.i:                                            ; preds = %start
  %_4.i4.i = load i32, i32* %_4, align 1, !alias.scope !4237
  %3 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %3), !noalias !4237
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %3, i8 undef, i16 128, i1 false), !noalias !4237
  %4 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 128
  br label %bb11.i.i9.i

bb11.i.i9.i:                                      ; preds = %bb15.i.i12.i, %bb3.i
  %iter.sroa.4.0.i.i5.i = phi i8* [ %4, %bb3.i ], [ %5, %bb15.i.i12.i ]
  %x.0.i.i6.i = phi i32 [ %_4.i4.i, %bb3.i ], [ %6, %bb15.i.i12.i ]
  %curr.0.i.i7.i = phi i16 [ 128, %bb3.i ], [ %11, %bb15.i.i12.i ]
  %_13.i.i20.i.i8.i = icmp eq i8* %3, %iter.sroa.4.0.i.i5.i
  br i1 %_13.i.i20.i.i8.i, label %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u32$GT$3fmt17h4ca75baaf8eb9a05E.exit.i", label %bb15.i.i12.i

bb15.i.i12.i:                                     ; preds = %bb11.i.i9.i
  %5 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i.i5.i, i16 -1
  %6 = lshr i32 %x.0.i.i6.i, 4
  %7 = trunc i32 %x.0.i.i6.i to i8
  %8 = and i8 %7, 15
  %_5.i9.i.i10.i = icmp ult i8 %8, 10
  %9 = or i8 %8, 48
  %10 = add nuw nsw i8 %8, 87
  %.0.i15.i.i11.i = select i1 %_5.i9.i.i10.i, i8 %9, i8 %10
  store i8 %.0.i15.i.i11.i, i8* %5, align 1, !noalias !4237
  %11 = add nsw i16 %curr.0.i.i7.i, -1
  %12 = icmp eq i32 %6, 0
  br i1 %12, label %bb43.i.i14.i, label %bb11.i.i9.i

bb43.i.i14.i:                                     ; preds = %bb15.i.i12.i
  %_3.i.i.i.i.i13.i = icmp ugt i16 %11, 128
  br i1 %_3.i.i.i.i.i13.i, label %bb2.i.i.i.i.i15.i, label %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u32$GT$3fmt17h4ca75baaf8eb9a05E.exit.i"

bb2.i.i.i.i.i15.i:                                ; preds = %bb43.i.i14.i
; call core::slice::slice_index_order_fail
  call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %11, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*)), !noalias !4237
  unreachable

"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u32$GT$3fmt17h4ca75baaf8eb9a05E.exit.i": ; preds = %bb11.i.i9.i, %bb43.i.i14.i
  %curr.446.i.i16.i = phi i16 [ %11, %bb43.i.i14.i ], [ 0, %bb11.i.i9.i ]
  %13 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 %curr.446.i.i16.i
  %_7.i.i.i.i.i.i17.i = sub nuw nsw i16 128, %curr.446.i.i16.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i18.i = bitcast i8* %13 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %14 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i18.i, i16 %_7.i.i.i.i.i.i17.i), !noalias !4237
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %3), !noalias !4237
  br label %"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u32$GT$3fmt17h13995ade3b0e0b73E.exit"

bb6.i:                                            ; preds = %bb2.i
; call core::fmt::num::imp::<impl core::fmt::Display for u32>::fmt
  %15 = tail call zeroext addrspace(1) i1 @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u32$GT$3fmt17h4fc4f96f0a2da0eaE"(i32* noalias nonnull readonly align 1 dereferenceable(4) %_4, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  br label %"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u32$GT$3fmt17h13995ade3b0e0b73E.exit"

bb7.i:                                            ; preds = %bb2.i
  %_4.i.i = load i32, i32* %_4, align 1, !alias.scope !4240
  %16 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %16), !noalias !4240
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %16, i8 undef, i16 128, i1 false), !noalias !4240
  %17 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 128
  br label %bb11.i.i.i

bb11.i.i.i:                                       ; preds = %bb15.i.i.i, %bb7.i
  %iter.sroa.4.0.i.i.i = phi i8* [ %17, %bb7.i ], [ %18, %bb15.i.i.i ]
  %x.0.i.i.i = phi i32 [ %_4.i.i, %bb7.i ], [ %19, %bb15.i.i.i ]
  %curr.0.i.i.i = phi i16 [ 128, %bb7.i ], [ %24, %bb15.i.i.i ]
  %_13.i.i20.i.i.i = icmp eq i8* %16, %iter.sroa.4.0.i.i.i
  br i1 %_13.i.i20.i.i.i, label %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u32$GT$3fmt17h0202965dcf7330deE.exit.i", label %bb15.i.i.i

bb15.i.i.i:                                       ; preds = %bb11.i.i.i
  %18 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i.i.i, i16 -1
  %19 = lshr i32 %x.0.i.i.i, 4
  %20 = trunc i32 %x.0.i.i.i to i8
  %21 = and i8 %20, 15
  %_5.i9.i.i.i = icmp ult i8 %21, 10
  %22 = or i8 %21, 48
  %23 = add nuw nsw i8 %21, 55
  %.0.i15.i.i.i = select i1 %_5.i9.i.i.i, i8 %22, i8 %23
  store i8 %.0.i15.i.i.i, i8* %18, align 1, !noalias !4240
  %24 = add nsw i16 %curr.0.i.i.i, -1
  %25 = icmp eq i32 %19, 0
  br i1 %25, label %bb43.i.i.i, label %bb11.i.i.i

bb43.i.i.i:                                       ; preds = %bb15.i.i.i
  %_3.i.i.i.i.i.i = icmp ugt i16 %24, 128
  br i1 %_3.i.i.i.i.i.i, label %bb2.i.i.i.i.i.i, label %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u32$GT$3fmt17h0202965dcf7330deE.exit.i"

bb2.i.i.i.i.i.i:                                  ; preds = %bb43.i.i.i
; call core::slice::slice_index_order_fail
  call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %24, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*)), !noalias !4240
  unreachable

"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u32$GT$3fmt17h0202965dcf7330deE.exit.i": ; preds = %bb11.i.i.i, %bb43.i.i.i
  %curr.446.i.i.i = phi i16 [ %24, %bb43.i.i.i ], [ 0, %bb11.i.i.i ]
  %26 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 %curr.446.i.i.i
  %_7.i.i.i.i.i.i.i = sub nuw nsw i16 128, %curr.446.i.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i = bitcast i8* %26 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %27 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i, i16 %_7.i.i.i.i.i.i.i), !noalias !4240
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %16), !noalias !4240
  br label %"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u32$GT$3fmt17h13995ade3b0e0b73E.exit"

"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u32$GT$3fmt17h13995ade3b0e0b73E.exit": ; preds = %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u32$GT$3fmt17h4ca75baaf8eb9a05E.exit.i", %bb6.i, %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u32$GT$3fmt17h0202965dcf7330deE.exit.i"
  %.0.in.i = phi i1 [ %14, %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u32$GT$3fmt17h4ca75baaf8eb9a05E.exit.i" ], [ %27, %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u32$GT$3fmt17h0202965dcf7330deE.exit.i" ], [ %15, %bb6.i ]
  ret i1 %.0.in.i
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h9b2878079b07a7edE"(%"iter::adapters::Filter<str::Split<str::IsWhitespace>, str::IsNotEmpty>"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_6.i = alloca %"fmt::builders::DebugStruct", align 1
  %0 = bitcast %"iter::adapters::Filter<str::Split<str::IsWhitespace>, str::IsNotEmpty>"** %self to {}**
  %_41 = load {}*, {}** %0, align 1, !nonnull !568
  %1 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_6.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %1), !noalias !4243
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %2, align 1, !noalias !4246, !nonnull !568
  %3 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %4 = bitcast [3 x i16]** %3 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %4, align 1, !noalias !4246, !nonnull !568
  %5 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %6 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %5, align 1, !invariant.load !568, !noalias !4246, !nonnull !568
  %7 = tail call zeroext addrspace(1) i1 %6({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc18604 to [0 x i8]*), i16 6), !noalias !4255
  %8 = bitcast %"fmt::builders::DebugStruct"* %_6.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %8, align 1, !alias.scope !4256, !noalias !4257
  %9 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_6.i, i16 0, i32 3
  %10 = zext i1 %7 to i8
  store i8 %10, i8* %9, align 1, !alias.scope !4256, !noalias !4257
  %11 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_6.i, i16 0, i32 5
  store i8 0, i8* %11, align 1, !alias.scope !4256, !noalias !4257
; call core::fmt::builders::DebugStruct::field
  %_4.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %_6.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19203 to [0 x i8]*), i16 4, {}* nonnull align 1 %_41, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"str::Split<str::IsWhitespace>"*) addrspace(1)*, i16, i16, i1 (%"str::Split<str::IsWhitespace>"*, %"fmt::Formatter"*) addrspace(1)* }* @vtable.b to [3 x i16]*))
  %12 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_4.i, i16 0, i32 5
  %13 = load i8, i8* %12, align 1, !range !87
  %_2.i.i = icmp eq i8 %13, 0
  %.phi.trans.insert.i.i = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_4.i, i16 0, i32 3
  %.pre.i.i = load i8, i8* %.phi.trans.insert.i.i, align 1, !range !87
  br i1 %_2.i.i, label %"_ZN78_$LT$core..iter..adapters..Filter$LT$I$C$P$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h8989bd2226e41720E.exit", label %bb2.i.i

bb2.i.i:                                          ; preds = %start
  %_4.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_4.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %14 = bitcast %"fmt::builders::DebugStruct"* %_4.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %14, align 1, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !4258, !noalias !4261
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %15 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %_5.cast.i.i.i.i = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %16, align 1, !nonnull !568
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 1
  %18 = bitcast [3 x i16]** %17 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %20 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %19, align 1, !invariant.load !568, !nonnull !568
  br i1 %15, label %bb2.i.i.i.i, label %bb3.i.i.i.i

bb2.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %21 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %22 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i": ; preds = %bb3.i.i.i.i, %bb2.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i1 [ true, %bb2.i.i ], [ %22, %bb3.i.i.i.i ], [ %21, %bb2.i.i.i.i ]
  %23 = zext i1 %.0.i.i.i to i8
  store i8 %23, i8* %.phi.trans.insert.i.i, align 1
  br label %"_ZN78_$LT$core..iter..adapters..Filter$LT$I$C$P$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h8989bd2226e41720E.exit"

"_ZN78_$LT$core..iter..adapters..Filter$LT$I$C$P$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h8989bd2226e41720E.exit": ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"
  %24 = phi i8 [ %23, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i" ], [ %.pre.i.i, %start ]
  %25 = icmp ne i8 %24, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %1), !noalias !4243
  ret i1 %25
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h9fa85b6d3a6d0384E"(%"iter::adapters::Map<iter::adapters::Filter<slice::Split<u8, str::IsAsciiWhitespace>, str::BytesIsNotEmpty>, str::UnsafeBytesToStr>"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_6.i = alloca %"fmt::builders::DebugStruct", align 1
  %0 = bitcast %"iter::adapters::Map<iter::adapters::Filter<slice::Split<u8, str::IsAsciiWhitespace>, str::BytesIsNotEmpty>, str::UnsafeBytesToStr>"** %self to {}**
  %_41 = load {}*, {}** %0, align 1, !nonnull !568
  %1 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_6.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %1), !noalias !4264
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %2, align 1, !noalias !4267, !nonnull !568
  %3 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %4 = bitcast [3 x i16]** %3 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %4, align 1, !noalias !4267, !nonnull !568
  %5 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %6 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %5, align 1, !invariant.load !568, !noalias !4267, !nonnull !568
  %7 = tail call zeroext addrspace(1) i1 %6({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [3 x i8] }>* @alloc18600 to [0 x i8]*), i16 3), !noalias !4276
  %8 = bitcast %"fmt::builders::DebugStruct"* %_6.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %8, align 1, !alias.scope !4277, !noalias !4278
  %9 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_6.i, i16 0, i32 3
  %10 = zext i1 %7 to i8
  store i8 %10, i8* %9, align 1, !alias.scope !4277, !noalias !4278
  %11 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_6.i, i16 0, i32 5
  store i8 0, i8* %11, align 1, !alias.scope !4277, !noalias !4278
; call core::fmt::builders::DebugStruct::field
  %_4.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %_6.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19203 to [0 x i8]*), i16 4, {}* nonnull align 1 %_41, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"iter::adapters::Filter<slice::Split<u8, str::IsAsciiWhitespace>, str::BytesIsNotEmpty>"*) addrspace(1)*, i16, i16, i1 (%"iter::adapters::Filter<slice::Split<u8, str::IsAsciiWhitespace>, str::BytesIsNotEmpty>"*, %"fmt::Formatter"*) addrspace(1)* }* @vtable.8 to [3 x i16]*))
  %12 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_4.i, i16 0, i32 5
  %13 = load i8, i8* %12, align 1, !range !87
  %_2.i.i = icmp eq i8 %13, 0
  %.phi.trans.insert.i.i = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_4.i, i16 0, i32 3
  %.pre.i.i = load i8, i8* %.phi.trans.insert.i.i, align 1, !range !87
  br i1 %_2.i.i, label %"_ZN75_$LT$core..iter..adapters..Map$LT$I$C$F$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h8bb650306b5e057eE.exit", label %bb2.i.i

bb2.i.i:                                          ; preds = %start
  %_4.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_4.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %14 = bitcast %"fmt::builders::DebugStruct"* %_4.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %14, align 1, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !4279, !noalias !4282
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %15 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %_5.cast.i.i.i.i = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %16, align 1, !nonnull !568
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 1
  %18 = bitcast [3 x i16]** %17 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %20 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %19, align 1, !invariant.load !568, !nonnull !568
  br i1 %15, label %bb2.i.i.i.i, label %bb3.i.i.i.i

bb2.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %21 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %22 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i": ; preds = %bb3.i.i.i.i, %bb2.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i1 [ true, %bb2.i.i ], [ %22, %bb3.i.i.i.i ], [ %21, %bb2.i.i.i.i ]
  %23 = zext i1 %.0.i.i.i to i8
  store i8 %23, i8* %.phi.trans.insert.i.i, align 1
  br label %"_ZN75_$LT$core..iter..adapters..Map$LT$I$C$F$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h8bb650306b5e057eE.exit"

"_ZN75_$LT$core..iter..adapters..Map$LT$I$C$F$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h8bb650306b5e057eE.exit": ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"
  %24 = phi i8 [ %23, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i" ], [ %.pre.i.i, %start ]
  %25 = icmp ne i8 %24, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %1), !noalias !4264
  ret i1 %25
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17ha1381df521884401E"(%"hash::sip::SipHasher24"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_15.i = alloca %"hash::sip::Hasher<hash::sip::Sip24Rounds>"*, align 1
  %debug_trait_builder.i = alloca %"fmt::builders::DebugStruct", align 1
  %_4 = load %"hash::sip::SipHasher24"*, %"hash::sip::SipHasher24"** %self, align 1, !nonnull !568
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0), !noalias !4285
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %1, align 1, !noalias !4288, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !4288, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !4288, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [11 x i8] }>* @alloc19132 to [0 x i8]*), i16 11), !noalias !4297
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !4298, !noalias !4299
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !4298, !noalias !4299
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !4298, !noalias !4299
  %11 = bitcast %"hash::sip::Hasher<hash::sip::Sip24Rounds>"** %_15.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11), !noalias !4285
  %12 = bitcast %"hash::sip::Hasher<hash::sip::Sip24Rounds>"** %_15.i to %"hash::sip::SipHasher24"**
  store %"hash::sip::SipHasher24"* %_4, %"hash::sip::SipHasher24"** %12, align 1, !noalias !4285
  %_12.0.i = bitcast %"hash::sip::Hasher<hash::sip::Sip24Rounds>"** %_15.i to {}*
; call core::fmt::builders::DebugStruct::field
  %_8.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc19133 to [0 x i8]*), i16 6, {}* nonnull align 1 %_12.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"hash::sip::Hasher<hash::sip::Sip24Rounds>"**) addrspace(1)*, i16, i16, i1 (%"hash::sip::Hasher<hash::sip::Sip24Rounds>"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11), !noalias !4285
  %13 = load i8, i8* %10, align 1, !range !87, !noalias !4285
  %_2.i.i = icmp eq i8 %13, 0
  %.pre.i.i = load i8, i8* %8, align 1, !range !87, !noalias !4285
  br i1 %_2.i.i, label %"_ZN65_$LT$core..hash..sip..SipHasher24$u20$as$u20$core..fmt..Debug$GT$3fmt17h01470f04afaa0bd6E.exit", label %bb2.i.i

bb2.i.i:                                          ; preds = %start
  %_4.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_4.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %14 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %14, align 1, !noalias !4285, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !4300, !noalias !4303
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %15 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %_5.cast.i.i.i.i = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %16, align 1, !nonnull !568
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 1
  %18 = bitcast [3 x i16]** %17 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %20 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %19, align 1, !invariant.load !568, !nonnull !568
  br i1 %15, label %bb2.i.i.i.i, label %bb3.i.i.i.i

bb2.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %21 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %22 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i": ; preds = %bb3.i.i.i.i, %bb2.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i1 [ true, %bb2.i.i ], [ %22, %bb3.i.i.i.i ], [ %21, %bb2.i.i.i.i ]
  %23 = zext i1 %.0.i.i.i to i8
  store i8 %23, i8* %8, align 1, !noalias !4285
  br label %"_ZN65_$LT$core..hash..sip..SipHasher24$u20$as$u20$core..fmt..Debug$GT$3fmt17h01470f04afaa0bd6E.exit"

"_ZN65_$LT$core..hash..sip..SipHasher24$u20$as$u20$core..fmt..Debug$GT$3fmt17h01470f04afaa0bd6E.exit": ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"
  %24 = phi i8 [ %23, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i" ], [ %.pre.i.i, %start ]
  %25 = icmp ne i8 %24, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0), !noalias !4285
  ret i1 %25
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17ha55c377638c0fa88E"(i64** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i.i.i = alloca [128 x i8], align 1
  %_4 = load i64*, i64** %self, align 1, !nonnull !568
  %0 = bitcast %"fmt::Formatter"* %f to i32*
  %_3.i.i = load i32, i32* %0, align 1, !alias.scope !4306, !noalias !4309
  %_2.i.i = and i32 %_3.i.i, 16
  %1 = icmp eq i32 %_2.i.i, 0
  br i1 %1, label %bb2.i, label %bb3.i

bb2.i:                                            ; preds = %start
  %_2.i2.i = and i32 %_3.i.i, 32
  %2 = icmp eq i32 %_2.i2.i, 0
  br i1 %2, label %bb6.i, label %bb7.i

bb3.i:                                            ; preds = %start
  %_4.i4.i = load i64, i64* %_4, align 1, !alias.scope !4312
  %3 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %3), !noalias !4312
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %3, i8 undef, i16 128, i1 false), !noalias !4312
  %4 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 128
  br label %bb11.i.i9.i

bb11.i.i9.i:                                      ; preds = %bb15.i.i12.i, %bb3.i
  %iter.sroa.4.0.i.i5.i = phi i8* [ %4, %bb3.i ], [ %5, %bb15.i.i12.i ]
  %x.0.i.i6.i = phi i64 [ %_4.i4.i, %bb3.i ], [ %6, %bb15.i.i12.i ]
  %curr.0.i.i7.i = phi i16 [ 128, %bb3.i ], [ %11, %bb15.i.i12.i ]
  %_13.i.i20.i.i8.i = icmp eq i8* %3, %iter.sroa.4.0.i.i5.i
  br i1 %_13.i.i20.i.i8.i, label %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u64$GT$3fmt17hbd45bfb477ec6170E.exit.i", label %bb15.i.i12.i

bb15.i.i12.i:                                     ; preds = %bb11.i.i9.i
  %5 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i.i5.i, i16 -1
  %6 = lshr i64 %x.0.i.i6.i, 4
  %7 = trunc i64 %x.0.i.i6.i to i8
  %8 = and i8 %7, 15
  %_5.i9.i.i10.i = icmp ult i8 %8, 10
  %9 = or i8 %8, 48
  %10 = add nuw nsw i8 %8, 87
  %.0.i15.i.i11.i = select i1 %_5.i9.i.i10.i, i8 %9, i8 %10
  store i8 %.0.i15.i.i11.i, i8* %5, align 1, !noalias !4312
  %11 = add nsw i16 %curr.0.i.i7.i, -1
  %12 = icmp eq i64 %6, 0
  br i1 %12, label %bb43.i.i14.i, label %bb11.i.i9.i

bb43.i.i14.i:                                     ; preds = %bb15.i.i12.i
  %_3.i.i.i.i.i13.i = icmp ugt i16 %11, 128
  br i1 %_3.i.i.i.i.i13.i, label %bb2.i.i.i.i.i15.i, label %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u64$GT$3fmt17hbd45bfb477ec6170E.exit.i"

bb2.i.i.i.i.i15.i:                                ; preds = %bb43.i.i14.i
; call core::slice::slice_index_order_fail
  call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %11, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*)), !noalias !4312
  unreachable

"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u64$GT$3fmt17hbd45bfb477ec6170E.exit.i": ; preds = %bb11.i.i9.i, %bb43.i.i14.i
  %curr.446.i.i16.i = phi i16 [ %11, %bb43.i.i14.i ], [ 0, %bb11.i.i9.i ]
  %13 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 %curr.446.i.i16.i
  %_7.i.i.i.i.i.i17.i = sub nuw nsw i16 128, %curr.446.i.i16.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i18.i = bitcast i8* %13 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %14 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i18.i, i16 %_7.i.i.i.i.i.i17.i), !noalias !4312
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %3), !noalias !4312
  br label %"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u64$GT$3fmt17hc57a3fb18a0eda47E.exit"

bb6.i:                                            ; preds = %bb2.i
; call core::fmt::num::imp::<impl core::fmt::Display for u64>::fmt
  %15 = tail call zeroext addrspace(1) i1 @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u64$GT$3fmt17h82635f2897f163daE"(i64* noalias nonnull readonly align 1 dereferenceable(8) %_4, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  br label %"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u64$GT$3fmt17hc57a3fb18a0eda47E.exit"

bb7.i:                                            ; preds = %bb2.i
  %_4.i.i = load i64, i64* %_4, align 1, !alias.scope !4315
  %16 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %16), !noalias !4315
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %16, i8 undef, i16 128, i1 false), !noalias !4315
  %17 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 128
  br label %bb11.i.i.i

bb11.i.i.i:                                       ; preds = %bb15.i.i.i, %bb7.i
  %iter.sroa.4.0.i.i.i = phi i8* [ %17, %bb7.i ], [ %18, %bb15.i.i.i ]
  %x.0.i.i.i = phi i64 [ %_4.i.i, %bb7.i ], [ %19, %bb15.i.i.i ]
  %curr.0.i.i.i = phi i16 [ 128, %bb7.i ], [ %24, %bb15.i.i.i ]
  %_13.i.i20.i.i.i = icmp eq i8* %16, %iter.sroa.4.0.i.i.i
  br i1 %_13.i.i20.i.i.i, label %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u64$GT$3fmt17h3d4cc53cb3cf6b58E.exit.i", label %bb15.i.i.i

bb15.i.i.i:                                       ; preds = %bb11.i.i.i
  %18 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i.i.i, i16 -1
  %19 = lshr i64 %x.0.i.i.i, 4
  %20 = trunc i64 %x.0.i.i.i to i8
  %21 = and i8 %20, 15
  %_5.i9.i.i.i = icmp ult i8 %21, 10
  %22 = or i8 %21, 48
  %23 = add nuw nsw i8 %21, 55
  %.0.i15.i.i.i = select i1 %_5.i9.i.i.i, i8 %22, i8 %23
  store i8 %.0.i15.i.i.i, i8* %18, align 1, !noalias !4315
  %24 = add nsw i16 %curr.0.i.i.i, -1
  %25 = icmp eq i64 %19, 0
  br i1 %25, label %bb43.i.i.i, label %bb11.i.i.i

bb43.i.i.i:                                       ; preds = %bb15.i.i.i
  %_3.i.i.i.i.i.i = icmp ugt i16 %24, 128
  br i1 %_3.i.i.i.i.i.i, label %bb2.i.i.i.i.i.i, label %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u64$GT$3fmt17h3d4cc53cb3cf6b58E.exit.i"

bb2.i.i.i.i.i.i:                                  ; preds = %bb43.i.i.i
; call core::slice::slice_index_order_fail
  call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %24, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*)), !noalias !4315
  unreachable

"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u64$GT$3fmt17h3d4cc53cb3cf6b58E.exit.i": ; preds = %bb11.i.i.i, %bb43.i.i.i
  %curr.446.i.i.i = phi i16 [ %24, %bb43.i.i.i ], [ 0, %bb11.i.i.i ]
  %26 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 %curr.446.i.i.i
  %_7.i.i.i.i.i.i.i = sub nuw nsw i16 128, %curr.446.i.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i = bitcast i8* %26 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %27 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i, i16 %_7.i.i.i.i.i.i.i), !noalias !4315
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %16), !noalias !4315
  br label %"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u64$GT$3fmt17hc57a3fb18a0eda47E.exit"

"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u64$GT$3fmt17hc57a3fb18a0eda47E.exit": ; preds = %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u64$GT$3fmt17hbd45bfb477ec6170E.exit.i", %bb6.i, %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u64$GT$3fmt17h3d4cc53cb3cf6b58E.exit.i"
  %.0.in.i = phi i1 [ %14, %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u64$GT$3fmt17hbd45bfb477ec6170E.exit.i" ], [ %27, %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u64$GT$3fmt17h3d4cc53cb3cf6b58E.exit.i" ], [ %15, %bb6.i ]
  ret i1 %.0.in.i
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17had8aba604c270c78E"({}*** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i.i.i.i = alloca [128 x i8], align 1
  %0 = bitcast {}*** %self to i16**
  %_41 = load i16*, i16** %0, align 1, !nonnull !568
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 7, i32 0
  %2 = load i8, i8* %1, align 1, !range !87, !noalias !4318
  %3 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 7, i32 1
  %old_width.1.i.i = load i16, i16* %3, align 1, !noalias !4318
  %4 = bitcast %"fmt::Formatter"* %f to i32*
  %old_flags.i.i = load i32, i32* %4, align 1, !noalias !4318
  %_2.i.i.i = and i32 %old_flags.i.i, 4
  %5 = icmp eq i32 %_2.i.i.i, 0
  br i1 %5, label %bb9.i.i, label %bb3.i.i

bb3.i.i:                                          ; preds = %start
  %6 = or i32 %old_flags.i.i, 8
  store i32 %6, i32* %4, align 1, !noalias !4318
  %7 = icmp eq i8 %2, 0
  br i1 %7, label %bb6.i.i, label %bb9.i.i

bb6.i.i:                                          ; preds = %bb3.i.i
  store i8 1, i8* %1, align 1, !noalias !4318
  store i16 6, i16* %3, align 1, !noalias !4318
  br label %bb9.i.i

bb9.i.i:                                          ; preds = %bb6.i.i, %bb3.i.i, %start
  %8 = phi i32 [ %old_flags.i.i, %start ], [ %6, %bb6.i.i ], [ %6, %bb3.i.i ]
  %9 = or i32 %8, 4
  store i32 %9, i32* %4, align 1, !noalias !4318
  %_202.i.i = load i16, i16* %_41, align 1, !alias.scope !4318
  %10 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %10), !noalias !4323
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %10, i8 undef, i16 128, i1 false), !noalias !4323
  %11 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i.i, i16 0, i16 128
  br label %bb15.i.i.i.i

bb15.i.i.i.i:                                     ; preds = %bb15.i.i.i.i, %bb9.i.i
  %iter.sroa.4.0.i.i.i.i = phi i8* [ %11, %bb9.i.i ], [ %12, %bb15.i.i.i.i ]
  %x.0.i.i.i.i = phi i16 [ %_202.i.i, %bb9.i.i ], [ %13, %bb15.i.i.i.i ]
  %curr.0.i.i.i.i = phi i16 [ 128, %bb9.i.i ], [ %18, %bb15.i.i.i.i ]
  %12 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i.i.i.i, i16 -1
  %13 = lshr i16 %x.0.i.i.i.i, 4
  %14 = trunc i16 %x.0.i.i.i.i to i8
  %15 = and i8 %14, 15
  %_5.i9.i.i.i.i = icmp ult i8 %15, 10
  %16 = or i8 %15, 48
  %17 = add nuw nsw i8 %15, 87
  %.0.i15.i.i.i.i = select i1 %_5.i9.i.i.i.i, i8 %16, i8 %17
  store i8 %.0.i15.i.i.i.i, i8* %12, align 1, !noalias !4323
  %18 = add nsw i16 %curr.0.i.i.i.i, -1
  %19 = icmp eq i16 %13, 0
  br i1 %19, label %bb43.i.i.i.i, label %bb15.i.i.i.i

bb43.i.i.i.i:                                     ; preds = %bb15.i.i.i.i
  %_3.i.i.i.i.i.i.i = icmp ugt i16 %18, 128
  br i1 %_3.i.i.i.i.i.i.i, label %bb2.i.i.i.i.i.i.i, label %"_ZN52_$LT$$BP$const$u20$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hf50441e4728102f5E.exit"

bb2.i.i.i.i.i.i.i:                                ; preds = %bb43.i.i.i.i
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %18, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*)), !noalias !4323
  unreachable

"_ZN52_$LT$$BP$const$u20$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hf50441e4728102f5E.exit": ; preds = %bb43.i.i.i.i
  %20 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i.i, i16 0, i16 %18
  %_7.i.i.i.i.i.i.i.i = sub nuw nsw i16 129, %curr.0.i.i.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i = bitcast i8* %20 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %21 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i.i, i16 %_7.i.i.i.i.i.i.i.i), !noalias !4323
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %10), !noalias !4323
  store i8 %2, i8* %1, align 1, !noalias !4318
  store i16 %old_width.1.i.i, i16* %3, align 1, !noalias !4318
  store i32 %old_flags.i.i, i32* %4, align 1, !noalias !4318
  ret i1 %21
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hae4ef63fdbe4a8c6E"({ i8*, i8* }** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_15.i = alloca { i8*, i8* }*, align 1
  %debug_trait_builder.i = alloca %"fmt::builders::DebugStruct", align 1
  %_4 = load { i8*, i8* }*, { i8*, i8* }** %self, align 1, !nonnull !568
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0), !noalias !4326
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %1, align 1, !noalias !4329, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !4329, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !4329, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19045 to [0 x i8]*), i16 4), !noalias !4338
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !4339, !noalias !4340
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !4339, !noalias !4340
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !4339, !noalias !4340
  %11 = bitcast { i8*, i8* }** %_15.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11), !noalias !4326
  store { i8*, i8* }* %_4, { i8*, i8* }** %_15.i, align 1, !noalias !4326
  %_12.0.i = bitcast { i8*, i8* }** %_15.i to {}*
; call core::fmt::builders::DebugStruct::field
  %_8.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19203 to [0 x i8]*), i16 4, {}* nonnull align 1 %_12.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({ i8*, i8* }**) addrspace(1)*, i16, i16, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.Y to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11), !noalias !4326
  %12 = load i8, i8* %10, align 1, !range !87, !noalias !4326
  %_2.i.i = icmp eq i8 %12, 0
  %.pre.i.i = load i8, i8* %8, align 1, !range !87, !noalias !4326
  br i1 %_2.i.i, label %"_ZN78_$LT$core..iter..adapters..fuse..Fuse$LT$I$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hcdfb4f9381a3c3a2E.exit", label %bb2.i.i

bb2.i.i:                                          ; preds = %start
  %_4.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_4.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %13 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %13, align 1, !noalias !4326, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !4341, !noalias !4344
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %14 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %_5.cast.i.i.i.i = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  %15 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %15, align 1, !nonnull !568
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 1
  %17 = bitcast [3 x i16]** %16 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %17, align 1, !nonnull !568
  %18 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %19 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %18, align 1, !invariant.load !568, !nonnull !568
  br i1 %14, label %bb2.i.i.i.i, label %bb3.i.i.i.i

bb2.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %20 = call zeroext addrspace(1) i1 %19({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %21 = call zeroext addrspace(1) i1 %19({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i": ; preds = %bb3.i.i.i.i, %bb2.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i1 [ true, %bb2.i.i ], [ %21, %bb3.i.i.i.i ], [ %20, %bb2.i.i.i.i ]
  %22 = zext i1 %.0.i.i.i to i8
  store i8 %22, i8* %8, align 1, !noalias !4326
  br label %"_ZN78_$LT$core..iter..adapters..fuse..Fuse$LT$I$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hcdfb4f9381a3c3a2E.exit"

"_ZN78_$LT$core..iter..adapters..fuse..Fuse$LT$I$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hcdfb4f9381a3c3a2E.exit": ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"
  %23 = phi i8 [ %22, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i" ], [ %.pre.i.i, %start ]
  %24 = icmp ne i8 %23, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0), !noalias !4326
  ret i1 %24
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17haebff00effe788f0E"(%"iter::adapters::chain::Chain<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>, iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_24.i = alloca %"option::Option<iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"*, align 1
  %_16.i = alloca %"option::Option<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>>"*, align 1
  %debug_trait_builder.i = alloca %"fmt::builders::DebugStruct", align 1
  %_4 = load %"iter::adapters::chain::Chain<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>, iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"*, %"iter::adapters::chain::Chain<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>, iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"** %self, align 1, !nonnull !568
  %__self_0_1.i = getelementptr inbounds %"iter::adapters::chain::Chain<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>, iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>", %"iter::adapters::chain::Chain<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>, iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"* %_4, i16 0, i32 3
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0), !noalias !4347
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %1, align 1, !noalias !4350, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !4350, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !4350, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19020 to [0 x i8]*), i16 5), !noalias !4359
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !4360, !noalias !4361
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !4360, !noalias !4361
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !4360, !noalias !4361
  %11 = bitcast %"option::Option<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>>"** %_16.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11), !noalias !4347
  %12 = bitcast %"option::Option<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>>"** %_16.i to %"iter::adapters::chain::Chain<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>, iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"**
  store %"iter::adapters::chain::Chain<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>, iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"* %_4, %"iter::adapters::chain::Chain<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>, iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"** %12, align 1, !noalias !4347
  %_13.0.i = bitcast %"option::Option<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>>"** %_16.i to {}*
; call core::fmt::builders::DebugStruct::field
  %_9.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc19021 to [0 x i8]*), i16 1, {}* nonnull align 1 %_13.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"option::Option<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>>"**) addrspace(1)*, i16, i16, i1 (%"option::Option<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>>"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11), !noalias !4347
  %13 = bitcast %"option::Option<iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"** %_24.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13), !noalias !4347
  store %"option::Option<iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"* %__self_0_1.i, %"option::Option<iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"** %_24.i, align 1, !noalias !4347
  %_21.0.i = bitcast %"option::Option<iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"** %_24.i to {}*
; call core::fmt::builders::DebugStruct::field
  %_17.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc19022 to [0 x i8]*), i16 1, {}* nonnull align 1 %_21.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"option::Option<iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"**) addrspace(1)*, i16, i16, i1 (%"option::Option<iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.O to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13), !noalias !4347
  %14 = load i8, i8* %10, align 1, !range !87, !noalias !4347
  %_2.i.i = icmp eq i8 %14, 0
  %.pre.i.i = load i8, i8* %8, align 1, !range !87, !noalias !4347
  br i1 %_2.i.i, label %"_ZN84_$LT$core..iter..adapters..chain..Chain$LT$A$C$B$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h7dba32918e576ae4E.exit", label %bb2.i.i

bb2.i.i:                                          ; preds = %start
  %_4.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_4.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %15 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %15, align 1, !noalias !4347, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !4362, !noalias !4365
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %16 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %_5.cast.i.i.i.i = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %17, align 1, !nonnull !568
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 1
  %19 = bitcast [3 x i16]** %18 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %19, align 1, !nonnull !568
  %20 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %21 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %20, align 1, !invariant.load !568, !nonnull !568
  br i1 %16, label %bb2.i.i.i.i, label %bb3.i.i.i.i

bb2.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %22 = call zeroext addrspace(1) i1 %21({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %23 = call zeroext addrspace(1) i1 %21({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i": ; preds = %bb3.i.i.i.i, %bb2.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i1 [ true, %bb2.i.i ], [ %23, %bb3.i.i.i.i ], [ %22, %bb2.i.i.i.i ]
  %24 = zext i1 %.0.i.i.i to i8
  store i8 %24, i8* %8, align 1, !noalias !4347
  br label %"_ZN84_$LT$core..iter..adapters..chain..Chain$LT$A$C$B$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h7dba32918e576ae4E.exit"

"_ZN84_$LT$core..iter..adapters..chain..Chain$LT$A$C$B$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h7dba32918e576ae4E.exit": ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"
  %25 = phi i8 [ %24, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i" ], [ %.pre.i.i, %start ]
  %26 = icmp ne i8 %25, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0), !noalias !4347
  ret i1 %26
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hb0c028c27cc14cbeE"(i8** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i.i = alloca [128 x i8], align 1
  %buf.i.i.i = alloca [128 x i8], align 1
  %_4 = load i8*, i8** %self, align 1, !nonnull !568
  %0 = bitcast %"fmt::Formatter"* %f to i32*
  %_3.i.i = load i32, i32* %0, align 1, !alias.scope !4368, !noalias !4371
  %_2.i.i = and i32 %_3.i.i, 16
  %1 = icmp eq i32 %_2.i.i, 0
  br i1 %1, label %bb2.i, label %bb3.i

bb2.i:                                            ; preds = %start
  %_2.i2.i = and i32 %_3.i.i, 32
  %2 = icmp eq i32 %_2.i2.i, 0
  br i1 %2, label %bb6.i, label %bb7.i

bb3.i:                                            ; preds = %start
  %_5.i = load i8, i8* %_4, align 1, !alias.scope !4374
  %3 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %3), !noalias !4374
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %3, i8 undef, i16 128, i1 false), !noalias !4374
  %4 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i, i16 0, i16 128
  br label %bb15.i.i

bb15.i.i:                                         ; preds = %bb15.i.i, %bb3.i
  %iter.sroa.4.0.i.i = phi i8* [ %4, %bb3.i ], [ %5, %bb15.i.i ]
  %x.0.i.i = phi i8 [ %_5.i, %bb3.i ], [ %7, %bb15.i.i ]
  %curr.0.i.i = phi i16 [ 128, %bb3.i ], [ %10, %bb15.i.i ]
  %5 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i.i, i16 -1
  %6 = and i8 %x.0.i.i, 15
  %7 = lshr i8 %x.0.i.i, 4
  %_5.i8.i.i = icmp ult i8 %6, 10
  %8 = or i8 %6, 48
  %9 = add nuw nsw i8 %6, 87
  %.0.i14.i.i = select i1 %_5.i8.i.i, i8 %8, i8 %9
  store i8 %.0.i14.i.i, i8* %5, align 1, !noalias !4374
  %10 = add nsw i16 %curr.0.i.i, -1
  %11 = icmp eq i8 %7, 0
  br i1 %11, label %bb43.i.i, label %bb15.i.i

bb43.i.i:                                         ; preds = %bb15.i.i
  %_3.i.i.i.i.i = icmp ugt i16 %10, 128
  br i1 %_3.i.i.i.i.i, label %bb2.i.i.i.i.i, label %"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i8$GT$3fmt17h7943257fc24ac32eE.exit"

bb2.i.i.i.i.i:                                    ; preds = %bb43.i.i
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %10, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*)), !noalias !4374
  unreachable

"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i8$GT$3fmt17h7943257fc24ac32eE.exit": ; preds = %bb43.i.i
  %12 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i, i16 0, i16 %10
  %_7.i.i.i.i.i.i = sub nuw nsw i16 129, %curr.0.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i = bitcast i8* %12 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %13 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i, i16 %_7.i.i.i.i.i.i), !noalias !4374
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %3), !noalias !4374
  br label %"_ZN4core3fmt3num49_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i8$GT$3fmt17h2579ec9bdf765595E.exit"

bb6.i:                                            ; preds = %bb2.i
; call core::fmt::num::imp::<impl core::fmt::Display for i8>::fmt
  %14 = tail call zeroext addrspace(1) i1 @"_ZN4core3fmt3num3imp51_$LT$impl$u20$core..fmt..Display$u20$for$u20$i8$GT$3fmt17h240822c14587e42dE"(i8* noalias nonnull readonly align 1 dereferenceable(1) %_4, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  br label %"_ZN4core3fmt3num49_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i8$GT$3fmt17h2579ec9bdf765595E.exit"

bb7.i:                                            ; preds = %bb2.i
  %_5.i.i = load i8, i8* %_4, align 1, !alias.scope !4377
  %15 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %15), !noalias !4377
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %15, i8 undef, i16 128, i1 false), !noalias !4377
  %16 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 128
  br label %bb15.i.i.i

bb15.i.i.i:                                       ; preds = %bb15.i.i.i, %bb7.i
  %iter.sroa.4.0.i.i.i = phi i8* [ %16, %bb7.i ], [ %17, %bb15.i.i.i ]
  %x.0.i.i.i = phi i8 [ %_5.i.i, %bb7.i ], [ %19, %bb15.i.i.i ]
  %curr.0.i.i.i = phi i16 [ 128, %bb7.i ], [ %22, %bb15.i.i.i ]
  %17 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i.i.i, i16 -1
  %18 = and i8 %x.0.i.i.i, 15
  %19 = lshr i8 %x.0.i.i.i, 4
  %_5.i8.i.i.i = icmp ult i8 %18, 10
  %20 = or i8 %18, 48
  %21 = add nuw nsw i8 %18, 55
  %.0.i14.i.i.i = select i1 %_5.i8.i.i.i, i8 %20, i8 %21
  store i8 %.0.i14.i.i.i, i8* %17, align 1, !noalias !4377
  %22 = add nsw i16 %curr.0.i.i.i, -1
  %23 = icmp eq i8 %19, 0
  br i1 %23, label %bb43.i.i.i, label %bb15.i.i.i

bb43.i.i.i:                                       ; preds = %bb15.i.i.i
  %_3.i.i.i.i.i.i = icmp ugt i16 %22, 128
  br i1 %_3.i.i.i.i.i.i, label %bb2.i.i.i.i.i.i, label %"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i8$GT$3fmt17h405967de1e4d6acaE.exit.i"

bb2.i.i.i.i.i.i:                                  ; preds = %bb43.i.i.i
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %22, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*)), !noalias !4377
  unreachable

"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i8$GT$3fmt17h405967de1e4d6acaE.exit.i": ; preds = %bb43.i.i.i
  %24 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 %22
  %_7.i.i.i.i.i.i.i = sub nuw nsw i16 129, %curr.0.i.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i = bitcast i8* %24 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %25 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i, i16 %_7.i.i.i.i.i.i.i), !noalias !4377
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %15), !noalias !4377
  br label %"_ZN4core3fmt3num49_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i8$GT$3fmt17h2579ec9bdf765595E.exit"

"_ZN4core3fmt3num49_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i8$GT$3fmt17h2579ec9bdf765595E.exit": ; preds = %"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i8$GT$3fmt17h7943257fc24ac32eE.exit", %bb6.i, %"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i8$GT$3fmt17h405967de1e4d6acaE.exit.i"
  %.0.in.i = phi i1 [ %13, %"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i8$GT$3fmt17h7943257fc24ac32eE.exit" ], [ %25, %"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i8$GT$3fmt17h405967de1e4d6acaE.exit.i" ], [ %14, %bb6.i ]
  ret i1 %.0.in.i
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hbaad52c6373c9820E"({ i8*, i8* }** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_9.i = alloca %"fmt::builders::DebugStruct", align 1
  %vtable_ptr.i = alloca %"task::wake::RawWakerVTable"*, align 1
  %_4 = load { i8*, i8* }*, { i8*, i8* }** %self, align 1, !nonnull !568
  %0 = bitcast %"task::wake::RawWakerVTable"** %vtable_ptr.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %0), !noalias !4380
  %1 = getelementptr inbounds { i8*, i8* }, { i8*, i8* }* %_4, i16 0, i32 1
  %2 = bitcast i8** %1 to %"task::wake::RawWakerVTable"**
  %3 = load %"task::wake::RawWakerVTable"*, %"task::wake::RawWakerVTable"** %2, align 1, !alias.scope !4380, !nonnull !568
  store %"task::wake::RawWakerVTable"* %3, %"task::wake::RawWakerVTable"** %vtable_ptr.i, align 1, !noalias !4380
  %4 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_9.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %4), !noalias !4380
  %5 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %5, align 1, !noalias !4383, !nonnull !568
  %6 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %7 = bitcast [3 x i16]** %6 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %7, align 1, !noalias !4383, !nonnull !568
  %8 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %9 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %8, align 1, !invariant.load !568, !noalias !4383, !nonnull !568
  %10 = tail call zeroext addrspace(1) i1 %9({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc18907 to [0 x i8]*), i16 5), !noalias !4392
  %11 = bitcast %"fmt::builders::DebugStruct"* %_9.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %11, align 1, !alias.scope !4393, !noalias !4394
  %12 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_9.i, i16 0, i32 3
  %13 = zext i1 %10 to i8
  store i8 %13, i8* %12, align 1, !alias.scope !4393, !noalias !4394
  %14 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_9.i, i16 0, i32 5
  store i8 0, i8* %14, align 1, !alias.scope !4393, !noalias !4394
  %_15.0.i = bitcast { i8*, i8* }* %_4 to {}*
; call core::fmt::builders::DebugStruct::field
  %_7.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %_9.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19225 to [0 x i8]*), i16 4, {}* nonnull align 1 %_15.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({}**) addrspace(1)*, i16, i16, i1 ({}**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.r to [3 x i16]*))
  %_20.0.i = bitcast %"task::wake::RawWakerVTable"** %vtable_ptr.i to {}*
; call core::fmt::builders::DebugStruct::field
  %_5.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %_7.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc19226 to [0 x i8]*), i16 6, {}* nonnull align 1 %_20.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"task::wake::RawWakerVTable"**) addrspace(1)*, i16, i16, i1 (%"task::wake::RawWakerVTable"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.s to [3 x i16]*))
  %15 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_5.i, i16 0, i32 5
  %16 = load i8, i8* %15, align 1, !range !87
  %_2.i.i = icmp eq i8 %16, 0
  %.phi.trans.insert.i.i = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_5.i, i16 0, i32 3
  %.pre.i.i = load i8, i8* %.phi.trans.insert.i.i, align 1, !range !87
  br i1 %_2.i.i, label %"_ZN60_$LT$core..task..wake..Waker$u20$as$u20$core..fmt..Debug$GT$3fmt17ha7ccb9d6177dd3a0E.exit", label %bb2.i.i

bb2.i.i:                                          ; preds = %start
  %_4.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_4.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %17 = bitcast %"fmt::builders::DebugStruct"* %_5.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %17, align 1, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !4395, !noalias !4398
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %18 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %_5.cast.i.i.i.i = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %19, align 1, !nonnull !568
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 1
  %21 = bitcast [3 x i16]** %20 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %21, align 1, !nonnull !568
  %22 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %23 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %22, align 1, !invariant.load !568, !nonnull !568
  br i1 %18, label %bb2.i.i.i.i, label %bb3.i.i.i.i

bb2.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %24 = call zeroext addrspace(1) i1 %23({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %25 = call zeroext addrspace(1) i1 %23({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i": ; preds = %bb3.i.i.i.i, %bb2.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i1 [ true, %bb2.i.i ], [ %25, %bb3.i.i.i.i ], [ %24, %bb2.i.i.i.i ]
  %26 = zext i1 %.0.i.i.i to i8
  store i8 %26, i8* %.phi.trans.insert.i.i, align 1
  br label %"_ZN60_$LT$core..task..wake..Waker$u20$as$u20$core..fmt..Debug$GT$3fmt17ha7ccb9d6177dd3a0E.exit"

"_ZN60_$LT$core..task..wake..Waker$u20$as$u20$core..fmt..Debug$GT$3fmt17ha7ccb9d6177dd3a0E.exit": ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"
  %27 = phi i8 [ %26, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i" ], [ %.pre.i.i, %start ]
  %28 = icmp ne i8 %27, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %0), !noalias !4380
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %4), !noalias !4380
  ret i1 %28
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hc011b2e005c86798E"(%"str::Lines"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_13.i = alloca %"iter::adapters::Map<str::SplitTerminator<char>, str::LinesAnyMap>"*, align 1
  %debug_trait_builder.i = alloca %"fmt::builders::DebugTuple", align 1
  %_4 = load %"str::Lines"*, %"str::Lines"** %self, align 1, !nonnull !568
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0), !noalias !4401
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %1, align 1, !noalias !4404, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !4404, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !4404, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19207 to [0 x i8]*), i16 5), !noalias !4413
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !4414, !noalias !4415
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder.i, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !4414, !noalias !4415
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder.i, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !4414, !noalias !4415
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder.i, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !4414, !noalias !4415
  %12 = bitcast %"iter::adapters::Map<str::SplitTerminator<char>, str::LinesAnyMap>"** %_13.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12), !noalias !4401
  %13 = bitcast %"iter::adapters::Map<str::SplitTerminator<char>, str::LinesAnyMap>"** %_13.i to %"str::Lines"**
  store %"str::Lines"* %_4, %"str::Lines"** %13, align 1, !noalias !4401
  %_10.0.i = bitcast %"iter::adapters::Map<str::SplitTerminator<char>, str::LinesAnyMap>"** %_13.i to {}*
; call core::fmt::builders::DebugTuple::field
  %_8.i = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder.i, {}* nonnull align 1 %_10.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"iter::adapters::Map<str::SplitTerminator<char>, str::LinesAnyMap>"**) addrspace(1)*, i16, i16, i1 (%"iter::adapters::Map<str::SplitTerminator<char>, str::LinesAnyMap>"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1y to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12), !noalias !4401
  %_3.i.i = load i16, i16* %10, align 1, !noalias !4401
  %_2.i.i = icmp eq i16 %_3.i.i, 0
  %.pre.i.i = load i8, i8* %8, align 1, !range !87, !noalias !4401
  br i1 %_2.i.i, label %"_ZN53_$LT$core..str..Lines$u20$as$u20$core..fmt..Debug$GT$3fmt17h4275b8cc23cfd8d9E.exit", label %bb2.i.i

bb2.i.i:                                          ; preds = %start
  %_5.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_5.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %_5.i.i.i.i = icmp ne i16 %_3.i.i, 1
  %14 = load i8, i8* %11, align 1, !noalias !4401
  %_7.i.i.i.i = icmp eq i8 %14, 0
  %or.cond.i = or i1 %_5.i.i.i.i, %_7.i.i.i.i
  br i1 %or.cond.i, label %bb20.i.i.i.i, label %bb3.i.i.i.i

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %15 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %15, align 1, !alias.scope !4416, !noalias !4401, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !4419, !noalias !4416
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %16 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %17 = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  br i1 %16, label %bb11.i.i.i.i, label %bb20.i.i.i.i

bb11.i.i.i.i:                                     ; preds = %bb3.i.i.i.i
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i.i = load {}*, {}** %18, align 1, !noalias !4422, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !noalias !4422, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !noalias !4422, !nonnull !568
  %23 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i2.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %23, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i", label %bb20.i.i.i.i

bb20.i.i.i.i:                                     ; preds = %bb11.i.i.i.i, %bb3.i.i.i.i, %bb3.i.i.i
  %_21.i.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !noalias !4401, !nonnull !568
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %24, align 1, !noalias !4425, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i.i, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %26, align 1, !noalias !4425, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %28 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !4425, !nonnull !568
  %29 = call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i.i = zext i1 %29 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i": ; preds = %bb20.i.i.i.i, %bb11.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i8 [ 1, %bb2.i.i ], [ %phitmp.i.i, %bb20.i.i.i.i ], [ 1, %bb11.i.i.i.i ]
  store i8 %.0.i.i.i, i8* %8, align 1, !noalias !4401
  br label %"_ZN53_$LT$core..str..Lines$u20$as$u20$core..fmt..Debug$GT$3fmt17h4275b8cc23cfd8d9E.exit"

"_ZN53_$LT$core..str..Lines$u20$as$u20$core..fmt..Debug$GT$3fmt17h4275b8cc23cfd8d9E.exit": ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i"
  %30 = phi i8 [ %.0.i.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i" ], [ %.pre.i.i, %start ]
  %31 = icmp ne i8 %30, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0), !noalias !4401
  ret i1 %31
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hc1f049c94e389dcfE"(i16** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i.i2 = alloca [128 x i8], align 1
  %buf.i.i = alloca [39 x i8], align 1
  %buf.i.i.i = alloca [128 x i8], align 1
  %_4 = load i16*, i16** %self, align 1, !nonnull !568
  %0 = bitcast %"fmt::Formatter"* %f to i32*
  %_3.i.i = load i32, i32* %0, align 1, !alias.scope !4428, !noalias !4431
  %_2.i.i = and i32 %_3.i.i, 16
  %1 = icmp eq i32 %_2.i.i, 0
  br i1 %1, label %bb2.i, label %bb3.i

bb2.i:                                            ; preds = %start
  %_2.i2.i = and i32 %_3.i.i, 32
  %2 = icmp eq i32 %_2.i2.i, 0
  %_2.i.i1 = load i16, i16* %_4, align 1
  br i1 %2, label %bb6.i, label %bb7.i

bb3.i:                                            ; preds = %start
  %_4.i = load i16, i16* %_4, align 1, !alias.scope !4434
  %3 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i2, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %3), !noalias !4434
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %3, i8 undef, i16 128, i1 false), !noalias !4434
  %4 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i2, i16 0, i16 128
  br label %bb15.i.i

bb15.i.i:                                         ; preds = %bb15.i.i, %bb3.i
  %iter.sroa.4.0.i.i = phi i8* [ %4, %bb3.i ], [ %5, %bb15.i.i ]
  %x.0.i.i = phi i16 [ %_4.i, %bb3.i ], [ %6, %bb15.i.i ]
  %curr.0.i.i = phi i16 [ 128, %bb3.i ], [ %11, %bb15.i.i ]
  %5 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i.i, i16 -1
  %6 = lshr i16 %x.0.i.i, 4
  %7 = trunc i16 %x.0.i.i to i8
  %8 = and i8 %7, 15
  %_5.i9.i.i = icmp ult i8 %8, 10
  %9 = or i8 %8, 48
  %10 = add nuw nsw i8 %8, 87
  %.0.i15.i.i = select i1 %_5.i9.i.i, i8 %9, i8 %10
  store i8 %.0.i15.i.i, i8* %5, align 1, !noalias !4434
  %11 = add nsw i16 %curr.0.i.i, -1
  %12 = icmp eq i16 %6, 0
  br i1 %12, label %bb43.i.i, label %bb15.i.i

bb43.i.i:                                         ; preds = %bb15.i.i
  %_3.i.i.i.i.i = icmp ugt i16 %11, 128
  br i1 %_3.i.i.i.i.i, label %bb2.i.i.i.i.i, label %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u16$GT$3fmt17h8250f7f13a1439d7E.exit"

bb2.i.i.i.i.i:                                    ; preds = %bb43.i.i
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %11, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*)), !noalias !4434
  unreachable

"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u16$GT$3fmt17h8250f7f13a1439d7E.exit": ; preds = %bb43.i.i
  %13 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i2, i16 0, i16 %11
  %_7.i.i.i.i.i.i = sub nuw nsw i16 129, %curr.0.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i3 = bitcast i8* %13 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %14 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i3, i16 %_7.i.i.i.i.i.i), !noalias !4434
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %3), !noalias !4434
  br label %"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u16$GT$3fmt17hb117ac7ccab46262E.exit"

bb6.i:                                            ; preds = %bb2.i
  %15 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 39, i8* nonnull %15), !noalias !4437
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(39) %15, i8 undef, i16 39, i1 false), !noalias !4437
  %_2329.i.i = icmp ugt i16 %_2.i.i1, 9999
  br i1 %_2329.i.i, label %bb26.i.thread.i, label %bb9.i.i

bb26.i.thread.i:                                  ; preds = %bb6.i
  %16 = udiv i16 %_2.i.i1, 10000
  %17 = mul i16 %16, 10000
  %_26.i2.i.decomposed = sub i16 %_2.i.i1, %17
  %_29.i.i = udiv i16 %_26.i2.i.decomposed, 100
  %d1.i.i = shl nuw nsw i16 %_29.i.i, 1
  %18 = mul i16 %_29.i.i, 100
  %_35.i.i.decomposed = sub i16 %_26.i2.i.decomposed, %18
  %d2.i.i = shl nuw nsw i16 %_35.i.i.decomposed, 1
  %19 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d1.i.i
  %20 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 35
  %21 = bitcast i8* %19 to i16*
  %22 = bitcast i8* %20 to i16*
  %23 = load i16, i16* %21, align 1, !noalias !4437
  store i16 %23, i16* %22, align 1, !noalias !4437
  %24 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d2.i.i
  %25 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 37
  %26 = bitcast i8* %24 to i16*
  %27 = bitcast i8* %25 to i16*
  %28 = load i16, i16* %26, align 1, !noalias !4437
  store i16 %28, i16* %27, align 1, !noalias !4437
  %extract.t.i = trunc i16 %16 to i8
  br label %bb28.i.i

bb9.i.i:                                          ; preds = %bb6.i
  %_57.i.i = icmp sgt i16 %_2.i.i1, 99
  br i1 %_57.i.i, label %bb22.i.i, label %bb26.i.i

bb22.i.i:                                         ; preds = %bb9.i.i
  %29 = udiv i16 %_2.i.i1, 100
  %30 = mul i16 %29, 100
  %_6028.i.i.decomposed = sub i16 %_2.i.i1, %30
  %d14.i.i = shl nuw nsw i16 %_6028.i.i.decomposed, 1
  %31 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d14.i.i
  %32 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 37
  %33 = bitcast i8* %31 to i16*
  %34 = bitcast i8* %32 to i16*
  %35 = load i16, i16* %33, align 1, !noalias !4437
  store i16 %35, i16* %34, align 1, !noalias !4437
  br label %bb26.i.i

bb26.i.i:                                         ; preds = %bb22.i.i, %bb9.i.i
  %n1.0.i.i = phi i16 [ %29, %bb22.i.i ], [ %_2.i.i1, %bb9.i.i ]
  %curr.1.i.i = phi i16 [ 37, %bb22.i.i ], [ 39, %bb9.i.i ]
  %_75.i.i = icmp slt i16 %n1.0.i.i, 10
  %extract.t11.i = trunc i16 %n1.0.i.i to i8
  br i1 %_75.i.i, label %bb28.i.i, label %bb27.i.i

bb27.i.i:                                         ; preds = %bb26.i.i
  %d16.i.i = shl nuw nsw i16 %n1.0.i.i, 1
  %36 = add nsw i16 %curr.1.i.i, -2
  %37 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d16.i.i
  %38 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 %36
  %39 = bitcast i8* %37 to i16*
  %40 = bitcast i8* %38 to i16*
  %41 = load i16, i16* %39, align 1, !noalias !4437
  store i16 %41, i16* %40, align 1, !noalias !4437
  br label %"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u16$GT$3fmt17ha65397985f1509e1E.exit"

bb28.i.i:                                         ; preds = %bb26.i.i, %bb26.i.thread.i
  %curr.1.i10.i = phi i16 [ 35, %bb26.i.thread.i ], [ %curr.1.i.i, %bb26.i.i ]
  %n1.0.i9.off0.i = phi i8 [ %extract.t.i, %bb26.i.thread.i ], [ %extract.t11.i, %bb26.i.i ]
  %42 = add nsw i16 %curr.1.i10.i, -1
  %43 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 %42
  %44 = add nuw nsw i8 %n1.0.i9.off0.i, 48
  store i8 %44, i8* %43, align 1, !noalias !4437
  br label %"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u16$GT$3fmt17ha65397985f1509e1E.exit"

"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u16$GT$3fmt17ha65397985f1509e1E.exit": ; preds = %bb27.i.i, %bb28.i.i
  %curr.2.i.i = phi i16 [ %42, %bb28.i.i ], [ %36, %bb27.i.i ]
  %45 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 %curr.2.i.i
  %_98.i.i = sub nuw nsw i16 39, %curr.2.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i = bitcast i8* %45 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %46 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), i16 0, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i, i16 %_98.i.i), !noalias !4437
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 39, i8* nonnull %15), !noalias !4437
  br label %"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u16$GT$3fmt17hb117ac7ccab46262E.exit"

bb7.i:                                            ; preds = %bb2.i
  %47 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %47), !noalias !4440
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %47, i8 undef, i16 128, i1 false), !noalias !4440
  %48 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 128
  br label %bb15.i.i.i

bb15.i.i.i:                                       ; preds = %bb15.i.i.i, %bb7.i
  %iter.sroa.4.0.i.i.i = phi i8* [ %48, %bb7.i ], [ %49, %bb15.i.i.i ]
  %x.0.i.i.i = phi i16 [ %_2.i.i1, %bb7.i ], [ %50, %bb15.i.i.i ]
  %curr.0.i.i.i = phi i16 [ 128, %bb7.i ], [ %55, %bb15.i.i.i ]
  %49 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i.i.i, i16 -1
  %50 = lshr i16 %x.0.i.i.i, 4
  %51 = trunc i16 %x.0.i.i.i to i8
  %52 = and i8 %51, 15
  %_5.i9.i.i.i = icmp ult i8 %52, 10
  %53 = or i8 %52, 48
  %54 = add nuw nsw i8 %52, 55
  %.0.i15.i.i.i = select i1 %_5.i9.i.i.i, i8 %53, i8 %54
  store i8 %.0.i15.i.i.i, i8* %49, align 1, !noalias !4440
  %55 = add nsw i16 %curr.0.i.i.i, -1
  %56 = icmp eq i16 %50, 0
  br i1 %56, label %bb43.i.i.i, label %bb15.i.i.i

bb43.i.i.i:                                       ; preds = %bb15.i.i.i
  %_3.i.i.i.i.i.i = icmp ugt i16 %55, 128
  br i1 %_3.i.i.i.i.i.i, label %bb2.i.i.i.i.i.i, label %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u16$GT$3fmt17h736ee6d5f84359d0E.exit.i"

bb2.i.i.i.i.i.i:                                  ; preds = %bb43.i.i.i
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %55, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*)), !noalias !4440
  unreachable

"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u16$GT$3fmt17h736ee6d5f84359d0E.exit.i": ; preds = %bb43.i.i.i
  %57 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 %55
  %_7.i.i.i.i.i.i.i = sub nuw nsw i16 129, %curr.0.i.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i = bitcast i8* %57 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %58 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i, i16 %_7.i.i.i.i.i.i.i), !noalias !4440
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %47), !noalias !4440
  br label %"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u16$GT$3fmt17hb117ac7ccab46262E.exit"

"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u16$GT$3fmt17hb117ac7ccab46262E.exit": ; preds = %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u16$GT$3fmt17h8250f7f13a1439d7E.exit", %"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u16$GT$3fmt17ha65397985f1509e1E.exit", %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u16$GT$3fmt17h736ee6d5f84359d0E.exit.i"
  %.0.in.i = phi i1 [ %14, %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u16$GT$3fmt17h8250f7f13a1439d7E.exit" ], [ %58, %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u16$GT$3fmt17h736ee6d5f84359d0E.exit.i" ], [ %46, %"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u16$GT$3fmt17ha65397985f1509e1E.exit" ]
  ret i1 %.0.in.i
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hc50ec5822fa4557eE"(%"str::pattern::TwoWaySearcher"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_4 = load %"str::pattern::TwoWaySearcher"*, %"str::pattern::TwoWaySearcher"** %self, align 1, !nonnull !568
; call <core::str::pattern::TwoWaySearcher as core::fmt::Debug>::fmt
  %0 = tail call zeroext addrspace(1) i1 @"_ZN71_$LT$core..str..pattern..TwoWaySearcher$u20$as$u20$core..fmt..Debug$GT$3fmt17hfc79f3e3f5a7df26E"(%"str::pattern::TwoWaySearcher"* noalias nonnull readonly align 1 dereferenceable(22) %_4, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %0
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hc80d369e720370b2E"(%"hash::sip::Hasher<hash::sip::Sip24Rounds>"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_69.i = alloca %"marker::PhantomData<hash::sip::Sip24Rounds>"*, align 1
  %_61.i = alloca i16*, align 1
  %_53.i = alloca i64*, align 1
  %_45.i = alloca %"hash::sip::State"*, align 1
  %_37.i = alloca i16*, align 1
  %_29.i = alloca i64*, align 1
  %_21.i = alloca i64*, align 1
  %debug_trait_builder.i = alloca %"fmt::builders::DebugStruct", align 1
  %_4 = load %"hash::sip::Hasher<hash::sip::Sip24Rounds>"*, %"hash::sip::Hasher<hash::sip::Sip24Rounds>"** %self, align 1, !nonnull !568
  %__self_0_1.i = getelementptr inbounds %"hash::sip::Hasher<hash::sip::Sip24Rounds>", %"hash::sip::Hasher<hash::sip::Sip24Rounds>"* %_4, i16 0, i32 5
  %__self_0_2.i = getelementptr inbounds %"hash::sip::Hasher<hash::sip::Sip24Rounds>", %"hash::sip::Hasher<hash::sip::Sip24Rounds>"* %_4, i16 0, i32 7
  %__self_0_3.i = getelementptr inbounds %"hash::sip::Hasher<hash::sip::Sip24Rounds>", %"hash::sip::Hasher<hash::sip::Sip24Rounds>"* %_4, i16 0, i32 9
  %__self_0_4.i = getelementptr inbounds %"hash::sip::Hasher<hash::sip::Sip24Rounds>", %"hash::sip::Hasher<hash::sip::Sip24Rounds>"* %_4, i16 0, i32 11
  %__self_0_5.i = getelementptr inbounds %"hash::sip::Hasher<hash::sip::Sip24Rounds>", %"hash::sip::Hasher<hash::sip::Sip24Rounds>"* %_4, i16 0, i32 13
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0), !noalias !4443
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %1, align 1, !noalias !4446, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !4446, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !4446, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc19143 to [0 x i8]*), i16 6), !noalias !4455
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !4456, !noalias !4457
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !4456, !noalias !4457
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !4456, !noalias !4457
  %11 = bitcast i64** %_21.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11), !noalias !4443
  %12 = bitcast i64** %_21.i to %"hash::sip::Hasher<hash::sip::Sip24Rounds>"**
  store %"hash::sip::Hasher<hash::sip::Sip24Rounds>"* %_4, %"hash::sip::Hasher<hash::sip::Sip24Rounds>"** %12, align 1, !noalias !4443
  %_18.0.i = bitcast i64** %_21.i to {}*
; call core::fmt::builders::DebugStruct::field
  %_14.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc19144 to [0 x i8]*), i16 2, {}* nonnull align 1 %_18.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.w to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11), !noalias !4443
  %13 = bitcast i64** %_29.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13), !noalias !4443
  store i64* %__self_0_1.i, i64** %_29.i, align 1, !noalias !4443
  %_26.0.i = bitcast i64** %_29.i to {}*
; call core::fmt::builders::DebugStruct::field
  %_22.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc19145 to [0 x i8]*), i16 2, {}* nonnull align 1 %_26.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.w to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13), !noalias !4443
  %14 = bitcast i16** %_37.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14), !noalias !4443
  store i16* %__self_0_2.i, i16** %_37.i, align 1, !noalias !4443
  %_34.0.i = bitcast i16** %_37.i to {}*
; call core::fmt::builders::DebugStruct::field
  %_30.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc19146 to [0 x i8]*), i16 6, {}* nonnull align 1 %_34.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.C to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14), !noalias !4443
  %15 = bitcast %"hash::sip::State"** %_45.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15), !noalias !4443
  store %"hash::sip::State"* %__self_0_3.i, %"hash::sip::State"** %_45.i, align 1, !noalias !4443
  %_42.0.i = bitcast %"hash::sip::State"** %_45.i to {}*
; call core::fmt::builders::DebugStruct::field
  %_38.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19147 to [0 x i8]*), i16 5, {}* nonnull align 1 %_42.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"hash::sip::State"**) addrspace(1)*, i16, i16, i1 (%"hash::sip::State"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1j to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15), !noalias !4443
  %16 = bitcast i64** %_53.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %16), !noalias !4443
  store i64* %__self_0_4.i, i64** %_53.i, align 1, !noalias !4443
  %_50.0.i = bitcast i64** %_53.i to {}*
; call core::fmt::builders::DebugStruct::field
  %_46.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19148 to [0 x i8]*), i16 4, {}* nonnull align 1 %_50.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.w to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %16), !noalias !4443
  %17 = bitcast i16** %_61.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %17), !noalias !4443
  store i16* %__self_0_5.i, i16** %_61.i, align 1, !noalias !4443
  %_58.0.i = bitcast i16** %_61.i to {}*
; call core::fmt::builders::DebugStruct::field
  %_54.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19149 to [0 x i8]*), i16 5, {}* nonnull align 1 %_58.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.C to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %17), !noalias !4443
  %18 = bitcast %"marker::PhantomData<hash::sip::Sip24Rounds>"** %_69.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %18), !noalias !4443
  %19 = bitcast %"marker::PhantomData<hash::sip::Sip24Rounds>"** %_69.i to %"hash::sip::Hasher<hash::sip::Sip24Rounds>"**
  store %"hash::sip::Hasher<hash::sip::Sip24Rounds>"* %_4, %"hash::sip::Hasher<hash::sip::Sip24Rounds>"** %19, align 1, !noalias !4443
  %_66.0.i = bitcast %"marker::PhantomData<hash::sip::Sip24Rounds>"** %_69.i to {}*
; call core::fmt::builders::DebugStruct::field
  %_62.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [7 x i8] }>* @alloc19150 to [0 x i8]*), i16 7, {}* nonnull align 1 %_66.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"marker::PhantomData<hash::sip::Sip24Rounds>"**) addrspace(1)*, i16, i16, i1 (%"marker::PhantomData<hash::sip::Sip24Rounds>"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1l to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %18), !noalias !4443
  %20 = load i8, i8* %10, align 1, !range !87, !noalias !4443
  %_2.i.i = icmp eq i8 %20, 0
  %.pre.i.i = load i8, i8* %8, align 1, !range !87, !noalias !4443
  br i1 %_2.i.i, label %"_ZN69_$LT$core..hash..sip..Hasher$LT$S$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hfc1975d84f4aa659E.exit", label %bb2.i.i

bb2.i.i:                                          ; preds = %start
  %_4.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_4.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %21 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %21, align 1, !noalias !4443, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !4458, !noalias !4461
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %22 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %_5.cast.i.i.i.i = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  %23 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %23, align 1, !nonnull !568
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 1
  %25 = bitcast [3 x i16]** %24 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %25, align 1, !nonnull !568
  %26 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %27 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %26, align 1, !invariant.load !568, !nonnull !568
  br i1 %22, label %bb2.i.i.i.i, label %bb3.i.i.i.i

bb2.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %28 = call zeroext addrspace(1) i1 %27({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %29 = call zeroext addrspace(1) i1 %27({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i": ; preds = %bb3.i.i.i.i, %bb2.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i1 [ true, %bb2.i.i ], [ %29, %bb3.i.i.i.i ], [ %28, %bb2.i.i.i.i ]
  %30 = zext i1 %.0.i.i.i to i8
  store i8 %30, i8* %8, align 1, !noalias !4443
  br label %"_ZN69_$LT$core..hash..sip..Hasher$LT$S$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hfc1975d84f4aa659E.exit"

"_ZN69_$LT$core..hash..sip..Hasher$LT$S$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hfc1975d84f4aa659E.exit": ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"
  %31 = phi i8 [ %30, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i" ], [ %.pre.i.i, %start ]
  %32 = icmp ne i8 %31, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0), !noalias !4443
  ret i1 %32
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hcd17d9f88b4bdb09E"({ [0 x i32]*, i16 }** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %entry.i.i.i = alloca i32*, align 1
  %_6.i.i = alloca %"fmt::builders::DebugList", align 1
  %_4 = load { [0 x i32]*, i16 }*, { [0 x i32]*, i16 }** %self, align 1, !nonnull !568
  %_4.idx = getelementptr { [0 x i32]*, i16 }, { [0 x i32]*, i16 }* %_4, i16 0, i32 0
  %_4.idx.val = load [0 x i32]*, [0 x i32]** %_4.idx, align 1
  %_4.idx1 = getelementptr { [0 x i32]*, i16 }, { [0 x i32]*, i16 }* %_4, i16 0, i32 1
  %_4.idx1.val = load i16, i16* %_4.idx1, align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugList", %"fmt::builders::DebugList"* %_6.i.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0), !noalias !4464
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %1, align 1, !noalias !4467, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !4467, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !4467, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18664 to [0 x i8]*), i16 1), !noalias !4474
  %7 = zext i1 %6 to i8
  %_6.sroa.0.0..sroa_cast1.i.i.i.i = bitcast %"fmt::builders::DebugList"* %_6.i.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %_6.sroa.0.0..sroa_cast1.i.i.i.i, align 1, !alias.scope !4475, !noalias !4464
  %8 = getelementptr inbounds %"fmt::builders::DebugList", %"fmt::builders::DebugList"* %_6.i.i, i16 0, i32 1, i32 3
  store i8 %7, i8* %8, align 1, !alias.scope !4475, !noalias !4464
  %9 = getelementptr inbounds %"fmt::builders::DebugList", %"fmt::builders::DebugList"* %_6.i.i, i16 0, i32 1, i32 5
  store i8 0, i8* %9, align 1, !alias.scope !4475, !noalias !4464
  %10 = getelementptr inbounds [0 x i32], [0 x i32]* %_4.idx.val, i16 0, i16 %_4.idx1.val
  %11 = bitcast i32* %10 to i8*
  %12 = bitcast i32* %10 to [0 x i32]*
  %_13.i12.i.i.i = icmp eq [0 x i32]* %_4.idx.val, %12
  br i1 %_13.i12.i.i.i, label %_ZN4core3fmt8builders9DebugList7entries17h81149b14cbef53bdE.exit.i.i, label %bb5.lr.ph.i.i.i

bb5.lr.ph.i.i.i:                                  ; preds = %start
  %13 = bitcast [0 x i32]* %_4.idx.val to i8*
  %14 = bitcast i32** %entry.i.i.i to i8*
  %15 = bitcast i32** %entry.i.i.i to i8**
  %_17.0.i.i.i = bitcast i32** %entry.i.i.i to {}*
  %_5.i.i.i.i = bitcast %"fmt::builders::DebugList"* %_6.i.i to %"fmt::builders::DebugInner"*
  br label %bb5.i.i.i

bb5.i.i.i:                                        ; preds = %bb5.i.i.i, %bb5.lr.ph.i.i.i
  %iter.sroa.0.013.i.i.i = phi i8* [ %13, %bb5.lr.ph.i.i.i ], [ %16, %bb5.i.i.i ]
  %16 = getelementptr inbounds i8, i8* %iter.sroa.0.013.i.i.i, i16 4
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14), !noalias !4464
  store i8* %iter.sroa.0.013.i.i.i, i8** %15, align 1, !noalias !4464
; call core::fmt::builders::DebugInner::entry
  call fastcc addrspace(1) void @_ZN4core3fmt8builders10DebugInner5entry17h8e131ef85fccf0c6E(%"fmt::builders::DebugInner"* nonnull align 1 dereferenceable(4) %_5.i.i.i.i, {}* nonnull align 1 %_17.0.i.i.i, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.g to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14), !noalias !4464
  %_13.i.i.i.i = icmp eq i8* %16, %11
  br i1 %_13.i.i.i.i, label %_ZN4core3fmt8builders9DebugList7entries17h81149b14cbef53bdE.exit.loopexit.i.i, label %bb5.i.i.i

_ZN4core3fmt8builders9DebugList7entries17h81149b14cbef53bdE.exit.loopexit.i.i: ; preds = %bb5.i.i.i
  %.pre.i.i = load i8, i8* %8, align 1, !range !87, !noalias !4464
  br label %_ZN4core3fmt8builders9DebugList7entries17h81149b14cbef53bdE.exit.i.i

_ZN4core3fmt8builders9DebugList7entries17h81149b14cbef53bdE.exit.i.i: ; preds = %_ZN4core3fmt8builders9DebugList7entries17h81149b14cbef53bdE.exit.loopexit.i.i, %start
  %17 = phi i8 [ %.pre.i.i, %_ZN4core3fmt8builders9DebugList7entries17h81149b14cbef53bdE.exit.loopexit.i.i ], [ %7, %start ]
  %_2.i.i.i = icmp eq i8 %17, 0
  br i1 %_2.i.i.i, label %bb3.i.i.i.i, label %"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h902d01b35154c3e9E.exit"

bb3.i.i.i.i:                                      ; preds = %_ZN4core3fmt8builders9DebugList7entries17h81149b14cbef53bdE.exit.i.i
  %_3.i.i.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %_6.sroa.0.0..sroa_cast1.i.i.i.i, align 1, !noalias !4464, !nonnull !568
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_3.i.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i.i = load {}*, {}** %18, align 1, !noalias !4476, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_3.i.i.i.i.i, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !noalias !4476, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !noalias !4476, !nonnull !568
  %23 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18665 to [0 x i8]*), i16 1)
  br label %"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h902d01b35154c3e9E.exit"

"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h902d01b35154c3e9E.exit": ; preds = %_ZN4core3fmt8builders9DebugList7entries17h81149b14cbef53bdE.exit.i.i, %bb3.i.i.i.i
  %.0.i.i.i.i = phi i1 [ true, %_ZN4core3fmt8builders9DebugList7entries17h81149b14cbef53bdE.exit.i.i ], [ %23, %bb3.i.i.i.i ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0), !noalias !4464
  ret i1 %.0.i.i.i.i
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hd218ee7bd6d70803E"(%"str::pattern::EmptyNeedle"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_4 = load %"str::pattern::EmptyNeedle"*, %"str::pattern::EmptyNeedle"** %self, align 1, !nonnull !568
; call <core::str::pattern::EmptyNeedle as core::fmt::Debug>::fmt
  %0 = tail call zeroext addrspace(1) i1 @"_ZN68_$LT$core..str..pattern..EmptyNeedle$u20$as$u20$core..fmt..Debug$GT$3fmt17hdf4f28cfd5256a71E"(%"str::pattern::EmptyNeedle"* noalias nonnull readonly align 1 dereferenceable(6) %_4, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %0
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hd480a7b2ae9bad3cE"({}** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
; call core::fmt::Formatter::pad
  %0 = tail call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter3pad17h307fb261f2dc8a5eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18730 to [0 x i8]*), i16 2)
  ret i1 %0
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hd73078e04c14a2b3E"(%"iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_6.i = alloca %"fmt::builders::DebugStruct", align 1
  %0 = bitcast %"iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>"** %self to {}**
  %_41 = load {}*, {}** %0, align 1, !nonnull !568
  %1 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_6.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %1), !noalias !4479
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %2, align 1, !noalias !4482, !nonnull !568
  %3 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %4 = bitcast [3 x i16]** %3 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %4, align 1, !noalias !4482, !nonnull !568
  %5 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %6 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %5, align 1, !invariant.load !568, !noalias !4482, !nonnull !568
  %7 = tail call zeroext addrspace(1) i1 %6({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [7 x i8] }>* @alloc18590 to [0 x i8]*), i16 7), !noalias !4491
  %8 = bitcast %"fmt::builders::DebugStruct"* %_6.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %8, align 1, !alias.scope !4492, !noalias !4493
  %9 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_6.i, i16 0, i32 3
  %10 = zext i1 %7 to i8
  store i8 %10, i8* %9, align 1, !alias.scope !4492, !noalias !4493
  %11 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_6.i, i16 0, i32 5
  store i8 0, i8* %11, align 1, !alias.scope !4492, !noalias !4493
; call core::fmt::builders::DebugStruct::field
  %_4.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %_6.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19218 to [0 x i8]*), i16 5, {}* nonnull align 1 %_41, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"iter::adapters::flatten::FlattenCompat<option::IntoIter<char::EscapeDebug>, char::EscapeDebug>"*) addrspace(1)*, i16, i16, i1 (%"iter::adapters::flatten::FlattenCompat<option::IntoIter<char::EscapeDebug>, char::EscapeDebug>"*, %"fmt::Formatter"*) addrspace(1)* }* @vtable.6 to [3 x i16]*))
  %12 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_4.i, i16 0, i32 5
  %13 = load i8, i8* %12, align 1, !range !87
  %_2.i.i = icmp eq i8 %13, 0
  %.phi.trans.insert.i.i = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_4.i, i16 0, i32 3
  %.pre.i.i = load i8, i8* %.phi.trans.insert.i.i, align 1, !range !87
  br i1 %_2.i.i, label %"_ZN84_$LT$core..iter..adapters..flatten..Flatten$LT$I$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h9642c6ffca28783eE.exit", label %bb2.i.i

bb2.i.i:                                          ; preds = %start
  %_4.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_4.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %14 = bitcast %"fmt::builders::DebugStruct"* %_4.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %14, align 1, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !4494, !noalias !4497
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %15 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %_5.cast.i.i.i.i = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %16, align 1, !nonnull !568
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 1
  %18 = bitcast [3 x i16]** %17 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %20 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %19, align 1, !invariant.load !568, !nonnull !568
  br i1 %15, label %bb2.i.i.i.i, label %bb3.i.i.i.i

bb2.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %21 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %22 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i": ; preds = %bb3.i.i.i.i, %bb2.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i1 [ true, %bb2.i.i ], [ %22, %bb3.i.i.i.i ], [ %21, %bb2.i.i.i.i ]
  %23 = zext i1 %.0.i.i.i to i8
  store i8 %23, i8* %.phi.trans.insert.i.i, align 1
  br label %"_ZN84_$LT$core..iter..adapters..flatten..Flatten$LT$I$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h9642c6ffca28783eE.exit"

"_ZN84_$LT$core..iter..adapters..flatten..Flatten$LT$I$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h9642c6ffca28783eE.exit": ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"
  %24 = phi i8 [ %23, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i" ], [ %.pre.i.i, %start ]
  %25 = icmp ne i8 %24, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %1), !noalias !4479
  ret i1 %25
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hdd039b56bb6f8341E"(%"hash::sip::State"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_4 = load %"hash::sip::State"*, %"hash::sip::State"** %self, align 1, !nonnull !568
; call <core::hash::sip::State as core::fmt::Debug>::fmt
  %0 = tail call zeroext addrspace(1) i1 @"_ZN59_$LT$core..hash..sip..State$u20$as$u20$core..fmt..Debug$GT$3fmt17h4f1a9ce4e84e59b3E"(%"hash::sip::State"* noalias nonnull readonly align 1 dereferenceable(32) %_4, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %0
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hdede4e9da9d7b39fE"({ i8, i8 }** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_21.i = alloca i8*, align 1
  %debug_trait_builder1.i = alloca %"fmt::builders::DebugTuple", align 1
  %_4 = load { i8, i8 }*, { i8, i8 }** %self, align 1, !nonnull !568
  %0 = getelementptr inbounds { i8, i8 }, { i8, i8 }* %_4, i16 0, i32 0
  %1 = load i8, i8* %0, align 1, !range !87, !alias.scope !4500
  %switch.i = icmp eq i8 %1, 1
  br i1 %switch.i, label %bb1.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit31.i

bb1.i:                                            ; preds = %start
  %2 = getelementptr inbounds { i8, i8 }, { i8, i8 }* %_4, i16 0, i32 1
  %3 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %3), !noalias !4500
  %4 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %4, align 1, !noalias !4503, !nonnull !568
  %5 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %6 = bitcast [3 x i16]** %5 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %6, align 1, !noalias !4503, !nonnull !568
  %7 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %8 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %7, align 1, !invariant.load !568, !noalias !4503, !nonnull !568
  %9 = tail call zeroext addrspace(1) i1 %8({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19071 to [0 x i8]*), i16 4), !noalias !4512
  %10 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder1.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %10, align 1, !alias.scope !4513, !noalias !4514
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 3
  %12 = zext i1 %9 to i8
  store i8 %12, i8* %11, align 1, !alias.scope !4513, !noalias !4514
  %13 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 5
  store i16 0, i16* %13, align 1, !alias.scope !4513, !noalias !4514
  %14 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1.i, i16 0, i32 7
  store i8 0, i8* %14, align 1, !alias.scope !4513, !noalias !4514
  %15 = bitcast i8** %_21.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15), !noalias !4500
  store i8* %2, i8** %_21.i, align 1, !noalias !4500
  %_18.0.i = bitcast i8** %_21.i to {}*
; call core::fmt::builders::DebugTuple::field
  %_16.i = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder1.i, {}* nonnull align 1 %_18.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15), !noalias !4500
  %_3.i.i = load i16, i16* %13, align 1, !noalias !4500
  %_2.i.i = icmp eq i16 %_3.i.i, 0
  %.pre.i.i = load i8, i8* %11, align 1, !range !87, !noalias !4500
  br i1 %_2.i.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i, label %bb2.i.i

bb2.i.i:                                          ; preds = %bb1.i
  %_5.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_5.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %_5.i.i.i.i = icmp ne i16 %_3.i.i, 1
  %16 = load i8, i8* %14, align 1, !noalias !4500
  %_7.i.i.i.i = icmp eq i8 %16, 0
  %or.cond.i = or i1 %_5.i.i.i.i, %_7.i.i.i.i
  br i1 %or.cond.i, label %bb20.i.i.i.i, label %bb3.i.i.i.i

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %17 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder1.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %17, align 1, !alias.scope !4515, !noalias !4500, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !4518, !noalias !4515
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %18 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %19 = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  br i1 %18, label %bb11.i.i.i.i, label %bb20.i.i.i.i

bb11.i.i.i.i:                                     ; preds = %bb3.i.i.i.i
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %19, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i.i = load {}*, {}** %20, align 1, !noalias !4521, !nonnull !568
  %21 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %19, i16 0, i32 11, i32 1
  %22 = bitcast [3 x i16]** %21 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %22, align 1, !noalias !4521, !nonnull !568
  %23 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i.i, i16 3
  %24 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %23, align 1, !invariant.load !568, !noalias !4521, !nonnull !568
  %25 = call zeroext addrspace(1) i1 %24({}* nonnull align 1 %_3.0.i2.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %25, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i", label %bb20.i.i.i.i

bb20.i.i.i.i:                                     ; preds = %bb11.i.i.i.i, %bb3.i.i.i.i, %bb3.i.i.i
  %_21.i.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %10, align 1, !noalias !4500, !nonnull !568
  %26 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %26, align 1, !noalias !4524, !nonnull !568
  %27 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i.i, i16 0, i32 11, i32 1
  %28 = bitcast [3 x i16]** %27 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %28, align 1, !noalias !4524, !nonnull !568
  %29 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %30 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %29, align 1, !invariant.load !568, !noalias !4524, !nonnull !568
  %31 = call zeroext addrspace(1) i1 %30({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i.i = zext i1 %31 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i": ; preds = %bb20.i.i.i.i, %bb11.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i8 [ 1, %bb2.i.i ], [ %phitmp.i.i, %bb20.i.i.i.i ], [ 1, %bb11.i.i.i.i ]
  store i8 %.0.i.i.i, i8* %11, align 1, !noalias !4500
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i: ; preds = %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i", %bb1.i
  %32 = phi i8 [ %.0.i.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i" ], [ %.pre.i.i, %bb1.i ]
  %33 = icmp ne i8 %32, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %3), !noalias !4500
  br label %"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17he9c8f9679c696eeeE.exit"

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit31.i: ; preds = %start
  %34 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i5.i = load {}*, {}** %34, align 1, !noalias !4527, !nonnull !568
  %35 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %36 = bitcast [3 x i16]** %35 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i6.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %36, align 1, !noalias !4527, !nonnull !568
  %37 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i6.i, i16 3
  %38 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %37, align 1, !invariant.load !568, !noalias !4536, !nonnull !568
  %39 = tail call zeroext addrspace(1) i1 %38({}* nonnull align 1 %_3.0.i.i.i5.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19072 to [0 x i8]*), i16 4), !noalias !4537
  br label %"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17he9c8f9679c696eeeE.exit"

"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17he9c8f9679c696eeeE.exit": ; preds = %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit31.i
  %.0.in.i = phi i1 [ %39, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit31.i ], [ %33, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i ]
  ret i1 %.0.in.i
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17he12e83ec0663888bE"(%"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDefault, str::CharEscapeDefault>"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_6.i = alloca %"fmt::builders::DebugStruct", align 1
  %0 = bitcast %"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDefault, str::CharEscapeDefault>"** %self to {}**
  %_41 = load {}*, {}** %0, align 1, !nonnull !568
  %1 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_6.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %1), !noalias !4538
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %2, align 1, !noalias !4541, !nonnull !568
  %3 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %4 = bitcast [3 x i16]** %3 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %4, align 1, !noalias !4541, !nonnull !568
  %5 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %6 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %5, align 1, !invariant.load !568, !noalias !4541, !nonnull !568
  %7 = tail call zeroext addrspace(1) i1 %6({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [7 x i8] }>* @alloc18588 to [0 x i8]*), i16 7), !noalias !4550
  %8 = bitcast %"fmt::builders::DebugStruct"* %_6.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %8, align 1, !alias.scope !4551, !noalias !4552
  %9 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_6.i, i16 0, i32 3
  %10 = zext i1 %7 to i8
  store i8 %10, i8* %9, align 1, !alias.scope !4551, !noalias !4552
  %11 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_6.i, i16 0, i32 5
  store i8 0, i8* %11, align 1, !alias.scope !4551, !noalias !4552
; call core::fmt::builders::DebugStruct::field
  %_4.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %_6.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19218 to [0 x i8]*), i16 5, {}* nonnull align 1 %_41, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeDefault>, char::EscapeDefault>"*) addrspace(1)*, i16, i16, i1 (%"iter::adapters::flatten::FlattenCompat<iter::adapters::Map<str::Chars, str::CharEscapeDefault>, char::EscapeDefault>"*, %"fmt::Formatter"*) addrspace(1)* }* @vtable.4 to [3 x i16]*))
  %12 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_4.i, i16 0, i32 5
  %13 = load i8, i8* %12, align 1, !range !87
  %_2.i.i = icmp eq i8 %13, 0
  %.phi.trans.insert.i.i = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %_4.i, i16 0, i32 3
  %.pre.i.i = load i8, i8* %.phi.trans.insert.i.i, align 1, !range !87
  br i1 %_2.i.i, label %"_ZN92_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hc72a2f4146b40353E.exit", label %bb2.i.i

bb2.i.i:                                          ; preds = %start
  %_4.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_4.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %14 = bitcast %"fmt::builders::DebugStruct"* %_4.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %14, align 1, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !4553, !noalias !4556
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %15 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %_5.cast.i.i.i.i = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %16, align 1, !nonnull !568
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 1
  %18 = bitcast [3 x i16]** %17 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %20 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %19, align 1, !invariant.load !568, !nonnull !568
  br i1 %15, label %bb2.i.i.i.i, label %bb3.i.i.i.i

bb2.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %21 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %22 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i": ; preds = %bb3.i.i.i.i, %bb2.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i1 [ true, %bb2.i.i ], [ %22, %bb3.i.i.i.i ], [ %21, %bb2.i.i.i.i ]
  %23 = zext i1 %.0.i.i.i to i8
  store i8 %23, i8* %.phi.trans.insert.i.i, align 1
  br label %"_ZN92_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hc72a2f4146b40353E.exit"

"_ZN92_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hc72a2f4146b40353E.exit": ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"
  %24 = phi i8 [ %23, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i" ], [ %.pre.i.i, %start ]
  %25 = icmp ne i8 %24, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %1), !noalias !4538
  ret i1 %25
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17he22cfd3a15b3bf1dE"(%"num::dec2flt::parse::Decimal"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_4 = load %"num::dec2flt::parse::Decimal"*, %"num::dec2flt::parse::Decimal"** %self, align 1, !nonnull !568
; call <core::num::dec2flt::parse::Decimal as core::fmt::Debug>::fmt
  %0 = tail call zeroext addrspace(1) i1 @"_ZN71_$LT$core..num..dec2flt..parse..Decimal$u20$as$u20$core..fmt..Debug$GT$3fmt17h23f037ba84d4bcdaE"(%"num::dec2flt::parse::Decimal"* noalias nonnull readonly align 1 dereferenceable(16) %_4, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %0
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17he2cdb443778dc920E"(i8** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_4 = load i8*, i8** %self, align 1, !nonnull !568
  %0 = load i8, i8* %_4, align 1, !range !632, !alias.scope !4559
  %trunc.i = trunc i8 %0 to i3
  switch i3 %trunc.i, label %bb2.i [
    i3 0, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit32.i
    i3 1, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit59.i
    i3 2, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit86.i
    i3 3, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit113.i
    i3 -4, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i
  ]

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i: ; preds = %start
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %1, align 1, !noalias !4562, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !4562, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !4562, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19013 to [0 x i8]*), i16 4), !noalias !4571
  br label %"_ZN60_$LT$core..num..IntErrorKind$u20$as$u20$core..fmt..Debug$GT$3fmt17hcfe7ed7dc176de45E.exit"

bb2.i:                                            ; preds = %start
  unreachable

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit32.i: ; preds = %start
  %7 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i6.i = load {}*, {}** %7, align 1, !noalias !4572, !nonnull !568
  %8 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %9 = bitcast [3 x i16]** %8 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i7.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %9, align 1, !noalias !4572, !nonnull !568
  %10 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i7.i, i16 3
  %11 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %10, align 1, !invariant.load !568, !noalias !4572, !nonnull !568
  %12 = tail call zeroext addrspace(1) i1 %11({}* nonnull align 1 %_3.0.i.i.i6.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19178 to [0 x i8]*), i16 5), !noalias !4581
  br label %"_ZN60_$LT$core..num..IntErrorKind$u20$as$u20$core..fmt..Debug$GT$3fmt17hcfe7ed7dc176de45E.exit"

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit59.i: ; preds = %start
  %13 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i33.i = load {}*, {}** %13, align 1, !noalias !4582, !nonnull !568
  %14 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %15 = bitcast [3 x i16]** %14 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i34.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %15, align 1, !noalias !4582, !nonnull !568
  %16 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i34.i, i16 3
  %17 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %16, align 1, !invariant.load !568, !noalias !4582, !nonnull !568
  %18 = tail call zeroext addrspace(1) i1 %17({}* nonnull align 1 %_3.0.i.i.i33.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [12 x i8] }>* @alloc18974 to [0 x i8]*), i16 12), !noalias !4591
  br label %"_ZN60_$LT$core..num..IntErrorKind$u20$as$u20$core..fmt..Debug$GT$3fmt17hcfe7ed7dc176de45E.exit"

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit86.i: ; preds = %start
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i60.i = load {}*, {}** %19, align 1, !noalias !4592, !nonnull !568
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %21 = bitcast [3 x i16]** %20 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i61.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %21, align 1, !noalias !4592, !nonnull !568
  %22 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i61.i, i16 3
  %23 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %22, align 1, !invariant.load !568, !noalias !4592, !nonnull !568
  %24 = tail call zeroext addrspace(1) i1 %23({}* nonnull align 1 %_3.0.i.i.i60.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [8 x i8] }>* @alloc18973 to [0 x i8]*), i16 8), !noalias !4601
  br label %"_ZN60_$LT$core..num..IntErrorKind$u20$as$u20$core..fmt..Debug$GT$3fmt17hcfe7ed7dc176de45E.exit"

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit113.i: ; preds = %start
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i87.i = load {}*, {}** %25, align 1, !noalias !4602, !nonnull !568
  %26 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %27 = bitcast [3 x i16]** %26 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i88.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %27, align 1, !noalias !4602, !nonnull !568
  %28 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i88.i, i16 3
  %29 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %28, align 1, !invariant.load !568, !noalias !4602, !nonnull !568
  %30 = tail call zeroext addrspace(1) i1 %29({}* nonnull align 1 %_3.0.i.i.i87.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [9 x i8] }>* @alloc18972 to [0 x i8]*), i16 9), !noalias !4611
  br label %"_ZN60_$LT$core..num..IntErrorKind$u20$as$u20$core..fmt..Debug$GT$3fmt17hcfe7ed7dc176de45E.exit"

"_ZN60_$LT$core..num..IntErrorKind$u20$as$u20$core..fmt..Debug$GT$3fmt17hcfe7ed7dc176de45E.exit": ; preds = %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit32.i, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit59.i, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit86.i, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit113.i
  %.0.in.i = phi i1 [ %6, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i ], [ %30, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit113.i ], [ %24, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit86.i ], [ %18, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit59.i ], [ %12, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit32.i ]
  ret i1 %.0.in.i
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17he4d9045635ceda93E"({ i8*, i8* }** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_13.i = alloca { [0 x i8]*, i16 }, align 1
  %_6.i = alloca %"fmt::builders::DebugTuple", align 1
  %_4 = load { i8*, i8* }*, { i8*, i8* }** %self, align 1, !nonnull !568
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %_6.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0), !noalias !4612
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %1, align 1, !noalias !4615, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !4615, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !4615, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc18758 to [0 x i8]*), i16 4), !noalias !4624
  %7 = bitcast %"fmt::builders::DebugTuple"* %_6.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !4625, !noalias !4626
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %_6.i, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !4625, !noalias !4626
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %_6.i, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !4625, !noalias !4626
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %_6.i, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !4625, !noalias !4626
  %12 = bitcast { [0 x i8]*, i16 }* %_13.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %12), !noalias !4612
  %13 = getelementptr inbounds { i8*, i8* }, { i8*, i8* }* %_4, i16 0, i32 0
  %_4.i.i.i = load i8*, i8** %13, align 1, !alias.scope !4627, !nonnull !568
  %14 = getelementptr inbounds { i8*, i8* }, { i8*, i8* }* %_4, i16 0, i32 1
  %15 = bitcast i8** %14 to i16*
  %_144.i.i.i = load i16, i16* %15, align 1, !alias.scope !4627
  %_15.i.i.i = ptrtoint i8* %_4.i.i.i to i16
  %16 = sub nuw i16 %_144.i.i.i, %_15.i.i.i
  %17 = bitcast { [0 x i8]*, i16 }* %_13.i to i8**
  store i8* %_4.i.i.i, i8** %17, align 1, !noalias !4612
  %.fca.1.gep.i = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %_13.i, i16 0, i32 1
  store i16 %16, i16* %.fca.1.gep.i, align 1, !noalias !4612
  %_10.0.i = bitcast { [0 x i8]*, i16 }* %_13.i to {}*
; call core::fmt::builders::DebugTuple::field
  %_4.i = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %_6.i, {}* nonnull align 1 %_10.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({ [0 x i8]*, i16 }*) addrspace(1)*, i16, i16, i1 ({ [0 x i8]*, i16 }*, %"fmt::Formatter"*) addrspace(1)* }* @vtable.j to [3 x i16]*)), !noalias !4612
  %18 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %_4.i, i16 0, i32 5
  %_3.i.i = load i16, i16* %18, align 1, !noalias !4612
  %_2.i.i = icmp eq i16 %_3.i.i, 0
  %.phi.trans.insert.i.i = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %_4.i, i16 0, i32 3
  %.pre.i.i = load i8, i8* %.phi.trans.insert.i.i, align 1, !range !87, !noalias !4612
  br i1 %_2.i.i, label %"_ZN63_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h52964ee8d46511eaE.exit", label %bb2.i.i

bb2.i.i:                                          ; preds = %start
  %_5.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_5.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %_5.i.i.i.i = icmp eq i16 %_3.i.i, 1
  %19 = bitcast %"fmt::builders::DebugTuple"* %_4.i to %"fmt::Formatter"**
  br i1 %_5.i.i.i.i, label %bb7.i.i.i.i, label %bb20.i.i.i.i

bb3.i.i.i.i:                                      ; preds = %bb7.i.i.i.i
  %20 = bitcast %"fmt::builders::DebugTuple"* %_4.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %20, align 1, !alias.scope !4632, !noalias !4612, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !4635, !noalias !4638
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %21 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %22 = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  br i1 %21, label %bb11.i.i.i.i, label %bb20.i.i.i.i

bb7.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %23 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %_4.i, i16 0, i32 7
  %24 = load i8, i8* %23, align 1, !range !87, !noalias !4612
  %_7.i.i.i.i = icmp eq i8 %24, 0
  br i1 %_7.i.i.i.i, label %bb20.i.i.i.i, label %bb3.i.i.i.i

bb11.i.i.i.i:                                     ; preds = %bb3.i.i.i.i
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %22, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i.i = load {}*, {}** %25, align 1, !noalias !4639, !nonnull !568
  %26 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %22, i16 0, i32 11, i32 1
  %27 = bitcast [3 x i16]** %26 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %27, align 1, !noalias !4639, !nonnull !568
  %28 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i.i, i16 3
  %29 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %28, align 1, !invariant.load !568, !noalias !4639, !nonnull !568
  %30 = call zeroext addrspace(1) i1 %29({}* nonnull align 1 %_3.0.i2.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1), !noalias !4612
  br i1 %30, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i", label %bb20.i.i.i.i

bb20.i.i.i.i:                                     ; preds = %bb11.i.i.i.i, %bb7.i.i.i.i, %bb3.i.i.i.i, %bb3.i.i.i
  %_21.i.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %19, align 1, !noalias !4612, !nonnull !568
  %31 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %31, align 1, !noalias !4642, !nonnull !568
  %32 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i.i, i16 0, i32 11, i32 1
  %33 = bitcast [3 x i16]** %32 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %33, align 1, !noalias !4642, !nonnull !568
  %34 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %35 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %34, align 1, !invariant.load !568, !noalias !4642, !nonnull !568
  %36 = call zeroext addrspace(1) i1 %35({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1), !noalias !4612
  %phitmp.i.i = zext i1 %36 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i": ; preds = %bb20.i.i.i.i, %bb11.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i8 [ 1, %bb2.i.i ], [ %phitmp.i.i, %bb20.i.i.i.i ], [ 1, %bb11.i.i.i.i ]
  store i8 %.0.i.i.i, i8* %.phi.trans.insert.i.i, align 1, !noalias !4612
  br label %"_ZN63_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h52964ee8d46511eaE.exit"

"_ZN63_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h52964ee8d46511eaE.exit": ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i"
  %37 = phi i8 [ %.0.i.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i" ], [ %.pre.i.i, %start ]
  %38 = icmp ne i8 %37, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %12), !noalias !4612
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0), !noalias !4612
  ret i1 %38
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17he9ad917816789fc9E"(%"char::EscapeDebug"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_13.i = alloca %"char::EscapeDefault"*, align 1
  %debug_trait_builder.i = alloca %"fmt::builders::DebugTuple", align 1
  %_4 = load %"char::EscapeDebug"*, %"char::EscapeDebug"** %self, align 1, !nonnull !568
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0), !noalias !4645
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %1, align 1, !noalias !4648, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !4648, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !4648, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [11 x i8] }>* @alloc19213 to [0 x i8]*), i16 11), !noalias !4657
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !4658, !noalias !4659
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder.i, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !4658, !noalias !4659
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder.i, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !4658, !noalias !4659
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder.i, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !4658, !noalias !4659
  %12 = bitcast %"char::EscapeDefault"** %_13.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12), !noalias !4645
  %13 = bitcast %"char::EscapeDefault"** %_13.i to %"char::EscapeDebug"**
  store %"char::EscapeDebug"* %_4, %"char::EscapeDebug"** %13, align 1, !noalias !4645
  %_10.0.i = bitcast %"char::EscapeDefault"** %_13.i to {}*
; call core::fmt::builders::DebugTuple::field
  %_8.i = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder.i, {}* nonnull align 1 %_10.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"char::EscapeDefault"**) addrspace(1)*, i16, i16, i1 (%"char::EscapeDefault"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.J to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12), !noalias !4645
  %_3.i.i = load i16, i16* %10, align 1, !noalias !4645
  %_2.i.i = icmp eq i16 %_3.i.i, 0
  %.pre.i.i = load i8, i8* %8, align 1, !range !87, !noalias !4645
  br i1 %_2.i.i, label %"_ZN60_$LT$core..char..EscapeDebug$u20$as$u20$core..fmt..Debug$GT$3fmt17hcb254c5bcef266c4E.exit", label %bb2.i.i

bb2.i.i:                                          ; preds = %start
  %_5.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_5.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %_5.i.i.i.i = icmp ne i16 %_3.i.i, 1
  %14 = load i8, i8* %11, align 1, !noalias !4645
  %_7.i.i.i.i = icmp eq i8 %14, 0
  %or.cond.i = or i1 %_5.i.i.i.i, %_7.i.i.i.i
  br i1 %or.cond.i, label %bb20.i.i.i.i, label %bb3.i.i.i.i

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %15 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %15, align 1, !alias.scope !4660, !noalias !4645, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !4663, !noalias !4660
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %16 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %17 = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  br i1 %16, label %bb11.i.i.i.i, label %bb20.i.i.i.i

bb11.i.i.i.i:                                     ; preds = %bb3.i.i.i.i
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i.i = load {}*, {}** %18, align 1, !noalias !4666, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !noalias !4666, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !noalias !4666, !nonnull !568
  %23 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i2.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %23, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i", label %bb20.i.i.i.i

bb20.i.i.i.i:                                     ; preds = %bb11.i.i.i.i, %bb3.i.i.i.i, %bb3.i.i.i
  %_21.i.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !noalias !4645, !nonnull !568
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %24, align 1, !noalias !4669, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i.i, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %26, align 1, !noalias !4669, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %28 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !4669, !nonnull !568
  %29 = call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i.i = zext i1 %29 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i": ; preds = %bb20.i.i.i.i, %bb11.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i8 [ 1, %bb2.i.i ], [ %phitmp.i.i, %bb20.i.i.i.i ], [ 1, %bb11.i.i.i.i ]
  store i8 %.0.i.i.i, i8* %8, align 1, !noalias !4645
  br label %"_ZN60_$LT$core..char..EscapeDebug$u20$as$u20$core..fmt..Debug$GT$3fmt17hcb254c5bcef266c4E.exit"

"_ZN60_$LT$core..char..EscapeDebug$u20$as$u20$core..fmt..Debug$GT$3fmt17hcb254c5bcef266c4E.exit": ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i"
  %30 = phi i8 [ %.0.i.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i.i" ], [ %.pre.i.i, %start ]
  %31 = icmp ne i8 %30, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0), !noalias !4645
  ret i1 %31
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hebdb901b0808a290E"({ i8*, i8* }** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_15.i = alloca { i8*, i8* }*, align 1
  %debug_trait_builder.i = alloca %"fmt::builders::DebugStruct", align 1
  %_4 = load { i8*, i8* }*, { i8*, i8* }** %self, align 1, !nonnull !568
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0), !noalias !4672
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %1, align 1, !noalias !4675, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !4675, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !4675, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc19047 to [0 x i8]*), i16 6), !noalias !4684
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !4685, !noalias !4686
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !4685, !noalias !4686
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !4685, !noalias !4686
  %11 = bitcast { i8*, i8* }** %_15.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11), !noalias !4672
  store { i8*, i8* }* %_4, { i8*, i8* }** %_15.i, align 1, !noalias !4672
  %_12.0.i = bitcast { i8*, i8* }** %_15.i to {}*
; call core::fmt::builders::DebugStruct::field
  %_8.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc19048 to [0 x i8]*), i16 2, {}* nonnull align 1 %_12.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({ i8*, i8* }**) addrspace(1)*, i16, i16, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.10 to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11), !noalias !4672
  %12 = load i8, i8* %10, align 1, !range !87, !noalias !4672
  %_2.i.i = icmp eq i8 %12, 0
  %.pre.i.i = load i8, i8* %8, align 1, !range !87, !noalias !4672
  br i1 %_2.i.i, label %"_ZN74_$LT$core..iter..adapters..Copied$LT$I$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hb0f357e69c7e9980E.exit", label %bb2.i.i

bb2.i.i:                                          ; preds = %start
  %_4.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_4.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %13 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %13, align 1, !noalias !4672, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !4687, !noalias !4690
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %14 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %_5.cast.i.i.i.i = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  %15 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %15, align 1, !nonnull !568
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 1
  %17 = bitcast [3 x i16]** %16 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %17, align 1, !nonnull !568
  %18 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %19 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %18, align 1, !invariant.load !568, !nonnull !568
  br i1 %14, label %bb2.i.i.i.i, label %bb3.i.i.i.i

bb2.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %20 = call zeroext addrspace(1) i1 %19({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %21 = call zeroext addrspace(1) i1 %19({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i": ; preds = %bb3.i.i.i.i, %bb2.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i1 [ true, %bb2.i.i ], [ %21, %bb3.i.i.i.i ], [ %20, %bb2.i.i.i.i ]
  %22 = zext i1 %.0.i.i.i to i8
  store i8 %22, i8* %8, align 1, !noalias !4672
  br label %"_ZN74_$LT$core..iter..adapters..Copied$LT$I$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hb0f357e69c7e9980E.exit"

"_ZN74_$LT$core..iter..adapters..Copied$LT$I$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hb0f357e69c7e9980E.exit": ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"
  %23 = phi i8 [ %22, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i" ], [ %.pre.i.i, %start ]
  %24 = icmp ne i8 %23, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0), !noalias !4672
  ret i1 %24
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hec0aed04fe88165bE"(%"hash::sip::Hasher<hash::sip::Sip13Rounds>"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_69.i = alloca %"marker::PhantomData<hash::sip::Sip13Rounds>"*, align 1
  %_61.i = alloca i16*, align 1
  %_53.i = alloca i64*, align 1
  %_45.i = alloca %"hash::sip::State"*, align 1
  %_37.i = alloca i16*, align 1
  %_29.i = alloca i64*, align 1
  %_21.i = alloca i64*, align 1
  %debug_trait_builder.i = alloca %"fmt::builders::DebugStruct", align 1
  %_4 = load %"hash::sip::Hasher<hash::sip::Sip13Rounds>"*, %"hash::sip::Hasher<hash::sip::Sip13Rounds>"** %self, align 1, !nonnull !568
  %__self_0_1.i = getelementptr inbounds %"hash::sip::Hasher<hash::sip::Sip13Rounds>", %"hash::sip::Hasher<hash::sip::Sip13Rounds>"* %_4, i16 0, i32 5
  %__self_0_2.i = getelementptr inbounds %"hash::sip::Hasher<hash::sip::Sip13Rounds>", %"hash::sip::Hasher<hash::sip::Sip13Rounds>"* %_4, i16 0, i32 7
  %__self_0_3.i = getelementptr inbounds %"hash::sip::Hasher<hash::sip::Sip13Rounds>", %"hash::sip::Hasher<hash::sip::Sip13Rounds>"* %_4, i16 0, i32 9
  %__self_0_4.i = getelementptr inbounds %"hash::sip::Hasher<hash::sip::Sip13Rounds>", %"hash::sip::Hasher<hash::sip::Sip13Rounds>"* %_4, i16 0, i32 11
  %__self_0_5.i = getelementptr inbounds %"hash::sip::Hasher<hash::sip::Sip13Rounds>", %"hash::sip::Hasher<hash::sip::Sip13Rounds>"* %_4, i16 0, i32 13
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0), !noalias !4693
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %1, align 1, !noalias !4696, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !4696, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !4696, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc19143 to [0 x i8]*), i16 6), !noalias !4705
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder.i to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !4706, !noalias !4707
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !4706, !noalias !4707
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder.i, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !4706, !noalias !4707
  %11 = bitcast i64** %_21.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11), !noalias !4693
  %12 = bitcast i64** %_21.i to %"hash::sip::Hasher<hash::sip::Sip13Rounds>"**
  store %"hash::sip::Hasher<hash::sip::Sip13Rounds>"* %_4, %"hash::sip::Hasher<hash::sip::Sip13Rounds>"** %12, align 1, !noalias !4693
  %_18.0.i = bitcast i64** %_21.i to {}*
; call core::fmt::builders::DebugStruct::field
  %_14.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc19144 to [0 x i8]*), i16 2, {}* nonnull align 1 %_18.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.w to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11), !noalias !4693
  %13 = bitcast i64** %_29.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13), !noalias !4693
  store i64* %__self_0_1.i, i64** %_29.i, align 1, !noalias !4693
  %_26.0.i = bitcast i64** %_29.i to {}*
; call core::fmt::builders::DebugStruct::field
  %_22.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc19145 to [0 x i8]*), i16 2, {}* nonnull align 1 %_26.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.w to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13), !noalias !4693
  %14 = bitcast i16** %_37.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14), !noalias !4693
  store i16* %__self_0_2.i, i16** %_37.i, align 1, !noalias !4693
  %_34.0.i = bitcast i16** %_37.i to {}*
; call core::fmt::builders::DebugStruct::field
  %_30.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc19146 to [0 x i8]*), i16 6, {}* nonnull align 1 %_34.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.C to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14), !noalias !4693
  %15 = bitcast %"hash::sip::State"** %_45.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15), !noalias !4693
  store %"hash::sip::State"* %__self_0_3.i, %"hash::sip::State"** %_45.i, align 1, !noalias !4693
  %_42.0.i = bitcast %"hash::sip::State"** %_45.i to {}*
; call core::fmt::builders::DebugStruct::field
  %_38.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19147 to [0 x i8]*), i16 5, {}* nonnull align 1 %_42.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"hash::sip::State"**) addrspace(1)*, i16, i16, i1 (%"hash::sip::State"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1j to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15), !noalias !4693
  %16 = bitcast i64** %_53.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %16), !noalias !4693
  store i64* %__self_0_4.i, i64** %_53.i, align 1, !noalias !4693
  %_50.0.i = bitcast i64** %_53.i to {}*
; call core::fmt::builders::DebugStruct::field
  %_46.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19148 to [0 x i8]*), i16 4, {}* nonnull align 1 %_50.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.w to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %16), !noalias !4693
  %17 = bitcast i16** %_61.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %17), !noalias !4693
  store i16* %__self_0_5.i, i16** %_61.i, align 1, !noalias !4693
  %_58.0.i = bitcast i16** %_61.i to {}*
; call core::fmt::builders::DebugStruct::field
  %_54.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19149 to [0 x i8]*), i16 5, {}* nonnull align 1 %_58.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.C to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %17), !noalias !4693
  %18 = bitcast %"marker::PhantomData<hash::sip::Sip13Rounds>"** %_69.i to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %18), !noalias !4693
  %19 = bitcast %"marker::PhantomData<hash::sip::Sip13Rounds>"** %_69.i to %"hash::sip::Hasher<hash::sip::Sip13Rounds>"**
  store %"hash::sip::Hasher<hash::sip::Sip13Rounds>"* %_4, %"hash::sip::Hasher<hash::sip::Sip13Rounds>"** %19, align 1, !noalias !4693
  %_66.0.i = bitcast %"marker::PhantomData<hash::sip::Sip13Rounds>"** %_69.i to {}*
; call core::fmt::builders::DebugStruct::field
  %_62.i = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [7 x i8] }>* @alloc19150 to [0 x i8]*), i16 7, {}* nonnull align 1 %_66.0.i, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"marker::PhantomData<hash::sip::Sip13Rounds>"**) addrspace(1)*, i16, i16, i1 (%"marker::PhantomData<hash::sip::Sip13Rounds>"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1k to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %18), !noalias !4693
  %20 = load i8, i8* %10, align 1, !range !87, !noalias !4693
  %_2.i.i = icmp eq i8 %20, 0
  %.pre.i.i = load i8, i8* %8, align 1, !range !87, !noalias !4693
  br i1 %_2.i.i, label %"_ZN69_$LT$core..hash..sip..Hasher$LT$S$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h7069d3e4cd14b9feE.exit", label %bb2.i.i

bb2.i.i:                                          ; preds = %start
  %_4.i.i = icmp eq i8 %.pre.i.i, 0
  br i1 %_4.i.i, label %bb3.i.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i:                                        ; preds = %bb2.i.i
  %21 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder.i to i32**
  %_21.i.i.i.i.i = load i32*, i32** %21, align 1, !noalias !4693, !nonnull !568
  %_3.i.i.i.i.i.i = load i32, i32* %_21.i.i.i.i.i, align 1, !alias.scope !4708, !noalias !4711
  %_2.i.i.i.i.i.i = and i32 %_3.i.i.i.i.i.i, 4
  %22 = icmp eq i32 %_2.i.i.i.i.i.i, 0
  %_5.cast.i.i.i.i = bitcast i32* %_21.i.i.i.i.i to %"fmt::Formatter"*
  %23 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i.i = load {}*, {}** %23, align 1, !nonnull !568
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i.i, i16 0, i32 11, i32 1
  %25 = bitcast [3 x i16]** %24 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %25, align 1, !nonnull !568
  %26 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i.i, i16 3
  %27 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %26, align 1, !invariant.load !568, !nonnull !568
  br i1 %22, label %bb2.i.i.i.i, label %bb3.i.i.i.i

bb2.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %28 = call zeroext addrspace(1) i1 %27({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %29 = call zeroext addrspace(1) i1 %27({}* nonnull align 1 %_3.0.i.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i": ; preds = %bb3.i.i.i.i, %bb2.i.i.i.i, %bb2.i.i
  %.0.i.i.i = phi i1 [ true, %bb2.i.i ], [ %29, %bb3.i.i.i.i ], [ %28, %bb2.i.i.i.i ]
  %30 = zext i1 %.0.i.i.i to i8
  store i8 %30, i8* %8, align 1, !noalias !4693
  br label %"_ZN69_$LT$core..hash..sip..Hasher$LT$S$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h7069d3e4cd14b9feE.exit"

"_ZN69_$LT$core..hash..sip..Hasher$LT$S$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h7069d3e4cd14b9feE.exit": ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i"
  %31 = phi i8 [ %30, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i.i" ], [ %.pre.i.i, %start ]
  %32 = icmp ne i8 %31, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0), !noalias !4693
  ret i1 %32
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hef160baddfa4f8bfE"(i16** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %buf.i.i1 = alloca [128 x i8], align 1
  %buf.i.i = alloca [39 x i8], align 1
  %buf.i.i.i = alloca [128 x i8], align 1
  %_4 = load i16*, i16** %self, align 1, !nonnull !568
  %0 = bitcast %"fmt::Formatter"* %f to i32*
  %_3.i.i = load i32, i32* %0, align 1, !alias.scope !4714, !noalias !4717
  %_2.i.i = and i32 %_3.i.i, 16
  %1 = icmp eq i32 %_2.i.i, 0
  br i1 %1, label %bb2.i, label %bb3.i

bb2.i:                                            ; preds = %start
  %_2.i2.i = and i32 %_3.i.i, 32
  %2 = icmp eq i32 %_2.i2.i, 0
  %_4.i = load i16, i16* %_4, align 1
  br i1 %2, label %bb6.i, label %bb7.i

bb3.i:                                            ; preds = %start
  %_5.i = load i16, i16* %_4, align 1, !alias.scope !4720
  %3 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i1, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %3), !noalias !4720
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %3, i8 undef, i16 128, i1 false), !noalias !4720
  %4 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i1, i16 0, i16 128
  br label %bb15.i.i

bb15.i.i:                                         ; preds = %bb15.i.i, %bb3.i
  %iter.sroa.4.0.i.i = phi i8* [ %4, %bb3.i ], [ %5, %bb15.i.i ]
  %x.0.i.i = phi i16 [ %_5.i, %bb3.i ], [ %6, %bb15.i.i ]
  %curr.0.i.i = phi i16 [ 128, %bb3.i ], [ %11, %bb15.i.i ]
  %5 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i.i, i16 -1
  %6 = lshr i16 %x.0.i.i, 4
  %7 = trunc i16 %x.0.i.i to i8
  %8 = and i8 %7, 15
  %_5.i9.i.i = icmp ult i8 %8, 10
  %9 = or i8 %8, 48
  %10 = add nuw nsw i8 %8, 87
  %.0.i15.i.i = select i1 %_5.i9.i.i, i8 %9, i8 %10
  store i8 %.0.i15.i.i, i8* %5, align 1, !noalias !4720
  %11 = add nsw i16 %curr.0.i.i, -1
  %12 = icmp eq i16 %6, 0
  br i1 %12, label %bb43.i.i, label %bb15.i.i

bb43.i.i:                                         ; preds = %bb15.i.i
  %_3.i.i.i.i.i = icmp ugt i16 %11, 128
  br i1 %_3.i.i.i.i.i, label %bb2.i.i.i.i.i, label %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i16$GT$3fmt17hbe4318a26c58a6ceE.exit"

bb2.i.i.i.i.i:                                    ; preds = %bb43.i.i
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %11, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*)), !noalias !4720
  unreachable

"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i16$GT$3fmt17hbe4318a26c58a6ceE.exit": ; preds = %bb43.i.i
  %13 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i1, i16 0, i16 %11
  %_7.i.i.i.i.i.i = sub nuw nsw i16 129, %curr.0.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i2 = bitcast i8* %13 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %14 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i2, i16 %_7.i.i.i.i.i.i), !noalias !4720
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %3), !noalias !4720
  br label %"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i16$GT$3fmt17h7c43688ffe45cdf8E.exit"

bb6.i:                                            ; preds = %bb2.i
  %is_nonnegative.i = icmp sgt i16 %_4.i, -1
  %15 = sext i16 %_4.i to i32
  %16 = sub nsw i32 0, %15
  %n.0.i = select i1 %is_nonnegative.i, i32 %15, i32 %16
  %17 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 39, i8* nonnull %17), !noalias !4723
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(39) %17, i8 undef, i16 39, i1 false), !noalias !4723
  %_2329.i.i = icmp ugt i32 %n.0.i, 9999
  %extract.t.i.i = trunc i32 %n.0.i to i16
  br i1 %_2329.i.i, label %bb26.i.i.thread, label %bb9.i.i

bb26.i.i.thread:                                  ; preds = %bb6.i
  %18 = udiv i16 %extract.t.i.i, 10000
  %19 = mul i16 %18, 10000
  %_26.i4.i.decomposed = sub i16 %extract.t.i.i, %19
  %_29.i.i = udiv i16 %_26.i4.i.decomposed, 100
  %d1.i.i = shl nuw nsw i16 %_29.i.i, 1
  %20 = mul i16 %_29.i.i, 100
  %_35.i.i.decomposed = sub i16 %_26.i4.i.decomposed, %20
  %d2.i.i = shl nuw nsw i16 %_35.i.i.decomposed, 1
  %21 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d1.i.i
  %22 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 35
  %23 = bitcast i8* %21 to i16*
  %24 = bitcast i8* %22 to i16*
  %25 = load i16, i16* %23, align 1, !noalias !4723
  store i16 %25, i16* %24, align 1, !noalias !4723
  %26 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d2.i.i
  %27 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 37
  %28 = bitcast i8* %26 to i16*
  %29 = bitcast i8* %27 to i16*
  %30 = load i16, i16* %28, align 1, !noalias !4723
  store i16 %30, i16* %29, align 1, !noalias !4723
  %extract.t = trunc i16 %18 to i8
  br label %bb28.i.i

bb9.i.i:                                          ; preds = %bb6.i
  %_57.i.i = icmp sgt i16 %extract.t.i.i, 99
  br i1 %_57.i.i, label %bb22.i.i, label %bb26.i.i

bb22.i.i:                                         ; preds = %bb9.i.i
  %31 = udiv i16 %extract.t.i.i, 100
  %32 = mul i16 %31, 100
  %_6028.i.i.decomposed = sub i16 %extract.t.i.i, %32
  %d14.i.i = shl nuw nsw i16 %_6028.i.i.decomposed, 1
  %33 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d14.i.i
  %34 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 37
  %35 = bitcast i8* %33 to i16*
  %36 = bitcast i8* %34 to i16*
  %37 = load i16, i16* %35, align 1, !noalias !4723
  store i16 %37, i16* %36, align 1, !noalias !4723
  br label %bb26.i.i

bb26.i.i:                                         ; preds = %bb22.i.i, %bb9.i.i
  %n1.0.i.i = phi i16 [ %31, %bb22.i.i ], [ %extract.t.i.i, %bb9.i.i ]
  %curr.1.i.i = phi i16 [ 37, %bb22.i.i ], [ 39, %bb9.i.i ]
  %_75.i.i = icmp slt i16 %n1.0.i.i, 10
  %extract.t11 = trunc i16 %n1.0.i.i to i8
  br i1 %_75.i.i, label %bb28.i.i, label %bb27.i.i

bb27.i.i:                                         ; preds = %bb26.i.i
  %d16.i.i = shl nuw nsw i16 %n1.0.i.i, 1
  %38 = add nsw i16 %curr.1.i.i, -2
  %39 = getelementptr inbounds <{ [200 x i8] }>, <{ [200 x i8] }>* @alloc261, i16 0, i32 0, i16 %d16.i.i
  %40 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 %38
  %41 = bitcast i8* %39 to i16*
  %42 = bitcast i8* %40 to i16*
  %43 = load i16, i16* %41, align 1, !noalias !4723
  store i16 %43, i16* %42, align 1, !noalias !4723
  br label %"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$i16$GT$3fmt17hb97f6f3d4d1ad318E.exit"

bb28.i.i:                                         ; preds = %bb26.i.i.thread, %bb26.i.i
  %curr.1.i.i10 = phi i16 [ 35, %bb26.i.i.thread ], [ %curr.1.i.i, %bb26.i.i ]
  %n1.0.i.i9.off0 = phi i8 [ %extract.t, %bb26.i.i.thread ], [ %extract.t11, %bb26.i.i ]
  %44 = add nsw i16 %curr.1.i.i10, -1
  %45 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 %44
  %46 = add nuw nsw i8 %n1.0.i.i9.off0, 48
  store i8 %46, i8* %45, align 1, !noalias !4723
  br label %"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$i16$GT$3fmt17hb97f6f3d4d1ad318E.exit"

"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$i16$GT$3fmt17hb97f6f3d4d1ad318E.exit": ; preds = %bb27.i.i, %bb28.i.i
  %curr.2.i.i = phi i16 [ %44, %bb28.i.i ], [ %38, %bb27.i.i ]
  %47 = getelementptr inbounds [39 x i8], [39 x i8]* %buf.i.i, i16 0, i16 %curr.2.i.i
  %_98.i.i = sub nuw nsw i16 39, %curr.2.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i = bitcast i8* %47 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %48 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext %is_nonnegative.i, [0 x i8]* noalias nonnull readonly align 1 getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @alloc19125, i32 0, i32 0), i16 0, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i, i16 %_98.i.i), !noalias !4723
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 39, i8* nonnull %17), !noalias !4723
  br label %"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i16$GT$3fmt17h7c43688ffe45cdf8E.exit"

bb7.i:                                            ; preds = %bb2.i
  %49 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 128, i8* nonnull %49), !noalias !4726
  call addrspace(1) void @llvm.memset.p0i8.i16(i8* nonnull align 1 dereferenceable(128) %49, i8 undef, i16 128, i1 false), !noalias !4726
  %50 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 128
  br label %bb15.i.i.i

bb15.i.i.i:                                       ; preds = %bb15.i.i.i, %bb7.i
  %iter.sroa.4.0.i.i.i = phi i8* [ %50, %bb7.i ], [ %51, %bb15.i.i.i ]
  %x.0.i.i.i = phi i16 [ %_4.i, %bb7.i ], [ %52, %bb15.i.i.i ]
  %curr.0.i.i.i = phi i16 [ 128, %bb7.i ], [ %57, %bb15.i.i.i ]
  %51 = getelementptr inbounds i8, i8* %iter.sroa.4.0.i.i.i, i16 -1
  %52 = lshr i16 %x.0.i.i.i, 4
  %53 = trunc i16 %x.0.i.i.i to i8
  %54 = and i8 %53, 15
  %_5.i9.i.i.i = icmp ult i8 %54, 10
  %55 = or i8 %54, 48
  %56 = add nuw nsw i8 %54, 55
  %.0.i15.i.i.i = select i1 %_5.i9.i.i.i, i8 %55, i8 %56
  store i8 %.0.i15.i.i.i, i8* %51, align 1, !noalias !4726
  %57 = add nsw i16 %curr.0.i.i.i, -1
  %58 = icmp eq i16 %52, 0
  br i1 %58, label %bb43.i.i.i, label %bb15.i.i.i

bb43.i.i.i:                                       ; preds = %bb15.i.i.i
  %_3.i.i.i.i.i.i = icmp ugt i16 %57, 128
  br i1 %_3.i.i.i.i.i.i, label %bb2.i.i.i.i.i.i, label %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i16$GT$3fmt17hbf7433b6c707aeabE.exit.i"

bb2.i.i.i.i.i.i:                                  ; preds = %bb43.i.i.i
; call core::slice::slice_index_order_fail
  tail call addrspace(1) void @_ZN4core5slice22slice_index_order_fail17h8d5474c4edca39dcE(i16 %57, i16 128, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18683 to %"panic::Location"*)), !noalias !4726
  unreachable

"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i16$GT$3fmt17hbf7433b6c707aeabE.exit.i": ; preds = %bb43.i.i.i
  %59 = getelementptr inbounds [128 x i8], [128 x i8]* %buf.i.i.i, i16 0, i16 %57
  %_7.i.i.i.i.i.i.i = sub nuw nsw i16 129, %curr.0.i.i.i
  %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i = bitcast i8* %59 to [0 x i8]*
; call core::fmt::Formatter::pad_integral
  %60 = call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter12pad_integral17h2f0693d1ea32b8a8E(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, i1 zeroext true, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18707 to [0 x i8]*), i16 2, [0 x i8]* noalias nonnull readonly align 1 %_3.sroa.0.0._3.sroa.0.0..cast.i.i.i.i.i, i16 %_7.i.i.i.i.i.i.i), !noalias !4726
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 128, i8* nonnull %49), !noalias !4726
  br label %"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i16$GT$3fmt17h7c43688ffe45cdf8E.exit"

"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i16$GT$3fmt17h7c43688ffe45cdf8E.exit": ; preds = %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i16$GT$3fmt17hbe4318a26c58a6ceE.exit", %"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$i16$GT$3fmt17hb97f6f3d4d1ad318E.exit", %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i16$GT$3fmt17hbf7433b6c707aeabE.exit.i"
  %.0.in.i = phi i1 [ %14, %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i16$GT$3fmt17hbe4318a26c58a6ceE.exit" ], [ %60, %"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i16$GT$3fmt17hbf7433b6c707aeabE.exit.i" ], [ %48, %"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$i16$GT$3fmt17hb97f6f3d4d1ad318E.exit" ]
  ret i1 %.0.in.i
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hefd8fbf4fec50c7bE"(%"str::pattern::StrSearcherImpl"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_4 = load %"str::pattern::StrSearcherImpl"*, %"str::pattern::StrSearcherImpl"** %self, align 1, !nonnull !568
; call <core::str::pattern::StrSearcherImpl as core::fmt::Debug>::fmt
  %0 = tail call zeroext addrspace(1) i1 @"_ZN72_$LT$core..str..pattern..StrSearcherImpl$u20$as$u20$core..fmt..Debug$GT$3fmt17h3917bd7ecb36024eE"(%"str::pattern::StrSearcherImpl"* noalias nonnull readonly align 1 dereferenceable(23) %_4, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %0
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hf164226bb1e54e10E"(%"fmt::Arguments"*** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_5.i.i.i = alloca %"fmt::Arguments", align 1
  %_4 = load %"fmt::Arguments"**, %"fmt::Arguments"*** %self, align 1, !nonnull !568
  %_4.val = load %"fmt::Arguments"*, %"fmt::Arguments"** %_4, align 1
  %f.idx = getelementptr %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %f.idx.val = load {}*, {}** %f.idx, align 1, !noalias !4729
  %f.idx1 = getelementptr %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %f.idx1.val = load [3 x i16]*, [3 x i16]** %f.idx1, align 1, !noalias !4729
  %0 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i.i.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %0), !noalias !4729
  %1 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_4.val, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 dereferenceable(12) %0, i8* nonnull align 1 dereferenceable(12) %1, i16 12, i1 false)
; call core::fmt::write
  %2 = call zeroext addrspace(1) i1 @_ZN4core3fmt5write17hf4cd163abe69055cE({}* nonnull align 1 %f.idx.val, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) %f.idx1.val, %"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_5.i.i.i), !noalias !4729
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 12, i8* nonnull %0), !noalias !4729
  ret i1 %2
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hf8b3de76d6b2b350E"({ {}*, [3 x i16]* }** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
; call core::fmt::Formatter::pad
  %0 = tail call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter3pad17h307fb261f2dc8a5eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [3 x i8] }>* @alloc18552 to [0 x i8]*), i16 3)
  ret i1 %0
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hfaeb44fb9dbb86fbE"({ i8*, i8* }** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_4 = load { i8*, i8* }*, { i8*, i8* }** %self, align 1, !nonnull !568
; call <core::str::Chars as core::fmt::Debug>::fmt
  %0 = tail call zeroext addrspace(1) i1 @"_ZN53_$LT$core..str..Chars$u20$as$u20$core..fmt..Debug$GT$3fmt17h7a177a57fd49dd77E"({ i8*, i8* }* noalias nonnull readonly align 1 dereferenceable(4) %_4, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %0
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hfb83a7235f413c73E"(%"char::EscapeDefaultState"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_4 = load %"char::EscapeDefaultState"*, %"char::EscapeDefaultState"** %self, align 1, !nonnull !568
; call <core::char::EscapeDefaultState as core::fmt::Debug>::fmt
  %0 = tail call zeroext addrspace(1) i1 @"_ZN67_$LT$core..char..EscapeDefaultState$u20$as$u20$core..fmt..Debug$GT$3fmt17h61af768d4f61e179E"(%"char::EscapeDefaultState"* noalias nonnull readonly align 1 dereferenceable(8) %_4, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %0
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hfbbd8c150ba6a3dcE"(%"task::wake::RawWakerVTable"*** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_4 = load %"task::wake::RawWakerVTable"**, %"task::wake::RawWakerVTable"*** %self, align 1, !nonnull !568
  %_4.val = load %"task::wake::RawWakerVTable"*, %"task::wake::RawWakerVTable"** %_4, align 1
; call <core::task::wake::RawWakerVTable as core::fmt::Debug>::fmt
  %0 = tail call zeroext addrspace(1) i1 @"_ZN69_$LT$core..task..wake..RawWakerVTable$u20$as$u20$core..fmt..Debug$GT$3fmt17h4f1c401452768856E"(%"task::wake::RawWakerVTable"* noalias nonnull readonly align 1 dereferenceable(8) %_4.val, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %0
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hfd2d75c912151f23E"(%"num::flt2dec::decoder::Decoded"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_4 = load %"num::flt2dec::decoder::Decoded"*, %"num::flt2dec::decoder::Decoded"** %self, align 1, !nonnull !568
; call <core::num::flt2dec::decoder::Decoded as core::fmt::Debug>::fmt
  %0 = tail call zeroext addrspace(1) i1 @"_ZN73_$LT$core..num..flt2dec..decoder..Decoded$u20$as$u20$core..fmt..Debug$GT$3fmt17h29d9e20ed0d2fb81E"(%"num::flt2dec::decoder::Decoded"* noalias nonnull readonly align 1 dereferenceable(27) %_4, %"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f)
  ret i1 %0
}

; <&T as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hfe834ac3d76d7fa1E"(i8** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_4 = load i8*, i8** %self, align 1, !nonnull !568
  %0 = load i8, i8* %_4, align 1, !range !689, !alias.scope !4734
  %trunc.i = trunc i8 %0 to i3
  switch i3 %trunc.i, label %bb2.i [
    i3 0, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit33.i
    i3 1, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit60.i
    i3 2, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit87.i
    i3 3, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit114.i
    i3 -4, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit141.i
    i3 -3, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i
  ]

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i: ; preds = %start
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %1, align 1, !noalias !4737, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !4737, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !4737, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [9 x i8] }>* @alloc19007 to [0 x i8]*), i16 9), !noalias !4746
  br label %"_ZN67_$LT$core..char..EscapeUnicodeState$u20$as$u20$core..fmt..Debug$GT$3fmt17haea556edb29d0dc1E.exit"

bb2.i:                                            ; preds = %start
  unreachable

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit33.i: ; preds = %start
  %7 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i7.i = load {}*, {}** %7, align 1, !noalias !4747, !nonnull !568
  %8 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %9 = bitcast [3 x i16]** %8 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i8.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %9, align 1, !noalias !4747, !nonnull !568
  %10 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i8.i, i16 3
  %11 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %10, align 1, !invariant.load !568, !noalias !4747, !nonnull !568
  %12 = tail call zeroext addrspace(1) i1 %11({}* nonnull align 1 %_3.0.i.i.i7.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19158 to [0 x i8]*), i16 4), !noalias !4756
  br label %"_ZN67_$LT$core..char..EscapeUnicodeState$u20$as$u20$core..fmt..Debug$GT$3fmt17haea556edb29d0dc1E.exit"

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit60.i: ; preds = %start
  %13 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i34.i = load {}*, {}** %13, align 1, !noalias !4757, !nonnull !568
  %14 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %15 = bitcast [3 x i16]** %14 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i35.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %15, align 1, !noalias !4757, !nonnull !568
  %16 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i35.i, i16 3
  %17 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %16, align 1, !invariant.load !568, !noalias !4757, !nonnull !568
  %18 = tail call zeroext addrspace(1) i1 %17({}* nonnull align 1 %_3.0.i.i.i34.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [10 x i8] }>* @alloc19002 to [0 x i8]*), i16 10), !noalias !4766
  br label %"_ZN67_$LT$core..char..EscapeUnicodeState$u20$as$u20$core..fmt..Debug$GT$3fmt17haea556edb29d0dc1E.exit"

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit87.i: ; preds = %start
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i61.i = load {}*, {}** %19, align 1, !noalias !4767, !nonnull !568
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %21 = bitcast [3 x i16]** %20 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i62.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %21, align 1, !noalias !4767, !nonnull !568
  %22 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i62.i, i16 3
  %23 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %22, align 1, !invariant.load !568, !noalias !4767, !nonnull !568
  %24 = tail call zeroext addrspace(1) i1 %23({}* nonnull align 1 %_3.0.i.i.i61.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19001 to [0 x i8]*), i16 5), !noalias !4776
  br label %"_ZN67_$LT$core..char..EscapeUnicodeState$u20$as$u20$core..fmt..Debug$GT$3fmt17haea556edb29d0dc1E.exit"

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit114.i: ; preds = %start
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i88.i = load {}*, {}** %25, align 1, !noalias !4777, !nonnull !568
  %26 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %27 = bitcast [3 x i16]** %26 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i89.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %27, align 1, !noalias !4777, !nonnull !568
  %28 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i89.i, i16 3
  %29 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %28, align 1, !invariant.load !568, !noalias !4777, !nonnull !568
  %30 = tail call zeroext addrspace(1) i1 %29({}* nonnull align 1 %_3.0.i.i.i88.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [9 x i8] }>* @alloc19000 to [0 x i8]*), i16 9), !noalias !4786
  br label %"_ZN67_$LT$core..char..EscapeUnicodeState$u20$as$u20$core..fmt..Debug$GT$3fmt17haea556edb29d0dc1E.exit"

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit141.i: ; preds = %start
  %31 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i115.i = load {}*, {}** %31, align 1, !noalias !4787, !nonnull !568
  %32 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %33 = bitcast [3 x i16]** %32 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i116.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %33, align 1, !noalias !4787, !nonnull !568
  %34 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i116.i, i16 3
  %35 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %34, align 1, !invariant.load !568, !noalias !4787, !nonnull !568
  %36 = tail call zeroext addrspace(1) i1 %35({}* nonnull align 1 %_3.0.i.i.i115.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc18999 to [0 x i8]*), i16 4), !noalias !4796
  br label %"_ZN67_$LT$core..char..EscapeUnicodeState$u20$as$u20$core..fmt..Debug$GT$3fmt17haea556edb29d0dc1E.exit"

"_ZN67_$LT$core..char..EscapeUnicodeState$u20$as$u20$core..fmt..Debug$GT$3fmt17haea556edb29d0dc1E.exit": ; preds = %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit33.i, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit60.i, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit87.i, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit114.i, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit141.i
  %.0.in.i = phi i1 [ %6, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit.i ], [ %36, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit141.i ], [ %30, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit114.i ], [ %24, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit87.i ], [ %18, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit60.i ], [ %12, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit33.i ]
  ret i1 %.0.in.i
}

; <&T as core::fmt::Display>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN44_$LT$$RF$T$u20$as$u20$core..fmt..Display$GT$3fmt17h4c33253c245fb34cE"({ [0 x i8]*, i16 }* noalias nocapture readonly align 1 dereferenceable(4) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %0 = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %self, i16 0, i32 0
  %_4.0 = load [0 x i8]*, [0 x i8]** %0, align 1, !nonnull !568
  %1 = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %self, i16 0, i32 1
  %_4.1 = load i16, i16* %1, align 1
; call core::fmt::Formatter::pad
  %2 = tail call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter3pad17h307fb261f2dc8a5eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, [0 x i8]* noalias nonnull readonly align 1 %_4.0, i16 %_4.1)
  ret i1 %2
}

; <&T as core::fmt::Display>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN44_$LT$$RF$T$u20$as$u20$core..fmt..Display$GT$3fmt17ha24db1cca617029fE"(%"fmt::Arguments"** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_5.i = alloca %"fmt::Arguments", align 1
  %_4 = load %"fmt::Arguments"*, %"fmt::Arguments"** %self, align 1, !nonnull !568
  %0 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_4.0.i = load {}*, {}** %0, align 1, !noalias !4797, !nonnull !568
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %_4.1.i = load [3 x i16]*, [3 x i16]** %1, align 1, !noalias !4797, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_5.i, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 12, i8* nonnull %2), !noalias !4797
  %3 = getelementptr inbounds %"fmt::Arguments", %"fmt::Arguments"* %_4, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 dereferenceable(12) %2, i8* nonnull align 1 dereferenceable(12) %3, i16 12, i1 false)
; call core::fmt::write
  %4 = call zeroext addrspace(1) i1 @_ZN4core3fmt5write17hf4cd163abe69055cE({}* nonnull align 1 %_4.0.i, [3 x i16]* noalias nonnull readonly align 1 dereferenceable(6) %_4.1.i, %"fmt::Arguments"* noalias nocapture nonnull dereferenceable(12) %_5.i), !noalias !4797
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 12, i8* nonnull %2), !noalias !4797
  ret i1 %4
}

; <&T as core::fmt::Display>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN44_$LT$$RF$T$u20$as$u20$core..fmt..Display$GT$3fmt17hdf4e195864e26bc9E"({ [0 x i8]*, i16 }** noalias nocapture readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* nocapture readonly align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 {
start:
  %_4 = load { [0 x i8]*, i16 }*, { [0 x i8]*, i16 }** %self, align 1, !nonnull !568
  %0 = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %_4, i16 0, i32 0
  %_4.0.i = load [0 x i8]*, [0 x i8]** %0, align 1, !alias.scope !4800, !nonnull !568
  %1 = getelementptr inbounds { [0 x i8]*, i16 }, { [0 x i8]*, i16 }* %_4, i16 0, i32 1
  %_4.1.i = load i16, i16* %1, align 1, !alias.scope !4800
; call core::fmt::Formatter::pad
  %2 = tail call zeroext addrspace(1) i1 @_ZN4core3fmt9Formatter3pad17h307fb261f2dc8a5eE(%"fmt::Formatter"* nonnull align 1 dereferenceable(19) %f, [0 x i8]* noalias nonnull readonly align 1 %_4.0.i, i16 %_4.1.i), !noalias !4800
  ret i1 %2
}

; <core::hash::sip::SipHasher13 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..hash..sip..SipHasher13$u20$as$u20$core..fmt..Debug$GT$3fmt17h36d6001370df14faE"(%"hash::sip::SipHasher13"* noalias readonly align 1 dereferenceable(60) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_15 = alloca %"hash::sip::Hasher<hash::sip::Sip13Rounds>"*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !4803, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !4803, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !4803, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [11 x i8] }>* @alloc19130 to [0 x i8]*), i16 11), !noalias !4812
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !4812, !noalias !4813
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !4812, !noalias !4813
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !4812, !noalias !4813
  %11 = bitcast %"hash::sip::Hasher<hash::sip::Sip13Rounds>"** %_15 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  %12 = bitcast %"hash::sip::Hasher<hash::sip::Sip13Rounds>"** %_15 to %"hash::sip::SipHasher13"**
  store %"hash::sip::SipHasher13"* %self, %"hash::sip::SipHasher13"** %12, align 1
  %_12.0 = bitcast %"hash::sip::Hasher<hash::sip::Sip13Rounds>"** %_15 to {}*
; call core::fmt::builders::DebugStruct::field
  %_8 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc19133 to [0 x i8]*), i16 6, {}* nonnull align 1 %_12.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"hash::sip::Hasher<hash::sip::Sip13Rounds>"**) addrspace(1)*, i16, i16, i1 (%"hash::sip::Hasher<hash::sip::Sip13Rounds>"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1g to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %13 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %13, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %14 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %14, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !4814, !noalias !4817
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %15 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %16, align 1, !nonnull !568
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %18 = bitcast [3 x i16]** %17 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %20 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %19, align 1, !invariant.load !568, !nonnull !568
  br i1 %15, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %21 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %22 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %22, %bb3.i.i.i ], [ %21, %bb2.i.i.i ]
  %23 = zext i1 %.0.i.i to i8
  store i8 %23, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %24 = phi i8 [ %23, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %25 = icmp ne i8 %24, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %25
}

; <core::hash::sip::SipHasher24 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..hash..sip..SipHasher24$u20$as$u20$core..fmt..Debug$GT$3fmt17h01470f04afaa0bd6E"(%"hash::sip::SipHasher24"* noalias readonly align 1 dereferenceable(60) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_15 = alloca %"hash::sip::Hasher<hash::sip::Sip24Rounds>"*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !4820, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !4820, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !4820, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [11 x i8] }>* @alloc19132 to [0 x i8]*), i16 11), !noalias !4829
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !4829, !noalias !4830
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !4829, !noalias !4830
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !4829, !noalias !4830
  %11 = bitcast %"hash::sip::Hasher<hash::sip::Sip24Rounds>"** %_15 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  %12 = bitcast %"hash::sip::Hasher<hash::sip::Sip24Rounds>"** %_15 to %"hash::sip::SipHasher24"**
  store %"hash::sip::SipHasher24"* %self, %"hash::sip::SipHasher24"** %12, align 1
  %_12.0 = bitcast %"hash::sip::Hasher<hash::sip::Sip24Rounds>"** %_15 to {}*
; call core::fmt::builders::DebugStruct::field
  %_8 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc19133 to [0 x i8]*), i16 6, {}* nonnull align 1 %_12.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"hash::sip::Hasher<hash::sip::Sip24Rounds>"**) addrspace(1)*, i16, i16, i1 (%"hash::sip::Hasher<hash::sip::Sip24Rounds>"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %13 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %13, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %14 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %14, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !4831, !noalias !4834
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %15 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %16, align 1, !nonnull !568
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %18 = bitcast [3 x i16]** %17 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %20 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %19, align 1, !invariant.load !568, !nonnull !568
  br i1 %15, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %21 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %22 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %22, %bb3.i.i.i ], [ %21, %bb2.i.i.i ]
  %23 = zext i1 %.0.i.i to i8
  store i8 %23, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %24 = phi i8 [ %23, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %25 = icmp ne i8 %24, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %25
}

; <core::hash::sip::SipHasher as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN63_$LT$core..hash..sip..SipHasher$u20$as$u20$core..fmt..Debug$GT$3fmt17hb240aa7402f3c9dbE"(%"hash::sip::SipHasher"* noalias readonly align 1 dereferenceable(60) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_13 = alloca %"hash::sip::SipHasher24"*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !4837, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !4837, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !4837, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [9 x i8] }>* @alloc19134 to [0 x i8]*), i16 9), !noalias !4846
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !4846, !noalias !4847
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !4846, !noalias !4847
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !4846, !noalias !4847
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !4846, !noalias !4847
  %12 = bitcast %"hash::sip::SipHasher24"** %_13 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast %"hash::sip::SipHasher24"** %_13 to %"hash::sip::SipHasher"**
  store %"hash::sip::SipHasher"* %self, %"hash::sip::SipHasher"** %13, align 1
  %_10.0 = bitcast %"hash::sip::SipHasher24"** %_13 to {}*
; call core::fmt::builders::DebugTuple::field
  %_8 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_10.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"hash::sip::SipHasher24"**) addrspace(1)*, i16, i16, i1 (%"hash::sip::SipHasher24"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1i to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %14 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %14, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %15 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %15, align 1, !alias.scope !4848, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !4851, !noalias !4848
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %16 = icmp eq i32 %_2.i.i.i.i.i, 0
  %17 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %16, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %18, align 1, !noalias !4854, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !noalias !4854, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !noalias !4854, !nonnull !568
  %23 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %23, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %24, align 1, !noalias !4857, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %26, align 1, !noalias !4857, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %28 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !4857, !nonnull !568
  %29 = call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %29 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %30 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %31 = icmp ne i8 %30, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %31
}

; <core::hash::sip::State as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN59_$LT$core..hash..sip..State$u20$as$u20$core..fmt..Debug$GT$3fmt17h4f1a9ce4e84e59b3E"(%"hash::sip::State"* noalias readonly align 1 dereferenceable(32) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_42 = alloca i64*, align 1
  %_34 = alloca i64*, align 1
  %_26 = alloca i64*, align 1
  %_18 = alloca i64*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %__self_0_1 = getelementptr inbounds %"hash::sip::State", %"hash::sip::State"* %self, i16 0, i32 3
  %__self_0_2 = getelementptr inbounds %"hash::sip::State", %"hash::sip::State"* %self, i16 0, i32 5
  %__self_0_3 = getelementptr inbounds %"hash::sip::State", %"hash::sip::State"* %self, i16 0, i32 7
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !4860, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !4860, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !4860, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19151 to [0 x i8]*), i16 5), !noalias !4869
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !4869, !noalias !4870
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !4869, !noalias !4870
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !4869, !noalias !4870
  %11 = bitcast i64** %_18 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  %12 = bitcast i64** %_18 to %"hash::sip::State"**
  store %"hash::sip::State"* %self, %"hash::sip::State"** %12, align 1
  %_15.0 = bitcast i64** %_18 to {}*
; call core::fmt::builders::DebugStruct::field
  %_11 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc19152 to [0 x i8]*), i16 2, {}* nonnull align 1 %_15.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.w to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %13 = bitcast i64** %_26 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i64* %__self_0_1, i64** %_26, align 1
  %_23.0 = bitcast i64** %_26 to {}*
; call core::fmt::builders::DebugStruct::field
  %_19 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc19153 to [0 x i8]*), i16 2, {}* nonnull align 1 %_23.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.w to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast i64** %_34 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store i64* %__self_0_2, i64** %_34, align 1
  %_31.0 = bitcast i64** %_34 to {}*
; call core::fmt::builders::DebugStruct::field
  %_27 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc19154 to [0 x i8]*), i16 2, {}* nonnull align 1 %_31.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.w to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast i64** %_42 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15)
  store i64* %__self_0_3, i64** %_42, align 1
  %_39.0 = bitcast i64** %_42 to {}*
; call core::fmt::builders::DebugStruct::field
  %_35 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc19155 to [0 x i8]*), i16 2, {}* nonnull align 1 %_39.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.w to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15)
  %16 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %16, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %17 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %17, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !4871, !noalias !4874
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %18 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %19, align 1, !nonnull !568
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %21 = bitcast [3 x i16]** %20 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %21, align 1, !nonnull !568
  %22 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %23 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %22, align 1, !invariant.load !568, !nonnull !568
  br i1 %18, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %24 = call zeroext addrspace(1) i1 %23({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %25 = call zeroext addrspace(1) i1 %23({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %25, %bb3.i.i.i ], [ %24, %bb2.i.i.i ]
  %26 = zext i1 %.0.i.i to i8
  store i8 %26, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %27 = phi i8 [ %26, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %28 = icmp ne i8 %27, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %28
}

; <core::hash::sip::Sip13Rounds as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..hash..sip..Sip13Rounds$u20$as$u20$core..fmt..Debug$GT$3fmt17h341be91b3032a47aE"(%"hash::sip::Sip13Rounds"* noalias nocapture nonnull readonly align 1 %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit:
  %0 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %0, align 1, !noalias !4877, !nonnull !568
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %2 = bitcast [3 x i16]** %1 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %2, align 1, !noalias !4877, !nonnull !568
  %3 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %4 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %3, align 1, !invariant.load !568, !noalias !4877, !nonnull !568
  %5 = tail call zeroext addrspace(1) i1 %4({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [11 x i8] }>* @alloc19156 to [0 x i8]*), i16 11), !noalias !4886
  ret i1 %5
}

; <core::hash::sip::Sip24Rounds as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..hash..sip..Sip24Rounds$u20$as$u20$core..fmt..Debug$GT$3fmt17h4de3486e99cc4b59E"(%"hash::sip::Sip24Rounds"* noalias nocapture nonnull readonly align 1 %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit:
  %0 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %0, align 1, !noalias !4887, !nonnull !568
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %2 = bitcast [3 x i16]** %1 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %2, align 1, !noalias !4887, !nonnull !568
  %3 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %4 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %3, align 1, !invariant.load !568, !noalias !4887, !nonnull !568
  %5 = tail call zeroext addrspace(1) i1 %4({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [11 x i8] }>* @alloc19157 to [0 x i8]*), i16 11), !noalias !4896
  ret i1 %5
}

; <core::str::pattern::SearchStep as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN67_$LT$core..str..pattern..SearchStep$u20$as$u20$core..fmt..Debug$GT$3fmt17he151916065376311E"(%"str::pattern::SearchStep"* noalias readonly align 1 dereferenceable(5) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_42 = alloca i16*, align 1
  %_36 = alloca i16*, align 1
  %debug_trait_builder1 = alloca %"fmt::builders::DebugTuple", align 1
  %_23 = alloca i16*, align 1
  %_17 = alloca i16*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %0 = getelementptr inbounds %"str::pattern::SearchStep", %"str::pattern::SearchStep"* %self, i16 0, i32 0, i16 0
  %1 = load i8, i8* %0, align 1, !range !564
  %trunc = trunc i8 %1 to i2
  switch i2 %trunc, label %bb2 [
    i2 0, label %bb3
    i2 1, label %bb8
    i2 -2, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit
  ]

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %2, align 1, !noalias !4897, !nonnull !568
  %3 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %4 = bitcast [3 x i16]** %3 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %4, align 1, !noalias !4897, !nonnull !568
  %5 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %6 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %5, align 1, !invariant.load !568, !noalias !4897, !nonnull !568
  %7 = tail call zeroext addrspace(1) i1 %6({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19158 to [0 x i8]*), i16 4), !noalias !4906
  br label %bb15

bb2:                                              ; preds = %start
  unreachable

bb3:                                              ; preds = %start
  %__self_03 = getelementptr inbounds %"str::pattern::SearchStep", %"str::pattern::SearchStep"* %self, i16 0, i32 2
  %__self_14 = getelementptr inbounds %"str::pattern::SearchStep", %"str::pattern::SearchStep"* %self, i16 0, i32 2, i16 2
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %8)
  %9 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i10 = load {}*, {}** %9, align 1, !noalias !4907, !nonnull !568
  %10 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %11 = bitcast [3 x i16]** %10 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i11 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %11, align 1, !noalias !4907, !nonnull !568
  %12 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i11, i16 3
  %13 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %12, align 1, !invariant.load !568, !noalias !4907, !nonnull !568
  %14 = tail call zeroext addrspace(1) i1 %13({}* nonnull align 1 %_3.0.i.i.i10, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19160 to [0 x i8]*), i16 5), !noalias !4916
  %15 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %15, align 1, !alias.scope !4916, !noalias !4917
  %16 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %17 = zext i1 %14 to i8
  store i8 %17, i8* %16, align 1, !alias.scope !4916, !noalias !4917
  %18 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %18, align 1, !alias.scope !4916, !noalias !4917
  %19 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %19, align 1, !alias.scope !4916, !noalias !4917
  %20 = bitcast i16** %_17 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %20)
  %21 = bitcast i16** %_17 to [4 x i8]**
  store [4 x i8]* %__self_03, [4 x i8]** %21, align 1
  %_14.0 = bitcast i16** %_17 to {}*
; call core::fmt::builders::DebugTuple::field
  %_12 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_14.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.C to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %20)
  %22 = bitcast i16** %_23 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %22)
  %23 = bitcast i16** %_23 to i8**
  store i8* %__self_14, i8** %23, align 1
  %_20.0 = bitcast i16** %_23 to {}*
; call core::fmt::builders::DebugTuple::field
  %_18 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_20.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.C to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %22)
  %_3.i12 = load i16, i16* %18, align 1
  %_2.i13 = icmp eq i16 %_3.i12, 0
  %.pre.i15 = load i8, i8* %16, align 1, !range !87
  br i1 %_2.i13, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit36, label %bb2.i17

bb2.i17:                                          ; preds = %bb3
  %_5.i16 = icmp eq i8 %.pre.i15, 0
  br i1 %_5.i16, label %bb3.i.i19, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i35"

bb3.i.i19:                                        ; preds = %bb2.i17
  %_5.i.i.i18 = icmp ne i16 %_3.i12, 1
  %24 = load i8, i8* %19, align 1
  %_7.i.i.i24 = icmp eq i8 %24, 0
  %or.cond = or i1 %_5.i.i.i18, %_7.i.i.i24
  br i1 %or.cond, label %bb20.i.i.i33, label %bb3.i.i.i23

bb3.i.i.i23:                                      ; preds = %bb3.i.i19
  %25 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i20 = load i32*, i32** %25, align 1, !alias.scope !4918, !nonnull !568
  %_3.i.i.i.i.i21 = load i32, i32* %_21.i.i.i.i20, align 1, !alias.scope !4921, !noalias !4918
  %_2.i.i.i.i.i22 = and i32 %_3.i.i.i.i.i21, 4
  %26 = icmp eq i32 %_2.i.i.i.i.i22, 0
  %27 = bitcast i32* %_21.i.i.i.i20 to %"fmt::Formatter"*
  br i1 %26, label %bb11.i.i.i28, label %bb20.i.i.i33

bb11.i.i.i28:                                     ; preds = %bb3.i.i.i23
  %28 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %27, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i26 = load {}*, {}** %28, align 1, !noalias !4924, !nonnull !568
  %29 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %27, i16 0, i32 11, i32 1
  %30 = bitcast [3 x i16]** %29 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i27 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %30, align 1, !noalias !4924, !nonnull !568
  %31 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i27, i16 3
  %32 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %31, align 1, !invariant.load !568, !noalias !4924, !nonnull !568
  %33 = call zeroext addrspace(1) i1 %32({}* nonnull align 1 %_3.0.i2.i.i.i26, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %33, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i35", label %bb20.i.i.i33

bb20.i.i.i33:                                     ; preds = %bb3.i.i19, %bb11.i.i.i28, %bb3.i.i.i23
  %_21.i.i.i29 = load %"fmt::Formatter"*, %"fmt::Formatter"** %15, align 1, !nonnull !568
  %34 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i29, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i30 = load {}*, {}** %34, align 1, !noalias !4927, !nonnull !568
  %35 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i29, i16 0, i32 11, i32 1
  %36 = bitcast [3 x i16]** %35 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i31 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %36, align 1, !noalias !4927, !nonnull !568
  %37 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i31, i16 3
  %38 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %37, align 1, !invariant.load !568, !noalias !4927, !nonnull !568
  %39 = call zeroext addrspace(1) i1 %38({}* nonnull align 1 %_3.0.i.i.i.i30, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i32 = zext i1 %39 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i35"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i35": ; preds = %bb20.i.i.i33, %bb11.i.i.i28, %bb2.i17
  %.0.i.i34 = phi i8 [ 1, %bb2.i17 ], [ %phitmp.i32, %bb20.i.i.i33 ], [ 1, %bb11.i.i.i28 ]
  store i8 %.0.i.i34, i8* %16, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit36

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit36: ; preds = %bb3, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i35"
  %40 = phi i8 [ %.0.i.i34, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i35" ], [ %.pre.i15, %bb3 ]
  %41 = icmp ne i8 %40, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %8)
  br label %bb15

bb8:                                              ; preds = %start
  %__self_0 = getelementptr inbounds %"str::pattern::SearchStep", %"str::pattern::SearchStep"* %self, i16 0, i32 2
  %__self_1 = getelementptr inbounds %"str::pattern::SearchStep", %"str::pattern::SearchStep"* %self, i16 0, i32 2, i16 2
  %42 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %42)
  %43 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i37 = load {}*, {}** %43, align 1, !noalias !4930, !nonnull !568
  %44 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %45 = bitcast [3 x i16]** %44 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i38 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %45, align 1, !noalias !4930, !nonnull !568
  %46 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i38, i16 3
  %47 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %46, align 1, !invariant.load !568, !noalias !4930, !nonnull !568
  %48 = tail call zeroext addrspace(1) i1 %47({}* nonnull align 1 %_3.0.i.i.i37, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc19159 to [0 x i8]*), i16 6), !noalias !4939
  %49 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder1 to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %49, align 1, !alias.scope !4939, !noalias !4940
  %50 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1, i16 0, i32 3
  %51 = zext i1 %48 to i8
  store i8 %51, i8* %50, align 1, !alias.scope !4939, !noalias !4940
  %52 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1, i16 0, i32 5
  store i16 0, i16* %52, align 1, !alias.scope !4939, !noalias !4940
  %53 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1, i16 0, i32 7
  store i8 0, i8* %53, align 1, !alias.scope !4939, !noalias !4940
  %54 = bitcast i16** %_36 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %54)
  %55 = bitcast i16** %_36 to [4 x i8]**
  store [4 x i8]* %__self_0, [4 x i8]** %55, align 1
  %_33.0 = bitcast i16** %_36 to {}*
; call core::fmt::builders::DebugTuple::field
  %_31 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder1, {}* nonnull align 1 %_33.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.C to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %54)
  %56 = bitcast i16** %_42 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %56)
  %57 = bitcast i16** %_42 to i8**
  store i8* %__self_1, i8** %57, align 1
  %_39.0 = bitcast i16** %_42 to {}*
; call core::fmt::builders::DebugTuple::field
  %_37 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder1, {}* nonnull align 1 %_39.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.C to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %56)
  %_3.i39 = load i16, i16* %52, align 1
  %_2.i40 = icmp eq i16 %_3.i39, 0
  %.pre.i42 = load i8, i8* %50, align 1, !range !87
  br i1 %_2.i40, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit63, label %bb2.i44

bb2.i44:                                          ; preds = %bb8
  %_5.i43 = icmp eq i8 %.pre.i42, 0
  br i1 %_5.i43, label %bb3.i.i46, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i62"

bb3.i.i46:                                        ; preds = %bb2.i44
  %_5.i.i.i45 = icmp ne i16 %_3.i39, 1
  %58 = load i8, i8* %53, align 1
  %_7.i.i.i51 = icmp eq i8 %58, 0
  %or.cond66 = or i1 %_5.i.i.i45, %_7.i.i.i51
  br i1 %or.cond66, label %bb20.i.i.i60, label %bb3.i.i.i50

bb3.i.i.i50:                                      ; preds = %bb3.i.i46
  %59 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder1 to i32**
  %_21.i.i.i.i47 = load i32*, i32** %59, align 1, !alias.scope !4941, !nonnull !568
  %_3.i.i.i.i.i48 = load i32, i32* %_21.i.i.i.i47, align 1, !alias.scope !4944, !noalias !4941
  %_2.i.i.i.i.i49 = and i32 %_3.i.i.i.i.i48, 4
  %60 = icmp eq i32 %_2.i.i.i.i.i49, 0
  %61 = bitcast i32* %_21.i.i.i.i47 to %"fmt::Formatter"*
  br i1 %60, label %bb11.i.i.i55, label %bb20.i.i.i60

bb11.i.i.i55:                                     ; preds = %bb3.i.i.i50
  %62 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %61, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i53 = load {}*, {}** %62, align 1, !noalias !4947, !nonnull !568
  %63 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %61, i16 0, i32 11, i32 1
  %64 = bitcast [3 x i16]** %63 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i54 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %64, align 1, !noalias !4947, !nonnull !568
  %65 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i54, i16 3
  %66 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %65, align 1, !invariant.load !568, !noalias !4947, !nonnull !568
  %67 = call zeroext addrspace(1) i1 %66({}* nonnull align 1 %_3.0.i2.i.i.i53, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %67, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i62", label %bb20.i.i.i60

bb20.i.i.i60:                                     ; preds = %bb3.i.i46, %bb11.i.i.i55, %bb3.i.i.i50
  %_21.i.i.i56 = load %"fmt::Formatter"*, %"fmt::Formatter"** %49, align 1, !nonnull !568
  %68 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i56, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i57 = load {}*, {}** %68, align 1, !noalias !4950, !nonnull !568
  %69 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i56, i16 0, i32 11, i32 1
  %70 = bitcast [3 x i16]** %69 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i58 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %70, align 1, !noalias !4950, !nonnull !568
  %71 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i58, i16 3
  %72 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %71, align 1, !invariant.load !568, !noalias !4950, !nonnull !568
  %73 = call zeroext addrspace(1) i1 %72({}* nonnull align 1 %_3.0.i.i.i.i57, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i59 = zext i1 %73 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i62"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i62": ; preds = %bb20.i.i.i60, %bb11.i.i.i55, %bb2.i44
  %.0.i.i61 = phi i8 [ 1, %bb2.i44 ], [ %phitmp.i59, %bb20.i.i.i60 ], [ 1, %bb11.i.i.i55 ]
  store i8 %.0.i.i61, i8* %50, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit63

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit63: ; preds = %bb8, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i62"
  %74 = phi i8 [ %.0.i.i61, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i62" ], [ %.pre.i42, %bb8 ]
  %75 = icmp ne i8 %74, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %42)
  br label %bb15

bb15:                                             ; preds = %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit36, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit63, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit
  %.0.in = phi i1 [ %7, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit ], [ %75, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit63 ], [ %41, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit36 ]
  ret i1 %.0.in
}

; <core::str::pattern::CharSearcher as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN69_$LT$core..str..pattern..CharSearcher$u20$as$u20$core..fmt..Debug$GT$3fmt17h75d7eda8c1d49832E"(%"str::pattern::CharSearcher"* noalias readonly align 1 dereferenceable(18) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_60 = alloca [4 x i8]*, align 1
  %_52 = alloca i16*, align 1
  %_44 = alloca i32*, align 1
  %_36 = alloca i16*, align 1
  %_28 = alloca i16*, align 1
  %_20 = alloca { [0 x i8]*, i16 }*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %__self_0_1 = getelementptr inbounds %"str::pattern::CharSearcher", %"str::pattern::CharSearcher"* %self, i16 0, i32 3
  %__self_0_2 = getelementptr inbounds %"str::pattern::CharSearcher", %"str::pattern::CharSearcher"* %self, i16 0, i32 5
  %__self_0_3 = getelementptr inbounds %"str::pattern::CharSearcher", %"str::pattern::CharSearcher"* %self, i16 0, i32 7
  %__self_0_4 = getelementptr inbounds %"str::pattern::CharSearcher", %"str::pattern::CharSearcher"* %self, i16 0, i32 9
  %__self_0_5 = getelementptr inbounds %"str::pattern::CharSearcher", %"str::pattern::CharSearcher"* %self, i16 0, i32 11
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !4953, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !4953, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !4953, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [12 x i8] }>* @alloc19161 to [0 x i8]*), i16 12), !noalias !4962
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !4962, !noalias !4963
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !4962, !noalias !4963
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !4962, !noalias !4963
  %11 = bitcast { [0 x i8]*, i16 }** %_20 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  %12 = bitcast { [0 x i8]*, i16 }** %_20 to %"str::pattern::CharSearcher"**
  store %"str::pattern::CharSearcher"* %self, %"str::pattern::CharSearcher"** %12, align 1
  %_17.0 = bitcast { [0 x i8]*, i16 }** %_20 to {}*
; call core::fmt::builders::DebugStruct::field
  %_13 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [8 x i8] }>* @alloc19174 to [0 x i8]*), i16 8, {}* nonnull align 1 %_17.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({ [0 x i8]*, i16 }**) addrspace(1)*, i16, i16, i1 ({ [0 x i8]*, i16 }**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1d to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %13 = bitcast i16** %_28 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i16* %__self_0_1, i16** %_28, align 1
  %_25.0 = bitcast i16** %_28 to {}*
; call core::fmt::builders::DebugStruct::field
  %_21 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc19163 to [0 x i8]*), i16 6, {}* nonnull align 1 %_25.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.C to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast i16** %_36 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store i16* %__self_0_2, i16** %_36, align 1
  %_33.0 = bitcast i16** %_36 to {}*
; call core::fmt::builders::DebugStruct::field
  %_29 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [11 x i8] }>* @alloc19164 to [0 x i8]*), i16 11, {}* nonnull align 1 %_33.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.C to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast i32** %_44 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15)
  store i32* %__self_0_3, i32** %_44, align 1
  %_41.0 = bitcast i32** %_44 to {}*
; call core::fmt::builders::DebugStruct::field
  %_37 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc19175 to [0 x i8]*), i16 6, {}* nonnull align 1 %_41.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.g to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15)
  %16 = bitcast i16** %_52 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %16)
  store i16* %__self_0_4, i16** %_52, align 1
  %_49.0 = bitcast i16** %_52 to {}*
; call core::fmt::builders::DebugStruct::field
  %_45 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [9 x i8] }>* @alloc19166 to [0 x i8]*), i16 9, {}* nonnull align 1 %_49.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.C to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %16)
  %17 = bitcast [4 x i8]** %_60 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %17)
  store [4 x i8]* %__self_0_5, [4 x i8]** %_60, align 1
  %_57.0 = bitcast [4 x i8]** %_60 to {}*
; call core::fmt::builders::DebugStruct::field
  %_53 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [12 x i8] }>* @alloc19167 to [0 x i8]*), i16 12, {}* nonnull align 1 %_57.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ([4 x i8]**) addrspace(1)*, i16, i16, i1 ([4 x i8]**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1m to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %17)
  %18 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %18, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %19 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %19, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !4964, !noalias !4967
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %20 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %21 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %21, align 1, !nonnull !568
  %22 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %23 = bitcast [3 x i16]** %22 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %23, align 1, !nonnull !568
  %24 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %25 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %24, align 1, !invariant.load !568, !nonnull !568
  br i1 %20, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %26 = call zeroext addrspace(1) i1 %25({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %27 = call zeroext addrspace(1) i1 %25({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %27, %bb3.i.i.i ], [ %26, %bb2.i.i.i ]
  %28 = zext i1 %.0.i.i to i8
  store i8 %28, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %29 = phi i8 [ %28, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %30 = icmp ne i8 %29, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %30
}

; <core::str::pattern::CharSliceSearcher as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN74_$LT$core..str..pattern..CharSliceSearcher$u20$as$u20$core..fmt..Debug$GT$3fmt17h7ec57c021372f756E"(%"str::pattern::CharSliceSearcher"* noalias readonly align 1 dereferenceable(14) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_13 = alloca %"str::pattern::MultiCharEqSearcher<&[char]>"*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !4970, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !4970, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !4970, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [17 x i8] }>* @alloc19172 to [0 x i8]*), i16 17), !noalias !4979
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !4979, !noalias !4980
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !4979, !noalias !4980
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !4979, !noalias !4980
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !4979, !noalias !4980
  %12 = bitcast %"str::pattern::MultiCharEqSearcher<&[char]>"** %_13 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast %"str::pattern::MultiCharEqSearcher<&[char]>"** %_13 to %"str::pattern::CharSliceSearcher"**
  store %"str::pattern::CharSliceSearcher"* %self, %"str::pattern::CharSliceSearcher"** %13, align 1
  %_10.0 = bitcast %"str::pattern::MultiCharEqSearcher<&[char]>"** %_13 to {}*
; call core::fmt::builders::DebugTuple::field
  %_8 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_10.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"str::pattern::MultiCharEqSearcher<&[char]>"**) addrspace(1)*, i16, i16, i1 (%"str::pattern::MultiCharEqSearcher<&[char]>"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1p to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %14 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %14, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %15 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %15, align 1, !alias.scope !4981, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !4984, !noalias !4981
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %16 = icmp eq i32 %_2.i.i.i.i.i, 0
  %17 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %16, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %18, align 1, !noalias !4987, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !noalias !4987, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !noalias !4987, !nonnull !568
  %23 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %23, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %24, align 1, !noalias !4990, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %26, align 1, !noalias !4990, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %28 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !4990, !nonnull !568
  %29 = call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %29 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %30 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %31 = icmp ne i8 %30, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %31
}

; <core::str::pattern::StrSearcher as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN68_$LT$core..str..pattern..StrSearcher$u20$as$u20$core..fmt..Debug$GT$3fmt17ha1e2d00fa43ea931E"(%"str::pattern::StrSearcher"* noalias readonly align 1 dereferenceable(31) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_33 = alloca %"str::pattern::StrSearcherImpl"*, align 1
  %_25 = alloca { [0 x i8]*, i16 }*, align 1
  %_17 = alloca { [0 x i8]*, i16 }*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %__self_0_1 = getelementptr inbounds %"str::pattern::StrSearcher", %"str::pattern::StrSearcher"* %self, i16 0, i32 3
  %__self_0_2 = getelementptr inbounds %"str::pattern::StrSearcher", %"str::pattern::StrSearcher"* %self, i16 0, i32 5
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !4993, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !4993, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !4993, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [11 x i8] }>* @alloc19173 to [0 x i8]*), i16 11), !noalias !5002
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !5002, !noalias !5003
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !5002, !noalias !5003
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !5002, !noalias !5003
  %11 = bitcast { [0 x i8]*, i16 }** %_17 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  %12 = bitcast { [0 x i8]*, i16 }** %_17 to %"str::pattern::StrSearcher"**
  store %"str::pattern::StrSearcher"* %self, %"str::pattern::StrSearcher"** %12, align 1
  %_14.0 = bitcast { [0 x i8]*, i16 }** %_17 to {}*
; call core::fmt::builders::DebugStruct::field
  %_10 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [8 x i8] }>* @alloc19174 to [0 x i8]*), i16 8, {}* nonnull align 1 %_14.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({ [0 x i8]*, i16 }**) addrspace(1)*, i16, i16, i1 ({ [0 x i8]*, i16 }**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1d to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %13 = bitcast { [0 x i8]*, i16 }** %_25 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store { [0 x i8]*, i16 }* %__self_0_1, { [0 x i8]*, i16 }** %_25, align 1
  %_22.0 = bitcast { [0 x i8]*, i16 }** %_25 to {}*
; call core::fmt::builders::DebugStruct::field
  %_18 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc19175 to [0 x i8]*), i16 6, {}* nonnull align 1 %_22.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({ [0 x i8]*, i16 }**) addrspace(1)*, i16, i16, i1 ({ [0 x i8]*, i16 }**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1d to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast %"str::pattern::StrSearcherImpl"** %_33 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store %"str::pattern::StrSearcherImpl"* %__self_0_2, %"str::pattern::StrSearcherImpl"** %_33, align 1
  %_30.0 = bitcast %"str::pattern::StrSearcherImpl"** %_33 to {}*
; call core::fmt::builders::DebugStruct::field
  %_26 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [8 x i8] }>* @alloc19176 to [0 x i8]*), i16 8, {}* nonnull align 1 %_30.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"str::pattern::StrSearcherImpl"**) addrspace(1)*, i16, i16, i1 (%"str::pattern::StrSearcherImpl"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1q to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %15, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %16 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %16, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !5004, !noalias !5007
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %17 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !nonnull !568
  br i1 %17, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %23 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %24 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %24, %bb3.i.i.i ], [ %23, %bb2.i.i.i ]
  %25 = zext i1 %.0.i.i to i8
  store i8 %25, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %26 = phi i8 [ %25, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %27 = icmp ne i8 %26, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %27
}

; <core::str::pattern::StrSearcherImpl as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN72_$LT$core..str..pattern..StrSearcherImpl$u20$as$u20$core..fmt..Debug$GT$3fmt17h3917bd7ecb36024eE"(%"str::pattern::StrSearcherImpl"* noalias readonly align 1 dereferenceable(23) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_28 = alloca %"str::pattern::TwoWaySearcher"*, align 1
  %debug_trait_builder1 = alloca %"fmt::builders::DebugTuple", align 1
  %_16 = alloca %"str::pattern::EmptyNeedle"*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %0 = getelementptr inbounds %"str::pattern::StrSearcherImpl", %"str::pattern::StrSearcherImpl"* %self, i16 0, i32 0, i16 0
  %1 = load i8, i8* %0, align 1, !range !87
  %switch = icmp eq i8 %1, 1
  %__self_0 = getelementptr inbounds %"str::pattern::StrSearcherImpl", %"str::pattern::StrSearcherImpl"* %self, i16 0, i32 2
  br i1 %switch, label %bb1, label %bb3

bb1:                                              ; preds = %start
  %2 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %2)
  %3 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %3, align 1, !noalias !5010, !nonnull !568
  %4 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %5 = bitcast [3 x i16]** %4 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %5, align 1, !noalias !5010, !nonnull !568
  %6 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %7 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %6, align 1, !invariant.load !568, !noalias !5010, !nonnull !568
  %8 = tail call zeroext addrspace(1) i1 %7({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc19177 to [0 x i8]*), i16 6), !noalias !5019
  %9 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder1 to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %9, align 1, !alias.scope !5019, !noalias !5020
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1, i16 0, i32 3
  %11 = zext i1 %8 to i8
  store i8 %11, i8* %10, align 1, !alias.scope !5019, !noalias !5020
  %12 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1, i16 0, i32 5
  store i16 0, i16* %12, align 1, !alias.scope !5019, !noalias !5020
  %13 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder1, i16 0, i32 7
  store i8 0, i8* %13, align 1, !alias.scope !5019, !noalias !5020
  %14 = bitcast %"str::pattern::TwoWaySearcher"** %_28 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast %"str::pattern::TwoWaySearcher"** %_28 to [22 x i8]**
  store [22 x i8]* %__self_0, [22 x i8]** %15, align 1
  %_25.0 = bitcast %"str::pattern::TwoWaySearcher"** %_28 to {}*
; call core::fmt::builders::DebugTuple::field
  %_23 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder1, {}* nonnull align 1 %_25.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"str::pattern::TwoWaySearcher"**) addrspace(1)*, i16, i16, i1 (%"str::pattern::TwoWaySearcher"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1r to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %_3.i = load i16, i16* %12, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %10, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %bb1
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %16 = load i8, i8* %13, align 1
  %_7.i.i.i = icmp eq i8 %16, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %17 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder1 to i32**
  %_21.i.i.i.i = load i32*, i32** %17, align 1, !alias.scope !5021, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !5024, !noalias !5021
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %18 = icmp eq i32 %_2.i.i.i.i.i, 0
  %19 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %18, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %19, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %20, align 1, !noalias !5027, !nonnull !568
  %21 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %19, i16 0, i32 11, i32 1
  %22 = bitcast [3 x i16]** %21 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %22, align 1, !noalias !5027, !nonnull !568
  %23 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %24 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %23, align 1, !invariant.load !568, !noalias !5027, !nonnull !568
  %25 = call zeroext addrspace(1) i1 %24({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %25, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %9, align 1, !nonnull !568
  %26 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %26, align 1, !noalias !5030, !nonnull !568
  %27 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %28 = bitcast [3 x i16]** %27 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %28, align 1, !noalias !5030, !nonnull !568
  %29 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %30 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %29, align 1, !invariant.load !568, !noalias !5030, !nonnull !568
  %31 = call zeroext addrspace(1) i1 %30({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %31 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %10, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %bb1, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %32 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %bb1 ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %2)
  br label %bb10

bb3:                                              ; preds = %start
  %33 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %33)
  %34 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i6 = load {}*, {}** %34, align 1, !noalias !5033, !nonnull !568
  %35 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %36 = bitcast [3 x i16]** %35 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i7 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %36, align 1, !noalias !5033, !nonnull !568
  %37 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i7, i16 3
  %38 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %37, align 1, !invariant.load !568, !noalias !5033, !nonnull !568
  %39 = tail call zeroext addrspace(1) i1 %38({}* nonnull align 1 %_3.0.i.i.i6, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19178 to [0 x i8]*), i16 5), !noalias !5042
  %40 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %40, align 1, !alias.scope !5042, !noalias !5043
  %41 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %42 = zext i1 %39 to i8
  store i8 %42, i8* %41, align 1, !alias.scope !5042, !noalias !5043
  %43 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %43, align 1, !alias.scope !5042, !noalias !5043
  %44 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %44, align 1, !alias.scope !5042, !noalias !5043
  %45 = bitcast %"str::pattern::EmptyNeedle"** %_16 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %45)
  %46 = bitcast %"str::pattern::EmptyNeedle"** %_16 to [22 x i8]**
  store [22 x i8]* %__self_0, [22 x i8]** %46, align 1
  %_13.0 = bitcast %"str::pattern::EmptyNeedle"** %_16 to {}*
; call core::fmt::builders::DebugTuple::field
  %_11 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_13.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"str::pattern::EmptyNeedle"**) addrspace(1)*, i16, i16, i1 (%"str::pattern::EmptyNeedle"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1s to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %45)
  %_3.i8 = load i16, i16* %43, align 1
  %_2.i9 = icmp eq i16 %_3.i8, 0
  %.pre.i11 = load i8, i8* %41, align 1, !range !87
  br i1 %_2.i9, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit32, label %bb2.i13

bb2.i13:                                          ; preds = %bb3
  %_5.i12 = icmp eq i8 %.pre.i11, 0
  br i1 %_5.i12, label %bb3.i.i15, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i31"

bb3.i.i15:                                        ; preds = %bb2.i13
  %_5.i.i.i14 = icmp ne i16 %_3.i8, 1
  %47 = load i8, i8* %44, align 1
  %_7.i.i.i20 = icmp eq i8 %47, 0
  %or.cond33 = or i1 %_5.i.i.i14, %_7.i.i.i20
  br i1 %or.cond33, label %bb20.i.i.i29, label %bb3.i.i.i19

bb3.i.i.i19:                                      ; preds = %bb3.i.i15
  %48 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i16 = load i32*, i32** %48, align 1, !alias.scope !5044, !nonnull !568
  %_3.i.i.i.i.i17 = load i32, i32* %_21.i.i.i.i16, align 1, !alias.scope !5047, !noalias !5044
  %_2.i.i.i.i.i18 = and i32 %_3.i.i.i.i.i17, 4
  %49 = icmp eq i32 %_2.i.i.i.i.i18, 0
  %50 = bitcast i32* %_21.i.i.i.i16 to %"fmt::Formatter"*
  br i1 %49, label %bb11.i.i.i24, label %bb20.i.i.i29

bb11.i.i.i24:                                     ; preds = %bb3.i.i.i19
  %51 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %50, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i22 = load {}*, {}** %51, align 1, !noalias !5050, !nonnull !568
  %52 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %50, i16 0, i32 11, i32 1
  %53 = bitcast [3 x i16]** %52 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i23 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %53, align 1, !noalias !5050, !nonnull !568
  %54 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i23, i16 3
  %55 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %54, align 1, !invariant.load !568, !noalias !5050, !nonnull !568
  %56 = call zeroext addrspace(1) i1 %55({}* nonnull align 1 %_3.0.i2.i.i.i22, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %56, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i31", label %bb20.i.i.i29

bb20.i.i.i29:                                     ; preds = %bb3.i.i15, %bb11.i.i.i24, %bb3.i.i.i19
  %_21.i.i.i25 = load %"fmt::Formatter"*, %"fmt::Formatter"** %40, align 1, !nonnull !568
  %57 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i25, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i26 = load {}*, {}** %57, align 1, !noalias !5053, !nonnull !568
  %58 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i25, i16 0, i32 11, i32 1
  %59 = bitcast [3 x i16]** %58 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i27 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %59, align 1, !noalias !5053, !nonnull !568
  %60 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i27, i16 3
  %61 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %60, align 1, !invariant.load !568, !noalias !5053, !nonnull !568
  %62 = call zeroext addrspace(1) i1 %61({}* nonnull align 1 %_3.0.i.i.i.i26, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i28 = zext i1 %62 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i31"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i31": ; preds = %bb20.i.i.i29, %bb11.i.i.i24, %bb2.i13
  %.0.i.i30 = phi i8 [ 1, %bb2.i13 ], [ %phitmp.i28, %bb20.i.i.i29 ], [ 1, %bb11.i.i.i24 ]
  store i8 %.0.i.i30, i8* %41, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit32

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit32: ; preds = %bb3, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i31"
  %63 = phi i8 [ %.0.i.i30, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i31" ], [ %.pre.i11, %bb3 ]
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %33)
  br label %bb10

bb10:                                             ; preds = %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit32, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit
  %.0.in.in = phi i8 [ %63, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit32 ], [ %32, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit ]
  %.0.in = icmp ne i8 %.0.in.in, 0
  ret i1 %.0.in
}

; <core::str::pattern::EmptyNeedle as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN68_$LT$core..str..pattern..EmptyNeedle$u20$as$u20$core..fmt..Debug$GT$3fmt17hdf4f28cfd5256a71E"(%"str::pattern::EmptyNeedle"* noalias readonly align 1 dereferenceable(6) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_42 = alloca i8*, align 1
  %_34 = alloca i8*, align 1
  %_26 = alloca i16*, align 1
  %_18 = alloca i16*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %__self_0_1 = getelementptr inbounds %"str::pattern::EmptyNeedle", %"str::pattern::EmptyNeedle"* %self, i16 0, i32 3
  %__self_0_2 = getelementptr inbounds %"str::pattern::EmptyNeedle", %"str::pattern::EmptyNeedle"* %self, i16 0, i32 5
  %__self_0_3 = getelementptr inbounds %"str::pattern::EmptyNeedle", %"str::pattern::EmptyNeedle"* %self, i16 0, i32 7
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !5056, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !5056, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !5056, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [11 x i8] }>* @alloc19179 to [0 x i8]*), i16 11), !noalias !5065
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !5065, !noalias !5066
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !5065, !noalias !5066
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !5065, !noalias !5066
  %11 = bitcast i16** %_18 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  %12 = bitcast i16** %_18 to %"str::pattern::EmptyNeedle"**
  store %"str::pattern::EmptyNeedle"* %self, %"str::pattern::EmptyNeedle"** %12, align 1
  %_15.0 = bitcast i16** %_18 to {}*
; call core::fmt::builders::DebugStruct::field
  %_11 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [8 x i8] }>* @alloc19189 to [0 x i8]*), i16 8, {}* nonnull align 1 %_15.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.C to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %13 = bitcast i16** %_26 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i16* %__self_0_1, i16** %_26, align 1
  %_23.0 = bitcast i16** %_26 to {}*
; call core::fmt::builders::DebugStruct::field
  %_19 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [3 x i8] }>* @alloc19190 to [0 x i8]*), i16 3, {}* nonnull align 1 %_23.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.C to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast i8** %_34 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store i8* %__self_0_2, i8** %_34, align 1
  %_31.0 = bitcast i8** %_34 to {}*
; call core::fmt::builders::DebugStruct::field
  %_27 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [11 x i8] }>* @alloc19182 to [0 x i8]*), i16 11, {}* nonnull align 1 %_31.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.z to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast i8** %_42 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15)
  store i8* %__self_0_3, i8** %_42, align 1
  %_39.0 = bitcast i8** %_42 to {}*
; call core::fmt::builders::DebugStruct::field
  %_35 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [11 x i8] }>* @alloc19183 to [0 x i8]*), i16 11, {}* nonnull align 1 %_39.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.z to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15)
  %16 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %16, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %17 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %17, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !5067, !noalias !5070
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %18 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %19, align 1, !nonnull !568
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %21 = bitcast [3 x i16]** %20 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %21, align 1, !nonnull !568
  %22 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %23 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %22, align 1, !invariant.load !568, !nonnull !568
  br i1 %18, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %24 = call zeroext addrspace(1) i1 %23({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %25 = call zeroext addrspace(1) i1 %23({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %25, %bb3.i.i.i ], [ %24, %bb2.i.i.i ]
  %26 = zext i1 %.0.i.i to i8
  store i8 %26, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %27 = phi i8 [ %26, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %28 = icmp ne i8 %27, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %28
}

; <core::str::pattern::TwoWaySearcher as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN71_$LT$core..str..pattern..TwoWaySearcher$u20$as$u20$core..fmt..Debug$GT$3fmt17hfc79f3e3f5a7df26E"(%"str::pattern::TwoWaySearcher"* noalias readonly align 1 dereferenceable(22) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_78 = alloca i16*, align 1
  %_70 = alloca i16*, align 1
  %_62 = alloca i16*, align 1
  %_54 = alloca i16*, align 1
  %_46 = alloca i64*, align 1
  %_38 = alloca i16*, align 1
  %_30 = alloca i16*, align 1
  %_22 = alloca i16*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %__self_0_1 = getelementptr inbounds %"str::pattern::TwoWaySearcher", %"str::pattern::TwoWaySearcher"* %self, i16 0, i32 3
  %__self_0_2 = getelementptr inbounds %"str::pattern::TwoWaySearcher", %"str::pattern::TwoWaySearcher"* %self, i16 0, i32 5
  %__self_0_3 = getelementptr inbounds %"str::pattern::TwoWaySearcher", %"str::pattern::TwoWaySearcher"* %self, i16 0, i32 7
  %__self_0_4 = getelementptr inbounds %"str::pattern::TwoWaySearcher", %"str::pattern::TwoWaySearcher"* %self, i16 0, i32 9
  %__self_0_5 = getelementptr inbounds %"str::pattern::TwoWaySearcher", %"str::pattern::TwoWaySearcher"* %self, i16 0, i32 11
  %__self_0_6 = getelementptr inbounds %"str::pattern::TwoWaySearcher", %"str::pattern::TwoWaySearcher"* %self, i16 0, i32 13
  %__self_0_7 = getelementptr inbounds %"str::pattern::TwoWaySearcher", %"str::pattern::TwoWaySearcher"* %self, i16 0, i32 15
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !5073, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !5073, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !5073, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [14 x i8] }>* @alloc19184 to [0 x i8]*), i16 14), !noalias !5082
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !5082, !noalias !5083
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !5082, !noalias !5083
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !5082, !noalias !5083
  %11 = bitcast i16** %_22 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  %12 = bitcast i16** %_22 to %"str::pattern::TwoWaySearcher"**
  store %"str::pattern::TwoWaySearcher"* %self, %"str::pattern::TwoWaySearcher"** %12, align 1
  %_19.0 = bitcast i16** %_22 to {}*
; call core::fmt::builders::DebugStruct::field
  %_15 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [8 x i8] }>* @alloc19185 to [0 x i8]*), i16 8, {}* nonnull align 1 %_19.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.C to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %13 = bitcast i16** %_30 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i16* %__self_0_1, i16** %_30, align 1
  %_27.0 = bitcast i16** %_30 to {}*
; call core::fmt::builders::DebugStruct::field
  %_23 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [13 x i8] }>* @alloc19186 to [0 x i8]*), i16 13, {}* nonnull align 1 %_27.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.C to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast i16** %_38 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store i16* %__self_0_2, i16** %_38, align 1
  %_35.0 = bitcast i16** %_38 to {}*
; call core::fmt::builders::DebugStruct::field
  %_31 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc19187 to [0 x i8]*), i16 6, {}* nonnull align 1 %_35.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.C to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast i64** %_46 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15)
  store i64* %__self_0_3, i64** %_46, align 1
  %_43.0 = bitcast i64** %_46 to {}*
; call core::fmt::builders::DebugStruct::field
  %_39 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [7 x i8] }>* @alloc19188 to [0 x i8]*), i16 7, {}* nonnull align 1 %_43.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.w to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15)
  %16 = bitcast i16** %_54 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %16)
  store i16* %__self_0_4, i16** %_54, align 1
  %_51.0 = bitcast i16** %_54 to {}*
; call core::fmt::builders::DebugStruct::field
  %_47 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [8 x i8] }>* @alloc19189 to [0 x i8]*), i16 8, {}* nonnull align 1 %_51.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.C to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %16)
  %17 = bitcast i16** %_62 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %17)
  store i16* %__self_0_5, i16** %_62, align 1
  %_59.0 = bitcast i16** %_62 to {}*
; call core::fmt::builders::DebugStruct::field
  %_55 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [3 x i8] }>* @alloc19190 to [0 x i8]*), i16 3, {}* nonnull align 1 %_59.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.C to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %17)
  %18 = bitcast i16** %_70 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %18)
  store i16* %__self_0_6, i16** %_70, align 1
  %_67.0 = bitcast i16** %_70 to {}*
; call core::fmt::builders::DebugStruct::field
  %_63 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc19191 to [0 x i8]*), i16 6, {}* nonnull align 1 %_67.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.C to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %18)
  %19 = bitcast i16** %_78 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %19)
  store i16* %__self_0_7, i16** %_78, align 1
  %_75.0 = bitcast i16** %_78 to {}*
; call core::fmt::builders::DebugStruct::field
  %_71 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [11 x i8] }>* @alloc19192 to [0 x i8]*), i16 11, {}* nonnull align 1 %_75.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.C to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %19)
  %20 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %20, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %21 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %21, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !5084, !noalias !5087
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %22 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %23 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %23, align 1, !nonnull !568
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %25 = bitcast [3 x i16]** %24 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %25, align 1, !nonnull !568
  %26 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %27 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %26, align 1, !invariant.load !568, !nonnull !568
  br i1 %22, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %28 = call zeroext addrspace(1) i1 %27({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %29 = call zeroext addrspace(1) i1 %27({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %29, %bb3.i.i.i ], [ %28, %bb2.i.i.i ]
  %30 = zext i1 %.0.i.i to i8
  store i8 %30, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %31 = phi i8 [ %30, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %32 = icmp ne i8 %31, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %32
}

; <core::str::lossy::Utf8LossyChunk as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN69_$LT$core..str..lossy..Utf8LossyChunk$u20$as$u20$core..fmt..Debug$GT$3fmt17h8311773a500560c6E"(%"str::lossy::Utf8LossyChunk"* noalias readonly align 1 dereferenceable(8) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_24 = alloca { [0 x i8]*, i16 }*, align 1
  %_16 = alloca { [0 x i8]*, i16 }*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %__self_0_1 = getelementptr inbounds %"str::lossy::Utf8LossyChunk", %"str::lossy::Utf8LossyChunk"* %self, i16 0, i32 3
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !5090, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !5090, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !5090, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [14 x i8] }>* @alloc19193 to [0 x i8]*), i16 14), !noalias !5099
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !5099, !noalias !5100
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !5099, !noalias !5100
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !5099, !noalias !5100
  %11 = bitcast { [0 x i8]*, i16 }** %_16 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  %12 = bitcast { [0 x i8]*, i16 }** %_16 to %"str::lossy::Utf8LossyChunk"**
  store %"str::lossy::Utf8LossyChunk"* %self, %"str::lossy::Utf8LossyChunk"** %12, align 1
  %_13.0 = bitcast { [0 x i8]*, i16 }** %_16 to {}*
; call core::fmt::builders::DebugStruct::field
  %_9 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19194 to [0 x i8]*), i16 5, {}* nonnull align 1 %_13.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({ [0 x i8]*, i16 }**) addrspace(1)*, i16, i16, i1 ({ [0 x i8]*, i16 }**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1d to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %13 = bitcast { [0 x i8]*, i16 }** %_24 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store { [0 x i8]*, i16 }* %__self_0_1, { [0 x i8]*, i16 }** %_24, align 1
  %_21.0 = bitcast { [0 x i8]*, i16 }** %_24 to {}*
; call core::fmt::builders::DebugStruct::field
  %_17 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc19195 to [0 x i8]*), i16 6, {}* nonnull align 1 %_21.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({ [0 x i8]*, i16 }**) addrspace(1)*, i16, i16, i1 ({ [0 x i8]*, i16 }**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.t to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %14, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %15 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %15, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !5101, !noalias !5104
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %16 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %17, align 1, !nonnull !568
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %19 = bitcast [3 x i16]** %18 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %19, align 1, !nonnull !568
  %20 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %21 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %20, align 1, !invariant.load !568, !nonnull !568
  br i1 %16, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %22 = call zeroext addrspace(1) i1 %21({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %23 = call zeroext addrspace(1) i1 %21({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %23, %bb3.i.i.i ], [ %22, %bb2.i.i.i ]
  %24 = zext i1 %.0.i.i to i8
  store i8 %24, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %25 = phi i8 [ %24, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %26 = icmp ne i8 %25, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %26
}

; <core::str::ParseBoolError as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN62_$LT$core..str..ParseBoolError$u20$as$u20$core..fmt..Debug$GT$3fmt17h9b0b7fe6dae9e78aE"(%"str::ParseBoolError"* noalias nonnull readonly align 1 %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_15 = alloca {}*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !5107, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !5107, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !5107, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [14 x i8] }>* @alloc19196 to [0 x i8]*), i16 14), !noalias !5116
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !5116, !noalias !5117
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !5116, !noalias !5117
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !5116, !noalias !5117
  %11 = bitcast {}** %_15 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  %12 = bitcast {}** %_15 to %"str::ParseBoolError"**
  store %"str::ParseBoolError"* %self, %"str::ParseBoolError"** %12, align 1
  %_12.0 = bitcast {}** %_15 to {}*
; call core::fmt::builders::DebugStruct::field
  %_8 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19197 to [0 x i8]*), i16 5, {}* nonnull align 1 %_12.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({}**) addrspace(1)*, i16, i16, i1 ({}**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.D to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %13 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %13, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %14 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %14, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !5118, !noalias !5121
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %15 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %16, align 1, !nonnull !568
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %18 = bitcast [3 x i16]** %17 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %20 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %19, align 1, !invariant.load !568, !nonnull !568
  br i1 %15, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %21 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %22 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %22, %bb3.i.i.i ], [ %21, %bb2.i.i.i ]
  %23 = zext i1 %.0.i.i to i8
  store i8 %23, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %24 = phi i8 [ %23, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %25 = icmp ne i8 %24, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %25
}

; <core::str::Utf8Error as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN57_$LT$core..str..Utf8Error$u20$as$u20$core..fmt..Debug$GT$3fmt17h93a7aca1c8af95e9E"(%"str::Utf8Error"* noalias readonly align 1 dereferenceable(4) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_24 = alloca { i8, i8 }*, align 1
  %_16 = alloca i16*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %__self_0_1 = getelementptr inbounds %"str::Utf8Error", %"str::Utf8Error"* %self, i16 0, i32 3
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !5124, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !5124, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !5124, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [9 x i8] }>* @alloc19198 to [0 x i8]*), i16 9), !noalias !5133
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !5133, !noalias !5134
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !5133, !noalias !5134
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !5133, !noalias !5134
  %11 = bitcast i16** %_16 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  %12 = bitcast i16** %_16 to %"str::Utf8Error"**
  store %"str::Utf8Error"* %self, %"str::Utf8Error"** %12, align 1
  %_13.0 = bitcast i16** %_16 to {}*
; call core::fmt::builders::DebugStruct::field
  %_9 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [11 x i8] }>* @alloc19199 to [0 x i8]*), i16 11, {}* nonnull align 1 %_13.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.C to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %13 = bitcast { i8, i8 }** %_24 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store { i8, i8 }* %__self_0_1, { i8, i8 }** %_24, align 1
  %_21.0 = bitcast { i8, i8 }** %_24 to {}*
; call core::fmt::builders::DebugStruct::field
  %_17 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [9 x i8] }>* @alloc19200 to [0 x i8]*), i16 9, {}* nonnull align 1 %_21.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({ i8, i8 }**) addrspace(1)*, i16, i16, i1 ({ i8, i8 }**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1t to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %14, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %15 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %15, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !5135, !noalias !5138
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %16 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %17, align 1, !nonnull !568
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %19 = bitcast [3 x i16]** %18 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %19, align 1, !nonnull !568
  %20 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %21 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %20, align 1, !invariant.load !568, !nonnull !568
  br i1 %16, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %22 = call zeroext addrspace(1) i1 %21({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %23 = call zeroext addrspace(1) i1 %21({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %23, %bb3.i.i.i ], [ %22, %bb2.i.i.i ]
  %24 = zext i1 %.0.i.i to i8
  store i8 %24, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %25 = phi i8 [ %24, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %26 = icmp ne i8 %25, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %26
}

; <core::str::CharIndices as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN59_$LT$core..str..CharIndices$u20$as$u20$core..fmt..Debug$GT$3fmt17h16bb1cbf4154bae5E"(%"str::CharIndices"* noalias readonly align 1 dereferenceable(6) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_24 = alloca { i8*, i8* }*, align 1
  %_16 = alloca i16*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %__self_0_1 = getelementptr inbounds %"str::CharIndices", %"str::CharIndices"* %self, i16 0, i32 3
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !5141, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !5141, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !5141, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [11 x i8] }>* @alloc19201 to [0 x i8]*), i16 11), !noalias !5150
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !5150, !noalias !5151
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !5150, !noalias !5151
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !5150, !noalias !5151
  %11 = bitcast i16** %_16 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  %12 = bitcast i16** %_16 to %"str::CharIndices"**
  store %"str::CharIndices"* %self, %"str::CharIndices"** %12, align 1
  %_13.0 = bitcast i16** %_16 to {}*
; call core::fmt::builders::DebugStruct::field
  %_9 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [12 x i8] }>* @alloc19202 to [0 x i8]*), i16 12, {}* nonnull align 1 %_13.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.C to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %13 = bitcast { i8*, i8* }** %_24 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store { i8*, i8* }* %__self_0_1, { i8*, i8* }** %_24, align 1
  %_21.0 = bitcast { i8*, i8* }** %_24 to {}*
; call core::fmt::builders::DebugStruct::field
  %_17 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19203 to [0 x i8]*), i16 4, {}* nonnull align 1 %_21.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({ i8*, i8* }**) addrspace(1)*, i16, i16, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1u to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %14, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %15 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %15, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !5152, !noalias !5155
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %16 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %17, align 1, !nonnull !568
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %19 = bitcast [3 x i16]** %18 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %19, align 1, !nonnull !568
  %20 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %21 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %20, align 1, !invariant.load !568, !nonnull !568
  br i1 %16, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %22 = call zeroext addrspace(1) i1 %21({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %23 = call zeroext addrspace(1) i1 %21({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %23, %bb3.i.i.i ], [ %22, %bb2.i.i.i ]
  %24 = zext i1 %.0.i.i to i8
  store i8 %24, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %25 = phi i8 [ %24, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %26 = icmp ne i8 %25, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %26
}

; <core::str::Bytes as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN53_$LT$core..str..Bytes$u20$as$u20$core..fmt..Debug$GT$3fmt17h0ad9a04fef7bbcb1E"({ i8*, i8* }* noalias readonly align 1 dereferenceable(4) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_13 = alloca { i8*, i8* }*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !5158, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !5158, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !5158, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19204 to [0 x i8]*), i16 5), !noalias !5167
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !5167, !noalias !5168
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !5167, !noalias !5168
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !5167, !noalias !5168
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !5167, !noalias !5168
  %12 = bitcast { i8*, i8* }** %_13 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store { i8*, i8* }* %self, { i8*, i8* }** %_13, align 1
  %_10.0 = bitcast { i8*, i8* }** %_13 to {}*
; call core::fmt::builders::DebugTuple::field
  %_8 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_10.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({ i8*, i8* }**) addrspace(1)*, i16, i16, i1 ({ i8*, i8* }**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1v to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %13 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %13, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %14 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %14, align 1, !alias.scope !5169, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !5172, !noalias !5169
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %15 = icmp eq i32 %_2.i.i.i.i.i, 0
  %16 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %15, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %16, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %17, align 1, !noalias !5175, !nonnull !568
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %16, i16 0, i32 11, i32 1
  %19 = bitcast [3 x i16]** %18 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %19, align 1, !noalias !5175, !nonnull !568
  %20 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %21 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %20, align 1, !invariant.load !568, !noalias !5175, !nonnull !568
  %22 = call zeroext addrspace(1) i1 %21({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %22, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %23 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %23, align 1, !noalias !5178, !nonnull !568
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %25 = bitcast [3 x i16]** %24 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %25, align 1, !noalias !5178, !nonnull !568
  %26 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %27 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %26, align 1, !invariant.load !568, !noalias !5178, !nonnull !568
  %28 = call zeroext addrspace(1) i1 %27({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %28 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %29 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %30 = icmp ne i8 %29, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %30
}

; <core::str::Split<P> as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN62_$LT$core..str..Split$LT$P$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h5dfd6981488d067bE"(%"str::Split<str::IsWhitespace>"* noalias readonly align 1 dereferenceable(16) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_6 = alloca %"fmt::builders::DebugTuple", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %_6, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !5181, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !5181, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !5181, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19205 to [0 x i8]*), i16 5), !noalias !5190
  %7 = bitcast %"fmt::builders::DebugTuple"* %_6 to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !5190, !noalias !5191
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %_6, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !5190, !noalias !5191
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %_6, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !5190, !noalias !5191
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %_6, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !5190, !noalias !5191
  %_10.0 = bitcast %"str::Split<str::IsWhitespace>"* %self to {}*
; call core::fmt::builders::DebugTuple::field
  %_4 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %_6, {}* nonnull align 1 %_10.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"str::SplitInternal<str::IsWhitespace>"*) addrspace(1)*, i16, i16, i1 (%"str::SplitInternal<str::IsWhitespace>"*, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1w to [3 x i16]*))
  %12 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %_4, i16 0, i32 5
  %_3.i = load i16, i16* %12, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.phi.trans.insert.i = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %_4, i16 0, i32 3
  %.pre.i = load i8, i8* %.phi.trans.insert.i, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp eq i16 %_3.i, 1
  %13 = bitcast %"fmt::builders::DebugTuple"* %_4 to %"fmt::Formatter"**
  br i1 %_5.i.i.i, label %bb7.i.i.i, label %bb20.i.i.i

bb3.i.i.i:                                        ; preds = %bb7.i.i.i
  %14 = bitcast %"fmt::builders::DebugTuple"* %_4 to i32**
  %_21.i.i.i.i = load i32*, i32** %14, align 1, !alias.scope !5192, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !5195, !noalias !5192
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %15 = icmp eq i32 %_2.i.i.i.i.i, 0
  %16 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %15, label %bb11.i.i.i, label %bb20.i.i.i

bb7.i.i.i:                                        ; preds = %bb3.i.i
  %17 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %_4, i16 0, i32 7
  %18 = load i8, i8* %17, align 1, !range !87
  %_7.i.i.i = icmp eq i8 %18, 0
  br i1 %_7.i.i.i, label %bb20.i.i.i, label %bb3.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %16, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %19, align 1, !noalias !5198, !nonnull !568
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %16, i16 0, i32 11, i32 1
  %21 = bitcast [3 x i16]** %20 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %21, align 1, !noalias !5198, !nonnull !568
  %22 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %23 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %22, align 1, !invariant.load !568, !noalias !5198, !nonnull !568
  %24 = call zeroext addrspace(1) i1 %23({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %24, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb11.i.i.i, %bb7.i.i.i, %bb3.i.i.i, %bb3.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %13, align 1, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %25, align 1, !noalias !5201, !nonnull !568
  %26 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %27 = bitcast [3 x i16]** %26 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %27, align 1, !noalias !5201, !nonnull !568
  %28 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %29 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %28, align 1, !invariant.load !568, !noalias !5201, !nonnull !568
  %30 = call zeroext addrspace(1) i1 %29({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %30 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %.phi.trans.insert.i, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %31 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %32 = icmp ne i8 %31, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %32
}

; <core::str::SplitTerminator<P> as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define internal zeroext i1 @"_ZN72_$LT$core..str..SplitTerminator$LT$P$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17he4b1f96ce98ac636E"(%"str::SplitTerminator<char>"* noalias readonly align 1 dereferenceable(24) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_6 = alloca %"fmt::builders::DebugTuple", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %_6, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !5204, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !5204, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !5204, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [15 x i8] }>* @alloc19206 to [0 x i8]*), i16 15), !noalias !5213
  %7 = bitcast %"fmt::builders::DebugTuple"* %_6 to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !5213, !noalias !5214
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %_6, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !5213, !noalias !5214
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %_6, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !5213, !noalias !5214
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %_6, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !5213, !noalias !5214
  %_10.0 = bitcast %"str::SplitTerminator<char>"* %self to {}*
; call core::fmt::builders::DebugTuple::field
  %_4 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %_6, {}* nonnull align 1 %_10.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"str::SplitInternal<char>"*) addrspace(1)*, i16, i16, i1 (%"str::SplitInternal<char>"*, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1x to [3 x i16]*))
  %12 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %_4, i16 0, i32 5
  %_3.i = load i16, i16* %12, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.phi.trans.insert.i = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %_4, i16 0, i32 3
  %.pre.i = load i8, i8* %.phi.trans.insert.i, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp eq i16 %_3.i, 1
  %13 = bitcast %"fmt::builders::DebugTuple"* %_4 to %"fmt::Formatter"**
  br i1 %_5.i.i.i, label %bb7.i.i.i, label %bb20.i.i.i

bb3.i.i.i:                                        ; preds = %bb7.i.i.i
  %14 = bitcast %"fmt::builders::DebugTuple"* %_4 to i32**
  %_21.i.i.i.i = load i32*, i32** %14, align 1, !alias.scope !5215, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !5218, !noalias !5215
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %15 = icmp eq i32 %_2.i.i.i.i.i, 0
  %16 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %15, label %bb11.i.i.i, label %bb20.i.i.i

bb7.i.i.i:                                        ; preds = %bb3.i.i
  %17 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %_4, i16 0, i32 7
  %18 = load i8, i8* %17, align 1, !range !87
  %_7.i.i.i = icmp eq i8 %18, 0
  br i1 %_7.i.i.i, label %bb20.i.i.i, label %bb3.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %16, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %19, align 1, !noalias !5221, !nonnull !568
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %16, i16 0, i32 11, i32 1
  %21 = bitcast [3 x i16]** %20 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %21, align 1, !noalias !5221, !nonnull !568
  %22 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %23 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %22, align 1, !invariant.load !568, !noalias !5221, !nonnull !568
  %24 = call zeroext addrspace(1) i1 %23({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %24, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb11.i.i.i, %bb7.i.i.i, %bb3.i.i.i, %bb3.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %13, align 1, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %25, align 1, !noalias !5224, !nonnull !568
  %26 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %27 = bitcast [3 x i16]** %26 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %27, align 1, !noalias !5224, !nonnull !568
  %28 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %29 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %28, align 1, !invariant.load !568, !noalias !5224, !nonnull !568
  %30 = call zeroext addrspace(1) i1 %29({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %30 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %.phi.trans.insert.i, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %31 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %32 = icmp ne i8 %31, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %32
}

; <core::str::Lines as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN53_$LT$core..str..Lines$u20$as$u20$core..fmt..Debug$GT$3fmt17h4275b8cc23cfd8d9E"(%"str::Lines"* noalias readonly align 1 dereferenceable(24) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_13 = alloca %"iter::adapters::Map<str::SplitTerminator<char>, str::LinesAnyMap>"*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !5227, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !5227, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !5227, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19207 to [0 x i8]*), i16 5), !noalias !5236
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !5236, !noalias !5237
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !5236, !noalias !5237
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !5236, !noalias !5237
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !5236, !noalias !5237
  %12 = bitcast %"iter::adapters::Map<str::SplitTerminator<char>, str::LinesAnyMap>"** %_13 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast %"iter::adapters::Map<str::SplitTerminator<char>, str::LinesAnyMap>"** %_13 to %"str::Lines"**
  store %"str::Lines"* %self, %"str::Lines"** %13, align 1
  %_10.0 = bitcast %"iter::adapters::Map<str::SplitTerminator<char>, str::LinesAnyMap>"** %_13 to {}*
; call core::fmt::builders::DebugTuple::field
  %_8 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_10.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"iter::adapters::Map<str::SplitTerminator<char>, str::LinesAnyMap>"**) addrspace(1)*, i16, i16, i1 (%"iter::adapters::Map<str::SplitTerminator<char>, str::LinesAnyMap>"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1y to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %14 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %14, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %15 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %15, align 1, !alias.scope !5238, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !5241, !noalias !5238
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %16 = icmp eq i32 %_2.i.i.i.i.i, 0
  %17 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %16, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %18, align 1, !noalias !5244, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !noalias !5244, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !noalias !5244, !nonnull !568
  %23 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %23, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %24, align 1, !noalias !5247, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %26, align 1, !noalias !5247, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %28 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !5247, !nonnull !568
  %29 = call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %29 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %30 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %31 = icmp ne i8 %30, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %31
}

; <core::str::LinesAny as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN56_$LT$core..str..LinesAny$u20$as$u20$core..fmt..Debug$GT$3fmt17hffd649cffc4553f0E"(%"str::LinesAny"* noalias readonly align 1 dereferenceable(24) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_13 = alloca %"str::Lines"*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !5250, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !5250, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !5250, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [8 x i8] }>* @alloc19208 to [0 x i8]*), i16 8), !noalias !5259
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !5259, !noalias !5260
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !5259, !noalias !5260
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !5259, !noalias !5260
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !5259, !noalias !5260
  %12 = bitcast %"str::Lines"** %_13 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast %"str::Lines"** %_13 to %"str::LinesAny"**
  store %"str::LinesAny"* %self, %"str::LinesAny"** %13, align 1
  %_10.0 = bitcast %"str::Lines"** %_13 to {}*
; call core::fmt::builders::DebugTuple::field
  %_8 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_10.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"str::Lines"**) addrspace(1)*, i16, i16, i1 (%"str::Lines"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1z to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %14 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %14, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %15 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %15, align 1, !alias.scope !5261, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !5264, !noalias !5261
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %16 = icmp eq i32 %_2.i.i.i.i.i, 0
  %17 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %16, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %18, align 1, !noalias !5267, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !noalias !5267, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !noalias !5267, !nonnull !568
  %23 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %23, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %24, align 1, !noalias !5270, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %26, align 1, !noalias !5270, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %28 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !5270, !nonnull !568
  %29 = call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %29 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %30 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %31 = icmp ne i8 %30, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %31
}

; <core::str::SplitWhitespace as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN63_$LT$core..str..SplitWhitespace$u20$as$u20$core..fmt..Debug$GT$3fmt17h23b937b284cbb009E"(%"str::SplitWhitespace"* noalias readonly align 1 dereferenceable(16) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_15 = alloca %"iter::adapters::Filter<str::Split<str::IsWhitespace>, str::IsNotEmpty>"*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !5273, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !5273, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !5273, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [15 x i8] }>* @alloc19209 to [0 x i8]*), i16 15), !noalias !5282
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !5282, !noalias !5283
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !5282, !noalias !5283
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !5282, !noalias !5283
  %11 = bitcast %"iter::adapters::Filter<str::Split<str::IsWhitespace>, str::IsNotEmpty>"** %_15 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  %12 = bitcast %"iter::adapters::Filter<str::Split<str::IsWhitespace>, str::IsNotEmpty>"** %_15 to %"str::SplitWhitespace"**
  store %"str::SplitWhitespace"* %self, %"str::SplitWhitespace"** %12, align 1
  %_12.0 = bitcast %"iter::adapters::Filter<str::Split<str::IsWhitespace>, str::IsNotEmpty>"** %_15 to {}*
; call core::fmt::builders::DebugStruct::field
  %_8 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19218 to [0 x i8]*), i16 5, {}* nonnull align 1 %_12.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"iter::adapters::Filter<str::Split<str::IsWhitespace>, str::IsNotEmpty>"**) addrspace(1)*, i16, i16, i1 (%"iter::adapters::Filter<str::Split<str::IsWhitespace>, str::IsNotEmpty>"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1A to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %13 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %13, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %14 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %14, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !5284, !noalias !5287
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %15 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %16, align 1, !nonnull !568
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %18 = bitcast [3 x i16]** %17 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %20 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %19, align 1, !invariant.load !568, !nonnull !568
  br i1 %15, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %21 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %22 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %22, %bb3.i.i.i ], [ %21, %bb2.i.i.i ]
  %23 = zext i1 %.0.i.i to i8
  store i8 %23, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %24 = phi i8 [ %23, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %25 = icmp ne i8 %24, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %25
}

; <core::str::SplitAsciiWhitespace as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN68_$LT$core..str..SplitAsciiWhitespace$u20$as$u20$core..fmt..Debug$GT$3fmt17he48efe1f303b9705E"(%"str::SplitAsciiWhitespace"* noalias readonly align 1 dereferenceable(5) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_15 = alloca %"iter::adapters::Map<iter::adapters::Filter<slice::Split<u8, str::IsAsciiWhitespace>, str::BytesIsNotEmpty>, str::UnsafeBytesToStr>"*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !5290, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !5290, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !5290, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [20 x i8] }>* @alloc19211 to [0 x i8]*), i16 20), !noalias !5299
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !5299, !noalias !5300
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !5299, !noalias !5300
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !5299, !noalias !5300
  %11 = bitcast %"iter::adapters::Map<iter::adapters::Filter<slice::Split<u8, str::IsAsciiWhitespace>, str::BytesIsNotEmpty>, str::UnsafeBytesToStr>"** %_15 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  %12 = bitcast %"iter::adapters::Map<iter::adapters::Filter<slice::Split<u8, str::IsAsciiWhitespace>, str::BytesIsNotEmpty>, str::UnsafeBytesToStr>"** %_15 to %"str::SplitAsciiWhitespace"**
  store %"str::SplitAsciiWhitespace"* %self, %"str::SplitAsciiWhitespace"** %12, align 1
  %_12.0 = bitcast %"iter::adapters::Map<iter::adapters::Filter<slice::Split<u8, str::IsAsciiWhitespace>, str::BytesIsNotEmpty>, str::UnsafeBytesToStr>"** %_15 to {}*
; call core::fmt::builders::DebugStruct::field
  %_8 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19218 to [0 x i8]*), i16 5, {}* nonnull align 1 %_12.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"iter::adapters::Map<iter::adapters::Filter<slice::Split<u8, str::IsAsciiWhitespace>, str::BytesIsNotEmpty>, str::UnsafeBytesToStr>"**) addrspace(1)*, i16, i16, i1 (%"iter::adapters::Map<iter::adapters::Filter<slice::Split<u8, str::IsAsciiWhitespace>, str::BytesIsNotEmpty>, str::UnsafeBytesToStr>"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1B to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %13 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %13, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %14 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %14, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !5301, !noalias !5304
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %15 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %16, align 1, !nonnull !568
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %18 = bitcast [3 x i16]** %17 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %20 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %19, align 1, !invariant.load !568, !nonnull !568
  br i1 %15, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %21 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %22 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %22, %bb3.i.i.i ], [ %21, %bb2.i.i.i ]
  %23 = zext i1 %.0.i.i to i8
  store i8 %23, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %24 = phi i8 [ %23, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %25 = icmp ne i8 %24, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %25
}

; <core::str::EscapeDebug as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN59_$LT$core..str..EscapeDebug$u20$as$u20$core..fmt..Debug$GT$3fmt17hb63f0d8c05210e8cE"(%"str::EscapeDebug"* noalias readonly align 1 dereferenceable(44) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_15 = alloca %"iter::adapters::chain::Chain<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>, iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !5307, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !5307, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !5307, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [11 x i8] }>* @alloc19213 to [0 x i8]*), i16 11), !noalias !5316
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !5316, !noalias !5317
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !5316, !noalias !5317
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !5316, !noalias !5317
  %11 = bitcast %"iter::adapters::chain::Chain<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>, iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"** %_15 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  %12 = bitcast %"iter::adapters::chain::Chain<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>, iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"** %_15 to %"str::EscapeDebug"**
  store %"str::EscapeDebug"* %self, %"str::EscapeDebug"** %12, align 1
  %_12.0 = bitcast %"iter::adapters::chain::Chain<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>, iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"** %_15 to {}*
; call core::fmt::builders::DebugStruct::field
  %_8 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19218 to [0 x i8]*), i16 5, {}* nonnull align 1 %_12.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"iter::adapters::chain::Chain<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>, iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"**) addrspace(1)*, i16, i16, i1 (%"iter::adapters::chain::Chain<iter::adapters::flatten::Flatten<option::IntoIter<char::EscapeDebug>>, iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1C to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %13 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %13, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %14 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %14, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !5318, !noalias !5321
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %15 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %16, align 1, !nonnull !568
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %18 = bitcast [3 x i16]** %17 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %20 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %19, align 1, !invariant.load !568, !nonnull !568
  br i1 %15, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %21 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %22 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %22, %bb3.i.i.i ], [ %21, %bb2.i.i.i ]
  %23 = zext i1 %.0.i.i to i8
  store i8 %23, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %24 = phi i8 [ %23, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %25 = icmp ne i8 %24, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %25
}

; <core::str::EscapeDefault as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN61_$LT$core..str..EscapeDefault$u20$as$u20$core..fmt..Debug$GT$3fmt17hf45666f4b4017280E"(%"str::EscapeDefault"* noalias readonly align 1 dereferenceable(20) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_15 = alloca %"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDefault, str::CharEscapeDefault>"*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !5324, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !5324, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !5324, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [13 x i8] }>* @alloc19215 to [0 x i8]*), i16 13), !noalias !5333
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !5333, !noalias !5334
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !5333, !noalias !5334
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !5333, !noalias !5334
  %11 = bitcast %"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDefault, str::CharEscapeDefault>"** %_15 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  %12 = bitcast %"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDefault, str::CharEscapeDefault>"** %_15 to %"str::EscapeDefault"**
  store %"str::EscapeDefault"* %self, %"str::EscapeDefault"** %12, align 1
  %_12.0 = bitcast %"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDefault, str::CharEscapeDefault>"** %_15 to {}*
; call core::fmt::builders::DebugStruct::field
  %_8 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19218 to [0 x i8]*), i16 5, {}* nonnull align 1 %_12.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDefault, str::CharEscapeDefault>"**) addrspace(1)*, i16, i16, i1 (%"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDefault, str::CharEscapeDefault>"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1D to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %13 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %13, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %14 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %14, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !5335, !noalias !5338
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %15 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %16, align 1, !nonnull !568
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %18 = bitcast [3 x i16]** %17 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %20 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %19, align 1, !invariant.load !568, !nonnull !568
  br i1 %15, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %21 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %22 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %22, %bb3.i.i.i ], [ %21, %bb2.i.i.i ]
  %23 = zext i1 %.0.i.i to i8
  store i8 %23, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %24 = phi i8 [ %23, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %25 = icmp ne i8 %24, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %25
}

; <core::str::EscapeUnicode as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN61_$LT$core..str..EscapeUnicode$u20$as$u20$core..fmt..Debug$GT$3fmt17h4dd3bc54f14d9bcdE"(%"str::EscapeUnicode"* noalias readonly align 1 dereferenceable(18) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_15 = alloca %"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeUnicode, str::CharEscapeUnicode>"*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !5341, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !5341, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !5341, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [13 x i8] }>* @alloc19217 to [0 x i8]*), i16 13), !noalias !5350
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !5350, !noalias !5351
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !5350, !noalias !5351
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !5350, !noalias !5351
  %11 = bitcast %"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeUnicode, str::CharEscapeUnicode>"** %_15 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  %12 = bitcast %"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeUnicode, str::CharEscapeUnicode>"** %_15 to %"str::EscapeUnicode"**
  store %"str::EscapeUnicode"* %self, %"str::EscapeUnicode"** %12, align 1
  %_12.0 = bitcast %"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeUnicode, str::CharEscapeUnicode>"** %_15 to {}*
; call core::fmt::builders::DebugStruct::field
  %_8 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19218 to [0 x i8]*), i16 5, {}* nonnull align 1 %_12.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeUnicode, str::CharEscapeUnicode>"**) addrspace(1)*, i16, i16, i1 (%"iter::adapters::flatten::FlatMap<str::Chars, char::EscapeUnicode, str::CharEscapeUnicode>"**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1E to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %13 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %13, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %14 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %14, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !5352, !noalias !5355
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %15 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %16, align 1, !nonnull !568
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %18 = bitcast [3 x i16]** %17 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %20 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %19, align 1, !invariant.load !568, !nonnull !568
  br i1 %15, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %21 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %22 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %22, %bb3.i.i.i ], [ %21, %bb2.i.i.i ]
  %23 = zext i1 %.0.i.i to i8
  store i8 %23, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %24 = phi i8 [ %23, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %25 = icmp ne i8 %24, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %25
}

; <core::str::EscapeDebug as core::fmt::Display>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN61_$LT$core..str..EscapeDebug$u20$as$u20$core..fmt..Display$GT$3fmt17h53740db34960bae2E"(%"str::EscapeDebug"* noalias readonly align 1 dereferenceable(44) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %0) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %1 = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %self, i16 0, i32 1, i32 3
  %2 = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %self, i16 0, i32 1, i32 1, i32 1
  %3 = load i8, i8* %2, align 1, !range !689, !alias.scope !5358, !noalias !5365
  %4 = icmp eq i8 %3, 5
  br i1 %4, label %"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17ha1e0a4b9f33eaf30E.exit.i.i", label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %start
  %5 = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %self, i16 0, i32 0, i16 0
  %6 = load i8, i8* %5, align 1, !range !689, !alias.scope !5369, !noalias !5378
  switch i8 %6, label %bb3.i.i.i.i.i.i.i.i.i.i [
    i8 5, label %"_ZN80_$LT$core..iter..adapters..fuse..Fuse$LT$I$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h13362029e6d24a93E.exit.i.i.i.i.i"
    i8 4, label %"_ZN70_$LT$core..option..IntoIter$LT$A$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h5866fad9eefae58dE.exit.i.i.i.i.i.i.i"
  ]

bb3.i.i.i.i.i.i.i.i.i.i:                          ; preds = %bb3.i.i.i
  %trunc.i.i.i.i.i.i.i.i.i.i.i.i.i = trunc i8 %6 to i2
  switch i2 %trunc.i.i.i.i.i.i.i.i.i.i.i.i.i, label %bb2.i.i.i.i.i.i.i.i.i.i.i.i.i [
    i2 0, label %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i.i.i.i.i.i.i.i.i.i"
    i2 1, label %bb4.i.i.i.i.i.i.i.i.i.i.i.i.i
    i2 -2, label %bb6.i.i.i.i.i.i.i.i.i.i.i.i.i
    i2 -1, label %bb1.i.i.i.i.i.i.i.i.i.i.i.i.i
  ]

bb1.i.i.i.i.i.i.i.i.i.i.i.i.i:                    ; preds = %bb3.i.i.i.i.i.i.i.i.i.i
  %7 = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %self, i16 0, i32 1, i32 1, i32 0, i16 1
  %__self_0_0.i.i.i.i.i.i.i.i.i.i.i.i.i.i = bitcast i8* %7 to i32*
  %8 = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %self, i16 0, i32 1, i32 1, i32 0, i16 5
  %9 = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %self, i16 0, i32 1, i32 1, i32 0, i16 6
  %10 = bitcast i8* %9 to i16*
  %__self_0_0.val.i.i.i.i.i.i.i.i.i.i.i.i.i.i = load i32, i32* %__self_0_0.i.i.i.i.i.i.i.i.i.i.i.i.i.i, align 1, !alias.scope !5383, !noalias !5398
  %__self_0_1.val.i.i.i.i.i.i.i.i.i.i.i.i.i.i = load i8, i8* %8, align 1, !alias.scope !5383, !noalias !5398
  %trunc.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i = trunc i8 %__self_0_1.val.i.i.i.i.i.i.i.i.i.i.i.i.i.i to i3
  %switch.tableidx = xor i3 %trunc.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i, -4
  %switch.maskindex = zext i3 %switch.tableidx to i8
  %switch.shifted = lshr i8 -13, %switch.maskindex
  %11 = and i8 %switch.shifted, 1
  %switch.lobit = icmp ne i8 %11, 0
  call addrspace(1) void @llvm.assume(i1 %switch.lobit)
  %12 = zext i3 %switch.tableidx to i16
  %switch.gep = getelementptr inbounds [8 x i8], [8 x i8]* @"switch.table._ZN63_$LT$core..str..EscapeUnicode$u20$as$u20$core..fmt..Display$GT$3fmt17hcefaf5179aadfe2dE.195", i16 0, i16 %12
  %switch.load = load i8, i8* %switch.gep, align 1
  %__self_0_2.val.i.i.i.i.i.i.i.i.i.i.i.i.i.i = load i16, i16* %10, align 1, !alias.scope !5383, !noalias !5398
  %phitmp.i.i.i.i.i.i.i.i.i.i.i.i = zext i16 %__self_0_2.val.i.i.i.i.i.i.i.i.i.i.i.i.i.i to i64
  %phitmp3.i.i.i.i.i.i.i.i.i.i.i.i = shl nuw i64 %phitmp.i.i.i.i.i.i.i.i.i.i.i.i, 48
  br label %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i.i.i.i.i.i.i.i.i.i"

bb2.i.i.i.i.i.i.i.i.i.i.i.i.i:                    ; preds = %bb3.i.i.i.i.i.i.i.i.i.i
  unreachable

bb4.i.i.i.i.i.i.i.i.i.i.i.i.i:                    ; preds = %bb3.i.i.i.i.i.i.i.i.i.i
  %13 = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %self, i16 0, i32 1, i32 1, i32 0, i16 1
  %14 = bitcast i8* %13 to i32*
  %.val.i.i.i.i.i.i.i.i.i.i.i.i.i = load i32, i32* %14, align 1, !alias.scope !5406, !noalias !5407
  br label %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i.i.i.i.i.i.i.i.i.i"

bb6.i.i.i.i.i.i.i.i.i.i.i.i.i:                    ; preds = %bb3.i.i.i.i.i.i.i.i.i.i
  %15 = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %self, i16 0, i32 1, i32 1, i32 0, i16 1
  %16 = bitcast i8* %15 to i32*
  %.val7.i.i.i.i.i.i.i.i.i.i.i.i.i = load i32, i32* %16, align 1, !alias.scope !5406, !noalias !5407
  br label %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i.i.i.i.i.i.i.i.i.i"

"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i.i.i.i.i.i.i.i.i.i": ; preds = %bb6.i.i.i.i.i.i.i.i.i.i.i.i.i, %bb4.i.i.i.i.i.i.i.i.i.i.i.i.i, %bb1.i.i.i.i.i.i.i.i.i.i.i.i.i, %bb3.i.i.i.i.i.i.i.i.i.i
  %_3.sroa.11.0.i.i.i.i.i.i.i.i.i.i.i.i = phi i64 [ %phitmp3.i.i.i.i.i.i.i.i.i.i.i.i, %bb1.i.i.i.i.i.i.i.i.i.i.i.i.i ], [ 0, %bb6.i.i.i.i.i.i.i.i.i.i.i.i.i ], [ 0, %bb4.i.i.i.i.i.i.i.i.i.i.i.i.i ], [ 0, %bb3.i.i.i.i.i.i.i.i.i.i ]
  %_3.sroa.10.0.i.i.i.i.i.i.i.i.i.i.i.i = phi i8 [ %switch.load, %bb1.i.i.i.i.i.i.i.i.i.i.i.i.i ], [ undef, %bb6.i.i.i.i.i.i.i.i.i.i.i.i.i ], [ undef, %bb4.i.i.i.i.i.i.i.i.i.i.i.i.i ], [ undef, %bb3.i.i.i.i.i.i.i.i.i.i ]
  %_3.sroa.7.0.i.i.i.i.i.i.i.i.i.i.i.i = phi i32 [ %__self_0_0.val.i.i.i.i.i.i.i.i.i.i.i.i.i.i, %bb1.i.i.i.i.i.i.i.i.i.i.i.i.i ], [ %.val7.i.i.i.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.i.i.i.i.i.i.i.i.i.i ], [ %.val.i.i.i.i.i.i.i.i.i.i.i.i.i, %bb4.i.i.i.i.i.i.i.i.i.i.i.i.i ], [ undef, %bb3.i.i.i.i.i.i.i.i.i.i ]
  %_3.sroa.0.0.i.i.i.i.i.i.i.i.i.i.i.i = phi i64 [ 3, %bb1.i.i.i.i.i.i.i.i.i.i.i.i.i ], [ 2, %bb6.i.i.i.i.i.i.i.i.i.i.i.i.i ], [ 1, %bb4.i.i.i.i.i.i.i.i.i.i.i.i.i ], [ 0, %bb3.i.i.i.i.i.i.i.i.i.i ]
  %_3.sroa.10.0.insert.ext.i.i.i.i.i.i.i.i.i.i.i.i = zext i8 %_3.sroa.10.0.i.i.i.i.i.i.i.i.i.i.i.i to i64
  %_3.sroa.10.0.insert.shift.i.i.i.i.i.i.i.i.i.i.i.i = shl nuw nsw i64 %_3.sroa.10.0.insert.ext.i.i.i.i.i.i.i.i.i.i.i.i, 40
  %_3.sroa.10.0.insert.insert.i.i.i.i.i.i.i.i.i.i.i.i = or i64 %_3.sroa.10.0.insert.shift.i.i.i.i.i.i.i.i.i.i.i.i, %_3.sroa.11.0.i.i.i.i.i.i.i.i.i.i.i.i
  %_3.sroa.7.0.insert.ext.i.i.i.i.i.i.i.i.i.i.i.i = zext i32 %_3.sroa.7.0.i.i.i.i.i.i.i.i.i.i.i.i to i64
  %_3.sroa.7.0.insert.shift.i.i.i.i.i.i.i.i.i.i.i.i = shl nuw nsw i64 %_3.sroa.7.0.insert.ext.i.i.i.i.i.i.i.i.i.i.i.i, 8
  %_3.sroa.0.0.insert.insert.i.i.i.i.i.i.i.i.i.i.i.i = or i64 %_3.sroa.10.0.insert.insert.i.i.i.i.i.i.i.i.i.i.i.i, %_3.sroa.7.0.insert.shift.i.i.i.i.i.i.i.i.i.i.i.i
  br label %"_ZN70_$LT$core..option..IntoIter$LT$A$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h5866fad9eefae58dE.exit.i.i.i.i.i.i.i"

"_ZN70_$LT$core..option..IntoIter$LT$A$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h5866fad9eefae58dE.exit.i.i.i.i.i.i.i": ; preds = %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i.i.i.i.i.i.i.i.i.i", %bb3.i.i.i
  %_3.sroa.5.sroa.0.0.i.i.i.i.i.i.i.i.i = phi i64 [ %_3.sroa.0.0.insert.insert.i.i.i.i.i.i.i.i.i.i.i.i, %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i.i.i.i.i.i.i.i.i.i" ], [ 0, %bb3.i.i.i ]
  %_3.sroa.0.0.i.i.i.i.i.i.i.i.i = phi i64 [ %_3.sroa.0.0.i.i.i.i.i.i.i.i.i.i.i.i, %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i.i.i.i.i.i.i.i.i.i" ], [ 4, %bb3.i.i.i ]
  %_3.sroa.0.0.insert.insert.i.i.i.i.i.i.i.i.i = or i64 %_3.sroa.0.0.i.i.i.i.i.i.i.i.i, %_3.sroa.5.sroa.0.0.i.i.i.i.i.i.i.i.i
  %extract145 = lshr i64 %_3.sroa.5.sroa.0.0.i.i.i.i.i.i.i.i.i, 8
  %extract.t147 = trunc i64 %_3.sroa.0.0.insert.insert.i.i.i.i.i.i.i.i.i to i8
  %extract.t172 = trunc i64 %extract145 to i32
  %extract173179 = lshr i64 %_3.sroa.5.sroa.0.0.i.i.i.i.i.i.i.i.i, 40
  %extract.t174 = trunc i64 %extract173179 to i8
  %extract175177 = lshr i64 %_3.sroa.5.sroa.0.0.i.i.i.i.i.i.i.i.i, 48
  %extract.t176 = trunc i64 %extract175177 to i16
  br label %"_ZN80_$LT$core..iter..adapters..fuse..Fuse$LT$I$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h13362029e6d24a93E.exit.i.i.i.i.i"

"_ZN80_$LT$core..iter..adapters..fuse..Fuse$LT$I$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h13362029e6d24a93E.exit.i.i.i.i.i": ; preds = %"_ZN70_$LT$core..option..IntoIter$LT$A$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h5866fad9eefae58dE.exit.i.i.i.i.i.i.i", %bb3.i.i.i
  %_3.sroa.5.sroa.0.0.i.i.i.i.i.i.off8.off0 = phi i32 [ %extract.t172, %"_ZN70_$LT$core..option..IntoIter$LT$A$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h5866fad9eefae58dE.exit.i.i.i.i.i.i.i" ], [ 0, %bb3.i.i.i ]
  %_3.sroa.5.sroa.0.0.i.i.i.i.i.i.off8.off32 = phi i8 [ %extract.t174, %"_ZN70_$LT$core..option..IntoIter$LT$A$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h5866fad9eefae58dE.exit.i.i.i.i.i.i.i" ], [ 0, %bb3.i.i.i ]
  %_3.sroa.5.sroa.0.0.i.i.i.i.i.i.off8.off40 = phi i16 [ %extract.t176, %"_ZN70_$LT$core..option..IntoIter$LT$A$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h5866fad9eefae58dE.exit.i.i.i.i.i.i.i" ], [ 0, %bb3.i.i.i ]
  %_3.sroa.0.0.i.i.i.i.i.i.off0 = phi i8 [ %extract.t147, %"_ZN70_$LT$core..option..IntoIter$LT$A$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h5866fad9eefae58dE.exit.i.i.i.i.i.i.i" ], [ %6, %bb3.i.i.i ]
  %17 = icmp eq i8 %3, 4
  br i1 %17, label %bb3.i.i.i.i.i, label %bb3.i8.i.i.i.i.i

bb3.i8.i.i.i.i.i:                                 ; preds = %"_ZN80_$LT$core..iter..adapters..fuse..Fuse$LT$I$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h13362029e6d24a93E.exit.i.i.i.i.i"
  %trunc.i.i.i.i7.i.i.i.i.i = trunc i8 %3 to i2
  switch i2 %trunc.i.i.i.i7.i.i.i.i.i, label %bb2.i.i.i.i25.i.i.i.i.i [
    i2 0, label %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i41.i.i.i.i.i"
    i2 1, label %bb4.i.i.i.i27.i.i.i.i.i
    i2 -2, label %bb6.i.i.i.i29.i.i.i.i.i
    i2 -1, label %bb1.i.i.i.i13.i.i.i.i.i
  ]

bb1.i.i.i.i13.i.i.i.i.i:                          ; preds = %bb3.i8.i.i.i.i.i
  %18 = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %self, i16 0, i32 1, i32 1, i32 2
  %__self_0_0.i.i.i.i.i9.i.i.i.i.i = bitcast [15 x i8]* %18 to i32*
  %19 = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %self, i16 0, i32 1, i32 1, i32 2, i16 4
  %20 = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %self, i16 0, i32 1, i32 1, i32 2, i16 5
  %21 = bitcast i8* %20 to i16*
  %__self_0_0.val.i.i.i.i.i10.i.i.i.i.i = load i32, i32* %__self_0_0.i.i.i.i.i9.i.i.i.i.i, align 1, !alias.scope !5408, !noalias !5419
  %__self_0_1.val.i.i.i.i.i11.i.i.i.i.i = load i8, i8* %19, align 1, !alias.scope !5408, !noalias !5419
  %trunc.i.i.i.i.i.i12.i.i.i.i.i = trunc i8 %__self_0_1.val.i.i.i.i.i11.i.i.i.i.i to i3
  %switch.tableidx238 = xor i3 %trunc.i.i.i.i.i.i12.i.i.i.i.i, -4
  %switch.maskindex239 = zext i3 %switch.tableidx238 to i8
  %switch.shifted240 = lshr i8 -13, %switch.maskindex239
  %22 = and i8 %switch.shifted240, 1
  %switch.lobit241 = icmp ne i8 %22, 0
  call addrspace(1) void @llvm.assume(i1 %switch.lobit241)
  %23 = zext i3 %switch.tableidx238 to i16
  %switch.gep243 = getelementptr inbounds [8 x i8], [8 x i8]* @"switch.table._ZN63_$LT$core..str..EscapeUnicode$u20$as$u20$core..fmt..Display$GT$3fmt17hcefaf5179aadfe2dE.195", i16 0, i16 %23
  %switch.load244 = load i8, i8* %switch.gep243, align 1
  %__self_0_2.val.i.i.i.i.i21.i.i.i.i.i = load i16, i16* %21, align 1, !alias.scope !5408, !noalias !5419
  %phitmp.i.i.i22.i.i.i.i.i = zext i16 %__self_0_2.val.i.i.i.i.i21.i.i.i.i.i to i64
  %phitmp3.i.i.i23.i.i.i.i.i = shl nuw i64 %phitmp.i.i.i22.i.i.i.i.i, 48
  br label %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i41.i.i.i.i.i"

bb2.i.i.i.i25.i.i.i.i.i:                          ; preds = %bb3.i8.i.i.i.i.i
  unreachable

bb4.i.i.i.i27.i.i.i.i.i:                          ; preds = %bb3.i8.i.i.i.i.i
  %24 = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %self, i16 0, i32 1, i32 1, i32 2
  %25 = bitcast [15 x i8]* %24 to i32*
  %.val.i.i.i.i26.i.i.i.i.i = load i32, i32* %25, align 1, !alias.scope !5425, !noalias !5426
  br label %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i41.i.i.i.i.i"

bb6.i.i.i.i29.i.i.i.i.i:                          ; preds = %bb3.i8.i.i.i.i.i
  %26 = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %self, i16 0, i32 1, i32 1, i32 2
  %27 = bitcast [15 x i8]* %26 to i32*
  %.val7.i.i.i.i28.i.i.i.i.i = load i32, i32* %27, align 1, !alias.scope !5425, !noalias !5426
  br label %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i41.i.i.i.i.i"

"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i41.i.i.i.i.i": ; preds = %bb6.i.i.i.i29.i.i.i.i.i, %bb4.i.i.i.i27.i.i.i.i.i, %bb1.i.i.i.i13.i.i.i.i.i, %bb3.i8.i.i.i.i.i
  %_3.sroa.11.0.i.i.i30.i.i.i.i.i = phi i64 [ %phitmp3.i.i.i23.i.i.i.i.i, %bb1.i.i.i.i13.i.i.i.i.i ], [ 0, %bb6.i.i.i.i29.i.i.i.i.i ], [ 0, %bb4.i.i.i.i27.i.i.i.i.i ], [ 0, %bb3.i8.i.i.i.i.i ]
  %_3.sroa.10.0.i.i.i31.i.i.i.i.i = phi i8 [ %switch.load244, %bb1.i.i.i.i13.i.i.i.i.i ], [ undef, %bb6.i.i.i.i29.i.i.i.i.i ], [ undef, %bb4.i.i.i.i27.i.i.i.i.i ], [ undef, %bb3.i8.i.i.i.i.i ]
  %_3.sroa.7.0.i.i.i32.i.i.i.i.i = phi i32 [ %__self_0_0.val.i.i.i.i.i10.i.i.i.i.i, %bb1.i.i.i.i13.i.i.i.i.i ], [ %.val7.i.i.i.i28.i.i.i.i.i, %bb6.i.i.i.i29.i.i.i.i.i ], [ %.val.i.i.i.i26.i.i.i.i.i, %bb4.i.i.i.i27.i.i.i.i.i ], [ undef, %bb3.i8.i.i.i.i.i ]
  %_3.sroa.0.0.i.i.i33.i.i.i.i.i = phi i64 [ 3, %bb1.i.i.i.i13.i.i.i.i.i ], [ 2, %bb6.i.i.i.i29.i.i.i.i.i ], [ 1, %bb4.i.i.i.i27.i.i.i.i.i ], [ 0, %bb3.i8.i.i.i.i.i ]
  %_3.sroa.10.0.insert.ext.i.i.i34.i.i.i.i.i = zext i8 %_3.sroa.10.0.i.i.i31.i.i.i.i.i to i64
  %_3.sroa.10.0.insert.shift.i.i.i35.i.i.i.i.i = shl nuw nsw i64 %_3.sroa.10.0.insert.ext.i.i.i34.i.i.i.i.i, 40
  %_3.sroa.10.0.insert.insert.i.i.i36.i.i.i.i.i = or i64 %_3.sroa.10.0.insert.shift.i.i.i35.i.i.i.i.i, %_3.sroa.11.0.i.i.i30.i.i.i.i.i
  %_3.sroa.7.0.insert.ext.i.i.i37.i.i.i.i.i = zext i32 %_3.sroa.7.0.i.i.i32.i.i.i.i.i to i64
  %_3.sroa.7.0.insert.shift.i.i.i38.i.i.i.i.i = shl nuw nsw i64 %_3.sroa.7.0.insert.ext.i.i.i37.i.i.i.i.i, 8
  %_3.sroa.0.0.insert.insert.i.i.i40.i.i.i.i.i = or i64 %_3.sroa.10.0.insert.insert.i.i.i36.i.i.i.i.i, %_3.sroa.7.0.insert.shift.i.i.i38.i.i.i.i.i
  br label %bb3.i.i.i.i.i

bb3.i.i.i.i.i:                                    ; preds = %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i41.i.i.i.i.i", %"_ZN80_$LT$core..iter..adapters..fuse..Fuse$LT$I$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h13362029e6d24a93E.exit.i.i.i.i.i"
  %_8.sroa.5.sroa.0.0.i.i.i.i.i = phi i64 [ %_3.sroa.0.0.insert.insert.i.i.i40.i.i.i.i.i, %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i41.i.i.i.i.i" ], [ 0, %"_ZN80_$LT$core..iter..adapters..fuse..Fuse$LT$I$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h13362029e6d24a93E.exit.i.i.i.i.i" ]
  %_8.sroa.0.0.i.i.i.i.i = phi i64 [ %_3.sroa.0.0.i.i.i33.i.i.i.i.i, %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i41.i.i.i.i.i" ], [ 4, %"_ZN80_$LT$core..iter..adapters..fuse..Fuse$LT$I$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h13362029e6d24a93E.exit.i.i.i.i.i" ]
  %28 = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %self, i16 0, i32 1, i32 1, i32 2, i16 7
  %29 = load i8, i8* %28, align 1, !range !632, !alias.scope !5427, !noalias !5430
  %30 = icmp eq i8 %29, 4
  br i1 %30, label %"_ZN86_$LT$core..iter..adapters..flatten..Flatten$LT$I$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h10affd5be41f2176E.exit.i.i.i", label %bb3.i.i.i.i.i.i

bb3.i.i.i.i.i.i:                                  ; preds = %bb3.i.i.i.i.i
  %trunc.i.i.i.i.i.i.i.i.i = trunc i8 %29 to i2
  switch i2 %trunc.i.i.i.i.i.i.i.i.i, label %bb2.i.i.i.i.i.i.i.i.i [
    i2 0, label %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i.i.i.i.i.i"
    i2 1, label %bb4.i.i.i.i.i.i.i.i.i
    i2 -2, label %bb6.i.i.i.i.i.i.i.i.i
    i2 -1, label %bb1.i.i.i.i.i.i.i.i.i
  ]

bb1.i.i.i.i.i.i.i.i.i:                            ; preds = %bb3.i.i.i.i.i.i
  %31 = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %self, i16 0, i32 1, i32 1, i32 2, i16 8
  %__self_0_0.i.i.i.i.i.i.i.i.i.i = bitcast i8* %31 to i32*
  %32 = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %self, i16 0, i32 1, i32 1, i32 2, i16 12
  %33 = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %self, i16 0, i32 1, i32 1, i32 2, i16 13
  %34 = bitcast i8* %33 to i16*
  %__self_0_0.val.i.i.i.i.i.i.i.i.i.i = load i32, i32* %__self_0_0.i.i.i.i.i.i.i.i.i.i, align 1, !alias.scope !5432, !noalias !5441
  %__self_0_1.val.i.i.i.i.i.i.i.i.i.i = load i8, i8* %32, align 1, !alias.scope !5432, !noalias !5441
  %trunc.i.i.i.i.i.i.i.i.i.i.i = trunc i8 %__self_0_1.val.i.i.i.i.i.i.i.i.i.i to i3
  %switch.tableidx245 = xor i3 %trunc.i.i.i.i.i.i.i.i.i.i.i, -4
  %switch.maskindex246 = zext i3 %switch.tableidx245 to i8
  %switch.shifted247 = lshr i8 -13, %switch.maskindex246
  %35 = and i8 %switch.shifted247, 1
  %switch.lobit248 = icmp ne i8 %35, 0
  call addrspace(1) void @llvm.assume(i1 %switch.lobit248)
  %36 = zext i3 %switch.tableidx245 to i16
  %switch.gep250 = getelementptr inbounds [8 x i8], [8 x i8]* @"switch.table._ZN63_$LT$core..str..EscapeUnicode$u20$as$u20$core..fmt..Display$GT$3fmt17hcefaf5179aadfe2dE.195", i16 0, i16 %36
  %switch.load251 = load i8, i8* %switch.gep250, align 1
  %__self_0_2.val.i.i.i.i.i.i.i.i.i.i = load i16, i16* %34, align 1, !alias.scope !5432, !noalias !5441
  %phitmp.i.i.i.i.i.i.i.i = zext i16 %__self_0_2.val.i.i.i.i.i.i.i.i.i.i to i64
  %phitmp3.i.i.i.i.i.i.i.i = shl nuw i64 %phitmp.i.i.i.i.i.i.i.i, 48
  br label %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i.i.i.i.i.i"

bb2.i.i.i.i.i.i.i.i.i:                            ; preds = %bb3.i.i.i.i.i.i
  unreachable

bb4.i.i.i.i.i.i.i.i.i:                            ; preds = %bb3.i.i.i.i.i.i
  %37 = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %self, i16 0, i32 1, i32 1, i32 2, i16 8
  %38 = bitcast i8* %37 to i32*
  %.val.i.i.i.i.i.i.i.i.i = load i32, i32* %38, align 1, !alias.scope !5446, !noalias !5447
  br label %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i.i.i.i.i.i"

bb6.i.i.i.i.i.i.i.i.i:                            ; preds = %bb3.i.i.i.i.i.i
  %39 = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %self, i16 0, i32 1, i32 1, i32 2, i16 8
  %40 = bitcast i8* %39 to i32*
  %.val7.i.i.i.i.i.i.i.i.i = load i32, i32* %40, align 1, !alias.scope !5446, !noalias !5447
  br label %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i.i.i.i.i.i"

"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i.i.i.i.i.i": ; preds = %bb6.i.i.i.i.i.i.i.i.i, %bb4.i.i.i.i.i.i.i.i.i, %bb1.i.i.i.i.i.i.i.i.i, %bb3.i.i.i.i.i.i
  %_3.sroa.11.0.i.i.i.i.i.i.i.i = phi i64 [ %phitmp3.i.i.i.i.i.i.i.i, %bb1.i.i.i.i.i.i.i.i.i ], [ 0, %bb6.i.i.i.i.i.i.i.i.i ], [ 0, %bb4.i.i.i.i.i.i.i.i.i ], [ 0, %bb3.i.i.i.i.i.i ]
  %_3.sroa.10.0.i.i.i.i.i.i.i.i = phi i8 [ %switch.load251, %bb1.i.i.i.i.i.i.i.i.i ], [ undef, %bb6.i.i.i.i.i.i.i.i.i ], [ undef, %bb4.i.i.i.i.i.i.i.i.i ], [ undef, %bb3.i.i.i.i.i.i ]
  %_3.sroa.7.0.i.i.i.i.i.i.i.i = phi i32 [ %__self_0_0.val.i.i.i.i.i.i.i.i.i.i, %bb1.i.i.i.i.i.i.i.i.i ], [ %.val7.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.i.i.i.i.i.i ], [ %.val.i.i.i.i.i.i.i.i.i, %bb4.i.i.i.i.i.i.i.i.i ], [ undef, %bb3.i.i.i.i.i.i ]
  %_3.sroa.0.0.i.i.i.i.i.i.i.i = phi i64 [ 3, %bb1.i.i.i.i.i.i.i.i.i ], [ 2, %bb6.i.i.i.i.i.i.i.i.i ], [ 1, %bb4.i.i.i.i.i.i.i.i.i ], [ 0, %bb3.i.i.i.i.i.i ]
  %_3.sroa.10.0.insert.ext.i.i.i.i.i.i.i.i = zext i8 %_3.sroa.10.0.i.i.i.i.i.i.i.i to i64
  %_3.sroa.10.0.insert.shift.i.i.i.i.i.i.i.i = shl nuw nsw i64 %_3.sroa.10.0.insert.ext.i.i.i.i.i.i.i.i, 40
  %_3.sroa.10.0.insert.insert.i.i.i.i.i.i.i.i = or i64 %_3.sroa.10.0.insert.shift.i.i.i.i.i.i.i.i, %_3.sroa.11.0.i.i.i.i.i.i.i.i
  %_3.sroa.7.0.insert.ext.i.i.i.i.i.i.i.i = zext i32 %_3.sroa.7.0.i.i.i.i.i.i.i.i to i64
  %_3.sroa.7.0.insert.shift.i.i.i.i.i.i.i.i = shl nuw nsw i64 %_3.sroa.7.0.insert.ext.i.i.i.i.i.i.i.i, 8
  %_3.sroa.0.0.insert.insert.i.i.i.i.i.i.i.i = or i64 %_3.sroa.10.0.insert.insert.i.i.i.i.i.i.i.i, %_3.sroa.7.0.insert.shift.i.i.i.i.i.i.i.i
  br label %"_ZN86_$LT$core..iter..adapters..flatten..Flatten$LT$I$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h10affd5be41f2176E.exit.i.i.i"

"_ZN86_$LT$core..iter..adapters..flatten..Flatten$LT$I$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h10affd5be41f2176E.exit.i.i.i": ; preds = %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i.i.i.i.i.i", %bb3.i.i.i.i.i
  %_11.sroa.0.0.i.i.i.i.i = phi i64 [ %_3.sroa.0.0.i.i.i.i.i.i.i.i, %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i.i.i.i.i.i" ], [ 4, %bb3.i.i.i.i.i ]
  %_11.sroa.5.sroa.0.0.i.i.i.i.i = phi i64 [ %_3.sroa.0.0.insert.insert.i.i.i.i.i.i.i.i, %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i.i.i.i.i.i" ], [ 0, %bb3.i.i.i.i.i ]
  %_8.sroa.0.0.insert.insert.i.i.i.i.i = or i64 %_8.sroa.0.0.i.i.i.i.i, %_8.sroa.5.sroa.0.0.i.i.i.i.i
  %_11.sroa.0.0.insert.insert.i.i.i.i.i = or i64 %_11.sroa.5.sroa.0.0.i.i.i.i.i, %_11.sroa.0.0.i.i.i.i.i
  %extract.t = trunc i64 %_11.sroa.0.0.insert.insert.i.i.i.i.i to i8
  %extract = lshr i64 %_11.sroa.0.0.insert.insert.i.i.i.i.i, 8
  %extract.t135 = trunc i64 %extract to i32
  %extract136 = lshr i64 %_11.sroa.0.0.insert.insert.i.i.i.i.i, 40
  %extract.t137 = trunc i64 %extract136 to i8
  %extract138 = lshr i64 %_11.sroa.0.0.insert.insert.i.i.i.i.i, 48
  %extract.t139 = trunc i64 %extract138 to i16
  %extract148 = lshr i64 %_8.sroa.5.sroa.0.0.i.i.i.i.i, 8
  %extract.t149 = trunc i64 %extract148 to i32
  %extract150 = lshr i64 %_8.sroa.5.sroa.0.0.i.i.i.i.i, 40
  %extract.t151 = trunc i64 %extract150 to i8
  %extract152 = lshr i64 %_8.sroa.5.sroa.0.0.i.i.i.i.i, 48
  %extract.t153 = trunc i64 %extract152 to i16
  %extract.t154 = trunc i64 %_8.sroa.0.0.insert.insert.i.i.i.i.i to i8
  br label %"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17ha1e0a4b9f33eaf30E.exit.i.i"

"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17ha1e0a4b9f33eaf30E.exit.i.i": ; preds = %"_ZN86_$LT$core..iter..adapters..flatten..Flatten$LT$I$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h10affd5be41f2176E.exit.i.i.i", %start
  %_4.sroa.4.sroa.5.sroa.0.0.i.i.off8 = phi i32 [ %extract.t149, %"_ZN86_$LT$core..iter..adapters..flatten..Flatten$LT$I$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h10affd5be41f2176E.exit.i.i.i" ], [ 0, %start ]
  %_4.sroa.4.sroa.5.sroa.0.0.i.i.off40 = phi i8 [ %extract.t151, %"_ZN86_$LT$core..iter..adapters..flatten..Flatten$LT$I$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h10affd5be41f2176E.exit.i.i.i" ], [ 0, %start ]
  %_4.sroa.4.sroa.5.sroa.0.0.i.i.off48 = phi i16 [ %extract.t153, %"_ZN86_$LT$core..iter..adapters..flatten..Flatten$LT$I$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h10affd5be41f2176E.exit.i.i.i" ], [ 0, %start ]
  %_4.sroa.4.sroa.0.0.i.i.off0 = phi i8 [ %extract.t154, %"_ZN86_$LT$core..iter..adapters..flatten..Flatten$LT$I$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h10affd5be41f2176E.exit.i.i.i" ], [ 5, %start ]
  %_4.sroa.6.0.i.i.off0 = phi i8 [ %extract.t, %"_ZN86_$LT$core..iter..adapters..flatten..Flatten$LT$I$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h10affd5be41f2176E.exit.i.i.i" ], [ undef, %start ]
  %_4.sroa.6.0.i.i.off8 = phi i32 [ %extract.t135, %"_ZN86_$LT$core..iter..adapters..flatten..Flatten$LT$I$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h10affd5be41f2176E.exit.i.i.i" ], [ 0, %start ]
  %_4.sroa.6.0.i.i.off40 = phi i8 [ %extract.t137, %"_ZN86_$LT$core..iter..adapters..flatten..Flatten$LT$I$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h10affd5be41f2176E.exit.i.i.i" ], [ 0, %start ]
  %_4.sroa.6.0.i.i.off48 = phi i16 [ %extract.t139, %"_ZN86_$LT$core..iter..adapters..flatten..Flatten$LT$I$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h10affd5be41f2176E.exit.i.i.i" ], [ 0, %start ]
  %_4.sroa.0.0.i.i.off0 = phi i8 [ %_3.sroa.0.0.i.i.i.i.i.i.off0, %"_ZN86_$LT$core..iter..adapters..flatten..Flatten$LT$I$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h10affd5be41f2176E.exit.i.i.i" ], [ undef, %start ]
  %_4.sroa.0.0.i.i.off8.off0 = phi i32 [ %_3.sroa.5.sroa.0.0.i.i.i.i.i.i.off8.off0, %"_ZN86_$LT$core..iter..adapters..flatten..Flatten$LT$I$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h10affd5be41f2176E.exit.i.i.i" ], [ 0, %start ]
  %_4.sroa.0.0.i.i.off8.off32 = phi i8 [ %_3.sroa.5.sroa.0.0.i.i.i.i.i.i.off8.off32, %"_ZN86_$LT$core..iter..adapters..flatten..Flatten$LT$I$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h10affd5be41f2176E.exit.i.i.i" ], [ 0, %start ]
  %_4.sroa.0.0.i.i.off8.off40 = phi i16 [ %_3.sroa.5.sroa.0.0.i.i.i.i.i.i.off8.off40, %"_ZN86_$LT$core..iter..adapters..flatten..Flatten$LT$I$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h10affd5be41f2176E.exit.i.i.i" ], [ 0, %start ]
  %41 = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %self, i16 0, i32 1, i32 3, i32 1
  %42 = load i8, i8* %41, align 1, !range !689, !alias.scope !5448, !noalias !5451
  %43 = icmp eq i8 %42, 5
  br i1 %43, label %"_ZN61_$LT$core..str..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h782fe422a3c02e85E.exit", label %bb3.i4.i.i

bb3.i4.i.i:                                       ; preds = %"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17ha1e0a4b9f33eaf30E.exit.i.i"
  %__self_0_0.idx.i.i.i.i.i = bitcast %"option::Option<iter::adapters::flatten::FlatMap<str::Chars, char::EscapeDebug, str::CharEscapeDebugContinue>>"* %1 to i8**
  %__self_0_0.idx.val.i.i.i.i.i = load i8*, i8** %__self_0_0.idx.i.i.i.i.i, align 1, !alias.scope !5453, !noalias !5460
  %44 = getelementptr %"str::EscapeDebug", %"str::EscapeDebug"* %self, i16 0, i32 1, i32 3, i32 0, i16 2
  %45 = bitcast i8* %44 to i8**
  %__self_0_0.idx6.val.i.i.i.i.i = load i8*, i8** %45, align 1, !alias.scope !5453, !noalias !5460
  %46 = icmp eq i8 %42, 4
  br i1 %46, label %bb3.i.i.i7.i.i, label %bb3.i9.i.i.i.i.i

bb3.i9.i.i.i.i.i:                                 ; preds = %bb3.i4.i.i
  %trunc.i.i.i.i8.i.i.i.i.i = trunc i8 %42 to i2
  switch i2 %trunc.i.i.i.i8.i.i.i.i.i, label %bb2.i.i.i.i26.i.i.i.i.i [
    i2 0, label %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i42.i.i.i.i.i"
    i2 1, label %bb4.i.i.i.i28.i.i.i.i.i
    i2 -2, label %bb6.i.i.i.i30.i.i.i.i.i
    i2 -1, label %bb1.i.i.i.i14.i.i.i.i.i
  ]

bb1.i.i.i.i14.i.i.i.i.i:                          ; preds = %bb3.i9.i.i.i.i.i
  %47 = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %self, i16 0, i32 1, i32 3, i32 2
  %__self_0_0.i.i.i.i.i10.i.i.i.i.i = bitcast [15 x i8]* %47 to i32*
  %48 = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %self, i16 0, i32 1, i32 3, i32 2, i16 4
  %49 = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %self, i16 0, i32 1, i32 3, i32 2, i16 5
  %50 = bitcast i8* %49 to i16*
  %__self_0_0.val.i.i.i.i.i11.i.i.i.i.i = load i32, i32* %__self_0_0.i.i.i.i.i10.i.i.i.i.i, align 1, !alias.scope !5463, !noalias !5474
  %__self_0_1.val.i.i.i.i.i12.i.i.i.i.i = load i8, i8* %48, align 1, !alias.scope !5463, !noalias !5474
  %trunc.i.i.i.i.i.i13.i.i.i.i.i = trunc i8 %__self_0_1.val.i.i.i.i.i12.i.i.i.i.i to i3
  %switch.tableidx252 = xor i3 %trunc.i.i.i.i.i.i13.i.i.i.i.i, -4
  %switch.maskindex253 = zext i3 %switch.tableidx252 to i8
  %switch.shifted254 = lshr i8 -13, %switch.maskindex253
  %51 = and i8 %switch.shifted254, 1
  %switch.lobit255 = icmp ne i8 %51, 0
  call addrspace(1) void @llvm.assume(i1 %switch.lobit255)
  %52 = zext i3 %switch.tableidx252 to i16
  %switch.gep257 = getelementptr inbounds [8 x i8], [8 x i8]* @"switch.table._ZN63_$LT$core..str..EscapeUnicode$u20$as$u20$core..fmt..Display$GT$3fmt17hcefaf5179aadfe2dE.195", i16 0, i16 %52
  %switch.load258 = load i8, i8* %switch.gep257, align 1
  %__self_0_2.val.i.i.i.i.i22.i.i.i.i.i = load i16, i16* %50, align 1, !alias.scope !5463, !noalias !5474
  %phitmp.i.i.i23.i.i.i.i.i = zext i16 %__self_0_2.val.i.i.i.i.i22.i.i.i.i.i to i64
  %phitmp3.i.i.i24.i.i.i.i.i = shl nuw i64 %phitmp.i.i.i23.i.i.i.i.i, 48
  br label %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i42.i.i.i.i.i"

bb2.i.i.i.i26.i.i.i.i.i:                          ; preds = %bb3.i9.i.i.i.i.i
  unreachable

bb4.i.i.i.i28.i.i.i.i.i:                          ; preds = %bb3.i9.i.i.i.i.i
  %53 = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %self, i16 0, i32 1, i32 3, i32 2
  %54 = bitcast [15 x i8]* %53 to i32*
  %.val.i.i.i.i27.i.i.i.i.i = load i32, i32* %54, align 1, !alias.scope !5480, !noalias !5481
  br label %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i42.i.i.i.i.i"

bb6.i.i.i.i30.i.i.i.i.i:                          ; preds = %bb3.i9.i.i.i.i.i
  %55 = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %self, i16 0, i32 1, i32 3, i32 2
  %56 = bitcast [15 x i8]* %55 to i32*
  %.val7.i.i.i.i29.i.i.i.i.i = load i32, i32* %56, align 1, !alias.scope !5480, !noalias !5481
  br label %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i42.i.i.i.i.i"

"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i42.i.i.i.i.i": ; preds = %bb6.i.i.i.i30.i.i.i.i.i, %bb4.i.i.i.i28.i.i.i.i.i, %bb1.i.i.i.i14.i.i.i.i.i, %bb3.i9.i.i.i.i.i
  %_3.sroa.11.0.i.i.i31.i.i.i.i.i = phi i64 [ %phitmp3.i.i.i24.i.i.i.i.i, %bb1.i.i.i.i14.i.i.i.i.i ], [ 0, %bb6.i.i.i.i30.i.i.i.i.i ], [ 0, %bb4.i.i.i.i28.i.i.i.i.i ], [ 0, %bb3.i9.i.i.i.i.i ]
  %_3.sroa.10.0.i.i.i32.i.i.i.i.i = phi i8 [ %switch.load258, %bb1.i.i.i.i14.i.i.i.i.i ], [ undef, %bb6.i.i.i.i30.i.i.i.i.i ], [ undef, %bb4.i.i.i.i28.i.i.i.i.i ], [ undef, %bb3.i9.i.i.i.i.i ]
  %_3.sroa.7.0.i.i.i33.i.i.i.i.i = phi i32 [ %__self_0_0.val.i.i.i.i.i11.i.i.i.i.i, %bb1.i.i.i.i14.i.i.i.i.i ], [ %.val7.i.i.i.i29.i.i.i.i.i, %bb6.i.i.i.i30.i.i.i.i.i ], [ %.val.i.i.i.i27.i.i.i.i.i, %bb4.i.i.i.i28.i.i.i.i.i ], [ undef, %bb3.i9.i.i.i.i.i ]
  %_3.sroa.0.0.i.i.i34.i.i.i.i.i = phi i64 [ 3, %bb1.i.i.i.i14.i.i.i.i.i ], [ 2, %bb6.i.i.i.i30.i.i.i.i.i ], [ 1, %bb4.i.i.i.i28.i.i.i.i.i ], [ 0, %bb3.i9.i.i.i.i.i ]
  %_3.sroa.10.0.insert.ext.i.i.i35.i.i.i.i.i = zext i8 %_3.sroa.10.0.i.i.i32.i.i.i.i.i to i64
  %_3.sroa.10.0.insert.shift.i.i.i36.i.i.i.i.i = shl nuw nsw i64 %_3.sroa.10.0.insert.ext.i.i.i35.i.i.i.i.i, 40
  %_3.sroa.10.0.insert.insert.i.i.i37.i.i.i.i.i = or i64 %_3.sroa.10.0.insert.shift.i.i.i36.i.i.i.i.i, %_3.sroa.11.0.i.i.i31.i.i.i.i.i
  %_3.sroa.7.0.insert.ext.i.i.i38.i.i.i.i.i = zext i32 %_3.sroa.7.0.i.i.i33.i.i.i.i.i to i64
  %_3.sroa.7.0.insert.shift.i.i.i39.i.i.i.i.i = shl nuw nsw i64 %_3.sroa.7.0.insert.ext.i.i.i38.i.i.i.i.i, 8
  %_3.sroa.0.0.insert.insert.i.i.i41.i.i.i.i.i = or i64 %_3.sroa.10.0.insert.insert.i.i.i37.i.i.i.i.i, %_3.sroa.7.0.insert.shift.i.i.i39.i.i.i.i.i
  br label %bb3.i.i.i7.i.i

bb3.i.i.i7.i.i:                                   ; preds = %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i42.i.i.i.i.i", %bb3.i4.i.i
  %_8.sroa.5.sroa.0.0.i.i.i5.i.i = phi i64 [ %_3.sroa.0.0.insert.insert.i.i.i41.i.i.i.i.i, %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i42.i.i.i.i.i" ], [ 0, %bb3.i4.i.i ]
  %_8.sroa.0.0.i.i.i6.i.i = phi i64 [ %_3.sroa.0.0.i.i.i34.i.i.i.i.i, %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i42.i.i.i.i.i" ], [ 4, %bb3.i4.i.i ]
  %57 = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %self, i16 0, i32 1, i32 3, i32 2, i16 7
  %58 = load i8, i8* %57, align 1, !range !632, !alias.scope !5482, !noalias !5485
  %59 = icmp eq i8 %58, 4
  br i1 %59, label %"_ZN94_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h2f48ebba1f12964fE.exit.i.i.i", label %bb3.i.i.i.i9.i.i

bb3.i.i.i.i9.i.i:                                 ; preds = %bb3.i.i.i7.i.i
  %trunc.i.i.i.i.i.i.i8.i.i = trunc i8 %58 to i2
  switch i2 %trunc.i.i.i.i.i.i.i8.i.i, label %bb2.i.i.i.i.i.i.i26.i.i [
    i2 0, label %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i.i.i.i41.i.i"
    i2 1, label %bb4.i.i.i.i.i.i.i28.i.i
    i2 -2, label %bb6.i.i.i.i.i.i.i30.i.i
    i2 -1, label %bb1.i.i.i.i.i.i.i14.i.i
  ]

bb1.i.i.i.i.i.i.i14.i.i:                          ; preds = %bb3.i.i.i.i9.i.i
  %60 = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %self, i16 0, i32 1, i32 3, i32 2, i16 8
  %__self_0_0.i.i.i.i.i.i.i.i10.i.i = bitcast i8* %60 to i32*
  %61 = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %self, i16 0, i32 1, i32 3, i32 2, i16 12
  %62 = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %self, i16 0, i32 1, i32 3, i32 2, i16 13
  %63 = bitcast i8* %62 to i16*
  %__self_0_0.val.i.i.i.i.i.i.i.i11.i.i = load i32, i32* %__self_0_0.i.i.i.i.i.i.i.i10.i.i, align 1, !alias.scope !5487, !noalias !5496
  %__self_0_1.val.i.i.i.i.i.i.i.i12.i.i = load i8, i8* %61, align 1, !alias.scope !5487, !noalias !5496
  %trunc.i.i.i.i.i.i.i.i.i13.i.i = trunc i8 %__self_0_1.val.i.i.i.i.i.i.i.i12.i.i to i3
  %switch.tableidx259 = xor i3 %trunc.i.i.i.i.i.i.i.i.i13.i.i, -4
  %switch.maskindex260 = zext i3 %switch.tableidx259 to i8
  %switch.shifted261 = lshr i8 -13, %switch.maskindex260
  %64 = and i8 %switch.shifted261, 1
  %switch.lobit262 = icmp ne i8 %64, 0
  call addrspace(1) void @llvm.assume(i1 %switch.lobit262)
  %65 = zext i3 %switch.tableidx259 to i16
  %switch.gep264 = getelementptr inbounds [8 x i8], [8 x i8]* @"switch.table._ZN63_$LT$core..str..EscapeUnicode$u20$as$u20$core..fmt..Display$GT$3fmt17hcefaf5179aadfe2dE.195", i16 0, i16 %65
  %switch.load265 = load i8, i8* %switch.gep264, align 1
  %__self_0_2.val.i.i.i.i.i.i.i.i22.i.i = load i16, i16* %63, align 1, !alias.scope !5487, !noalias !5496
  %phitmp.i.i.i.i.i.i23.i.i = zext i16 %__self_0_2.val.i.i.i.i.i.i.i.i22.i.i to i64
  %phitmp3.i.i.i.i.i.i24.i.i = shl nuw i64 %phitmp.i.i.i.i.i.i23.i.i, 48
  br label %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i.i.i.i41.i.i"

bb2.i.i.i.i.i.i.i26.i.i:                          ; preds = %bb3.i.i.i.i9.i.i
  unreachable

bb4.i.i.i.i.i.i.i28.i.i:                          ; preds = %bb3.i.i.i.i9.i.i
  %66 = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %self, i16 0, i32 1, i32 3, i32 2, i16 8
  %67 = bitcast i8* %66 to i32*
  %.val.i.i.i.i.i.i.i27.i.i = load i32, i32* %67, align 1, !alias.scope !5501, !noalias !5502
  br label %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i.i.i.i41.i.i"

bb6.i.i.i.i.i.i.i30.i.i:                          ; preds = %bb3.i.i.i.i9.i.i
  %68 = getelementptr inbounds %"str::EscapeDebug", %"str::EscapeDebug"* %self, i16 0, i32 1, i32 3, i32 2, i16 8
  %69 = bitcast i8* %68 to i32*
  %.val7.i.i.i.i.i.i.i29.i.i = load i32, i32* %69, align 1, !alias.scope !5501, !noalias !5502
  br label %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i.i.i.i41.i.i"

"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i.i.i.i41.i.i": ; preds = %bb6.i.i.i.i.i.i.i30.i.i, %bb4.i.i.i.i.i.i.i28.i.i, %bb1.i.i.i.i.i.i.i14.i.i, %bb3.i.i.i.i9.i.i
  %_3.sroa.11.0.i.i.i.i.i.i31.i.i = phi i64 [ %phitmp3.i.i.i.i.i.i24.i.i, %bb1.i.i.i.i.i.i.i14.i.i ], [ 0, %bb6.i.i.i.i.i.i.i30.i.i ], [ 0, %bb4.i.i.i.i.i.i.i28.i.i ], [ 0, %bb3.i.i.i.i9.i.i ]
  %_3.sroa.10.0.i.i.i.i.i.i32.i.i = phi i8 [ %switch.load265, %bb1.i.i.i.i.i.i.i14.i.i ], [ undef, %bb6.i.i.i.i.i.i.i30.i.i ], [ undef, %bb4.i.i.i.i.i.i.i28.i.i ], [ undef, %bb3.i.i.i.i9.i.i ]
  %_3.sroa.7.0.i.i.i.i.i.i33.i.i = phi i32 [ %__self_0_0.val.i.i.i.i.i.i.i.i11.i.i, %bb1.i.i.i.i.i.i.i14.i.i ], [ %.val7.i.i.i.i.i.i.i29.i.i, %bb6.i.i.i.i.i.i.i30.i.i ], [ %.val.i.i.i.i.i.i.i27.i.i, %bb4.i.i.i.i.i.i.i28.i.i ], [ undef, %bb3.i.i.i.i9.i.i ]
  %_3.sroa.0.0.i.i.i.i.i.i34.i.i = phi i64 [ 3, %bb1.i.i.i.i.i.i.i14.i.i ], [ 2, %bb6.i.i.i.i.i.i.i30.i.i ], [ 1, %bb4.i.i.i.i.i.i.i28.i.i ], [ 0, %bb3.i.i.i.i9.i.i ]
  %_3.sroa.10.0.insert.ext.i.i.i.i.i.i35.i.i = zext i8 %_3.sroa.10.0.i.i.i.i.i.i32.i.i to i64
  %_3.sroa.10.0.insert.shift.i.i.i.i.i.i36.i.i = shl nuw nsw i64 %_3.sroa.10.0.insert.ext.i.i.i.i.i.i35.i.i, 40
  %_3.sroa.10.0.insert.insert.i.i.i.i.i.i37.i.i = or i64 %_3.sroa.10.0.insert.shift.i.i.i.i.i.i36.i.i, %_3.sroa.11.0.i.i.i.i.i.i31.i.i
  %_3.sroa.7.0.insert.ext.i.i.i.i.i.i38.i.i = zext i32 %_3.sroa.7.0.i.i.i.i.i.i33.i.i to i64
  %_3.sroa.7.0.insert.shift.i.i.i.i.i.i39.i.i = shl nuw nsw i64 %_3.sroa.7.0.insert.ext.i.i.i.i.i.i38.i.i, 8
  %_3.sroa.0.0.insert.insert.i.i.i.i.i.i40.i.i = or i64 %_3.sroa.10.0.insert.insert.i.i.i.i.i.i37.i.i, %_3.sroa.7.0.insert.shift.i.i.i.i.i.i39.i.i
  br label %"_ZN94_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h2f48ebba1f12964fE.exit.i.i.i"

"_ZN94_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h2f48ebba1f12964fE.exit.i.i.i": ; preds = %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i.i.i.i41.i.i", %bb3.i.i.i7.i.i
  %_11.sroa.5.sroa.0.0.i.i.i42.i.i = phi i64 [ %_3.sroa.0.0.insert.insert.i.i.i.i.i.i40.i.i, %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i.i.i.i41.i.i" ], [ 0, %bb3.i.i.i7.i.i ]
  %_11.sroa.0.0.i.i.i43.i.i = phi i64 [ %_3.sroa.0.0.i.i.i.i.i.i34.i.i, %"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E.exit.i.i.i.i41.i.i" ], [ 4, %bb3.i.i.i7.i.i ]
  %_8.sroa.0.0.insert.insert.i.i.i44.i.i = or i64 %_8.sroa.0.0.i.i.i6.i.i, %_8.sroa.5.sroa.0.0.i.i.i5.i.i
  %_11.sroa.0.0.insert.insert.i.i.i45.i.i = or i64 %_11.sroa.0.0.i.i.i43.i.i, %_11.sroa.5.sroa.0.0.i.i.i42.i.i
  %extract155 = lshr i64 %_8.sroa.5.sroa.0.0.i.i.i5.i.i, 8
  %extract.t156 = trunc i64 %extract155 to i32
  %extract157 = lshr i64 %_8.sroa.5.sroa.0.0.i.i.i5.i.i, 40
  %extract.t158 = trunc i64 %extract157 to i8
  %extract159 = lshr i64 %_8.sroa.5.sroa.0.0.i.i.i5.i.i, 48
  %extract.t160 = trunc i64 %extract159 to i16
  %extract.t161 = trunc i64 %_8.sroa.0.0.insert.insert.i.i.i44.i.i to i8
  br label %"_ZN61_$LT$core..str..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h782fe422a3c02e85E.exit"

"_ZN61_$LT$core..str..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h782fe422a3c02e85E.exit": ; preds = %"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17ha1e0a4b9f33eaf30E.exit.i.i", %"_ZN94_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h2f48ebba1f12964fE.exit.i.i.i"
  %_7.sroa.5.sroa.5.sroa.0.0.i.i.off8 = phi i32 [ %extract.t156, %"_ZN94_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h2f48ebba1f12964fE.exit.i.i.i" ], [ 0, %"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17ha1e0a4b9f33eaf30E.exit.i.i" ]
  %_7.sroa.5.sroa.5.sroa.0.0.i.i.off40 = phi i8 [ %extract.t158, %"_ZN94_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h2f48ebba1f12964fE.exit.i.i.i" ], [ 0, %"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17ha1e0a4b9f33eaf30E.exit.i.i" ]
  %_7.sroa.5.sroa.5.sroa.0.0.i.i.off48 = phi i16 [ %extract.t160, %"_ZN94_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h2f48ebba1f12964fE.exit.i.i.i" ], [ 0, %"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17ha1e0a4b9f33eaf30E.exit.i.i" ]
  %_7.sroa.5.sroa.0.0.i.i.off0 = phi i8 [ %extract.t161, %"_ZN94_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h2f48ebba1f12964fE.exit.i.i.i" ], [ 5, %"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17ha1e0a4b9f33eaf30E.exit.i.i" ]
  %_7.sroa.7.0.i.i = phi i64 [ %_11.sroa.0.0.insert.insert.i.i.i45.i.i, %"_ZN94_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h2f48ebba1f12964fE.exit.i.i.i" ], [ undef, %"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17ha1e0a4b9f33eaf30E.exit.i.i" ]
  %_7.sroa.4.0.i.i = phi i8* [ %__self_0_0.idx6.val.i.i.i.i.i, %"_ZN94_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h2f48ebba1f12964fE.exit.i.i.i" ], [ undef, %"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17ha1e0a4b9f33eaf30E.exit.i.i" ]
  %_7.sroa.0.0.i.i = phi i8* [ %__self_0_0.idx.val.i.i.i.i.i, %"_ZN94_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h2f48ebba1f12964fE.exit.i.i.i" ], [ undef, %"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17ha1e0a4b9f33eaf30E.exit.i.i" ]
  switch i8 %_4.sroa.4.sroa.0.0.i.i.off0, label %bb4.i.i.i.i.i.i.preheader [
    i8 5, label %bb14.i.i.i
    i8 4, label %bb17.i.i.i.i.i
  ]

bb4.i.i.i.i.i.i.preheader:                        ; preds = %"_ZN61_$LT$core..str..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h782fe422a3c02e85E.exit"
  %70 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %0, i16 0, i32 11, i32 0
  %71 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %0, i16 0, i32 11, i32 1
  %72 = bitcast [3 x i16]** %71 to i1 ({}*, i32) addrspace(1)***
  br label %bb4.i.i.i.i.i.i

bb4.i.i.i.i.i.i:                                  ; preds = %bb4.i.i.i.i.i.i.preheader, %bb6.i.i.i.i.i.i
  %_4.sroa.6.sroa.13.0 = phi i8 [ %_4.sroa.6.sroa.13.1, %bb6.i.i.i.i.i.i ], [ %_4.sroa.4.sroa.5.sroa.0.0.i.i.off40, %bb4.i.i.i.i.i.i.preheader ]
  %_4.sroa.6.sroa.0.0 = phi i8 [ %_4.sroa.6.sroa.0.1, %bb6.i.i.i.i.i.i ], [ %_4.sroa.4.sroa.0.0.i.i.off0, %bb4.i.i.i.i.i.i.preheader ]
  %_4.sroa.6.sroa.19.0 = phi i16 [ %_4.sroa.6.sroa.19.1, %bb6.i.i.i.i.i.i ], [ %_4.sroa.4.sroa.5.sroa.0.0.i.i.off48, %bb4.i.i.i.i.i.i.preheader ]
  %trunc.i.i.i.i.i.i.i = trunc i8 %_4.sroa.6.sroa.0.0 to i2
  switch i2 %trunc.i.i.i.i.i.i.i, label %bb2.i.i.i.i.i.i.i [
    i2 0, label %bb17.i.i.i.i.i
    i2 1, label %bb4.i.i.i.i.i.i.i
    i2 -2, label %bb6.i.i.i.i.i.i
    i2 -1, label %bb1.i.i.i.i.i.i.i
  ]

bb1.i.i.i.i.i.i.i:                                ; preds = %bb4.i.i.i.i.i.i
  %trunc.i.i.i.i.i.i.i.i = trunc i8 %_4.sroa.6.sroa.13.0 to i3
  switch i3 %trunc.i.i.i.i.i.i.i.i, label %bb2.i.i.i.i.i.i.i.i [
    i3 0, label %bb17.i.i.i.i.i
    i3 1, label %bb12.i.i.i.i.i.i.i.i
    i3 2, label %bb6.i.i.i.i.i.i.i.i
    i3 3, label %bb5.i.i.i.i.i.i.i.i
    i3 -4, label %bb4.i.i.i.i.i.i.i.i
    i3 -3, label %bb6.i.i.i.i.i.i
  ]

bb2.i.i.i.i.i.i.i.i:                              ; preds = %bb1.i.i.i.i.i.i.i
  unreachable

bb4.i.i.i.i.i.i.i.i:                              ; preds = %bb1.i.i.i.i.i.i.i
  br label %bb6.i.i.i.i.i.i

bb5.i.i.i.i.i.i.i.i:                              ; preds = %bb1.i.i.i.i.i.i.i
  br label %bb6.i.i.i.i.i.i

bb6.i.i.i.i.i.i.i.i:                              ; preds = %bb1.i.i.i.i.i.i.i
  %_10.i.i.i.i.i.i.i.i = shl i16 %_4.sroa.6.sroa.19.0, 2
  %73 = and i16 %_10.i.i.i.i.i.i.i.i, 28
  %74 = zext i16 %73 to i32
  %_7.i.i.i.i.i.i.i.i = lshr i32 %_4.sroa.4.sroa.5.sroa.0.0.i.i.off8, %74
  %75 = trunc i32 %_7.i.i.i.i.i.i.i.i to i8
  %num1.i.i.i.i.i.i.i.i.i = and i8 %75, 15
  %_12.i.i.i.i.i.i.i.i.i = icmp ult i8 %num1.i.i.i.i.i.i.i.i.i, 10
  %_15.i.i.i.i.i.i.i.i.i = or i8 %num1.i.i.i.i.i.i.i.i.i, 48
  %_18.i.i.i.i.i.i.i.i.i = add nuw nsw i8 %num1.i.i.i.i.i.i.i.i.i, 87
  %.0.i.v.i.i.i.i.i.i.i.i = select i1 %_12.i.i.i.i.i.i.i.i.i, i8 %_15.i.i.i.i.i.i.i.i.i, i8 %_18.i.i.i.i.i.i.i.i.i
  %.0.i.i.i.i.i.i.i.i.i = zext i8 %.0.i.v.i.i.i.i.i.i.i.i to i32
  %_15.i.i.i.i.i.i.i.i = icmp eq i16 %_4.sroa.6.sroa.19.0, 0
  %76 = add i16 %_4.sroa.6.sroa.19.0, -1
  %spec.select = select i1 %_15.i.i.i.i.i.i.i.i, i8 1, i8 %_4.sroa.6.sroa.13.0
  %spec.select130 = select i1 %_15.i.i.i.i.i.i.i.i, i16 0, i16 %76
  br label %bb6.i.i.i.i.i.i

bb12.i.i.i.i.i.i.i.i:                             ; preds = %bb1.i.i.i.i.i.i.i
  br label %bb6.i.i.i.i.i.i

bb2.i.i.i.i.i.i.i:                                ; preds = %bb4.i.i.i.i.i.i
  unreachable

bb4.i.i.i.i.i.i.i:                                ; preds = %bb4.i.i.i.i.i.i
  br label %bb6.i.i.i.i.i.i

bb6.i.i.i.i.i.i:                                  ; preds = %bb6.i.i.i.i.i.i.i.i, %bb4.i.i.i.i.i.i, %bb1.i.i.i.i.i.i.i, %bb4.i.i.i.i.i.i.i, %bb12.i.i.i.i.i.i.i.i, %bb5.i.i.i.i.i.i.i.i, %bb4.i.i.i.i.i.i.i.i
  %_4.sroa.6.sroa.13.1 = phi i8 [ 3, %bb4.i.i.i.i.i.i.i.i ], [ 2, %bb5.i.i.i.i.i.i.i.i ], [ 0, %bb12.i.i.i.i.i.i.i.i ], [ %_4.sroa.6.sroa.13.0, %bb4.i.i.i.i.i.i.i ], [ 4, %bb1.i.i.i.i.i.i.i ], [ %_4.sroa.6.sroa.13.0, %bb4.i.i.i.i.i.i ], [ %spec.select, %bb6.i.i.i.i.i.i.i.i ]
  %_4.sroa.6.sroa.0.1 = phi i8 [ %_4.sroa.6.sroa.0.0, %bb4.i.i.i.i.i.i.i.i ], [ %_4.sroa.6.sroa.0.0, %bb5.i.i.i.i.i.i.i.i ], [ %_4.sroa.6.sroa.0.0, %bb12.i.i.i.i.i.i.i.i ], [ 0, %bb4.i.i.i.i.i.i.i ], [ %_4.sroa.6.sroa.0.0, %bb1.i.i.i.i.i.i.i ], [ 1, %bb4.i.i.i.i.i.i ], [ %_4.sroa.6.sroa.0.0, %bb6.i.i.i.i.i.i.i.i ]
  %_4.sroa.6.sroa.19.1 = phi i16 [ %_4.sroa.6.sroa.19.0, %bb4.i.i.i.i.i.i.i.i ], [ %_4.sroa.6.sroa.19.0, %bb5.i.i.i.i.i.i.i.i ], [ %_4.sroa.6.sroa.19.0, %bb12.i.i.i.i.i.i.i.i ], [ %_4.sroa.6.sroa.19.0, %bb4.i.i.i.i.i.i.i ], [ %_4.sroa.6.sroa.19.0, %bb1.i.i.i.i.i.i.i ], [ %_4.sroa.6.sroa.19.0, %bb4.i.i.i.i.i.i ], [ %spec.select130, %bb6.i.i.i.i.i.i.i.i ]
  %.0.i.i.ph.i.i.i.i.i = phi i32 [ 117, %bb4.i.i.i.i.i.i.i.i ], [ 123, %bb5.i.i.i.i.i.i.i.i ], [ 125, %bb12.i.i.i.i.i.i.i.i ], [ %_4.sroa.4.sroa.5.sroa.0.0.i.i.off8, %bb4.i.i.i.i.i.i.i ], [ 92, %bb1.i.i.i.i.i.i.i ], [ 92, %bb4.i.i.i.i.i.i ], [ %.0.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.i.i.i.i.i ]
  %_3.0.i.i.i.i.i.i.i.i.i.i.i = load {}*, {}** %70, align 1, !nonnull !568
  %_3.11.i.i.i.i.i.i.i.i.i.i.i = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %72, align 1, !nonnull !568
  %77 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11.i.i.i.i.i.i.i.i.i.i.i, i16 4
  %78 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %77, align 1, !invariant.load !568, !nonnull !568
  %79 = call zeroext addrspace(1) i1 %78({}* nonnull align 1 %_3.0.i.i.i.i.i.i.i.i.i.i.i, i32 %.0.i.i.ph.i.i.i.i.i)
  br i1 %79, label %_ZN4core4iter6traits8iterator8Iterator12try_for_each17h310074cdfe6e6a38E.exit, label %bb4.i.i.i.i.i.i

bb17.i.i.i.i.i:                                   ; preds = %bb1.i.i.i.i.i.i.i, %bb4.i.i.i.i.i.i, %"_ZN61_$LT$core..str..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h782fe422a3c02e85E.exit"
  %80 = icmp ne i8 %_4.sroa.0.0.i.i.off0, 5
  tail call addrspace(1) void @llvm.assume(i1 %80)
  %81 = icmp eq i8 %_4.sroa.0.0.i.i.off0, 4
  br i1 %81, label %bb21.i.i.i.i.i, label %bb6.i.i.i76.i.i.i.i.i.lr.ph

bb6.i.i.i76.i.i.i.i.i.lr.ph:                      ; preds = %bb17.i.i.i.i.i
  %82 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %0, i16 0, i32 11, i32 0
  %83 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %0, i16 0, i32 11, i32 1
  %84 = bitcast [3 x i16]** %83 to i1 ({}*, i32) addrspace(1)***
  %85 = icmp eq i32 %_4.sroa.0.0.i.i.off8.off0, 1114112
  br i1 %85, label %bb4.i.us.i.i.i.i.i.i.i.i.i, label %bb4.i.i.i.i.i.i.i.i.i.i

bb4.i.us.i.i.i.i.i.i.i.i.i:                       ; preds = %bb6.i.i.i76.i.i.i.i.i.lr.ph, %bb6.i.us.i.i.i.i.i.i.i.i.i
  %mid.sroa.9.0.us.i.i.i.i.i.i.i.i.i = phi i8 [ %mid.sroa.9.123.us.i.i.i.i.i.i.i.i.i, %bb6.i.us.i.i.i.i.i.i.i.i.i ], [ %_4.sroa.0.0.i.i.off8.off32, %bb6.i.i.i76.i.i.i.i.i.lr.ph ]
  %mid.sroa.15.0.us.i.i.i.i.i.i.i.i.i = phi i16 [ %mid.sroa.15.125.us.i.i.i.i.i.i.i.i.i, %bb6.i.us.i.i.i.i.i.i.i.i.i ], [ %_4.sroa.0.0.i.i.off8.off40, %bb6.i.i.i76.i.i.i.i.i.lr.ph ]
  %mid.sroa.0.0.us.i.i.i.i.i.i.i.i.i = phi i8 [ %mid.sroa.0.127.us.i.i.i.i.i.i.i.i.i, %bb6.i.us.i.i.i.i.i.i.i.i.i ], [ %_4.sroa.0.0.i.i.off0, %bb6.i.i.i76.i.i.i.i.i.lr.ph ]
  %trunc.i.i.us.i.i.i.i.i.i.i.i.i = trunc i8 %mid.sroa.0.0.us.i.i.i.i.i.i.i.i.i to i2
  switch i2 %trunc.i.i.us.i.i.i.i.i.i.i.i.i, label %bb2.i.i.us-lcssa.us38.i.i.i.i.i.i.i.i.i [
    i2 0, label %bb21.i.i.i.i.i
    i2 1, label %bb21.i.i.i.i.i
    i2 -2, label %bb6.i.us.i.i.i.i.i.i.i.i.i
    i2 -1, label %bb1.i.i.us.i.i.i.i.i.i.i.i.i
  ]

bb1.i.i.us.i.i.i.i.i.i.i.i.i:                     ; preds = %bb4.i.us.i.i.i.i.i.i.i.i.i
  %trunc.i.i.i.us.i.i.i.i.i.i.i.i.i = trunc i8 %mid.sroa.9.0.us.i.i.i.i.i.i.i.i.i to i3
  switch i3 %trunc.i.i.i.us.i.i.i.i.i.i.i.i.i, label %bb2.i.i.i.i.i.i.i.i.i.i.i.i [
    i3 0, label %bb21.i.i.i.i.i
    i3 1, label %bb12.i.i.i.us.i.i.i.i.i.i.i.i.i
    i3 2, label %bb6.i.i.i.us.i.i.i.i.i.i.i.i.i
    i3 3, label %bb5.i.i.i.us.i.i.i.i.i.i.i.i.i
    i3 -4, label %bb4.i.i.i.us.i.i.i.i.i.i.i.i.i
    i3 -3, label %bb6.i.us.i.i.i.i.i.i.i.i.i
  ]

bb4.i.i.i.us.i.i.i.i.i.i.i.i.i:                   ; preds = %bb1.i.i.us.i.i.i.i.i.i.i.i.i
  br label %bb6.i.us.i.i.i.i.i.i.i.i.i

bb5.i.i.i.us.i.i.i.i.i.i.i.i.i:                   ; preds = %bb1.i.i.us.i.i.i.i.i.i.i.i.i
  br label %bb6.i.us.i.i.i.i.i.i.i.i.i

bb6.i.i.i.us.i.i.i.i.i.i.i.i.i:                   ; preds = %bb1.i.i.us.i.i.i.i.i.i.i.i.i
  %_10.i.i.i.us.i.i.i.i.i.i.i.i.i = shl i16 %mid.sroa.15.0.us.i.i.i.i.i.i.i.i.i, 2
  %86 = and i16 %_10.i.i.i.us.i.i.i.i.i.i.i.i.i, 28
  %87 = zext i16 %86 to i32
  %_7.i.i.i.us.i.i.i.i.i.i.i.i.i = lshr i32 1114112, %87
  %88 = trunc i32 %_7.i.i.i.us.i.i.i.i.i.i.i.i.i to i8
  %_15.i.i.i.i.us.i.i.i.i.i.i.i.i.i = or i8 %88, 48
  %.0.i.i.i.i.us.i.i.i.i.i.i.i.i.i = zext i8 %_15.i.i.i.i.us.i.i.i.i.i.i.i.i.i to i32
  %_15.i.i.i.us.i.i.i.i.i.i.i.i.i = icmp eq i16 %mid.sroa.15.0.us.i.i.i.i.i.i.i.i.i, 0
  %89 = add i16 %mid.sroa.15.0.us.i.i.i.i.i.i.i.i.i, -1
  %spec.select.us.i.i.i.i.i.i.i.i.i = select i1 %_15.i.i.i.us.i.i.i.i.i.i.i.i.i, i16 0, i16 %89
  %spec.select36.us.i.i.i.i.i.i.i.i.i = select i1 %_15.i.i.i.us.i.i.i.i.i.i.i.i.i, i8 1, i8 %mid.sroa.9.0.us.i.i.i.i.i.i.i.i.i
  br label %bb6.i.us.i.i.i.i.i.i.i.i.i

bb12.i.i.i.us.i.i.i.i.i.i.i.i.i:                  ; preds = %bb1.i.i.us.i.i.i.i.i.i.i.i.i
  br label %bb6.i.us.i.i.i.i.i.i.i.i.i

bb6.i.us.i.i.i.i.i.i.i.i.i:                       ; preds = %bb12.i.i.i.us.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.us.i.i.i.i.i.i.i.i.i, %bb5.i.i.i.us.i.i.i.i.i.i.i.i.i, %bb4.i.i.i.us.i.i.i.i.i.i.i.i.i, %bb1.i.i.us.i.i.i.i.i.i.i.i.i, %bb4.i.us.i.i.i.i.i.i.i.i.i
  %.0.i.i29.us.i.i.i.i.i.i.i.i.i = phi i32 [ 125, %bb12.i.i.i.us.i.i.i.i.i.i.i.i.i ], [ 123, %bb5.i.i.i.us.i.i.i.i.i.i.i.i.i ], [ 117, %bb4.i.i.i.us.i.i.i.i.i.i.i.i.i ], [ 92, %bb1.i.i.us.i.i.i.i.i.i.i.i.i ], [ 92, %bb4.i.us.i.i.i.i.i.i.i.i.i ], [ %.0.i.i.i.i.us.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.us.i.i.i.i.i.i.i.i.i ]
  %mid.sroa.0.127.us.i.i.i.i.i.i.i.i.i = phi i8 [ %mid.sroa.0.0.us.i.i.i.i.i.i.i.i.i, %bb12.i.i.i.us.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.0.0.us.i.i.i.i.i.i.i.i.i, %bb5.i.i.i.us.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.0.0.us.i.i.i.i.i.i.i.i.i, %bb4.i.i.i.us.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.0.0.us.i.i.i.i.i.i.i.i.i, %bb1.i.i.us.i.i.i.i.i.i.i.i.i ], [ 1, %bb4.i.us.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.0.0.us.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.us.i.i.i.i.i.i.i.i.i ]
  %mid.sroa.15.125.us.i.i.i.i.i.i.i.i.i = phi i16 [ %mid.sroa.15.0.us.i.i.i.i.i.i.i.i.i, %bb12.i.i.i.us.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.15.0.us.i.i.i.i.i.i.i.i.i, %bb5.i.i.i.us.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.15.0.us.i.i.i.i.i.i.i.i.i, %bb4.i.i.i.us.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.15.0.us.i.i.i.i.i.i.i.i.i, %bb1.i.i.us.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.15.0.us.i.i.i.i.i.i.i.i.i, %bb4.i.us.i.i.i.i.i.i.i.i.i ], [ %spec.select.us.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.us.i.i.i.i.i.i.i.i.i ]
  %mid.sroa.9.123.us.i.i.i.i.i.i.i.i.i = phi i8 [ 0, %bb12.i.i.i.us.i.i.i.i.i.i.i.i.i ], [ 2, %bb5.i.i.i.us.i.i.i.i.i.i.i.i.i ], [ 3, %bb4.i.i.i.us.i.i.i.i.i.i.i.i.i ], [ 4, %bb1.i.i.us.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.9.0.us.i.i.i.i.i.i.i.i.i, %bb4.i.us.i.i.i.i.i.i.i.i.i ], [ %spec.select36.us.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.us.i.i.i.i.i.i.i.i.i ]
  %_3.0.i.i.i.i.i.i.us.i.i.i.i.i.i.i.i.i = load {}*, {}** %82, align 1, !noalias !5503, !nonnull !568
  %_3.11.i.i.i.i.i.i.us.i.i.i.i.i.i.i.i.i = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %84, align 1, !noalias !5503, !nonnull !568
  %90 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11.i.i.i.i.i.i.us.i.i.i.i.i.i.i.i.i, i16 4
  %91 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %90, align 1, !invariant.load !568, !noalias !5503, !nonnull !568
  %92 = call zeroext addrspace(1) i1 %91({}* nonnull align 1 %_3.0.i.i.i.i.i.i.us.i.i.i.i.i.i.i.i.i, i32 %.0.i.i29.us.i.i.i.i.i.i.i.i.i)
  br i1 %92, label %_ZN4core4iter6traits8iterator8Iterator12try_for_each17h310074cdfe6e6a38E.exit, label %bb4.i.us.i.i.i.i.i.i.i.i.i

bb2.i.i.us-lcssa.us38.i.i.i.i.i.i.i.i.i:          ; preds = %bb4.i.us.i.i.i.i.i.i.i.i.i
  unreachable

bb4.i.i.i.i.i.i.i.i.i.i:                          ; preds = %bb6.i.i.i76.i.i.i.i.i.lr.ph, %bb6.i.i.i.i.i.i.i.i.i.i
  %mid.sroa.9.0.i.i.i.i.i.i.i.i.i = phi i8 [ %mid.sroa.9.123.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.i.i.i.i.i.i.i ], [ %_4.sroa.0.0.i.i.off8.off32, %bb6.i.i.i76.i.i.i.i.i.lr.ph ]
  %mid.sroa.15.0.i.i.i.i.i.i.i.i.i = phi i16 [ %mid.sroa.15.125.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.i.i.i.i.i.i.i ], [ %_4.sroa.0.0.i.i.off8.off40, %bb6.i.i.i76.i.i.i.i.i.lr.ph ]
  %mid.sroa.0.0.i.i.i.i.i.i.i.i.i = phi i8 [ %mid.sroa.0.127.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.i.i.i.i.i.i.i ], [ %_4.sroa.0.0.i.i.off0, %bb6.i.i.i76.i.i.i.i.i.lr.ph ]
  %trunc.i.i.i.i.i.i.i.i.i.i.i3 = trunc i8 %mid.sroa.0.0.i.i.i.i.i.i.i.i.i to i2
  switch i2 %trunc.i.i.i.i.i.i.i.i.i.i.i3, label %bb2.i.i.us-lcssa39.i.i.i.i.i.i.i.i.i [
    i2 0, label %bb21.i.i.i.i.i
    i2 1, label %"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit.i.i.i.i.i.i.i.i.i"
    i2 -2, label %bb6.i.i.i.i.i.i.i.i.i.i
    i2 -1, label %bb1.i.i.i.i.i.i.i.i.i.i.i
  ]

bb1.i.i.i.i.i.i.i.i.i.i.i:                        ; preds = %bb4.i.i.i.i.i.i.i.i.i.i
  %trunc.i.i.i.i.i.i.i.i.i.i.i.i = trunc i8 %mid.sroa.9.0.i.i.i.i.i.i.i.i.i to i3
  switch i3 %trunc.i.i.i.i.i.i.i.i.i.i.i.i, label %bb2.i.i.i.i.i.i.i.i.i.i.i.i [
    i3 0, label %bb21.i.i.i.i.i
    i3 1, label %bb12.i.i.i.i.i.i.i.i.i.i.i.i
    i3 2, label %bb6.i.i.i.i.i.i.i.i.i.i.i.i
    i3 3, label %bb5.i.i.i.i.i.i.i.i.i.i.i.i
    i3 -4, label %bb4.i.i.i.i.i.i.i.i.i.i.i.i
    i3 -3, label %bb6.i.i.i.i.i.i.i.i.i.i
  ]

bb2.i.i.i.i.i.i.i.i.i.i.i.i:                      ; preds = %bb1.i.i.i.i.i.i.i.i.i.i.i, %bb1.i.i.us.i.i.i.i.i.i.i.i.i
  unreachable

bb4.i.i.i.i.i.i.i.i.i.i.i.i:                      ; preds = %bb1.i.i.i.i.i.i.i.i.i.i.i
  br label %bb6.i.i.i.i.i.i.i.i.i.i

bb5.i.i.i.i.i.i.i.i.i.i.i.i:                      ; preds = %bb1.i.i.i.i.i.i.i.i.i.i.i
  br label %bb6.i.i.i.i.i.i.i.i.i.i

bb6.i.i.i.i.i.i.i.i.i.i.i.i:                      ; preds = %bb1.i.i.i.i.i.i.i.i.i.i.i
  %_10.i.i.i.i.i.i.i.i.i.i.i.i = shl i16 %mid.sroa.15.0.i.i.i.i.i.i.i.i.i, 2
  %93 = and i16 %_10.i.i.i.i.i.i.i.i.i.i.i.i, 28
  %94 = zext i16 %93 to i32
  %_7.i.i.i.i.i.i.i.i.i.i.i.i = lshr i32 %_4.sroa.0.0.i.i.off8.off0, %94
  %95 = trunc i32 %_7.i.i.i.i.i.i.i.i.i.i.i.i to i8
  %num1.i.i.i.i.i.i.i.i.i.i.i.i.i = and i8 %95, 15
  %_12.i.i.i.i.i.i.i.i.i.i.i.i.i = icmp ult i8 %num1.i.i.i.i.i.i.i.i.i.i.i.i.i, 10
  %_15.i.i.i.i.i.i.i.i.i.i.i.i.i = or i8 %num1.i.i.i.i.i.i.i.i.i.i.i.i.i, 48
  %_18.i.i.i.i.i.i.i.i.i.i.i.i.i = add nuw nsw i8 %num1.i.i.i.i.i.i.i.i.i.i.i.i.i, 87
  %.0.i.v.i.i.i.i.i.i.i.i.i.i.i.i = select i1 %_12.i.i.i.i.i.i.i.i.i.i.i.i.i, i8 %_15.i.i.i.i.i.i.i.i.i.i.i.i.i, i8 %_18.i.i.i.i.i.i.i.i.i.i.i.i.i
  %.0.i.i.i.i.i.i.i.i.i.i.i.i.i = zext i8 %.0.i.v.i.i.i.i.i.i.i.i.i.i.i.i to i32
  %_15.i.i.i.i.i.i.i.i.i.i.i.i = icmp eq i16 %mid.sroa.15.0.i.i.i.i.i.i.i.i.i, 0
  %96 = add i16 %mid.sroa.15.0.i.i.i.i.i.i.i.i.i, -1
  %spec.select.i.i.i.i.i.i.i.i.i = select i1 %_15.i.i.i.i.i.i.i.i.i.i.i.i, i16 0, i16 %96
  %spec.select36.i.i.i.i.i.i.i.i.i = select i1 %_15.i.i.i.i.i.i.i.i.i.i.i.i, i8 1, i8 %mid.sroa.9.0.i.i.i.i.i.i.i.i.i
  br label %bb6.i.i.i.i.i.i.i.i.i.i

bb12.i.i.i.i.i.i.i.i.i.i.i.i:                     ; preds = %bb1.i.i.i.i.i.i.i.i.i.i.i
  br label %bb6.i.i.i.i.i.i.i.i.i.i

bb2.i.i.us-lcssa39.i.i.i.i.i.i.i.i.i:             ; preds = %bb4.i.i.i.i.i.i.i.i.i.i
  unreachable

"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit.i.i.i.i.i.i.i.i.i": ; preds = %bb4.i.i.i.i.i.i.i.i.i.i
  br label %bb6.i.i.i.i.i.i.i.i.i.i

bb6.i.i.i.i.i.i.i.i.i.i:                          ; preds = %"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit.i.i.i.i.i.i.i.i.i", %bb12.i.i.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.i.i.i.i.i.i.i.i.i, %bb5.i.i.i.i.i.i.i.i.i.i.i.i, %bb4.i.i.i.i.i.i.i.i.i.i.i.i, %bb1.i.i.i.i.i.i.i.i.i.i.i, %bb4.i.i.i.i.i.i.i.i.i.i
  %.0.i.i29.i.i.i.i.i.i.i.i.i = phi i32 [ %_4.sroa.0.0.i.i.off8.off0, %"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit.i.i.i.i.i.i.i.i.i" ], [ 125, %bb12.i.i.i.i.i.i.i.i.i.i.i.i ], [ 123, %bb5.i.i.i.i.i.i.i.i.i.i.i.i ], [ 117, %bb4.i.i.i.i.i.i.i.i.i.i.i.i ], [ 92, %bb1.i.i.i.i.i.i.i.i.i.i.i ], [ 92, %bb4.i.i.i.i.i.i.i.i.i.i ], [ %.0.i.i.i.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.i.i.i.i.i.i.i.i.i ]
  %mid.sroa.0.127.i.i.i.i.i.i.i.i.i = phi i8 [ 0, %"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit.i.i.i.i.i.i.i.i.i" ], [ %mid.sroa.0.0.i.i.i.i.i.i.i.i.i, %bb12.i.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.0.0.i.i.i.i.i.i.i.i.i, %bb5.i.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.0.0.i.i.i.i.i.i.i.i.i, %bb4.i.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.0.0.i.i.i.i.i.i.i.i.i, %bb1.i.i.i.i.i.i.i.i.i.i.i ], [ 1, %bb4.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.0.0.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.i.i.i.i.i.i.i.i.i ]
  %mid.sroa.15.125.i.i.i.i.i.i.i.i.i = phi i16 [ %mid.sroa.15.0.i.i.i.i.i.i.i.i.i, %"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit.i.i.i.i.i.i.i.i.i" ], [ %mid.sroa.15.0.i.i.i.i.i.i.i.i.i, %bb12.i.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.15.0.i.i.i.i.i.i.i.i.i, %bb5.i.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.15.0.i.i.i.i.i.i.i.i.i, %bb4.i.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.15.0.i.i.i.i.i.i.i.i.i, %bb1.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.15.0.i.i.i.i.i.i.i.i.i, %bb4.i.i.i.i.i.i.i.i.i.i ], [ %spec.select.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.i.i.i.i.i.i.i.i.i ]
  %mid.sroa.9.123.i.i.i.i.i.i.i.i.i = phi i8 [ %mid.sroa.9.0.i.i.i.i.i.i.i.i.i, %"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit.i.i.i.i.i.i.i.i.i" ], [ 0, %bb12.i.i.i.i.i.i.i.i.i.i.i.i ], [ 2, %bb5.i.i.i.i.i.i.i.i.i.i.i.i ], [ 3, %bb4.i.i.i.i.i.i.i.i.i.i.i.i ], [ 4, %bb1.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.9.0.i.i.i.i.i.i.i.i.i, %bb4.i.i.i.i.i.i.i.i.i.i ], [ %spec.select36.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.i.i.i.i.i.i.i.i.i ]
  %_3.0.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i = load {}*, {}** %82, align 1, !noalias !5503, !nonnull !568
  %_3.11.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %84, align 1, !noalias !5503, !nonnull !568
  %97 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i, i16 4
  %98 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %97, align 1, !invariant.load !568, !noalias !5503, !nonnull !568
  %99 = call zeroext addrspace(1) i1 %98({}* nonnull align 1 %_3.0.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i, i32 %.0.i.i29.i.i.i.i.i.i.i.i.i)
  br i1 %99, label %_ZN4core4iter6traits8iterator8Iterator12try_for_each17h310074cdfe6e6a38E.exit, label %bb4.i.i.i.i.i.i.i.i.i.i

bb21.i.i.i.i.i:                                   ; preds = %bb1.i.i.i.i.i.i.i.i.i.i.i, %bb4.i.i.i.i.i.i.i.i.i.i, %bb4.i.us.i.i.i.i.i.i.i.i.i, %bb4.i.us.i.i.i.i.i.i.i.i.i, %bb1.i.i.us.i.i.i.i.i.i.i.i.i, %bb17.i.i.i.i.i
  %100 = icmp eq i8 %_4.sroa.6.0.i.i.off0, 4
  br i1 %100, label %bb14.i.i.i, label %bb4.i38.i.i.i.i.i.preheader

bb4.i38.i.i.i.i.i.preheader:                      ; preds = %bb21.i.i.i.i.i
  %101 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %0, i16 0, i32 11, i32 0
  %102 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %0, i16 0, i32 11, i32 1
  %103 = bitcast [3 x i16]** %102 to i1 ({}*, i32) addrspace(1)***
  br label %bb4.i38.i.i.i.i.i

bb4.i38.i.i.i.i.i:                                ; preds = %bb4.i38.i.i.i.i.i.preheader, %bb6.i43.i.i.i.i.i
  %_4.sroa.25.sroa.16.0 = phi i16 [ %_4.sroa.25.sroa.16.1, %bb6.i43.i.i.i.i.i ], [ %_4.sroa.6.0.i.i.off48, %bb4.i38.i.i.i.i.i.preheader ]
  %_4.sroa.25.sroa.10.0 = phi i8 [ %_4.sroa.25.sroa.10.1, %bb6.i43.i.i.i.i.i ], [ %_4.sroa.6.0.i.i.off40, %bb4.i38.i.i.i.i.i.preheader ]
  %_4.sroa.25.sroa.0.0 = phi i8 [ %_4.sroa.25.sroa.0.1, %bb6.i43.i.i.i.i.i ], [ %_4.sroa.6.0.i.i.off0, %bb4.i38.i.i.i.i.i.preheader ]
  %trunc.i.i47.i.i.i.i.i = trunc i8 %_4.sroa.25.sroa.0.0 to i2
  switch i2 %trunc.i.i47.i.i.i.i.i, label %bb2.i.i69.i.i.i.i.i [
    i2 0, label %bb14.i.i.i
    i2 1, label %bb4.i.i72.i.i.i.i.i
    i2 -2, label %bb6.i43.i.i.i.i.i
    i2 -1, label %bb1.i.i49.i.i.i.i.i
  ]

bb1.i.i49.i.i.i.i.i:                              ; preds = %bb4.i38.i.i.i.i.i
  %trunc.i.i.i48.i.i.i.i.i = trunc i8 %_4.sroa.25.sroa.10.0 to i3
  switch i3 %trunc.i.i.i48.i.i.i.i.i, label %bb2.i.i.i50.i.i.i.i.i [
    i3 0, label %bb14.i.i.i
    i3 1, label %bb12.i.i.i68.i.i.i.i.i
    i3 2, label %bb6.i.i.i65.i.i.i.i.i
    i3 3, label %bb5.i.i.i53.i.i.i.i.i
    i3 -4, label %bb4.i.i.i52.i.i.i.i.i
    i3 -3, label %bb6.i43.i.i.i.i.i
  ]

bb2.i.i.i50.i.i.i.i.i:                            ; preds = %bb1.i.i49.i.i.i.i.i
  unreachable

bb4.i.i.i52.i.i.i.i.i:                            ; preds = %bb1.i.i49.i.i.i.i.i
  br label %bb6.i43.i.i.i.i.i

bb5.i.i.i53.i.i.i.i.i:                            ; preds = %bb1.i.i49.i.i.i.i.i
  br label %bb6.i43.i.i.i.i.i

bb6.i.i.i65.i.i.i.i.i:                            ; preds = %bb1.i.i49.i.i.i.i.i
  %_10.i.i.i56.i.i.i.i.i = shl i16 %_4.sroa.25.sroa.16.0, 2
  %104 = and i16 %_10.i.i.i56.i.i.i.i.i, 28
  %105 = zext i16 %104 to i32
  %_7.i.i.i57.i.i.i.i.i = lshr i32 %_4.sroa.6.0.i.i.off8, %105
  %106 = trunc i32 %_7.i.i.i57.i.i.i.i.i to i8
  %num1.i.i.i.i58.i.i.i.i.i = and i8 %106, 15
  %_12.i.i.i.i59.i.i.i.i.i = icmp ult i8 %num1.i.i.i.i58.i.i.i.i.i, 10
  %_15.i.i.i.i60.i.i.i.i.i = or i8 %num1.i.i.i.i58.i.i.i.i.i, 48
  %_18.i.i.i.i61.i.i.i.i.i = add nuw nsw i8 %num1.i.i.i.i58.i.i.i.i.i, 87
  %.0.i.v.i.i.i62.i.i.i.i.i = select i1 %_12.i.i.i.i59.i.i.i.i.i, i8 %_15.i.i.i.i60.i.i.i.i.i, i8 %_18.i.i.i.i61.i.i.i.i.i
  %.0.i.i.i.i63.i.i.i.i.i = zext i8 %.0.i.v.i.i.i62.i.i.i.i.i to i32
  %_15.i.i.i64.i.i.i.i.i = icmp eq i16 %_4.sroa.25.sroa.16.0, 0
  %107 = add i16 %_4.sroa.25.sroa.16.0, -1
  %spec.select131 = select i1 %_15.i.i.i64.i.i.i.i.i, i16 0, i16 %107
  %spec.select132 = select i1 %_15.i.i.i64.i.i.i.i.i, i8 1, i8 %_4.sroa.25.sroa.10.0
  br label %bb6.i43.i.i.i.i.i

bb12.i.i.i68.i.i.i.i.i:                           ; preds = %bb1.i.i49.i.i.i.i.i
  br label %bb6.i43.i.i.i.i.i

bb2.i.i69.i.i.i.i.i:                              ; preds = %bb4.i38.i.i.i.i.i
  unreachable

bb4.i.i72.i.i.i.i.i:                              ; preds = %bb4.i38.i.i.i.i.i
  br label %bb6.i43.i.i.i.i.i

bb6.i43.i.i.i.i.i:                                ; preds = %bb6.i.i.i65.i.i.i.i.i, %bb4.i38.i.i.i.i.i, %bb1.i.i49.i.i.i.i.i, %bb4.i.i72.i.i.i.i.i, %bb12.i.i.i68.i.i.i.i.i, %bb5.i.i.i53.i.i.i.i.i, %bb4.i.i.i52.i.i.i.i.i
  %_4.sroa.25.sroa.16.1 = phi i16 [ %_4.sroa.25.sroa.16.0, %bb4.i.i.i52.i.i.i.i.i ], [ %_4.sroa.25.sroa.16.0, %bb5.i.i.i53.i.i.i.i.i ], [ %_4.sroa.25.sroa.16.0, %bb12.i.i.i68.i.i.i.i.i ], [ %_4.sroa.25.sroa.16.0, %bb4.i.i72.i.i.i.i.i ], [ %_4.sroa.25.sroa.16.0, %bb1.i.i49.i.i.i.i.i ], [ %_4.sroa.25.sroa.16.0, %bb4.i38.i.i.i.i.i ], [ %spec.select131, %bb6.i.i.i65.i.i.i.i.i ]
  %_4.sroa.25.sroa.10.1 = phi i8 [ 3, %bb4.i.i.i52.i.i.i.i.i ], [ 2, %bb5.i.i.i53.i.i.i.i.i ], [ 0, %bb12.i.i.i68.i.i.i.i.i ], [ %_4.sroa.25.sroa.10.0, %bb4.i.i72.i.i.i.i.i ], [ 4, %bb1.i.i49.i.i.i.i.i ], [ %_4.sroa.25.sroa.10.0, %bb4.i38.i.i.i.i.i ], [ %spec.select132, %bb6.i.i.i65.i.i.i.i.i ]
  %_4.sroa.25.sroa.0.1 = phi i8 [ %_4.sroa.25.sroa.0.0, %bb4.i.i.i52.i.i.i.i.i ], [ %_4.sroa.25.sroa.0.0, %bb5.i.i.i53.i.i.i.i.i ], [ %_4.sroa.25.sroa.0.0, %bb12.i.i.i68.i.i.i.i.i ], [ 0, %bb4.i.i72.i.i.i.i.i ], [ %_4.sroa.25.sroa.0.0, %bb1.i.i49.i.i.i.i.i ], [ 1, %bb4.i38.i.i.i.i.i ], [ %_4.sroa.25.sroa.0.0, %bb6.i.i.i65.i.i.i.i.i ]
  %.0.i.i73.ph.i.i.i.i.i = phi i32 [ 117, %bb4.i.i.i52.i.i.i.i.i ], [ 123, %bb5.i.i.i53.i.i.i.i.i ], [ 125, %bb12.i.i.i68.i.i.i.i.i ], [ %_4.sroa.6.0.i.i.off8, %bb4.i.i72.i.i.i.i.i ], [ 92, %bb1.i.i49.i.i.i.i.i ], [ 92, %bb4.i38.i.i.i.i.i ], [ %.0.i.i.i.i63.i.i.i.i.i, %bb6.i.i.i65.i.i.i.i.i ]
  %_3.0.i.i.i.i.i.i41.i.i.i.i.i = load {}*, {}** %101, align 1, !nonnull !568
  %_3.11.i.i.i.i.i.i42.i.i.i.i.i = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %103, align 1, !nonnull !568
  %108 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11.i.i.i.i.i.i42.i.i.i.i.i, i16 4
  %109 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %108, align 1, !invariant.load !568, !nonnull !568
  %110 = call zeroext addrspace(1) i1 %109({}* nonnull align 1 %_3.0.i.i.i.i.i.i41.i.i.i.i.i, i32 %.0.i.i73.ph.i.i.i.i.i)
  br i1 %110, label %_ZN4core4iter6traits8iterator8Iterator12try_for_each17h310074cdfe6e6a38E.exit, label %bb4.i38.i.i.i.i.i

bb14.i.i.i:                                       ; preds = %bb4.i38.i.i.i.i.i, %bb1.i.i49.i.i.i.i.i, %bb21.i.i.i.i.i, %"_ZN61_$LT$core..str..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h782fe422a3c02e85E.exit"
  switch i8 %_7.sroa.5.sroa.0.0.i.i.off0, label %bb4.i.i.i26.i.i.i.preheader [
    i8 5, label %_ZN4core4iter6traits8iterator8Iterator12try_for_each17h310074cdfe6e6a38E.exit
    i8 4, label %bb17.i.i60.i.i.i
  ]

bb4.i.i.i26.i.i.i.preheader:                      ; preds = %bb14.i.i.i
  %111 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %0, i16 0, i32 11, i32 0
  %112 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %0, i16 0, i32 11, i32 1
  %113 = bitcast [3 x i16]** %112 to i1 ({}*, i32) addrspace(1)***
  br label %bb4.i.i.i26.i.i.i

bb4.i.i.i26.i.i.i:                                ; preds = %bb4.i.i.i26.i.i.i.preheader, %bb6.i.i.i53.i.i.i
  %_4.sroa.49.sroa.18.0 = phi i16 [ %_4.sroa.49.sroa.18.1, %bb6.i.i.i53.i.i.i ], [ %_7.sroa.5.sroa.5.sroa.0.0.i.i.off48, %bb4.i.i.i26.i.i.i.preheader ]
  %_4.sroa.49.sroa.12.0 = phi i8 [ %_4.sroa.49.sroa.12.1, %bb6.i.i.i53.i.i.i ], [ %_7.sroa.5.sroa.5.sroa.0.0.i.i.off40, %bb4.i.i.i26.i.i.i.preheader ]
  %_4.sroa.49.sroa.0.0 = phi i8 [ %_4.sroa.49.sroa.0.1, %bb6.i.i.i53.i.i.i ], [ %_7.sroa.5.sroa.0.0.i.i.off0, %bb4.i.i.i26.i.i.i.preheader ]
  %trunc.i.i.i.i25.i.i.i = trunc i8 %_4.sroa.49.sroa.0.0 to i2
  switch i2 %trunc.i.i.i.i25.i.i.i, label %bb2.i.i.i.i48.i.i.i [
    i2 0, label %bb17.i.i60.i.i.i
    i2 1, label %bb4.i.i.i.i51.i.i.i
    i2 -2, label %bb6.i.i.i53.i.i.i
    i2 -1, label %bb1.i.i.i.i28.i.i.i
  ]

bb1.i.i.i.i28.i.i.i:                              ; preds = %bb4.i.i.i26.i.i.i
  %trunc.i.i.i.i.i27.i.i.i = trunc i8 %_4.sroa.49.sroa.12.0 to i3
  switch i3 %trunc.i.i.i.i.i27.i.i.i, label %bb2.i.i.i.i.i29.i.i.i [
    i3 0, label %bb17.i.i60.i.i.i
    i3 1, label %bb12.i.i.i.i.i47.i.i.i
    i3 2, label %bb6.i.i.i.i.i44.i.i.i
    i3 3, label %bb5.i.i.i.i.i32.i.i.i
    i3 -4, label %bb4.i.i.i.i.i31.i.i.i
    i3 -3, label %bb6.i.i.i53.i.i.i
  ]

bb2.i.i.i.i.i29.i.i.i:                            ; preds = %bb1.i.i.i.i28.i.i.i
  unreachable

bb4.i.i.i.i.i31.i.i.i:                            ; preds = %bb1.i.i.i.i28.i.i.i
  br label %bb6.i.i.i53.i.i.i

bb5.i.i.i.i.i32.i.i.i:                            ; preds = %bb1.i.i.i.i28.i.i.i
  br label %bb6.i.i.i53.i.i.i

bb6.i.i.i.i.i44.i.i.i:                            ; preds = %bb1.i.i.i.i28.i.i.i
  %_10.i.i.i.i.i35.i.i.i = shl i16 %_4.sroa.49.sroa.18.0, 2
  %114 = and i16 %_10.i.i.i.i.i35.i.i.i, 28
  %115 = zext i16 %114 to i32
  %_7.i.i.i.i.i36.i.i.i = lshr i32 %_7.sroa.5.sroa.5.sroa.0.0.i.i.off8, %115
  %116 = trunc i32 %_7.i.i.i.i.i36.i.i.i to i8
  %num1.i.i.i.i.i.i37.i.i.i = and i8 %116, 15
  %_12.i.i.i.i.i.i38.i.i.i = icmp ult i8 %num1.i.i.i.i.i.i37.i.i.i, 10
  %_15.i.i.i.i.i.i39.i.i.i = or i8 %num1.i.i.i.i.i.i37.i.i.i, 48
  %_18.i.i.i.i.i.i40.i.i.i = add nuw nsw i8 %num1.i.i.i.i.i.i37.i.i.i, 87
  %.0.i.v.i.i.i.i.i41.i.i.i = select i1 %_12.i.i.i.i.i.i38.i.i.i, i8 %_15.i.i.i.i.i.i39.i.i.i, i8 %_18.i.i.i.i.i.i40.i.i.i
  %.0.i.i.i.i.i.i42.i.i.i = zext i8 %.0.i.v.i.i.i.i.i41.i.i.i to i32
  %_15.i.i.i.i.i43.i.i.i = icmp eq i16 %_4.sroa.49.sroa.18.0, 0
  %117 = add i16 %_4.sroa.49.sroa.18.0, -1
  %spec.select133 = select i1 %_15.i.i.i.i.i43.i.i.i, i16 0, i16 %117
  %spec.select134 = select i1 %_15.i.i.i.i.i43.i.i.i, i8 1, i8 %_4.sroa.49.sroa.12.0
  br label %bb6.i.i.i53.i.i.i

bb12.i.i.i.i.i47.i.i.i:                           ; preds = %bb1.i.i.i.i28.i.i.i
  br label %bb6.i.i.i53.i.i.i

bb2.i.i.i.i48.i.i.i:                              ; preds = %bb4.i.i.i26.i.i.i
  unreachable

bb4.i.i.i.i51.i.i.i:                              ; preds = %bb4.i.i.i26.i.i.i
  br label %bb6.i.i.i53.i.i.i

bb6.i.i.i53.i.i.i:                                ; preds = %bb6.i.i.i.i.i44.i.i.i, %bb4.i.i.i26.i.i.i, %bb1.i.i.i.i28.i.i.i, %bb4.i.i.i.i51.i.i.i, %bb12.i.i.i.i.i47.i.i.i, %bb5.i.i.i.i.i32.i.i.i, %bb4.i.i.i.i.i31.i.i.i
  %_4.sroa.49.sroa.18.1 = phi i16 [ %_4.sroa.49.sroa.18.0, %bb4.i.i.i.i.i31.i.i.i ], [ %_4.sroa.49.sroa.18.0, %bb5.i.i.i.i.i32.i.i.i ], [ %_4.sroa.49.sroa.18.0, %bb12.i.i.i.i.i47.i.i.i ], [ %_4.sroa.49.sroa.18.0, %bb4.i.i.i.i51.i.i.i ], [ %_4.sroa.49.sroa.18.0, %bb1.i.i.i.i28.i.i.i ], [ %_4.sroa.49.sroa.18.0, %bb4.i.i.i26.i.i.i ], [ %spec.select133, %bb6.i.i.i.i.i44.i.i.i ]
  %_4.sroa.49.sroa.12.1 = phi i8 [ 3, %bb4.i.i.i.i.i31.i.i.i ], [ 2, %bb5.i.i.i.i.i32.i.i.i ], [ 0, %bb12.i.i.i.i.i47.i.i.i ], [ %_4.sroa.49.sroa.12.0, %bb4.i.i.i.i51.i.i.i ], [ 4, %bb1.i.i.i.i28.i.i.i ], [ %_4.sroa.49.sroa.12.0, %bb4.i.i.i26.i.i.i ], [ %spec.select134, %bb6.i.i.i.i.i44.i.i.i ]
  %_4.sroa.49.sroa.0.1 = phi i8 [ %_4.sroa.49.sroa.0.0, %bb4.i.i.i.i.i31.i.i.i ], [ %_4.sroa.49.sroa.0.0, %bb5.i.i.i.i.i32.i.i.i ], [ %_4.sroa.49.sroa.0.0, %bb12.i.i.i.i.i47.i.i.i ], [ 0, %bb4.i.i.i.i51.i.i.i ], [ %_4.sroa.49.sroa.0.0, %bb1.i.i.i.i28.i.i.i ], [ 1, %bb4.i.i.i26.i.i.i ], [ %_4.sroa.49.sroa.0.0, %bb6.i.i.i.i.i44.i.i.i ]
  %.0.i.i.ph.i.i52.i.i.i = phi i32 [ 117, %bb4.i.i.i.i.i31.i.i.i ], [ 123, %bb5.i.i.i.i.i32.i.i.i ], [ 125, %bb12.i.i.i.i.i47.i.i.i ], [ %_7.sroa.5.sroa.5.sroa.0.0.i.i.off8, %bb4.i.i.i.i51.i.i.i ], [ 92, %bb1.i.i.i.i28.i.i.i ], [ 92, %bb4.i.i.i26.i.i.i ], [ %.0.i.i.i.i.i.i42.i.i.i, %bb6.i.i.i.i.i44.i.i.i ]
  %_3.0.i.i.i.i.i.i.i.i.i.i = load {}*, {}** %111, align 1, !nonnull !568
  %_3.11.i.i.i.i.i.i.i.i.i.i = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %113, align 1, !nonnull !568
  %118 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11.i.i.i.i.i.i.i.i.i.i, i16 4
  %119 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %118, align 1, !invariant.load !568, !nonnull !568
  %120 = call zeroext addrspace(1) i1 %119({}* nonnull align 1 %_3.0.i.i.i.i.i.i.i.i.i.i, i32 %.0.i.i.ph.i.i52.i.i.i)
  br i1 %120, label %_ZN4core4iter6traits8iterator8Iterator12try_for_each17h310074cdfe6e6a38E.exit, label %bb4.i.i.i26.i.i.i

bb17.i.i60.i.i.i:                                 ; preds = %bb1.i.i.i.i28.i.i.i, %bb4.i.i.i26.i.i.i, %bb14.i.i.i
  %121 = icmp ne i8* %_7.sroa.4.0.i.i, null
  tail call addrspace(1) void @llvm.assume(i1 %121)
  %_13.i.i.i.i.i.i.i.i.i.i.i.i199 = icmp eq i8* %_7.sroa.0.0.i.i, %_7.sroa.4.0.i.i
  br i1 %_13.i.i.i.i.i.i.i.i.i.i.i.i199, label %bb21.i.i66.i.i.i, label %bb3.i.i.i.i.i.i.i.i.i.i.i5.lr.ph

bb3.i.i.i.i.i.i.i.i.i.i.i5.lr.ph:                 ; preds = %bb17.i.i60.i.i.i
  %122 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %0, i16 0, i32 11, i32 0
  %123 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %0, i16 0, i32 11, i32 1
  %124 = bitcast [3 x i16]** %123 to i1 ({}*, i32) addrspace(1)***
  br label %bb3.i.i.i.i.i.i.i.i.i.i.i5

bb1.i.i.i.i.i.i.i.i.i4.backedge:                  ; preds = %bb4.i.i.i.i.i.i.i.i.i63.i.i.i, %bb1.i.i.i4.i.i.i.i.i.i.i.i.i.i, %bb1.i.i.us.i.i.i.i.i.i.i.i.i.i.i, %bb4.i.us.i.i.i.i.i.i.i.i.i.i.i, %bb4.i.us.i.i.i.i.i.i.i.i.i.i.i
  %_13.i.i.i.i.i.i.i.i.i.i.i.i = icmp eq i8* %_4.sroa.41.4, %_7.sroa.4.0.i.i
  br i1 %_13.i.i.i.i.i.i.i.i.i.i.i.i, label %bb21.i.i66.i.i.i, label %bb3.i.i.i.i.i.i.i.i.i.i.i5

bb3.i.i.i.i.i.i.i.i.i.i.i5:                       ; preds = %bb3.i.i.i.i.i.i.i.i.i.i.i5.lr.ph, %bb1.i.i.i.i.i.i.i.i.i4.backedge
  %_4.sroa.41.0200 = phi i8* [ %_7.sroa.0.0.i.i, %bb3.i.i.i.i.i.i.i.i.i.i.i5.lr.ph ], [ %_4.sroa.41.4, %bb1.i.i.i.i.i.i.i.i.i4.backedge ]
  %125 = getelementptr inbounds i8, i8* %_4.sroa.41.0200, i16 1
  %x.i.i.i.i.i.i.i.i.i.i.i = load i8, i8* %_4.sroa.41.0200, align 1, !noalias !5506
  %_12.i.i.i.i.i.i.i.i.i.i.i = icmp sgt i8 %x.i.i.i.i.i.i.i.i.i.i.i, -1
  br i1 %_12.i.i.i.i.i.i.i.i.i.i.i, label %bb11.i.i.i.i.i.i.i.i.i.i.i, label %bb10.i.i.i.i.i.i.i.i.i.i.i

bb10.i.i.i.i.i.i.i.i.i.i.i:                       ; preds = %bb3.i.i.i.i.i.i.i.i.i.i.i5
  %_3.i37.i.i.i.i.i.i.i.i.i.i.i = and i8 %x.i.i.i.i.i.i.i.i.i.i.i, 31
  %126 = zext i8 %_3.i37.i.i.i.i.i.i.i.i.i.i.i to i32
  %_13.i33.i.i.i.i.i.i.i.i.i.i.i = icmp eq i8* %125, %_7.sroa.4.0.i.i
  br i1 %_13.i33.i.i.i.i.i.i.i.i.i.i.i, label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i.i.i.i.i, label %bb3.i28.i.i.i.i.i.i.i.i.i.i.i

bb3.i28.i.i.i.i.i.i.i.i.i.i.i:                    ; preds = %bb10.i.i.i.i.i.i.i.i.i.i.i
  %127 = getelementptr inbounds i8, i8* %_4.sroa.41.0200, i16 2
  %byte.i27.i.i.i.i.i.i.i.i.i.i.i = load i8, i8* %125, align 1, !alias.scope !5509, !noalias !5506
  %phitmp.i.i.i.i.i.i.i.i.i.i.i = and i8 %byte.i27.i.i.i.i.i.i.i.i.i.i.i, 63
  %phitmp42.i.i.i.i.i.i.i.i.i.i.i = zext i8 %phitmp.i.i.i.i.i.i.i.i.i.i.i to i32
  br label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i.i.i.i.i

_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i.i.i.i.i: ; preds = %bb3.i28.i.i.i.i.i.i.i.i.i.i.i, %bb10.i.i.i.i.i.i.i.i.i.i.i
  %_4.sroa.41.1 = phi i8* [ %_7.sroa.4.0.i.i, %bb10.i.i.i.i.i.i.i.i.i.i.i ], [ %127, %bb3.i28.i.i.i.i.i.i.i.i.i.i.i ]
  %.0.i29.i.i.i.i.i.i.i.i.i.i.i = phi i32 [ 0, %bb10.i.i.i.i.i.i.i.i.i.i.i ], [ %phitmp42.i.i.i.i.i.i.i.i.i.i.i, %bb3.i28.i.i.i.i.i.i.i.i.i.i.i ]
  %_3.i24.i.i.i.i.i.i.i.i.i.i.i = shl nuw nsw i32 %126, 6
  %128 = or i32 %.0.i29.i.i.i.i.i.i.i.i.i.i.i, %_3.i24.i.i.i.i.i.i.i.i.i.i.i
  %_24.i.i.i.i.i.i.i.i.i.i.i = icmp ugt i8 %x.i.i.i.i.i.i.i.i.i.i.i, -33
  br i1 %_24.i.i.i.i.i.i.i.i.i.i.i, label %bb17.i.i.i.i.i.i.i.i.i.i.i, label %bb6.i.i.i.i.i.i.i.i.i7

bb11.i.i.i.i.i.i.i.i.i.i.i:                       ; preds = %bb3.i.i.i.i.i.i.i.i.i.i.i5
  %_14.i.i.i.i.i.i.i.i.i.i.i = zext i8 %x.i.i.i.i.i.i.i.i.i.i.i to i32
  br label %bb6.i.i.i.i.i.i.i.i.i7

bb17.i.i.i.i.i.i.i.i.i.i.i:                       ; preds = %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i.i.i.i.i
  %_13.i20.i.i.i.i.i.i.i.i.i.i.i = icmp eq i8* %_4.sroa.41.1, %_7.sroa.4.0.i.i
  br i1 %_13.i20.i.i.i.i.i.i.i.i.i.i.i, label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i.i.i.i.i, label %bb3.i15.i.i.i.i.i.i.i.i.i.i.i

bb3.i15.i.i.i.i.i.i.i.i.i.i.i:                    ; preds = %bb17.i.i.i.i.i.i.i.i.i.i.i
  %129 = getelementptr inbounds i8, i8* %_4.sroa.41.1, i16 1
  %byte.i14.i.i.i.i.i.i.i.i.i.i.i = load i8, i8* %_4.sroa.41.1, align 1, !alias.scope !5512, !noalias !5506
  %phitmp43.i.i.i.i.i.i.i.i.i.i.i = and i8 %byte.i14.i.i.i.i.i.i.i.i.i.i.i, 63
  %phitmp44.i.i.i.i.i.i.i.i.i.i.i = zext i8 %phitmp43.i.i.i.i.i.i.i.i.i.i.i to i32
  br label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i.i.i.i.i

_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i.i.i.i.i: ; preds = %bb3.i15.i.i.i.i.i.i.i.i.i.i.i, %bb17.i.i.i.i.i.i.i.i.i.i.i
  %_4.sroa.41.2 = phi i8* [ %_4.sroa.41.1, %bb17.i.i.i.i.i.i.i.i.i.i.i ], [ %129, %bb3.i15.i.i.i.i.i.i.i.i.i.i.i ]
  %_16.i6.i.i.i.i.i.i.i.i.i.i.i = phi i8* [ %_7.sroa.4.0.i.i, %bb17.i.i.i.i.i.i.i.i.i.i.i ], [ %129, %bb3.i15.i.i.i.i.i.i.i.i.i.i.i ]
  %.0.i16.i.i.i.i.i.i.i.i.i.i.i = phi i32 [ 0, %bb17.i.i.i.i.i.i.i.i.i.i.i ], [ %phitmp44.i.i.i.i.i.i.i.i.i.i.i, %bb3.i15.i.i.i.i.i.i.i.i.i.i.i ]
  %_3.i11.i.i.i.i.i.i.i.i.i.i.i = shl nuw nsw i32 %.0.i29.i.i.i.i.i.i.i.i.i.i.i, 6
  %130 = or i32 %.0.i16.i.i.i.i.i.i.i.i.i.i.i, %_3.i11.i.i.i.i.i.i.i.i.i.i.i
  %_34.i.i.i.i.i.i.i.i.i.i.i = shl nuw nsw i32 %126, 12
  %131 = or i32 %130, %_34.i.i.i.i.i.i.i.i.i.i.i
  %_37.i.i.i.i.i.i.i.i.i.i.i = icmp ugt i8 %x.i.i.i.i.i.i.i.i.i.i.i, -17
  br i1 %_37.i.i.i.i.i.i.i.i.i.i.i, label %bb22.i.i.i.i.i.i.i.i.i.i.i, label %bb6.i.i.i.i.i.i.i.i.i7

bb22.i.i.i.i.i.i.i.i.i.i.i:                       ; preds = %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i.i.i.i.i
  %_13.i7.i.i.i.i.i.i.i.i.i.i.i = icmp eq i8* %_16.i6.i.i.i.i.i.i.i.i.i.i.i, %_7.sroa.4.0.i.i
  br i1 %_13.i7.i.i.i.i.i.i.i.i.i.i.i, label %bb4.i.i.i.i.i.i.i.i.i6, label %bb3.i.i.i.i.i.i.i.i.i.i.i.i

bb3.i.i.i.i.i.i.i.i.i.i.i.i:                      ; preds = %bb22.i.i.i.i.i.i.i.i.i.i.i
  %132 = getelementptr inbounds i8, i8* %_16.i6.i.i.i.i.i.i.i.i.i.i.i, i16 1
  %byte.i.i.i.i.i.i.i.i.i.i.i.i = load i8, i8* %_16.i6.i.i.i.i.i.i.i.i.i.i.i, align 1, !alias.scope !5515, !noalias !5506
  %phitmp45.i.i.i.i.i.i.i.i.i.i.i = and i8 %byte.i.i.i.i.i.i.i.i.i.i.i.i, 63
  %phitmp46.i.i.i.i.i.i.i.i.i.i.i = zext i8 %phitmp45.i.i.i.i.i.i.i.i.i.i.i to i32
  br label %bb4.i.i.i.i.i.i.i.i.i6

bb4.i.i.i.i.i.i.i.i.i6:                           ; preds = %bb3.i.i.i.i.i.i.i.i.i.i.i.i, %bb22.i.i.i.i.i.i.i.i.i.i.i
  %_4.sroa.41.3 = phi i8* [ %_4.sroa.41.2, %bb22.i.i.i.i.i.i.i.i.i.i.i ], [ %132, %bb3.i.i.i.i.i.i.i.i.i.i.i.i ]
  %.0.i4.i.i.i.i.i.i.i.i.i.i.i = phi i32 [ 0, %bb22.i.i.i.i.i.i.i.i.i.i.i ], [ %phitmp46.i.i.i.i.i.i.i.i.i.i.i, %bb3.i.i.i.i.i.i.i.i.i.i.i.i ]
  %_43.i.i.i.i.i.i.i.i.i.i.i = shl nuw nsw i32 %126, 18
  %_42.i.i.i.i.i.i.i.i.i.i.i = and i32 %_43.i.i.i.i.i.i.i.i.i.i.i, 1835008
  %_3.i.i.i.i.i.i.i.i.i.i.i.i = shl nuw nsw i32 %130, 6
  %133 = or i32 %_3.i.i.i.i.i.i.i.i.i.i.i.i, %_42.i.i.i.i.i.i.i.i.i.i.i
  %134 = or i32 %133, %.0.i4.i.i.i.i.i.i.i.i.i.i.i
  %135 = icmp eq i32 %134, 1114112
  br i1 %135, label %bb21.i.i66.i.i.i, label %bb6.i.i.i.i.i.i.i.i.i7

bb6.i.i.i.i.i.i.i.i.i7:                           ; preds = %bb4.i.i.i.i.i.i.i.i.i6, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i.i.i.i.i, %bb11.i.i.i.i.i.i.i.i.i.i.i, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i.i.i.i.i
  %_4.sroa.41.4 = phi i8* [ %125, %bb11.i.i.i.i.i.i.i.i.i.i.i ], [ %_4.sroa.41.3, %bb4.i.i.i.i.i.i.i.i.i6 ], [ %_4.sroa.41.2, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i.i.i.i.i ], [ %_4.sroa.41.1, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i.i.i.i.i ]
  %.sroa.0.0.i.i19.i.i.i.i.i.i.i.i.i = phi i32 [ %_14.i.i.i.i.i.i.i.i.i.i.i, %bb11.i.i.i.i.i.i.i.i.i.i.i ], [ %134, %bb4.i.i.i.i.i.i.i.i.i6 ], [ %131, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i.i.i.i.i ], [ %128, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i.i.i.i.i ]
  switch i32 %.sroa.0.0.i.i19.i.i.i.i.i.i.i.i.i, label %bb5.i.i.i.i.i.i.i.i.i.i.i.i.i [
    i32 9, label %"_ZN104_$LT$core..str..CharEscapeDebugContinue$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf4a8f76e59b6da59E.exit.i.i.i.i.i.i.i.i.i.i"
    i32 13, label %bb2.i.i.i.i.i.i.i.i.i.i.i.i.i8
    i32 10, label %bb3.i.i.i.i.i.i.i.i.i.i.i.i.i
    i32 92, label %bb4.i.i.i.i.i.i.i.i.i.i.i.i.i9
    i32 39, label %bb4.i.i.i.i.i.i.i.i.i.i.i.i.i9
    i32 34, label %bb4.i.i.i.i.i.i.i.i.i.i.i.i.i9
  ]

bb2.i.i.i.i.i.i.i.i.i.i.i.i.i8:                   ; preds = %bb6.i.i.i.i.i.i.i.i.i7
  br label %"_ZN104_$LT$core..str..CharEscapeDebugContinue$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf4a8f76e59b6da59E.exit.i.i.i.i.i.i.i.i.i.i"

bb3.i.i.i.i.i.i.i.i.i.i.i.i.i:                    ; preds = %bb6.i.i.i.i.i.i.i.i.i7
  br label %"_ZN104_$LT$core..str..CharEscapeDebugContinue$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf4a8f76e59b6da59E.exit.i.i.i.i.i.i.i.i.i.i"

bb4.i.i.i.i.i.i.i.i.i.i.i.i.i9:                   ; preds = %bb6.i.i.i.i.i.i.i.i.i7, %bb6.i.i.i.i.i.i.i.i.i7, %bb6.i.i.i.i.i.i.i.i.i7
  br label %"_ZN104_$LT$core..str..CharEscapeDebugContinue$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf4a8f76e59b6da59E.exit.i.i.i.i.i.i.i.i.i.i"

bb5.i.i.i.i.i.i.i.i.i.i.i.i.i:                    ; preds = %bb6.i.i.i.i.i.i.i.i.i7
  %136 = icmp ult i32 %.sroa.0.0.i.i19.i.i.i.i.i.i.i.i.i, 1114112
  tail call addrspace(1) void @llvm.assume(i1 %136), !noalias !5518
  %lower.i.i.i.i.i.i.i.i.i.i.i.i.i = trunc i32 %.sroa.0.0.i.i19.i.i.i.i.i.i.i.i.i to i16
  %_6.i.i.i.i.i.i.i.i.i.i.i.i.i = icmp ult i32 %.sroa.0.0.i.i19.i.i.i.i.i.i.i.i.i, 65536
  br i1 %_6.i.i.i.i.i.i.i.i.i.i.i.i.i, label %bb2.i1.i.i.i.i.i.i.i.i.i.i.i.i, label %bb1.i.i.i.i.i.i.i.i.i.i.i.i.i10

bb1.i.i.i.i.i.i.i.i.i.i.i.i.i10:                  ; preds = %bb5.i.i.i.i.i.i.i.i.i.i.i.i.i
  %_15.i.i.i.i.i.i.i.i.i.i61.i.i.i = icmp ult i32 %.sroa.0.0.i.i19.i.i.i.i.i.i.i.i.i, 131072
  br i1 %_15.i.i.i.i.i.i.i.i.i.i61.i.i.i, label %_ZN4core7unicode9printable12is_printable17h91d3b28d6b01d70eE.exit.i.i.i.i.i.i.i.i.i.i.i.i, label %bb4.i2.i.i.i.i.i.i.i.i.i.i.i.i

bb2.i1.i.i.i.i.i.i.i.i.i.i.i.i:                   ; preds = %bb5.i.i.i.i.i.i.i.i.i.i.i.i.i
; call core::unicode::printable::check
  %137 = call fastcc zeroext addrspace(1) i1 @_ZN4core7unicode9printable5check17h2dcb736e2dcd86e6E(i16 %lower.i.i.i.i.i.i.i.i.i.i.i.i.i, [0 x { i8, i8 }]* noalias nonnull readonly align 1 bitcast (<{ [82 x i8] }>* @alloc748 to [0 x { i8, i8 }]*), i16 41, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [290 x i8] }>* @alloc18889 to [0 x i8]*), i16 290, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [309 x i8] }>* @alloc18890 to [0 x i8]*), i16 309)
  br i1 %137, label %"_ZN104_$LT$core..str..CharEscapeDebugContinue$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf4a8f76e59b6da59E.exit.i.i.i.i.i.i.i.i.i.i", label %bb16.i.i.i.i.i.i.i.i.i.i.i.i.i

bb4.i2.i.i.i.i.i.i.i.i.i.i.i.i:                   ; preds = %bb1.i.i.i.i.i.i.i.i.i.i.i.i.i10
  %x.off.i.i.i.i.i.i.i.i.i.i.i.i.i = add nsw i32 %.sroa.0.0.i.i19.i.i.i.i.i.i.i.i.i, -173790
  %138 = icmp ult i32 %x.off.i.i.i.i.i.i.i.i.i.i.i.i.i, 34
  %x.off9.i.i.i.i.i.i.i.i.i.i.i.i.i = add nsw i32 %.sroa.0.0.i.i19.i.i.i.i.i.i.i.i.i, -177973
  %139 = icmp ult i32 %x.off9.i.i.i.i.i.i.i.i.i.i.i.i.i, 11
  %or.cond.i.i.i.i.i.i.i.i.i.i.i.i.i = or i1 %138, %139
  %140 = and i32 %.sroa.0.0.i.i19.i.i.i.i.i.i.i.i.i, 2097150
  %141 = icmp eq i32 %140, 178206
  %or.cond25.i.i.i.i.i.i.i.i.i.i.i.i.i = or i1 %141, %or.cond.i.i.i.i.i.i.i.i.i.i.i.i.i
  %x.off11.i.i.i.i.i.i.i.i.i.i.i.i.i = add nsw i32 %.sroa.0.0.i.i19.i.i.i.i.i.i.i.i.i, -183970
  %142 = icmp ult i32 %x.off11.i.i.i.i.i.i.i.i.i.i.i.i.i, 14
  %or.cond27.i.i.i.i.i.i.i.i.i.i.i.i.i = or i1 %142, %or.cond25.i.i.i.i.i.i.i.i.i.i.i.i.i
  %x.off12.i.i.i.i.i.i.i.i.i.i.i.i.i = add nsw i32 %.sroa.0.0.i.i19.i.i.i.i.i.i.i.i.i, -191457
  %143 = icmp ult i32 %x.off12.i.i.i.i.i.i.i.i.i.i.i.i.i, 3103
  %or.cond29.i.i.i.i.i.i.i.i.i.i.i.i.i = or i1 %143, %or.cond27.i.i.i.i.i.i.i.i.i.i.i.i.i
  %x.off13.i.i.i.i.i.i.i.i.i.i.i.i.i = add nsw i32 %.sroa.0.0.i.i19.i.i.i.i.i.i.i.i.i, -195102
  %144 = icmp ult i32 %x.off13.i.i.i.i.i.i.i.i.i.i.i.i.i, 1506
  %or.cond31.i.i.i.i.i.i.i.i.i.i.i.i.i = or i1 %144, %or.cond29.i.i.i.i.i.i.i.i.i.i.i.i.i
  %x.off14.i.i.i.i.i.i.i.i.i.i.i.i.i = add nsw i32 %.sroa.0.0.i.i19.i.i.i.i.i.i.i.i.i, -201547
  %145 = icmp ult i32 %x.off14.i.i.i.i.i.i.i.i.i.i.i.i.i, 716213
  %or.cond33.i.i.i.i.i.i.i.i.i.i.i.i.i = or i1 %145, %or.cond31.i.i.i.i.i.i.i.i.i.i.i.i.i
  %or.cond33.i.not.i.i.i.i.i.i.i.i.i.i.i.i = xor i1 %or.cond33.i.i.i.i.i.i.i.i.i.i.i.i.i, true
  %x.off15.i.i.i.i.i.i.i.i.i.i.i.i.i = add nsw i32 %.sroa.0.0.i.i19.i.i.i.i.i.i.i.i.i, -918000
  %146 = icmp ugt i32 %x.off15.i.i.i.i.i.i.i.i.i.i.i.i.i, 196111
  %or.cond.i.i.i.i.i.i.i.i.i.i.i.i = and i1 %146, %or.cond33.i.not.i.i.i.i.i.i.i.i.i.i.i.i
  br i1 %or.cond.i.i.i.i.i.i.i.i.i.i.i.i, label %"_ZN104_$LT$core..str..CharEscapeDebugContinue$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf4a8f76e59b6da59E.exit.i.i.i.i.i.i.i.i.i.i", label %bb16.i.i.i.i.i.i.i.i.i.i.i.i.i

_ZN4core7unicode9printable12is_printable17h91d3b28d6b01d70eE.exit.i.i.i.i.i.i.i.i.i.i.i.i: ; preds = %bb1.i.i.i.i.i.i.i.i.i.i.i.i.i10
; call core::unicode::printable::check
  %147 = call fastcc zeroext addrspace(1) i1 @_ZN4core7unicode9printable5check17h2dcb736e2dcd86e6E(i16 %lower.i.i.i.i.i.i.i.i.i.i.i.i.i, [0 x { i8, i8 }]* noalias nonnull readonly align 1 bitcast (<{ [76 x i8] }>* @alloc794 to [0 x { i8, i8 }]*), i16 38, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [175 x i8] }>* @alloc18891 to [0 x i8]*), i16 175, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [419 x i8] }>* @alloc18892 to [0 x i8]*), i16 419)
  br i1 %147, label %"_ZN104_$LT$core..str..CharEscapeDebugContinue$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf4a8f76e59b6da59E.exit.i.i.i.i.i.i.i.i.i.i", label %bb16.i.i.i.i.i.i.i.i.i.i.i.i.i

bb16.i.i.i.i.i.i.i.i.i.i.i.i.i:                   ; preds = %_ZN4core7unicode9printable12is_printable17h91d3b28d6b01d70eE.exit.i.i.i.i.i.i.i.i.i.i.i.i, %bb4.i2.i.i.i.i.i.i.i.i.i.i.i.i, %bb2.i1.i.i.i.i.i.i.i.i.i.i.i.i
  %_6.i34.i.i.i.i.i.i.i.i.i.i.i.i.i = or i32 %.sroa.0.0.i.i19.i.i.i.i.i.i.i.i.i, 1
  %148 = tail call addrspace(1) i32 @llvm.ctlz.i32(i32 %_6.i34.i.i.i.i.i.i.i.i.i.i.i.i.i, i1 true) #20, !range !1299
  %msb.i35.i.i.i.i.i.i.i.i.i.i.i.i.i = lshr i32 %148, 2
  %149 = trunc i32 %msb.i35.i.i.i.i.i.i.i.i.i.i.i.i.i to i16
  %_12.i36.i.i.i.i.i.i.i.i.i.i.i.i.i = xor i16 %149, 7
  %phitmp.i.i.i.i.i.i.i.i.i.i = zext i16 %_12.i36.i.i.i.i.i.i.i.i.i.i.i.i.i to i64
  %phitmp8.i.i.i.i.i.i.i.i.i.i = shl nuw nsw i64 %phitmp.i.i.i.i.i.i.i.i.i.i, 48
  %phitmp9.i.i.i.i.i.i.i.i.i.i = or i64 %phitmp8.i.i.i.i.i.i.i.i.i.i, 5497558138880
  br label %"_ZN104_$LT$core..str..CharEscapeDebugContinue$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf4a8f76e59b6da59E.exit.i.i.i.i.i.i.i.i.i.i"

"_ZN104_$LT$core..str..CharEscapeDebugContinue$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf4a8f76e59b6da59E.exit.i.i.i.i.i.i.i.i.i.i": ; preds = %bb16.i.i.i.i.i.i.i.i.i.i.i.i.i, %_ZN4core7unicode9printable12is_printable17h91d3b28d6b01d70eE.exit.i.i.i.i.i.i.i.i.i.i.i.i, %bb4.i2.i.i.i.i.i.i.i.i.i.i.i.i, %bb2.i1.i.i.i.i.i.i.i.i.i.i.i.i, %bb4.i.i.i.i.i.i.i.i.i.i.i.i.i9, %bb3.i.i.i.i.i.i.i.i.i.i.i.i.i, %bb2.i.i.i.i.i.i.i.i.i.i.i.i.i8, %bb6.i.i.i.i.i.i.i.i.i7
  %init_state.sroa.17.sroa.5.0.i.i.i.i.i.i.i.i.i.i.i.i.i = phi i64 [ 5497558138880, %_ZN4core7unicode9printable12is_printable17h91d3b28d6b01d70eE.exit.i.i.i.i.i.i.i.i.i.i.i.i ], [ %phitmp9.i.i.i.i.i.i.i.i.i.i, %bb16.i.i.i.i.i.i.i.i.i.i.i.i.i ], [ 5497558138880, %bb4.i.i.i.i.i.i.i.i.i.i.i.i.i9 ], [ 5497558138880, %bb3.i.i.i.i.i.i.i.i.i.i.i.i.i ], [ 5497558138880, %bb2.i.i.i.i.i.i.i.i.i.i.i.i.i8 ], [ 5497558138880, %bb6.i.i.i.i.i.i.i.i.i7 ], [ 5497558138880, %bb2.i1.i.i.i.i.i.i.i.i.i.i.i.i ], [ 5497558138880, %bb4.i2.i.i.i.i.i.i.i.i.i.i.i.i ]
  %init_state.sroa.10.0.i.i.i.i.i.i.i.i.i.i.i.i.i = phi i32 [ %.sroa.0.0.i.i19.i.i.i.i.i.i.i.i.i, %_ZN4core7unicode9printable12is_printable17h91d3b28d6b01d70eE.exit.i.i.i.i.i.i.i.i.i.i.i.i ], [ %.sroa.0.0.i.i19.i.i.i.i.i.i.i.i.i, %bb16.i.i.i.i.i.i.i.i.i.i.i.i.i ], [ %.sroa.0.0.i.i19.i.i.i.i.i.i.i.i.i, %bb4.i.i.i.i.i.i.i.i.i.i.i.i.i9 ], [ 110, %bb3.i.i.i.i.i.i.i.i.i.i.i.i.i ], [ 114, %bb2.i.i.i.i.i.i.i.i.i.i.i.i.i8 ], [ 116, %bb6.i.i.i.i.i.i.i.i.i7 ], [ %.sroa.0.0.i.i19.i.i.i.i.i.i.i.i.i, %bb2.i1.i.i.i.i.i.i.i.i.i.i.i.i ], [ %.sroa.0.0.i.i19.i.i.i.i.i.i.i.i.i, %bb4.i2.i.i.i.i.i.i.i.i.i.i.i.i ]
  %init_state.sroa.0.0.i.i.i.i.i.i.i.i.i.i.i.i.i = phi i64 [ 1, %_ZN4core7unicode9printable12is_printable17h91d3b28d6b01d70eE.exit.i.i.i.i.i.i.i.i.i.i.i.i ], [ 3, %bb16.i.i.i.i.i.i.i.i.i.i.i.i.i ], [ 2, %bb4.i.i.i.i.i.i.i.i.i.i.i.i.i9 ], [ 2, %bb3.i.i.i.i.i.i.i.i.i.i.i.i.i ], [ 2, %bb2.i.i.i.i.i.i.i.i.i.i.i.i.i8 ], [ 2, %bb6.i.i.i.i.i.i.i.i.i7 ], [ 1, %bb2.i1.i.i.i.i.i.i.i.i.i.i.i.i ], [ 1, %bb4.i2.i.i.i.i.i.i.i.i.i.i.i.i ]
  %_7.sroa.4.0.insert.ext.i.i.i.i.i.i.i.i.i.i = zext i32 %init_state.sroa.10.0.i.i.i.i.i.i.i.i.i.i.i.i.i to i64
  %_7.sroa.4.0.insert.shift.i.i.i.i.i.i.i.i.i.i = shl nuw nsw i64 %_7.sroa.4.0.insert.ext.i.i.i.i.i.i.i.i.i.i, 8
  %_7.sroa.4.0.insert.insert.i.i.i.i.i.i.i.i.i.i = or i64 %_7.sroa.4.0.insert.shift.i.i.i.i.i.i.i.i.i.i, %init_state.sroa.17.sroa.5.0.i.i.i.i.i.i.i.i.i.i.i.i.i
  %_7.sroa.0.0.insert.insert.i.i.i.i.i.i.i.i.i.i = or i64 %init_state.sroa.0.0.i.i.i.i.i.i.i.i.i.i.i.i.i, %init_state.sroa.17.sroa.5.0.i.i.i.i.i.i.i.i.i.i.i.i.i
  %mid.sroa.0.0.extract.trunc.i.i.i.i.i.i.i.i.i.i.i = trunc i64 %_7.sroa.0.0.insert.insert.i.i.i.i.i.i.i.i.i.i to i8
  %mid.sroa.7.0.extract.shift.i.i.i.i.i.i.i.i.i.i.i = lshr i64 %_7.sroa.4.0.insert.insert.i.i.i.i.i.i.i.i.i.i, 8
  %mid.sroa.7.0.extract.trunc.i.i.i.i.i.i.i.i.i.i.i = trunc i64 %mid.sroa.7.0.extract.shift.i.i.i.i.i.i.i.i.i.i.i to i32
  %mid.sroa.15.0.extract.shift.i.i.i.i.i.i.i.i.i.i.i = lshr i64 %init_state.sroa.17.sroa.5.0.i.i.i.i.i.i.i.i.i.i.i.i.i, 48
  %mid.sroa.15.0.extract.trunc.i.i.i.i.i.i.i.i.i.i.i = trunc i64 %mid.sroa.15.0.extract.shift.i.i.i.i.i.i.i.i.i.i.i to i16
  %150 = icmp eq i32 %mid.sroa.7.0.extract.trunc.i.i.i.i.i.i.i.i.i.i.i, 1114112
  br i1 %150, label %bb4.i.us.i.i.i.i.i.i.i.i.i.i.i, label %bb4.i.i.i.i.i.i.i.i.i63.i.i.i

bb4.i.us.i.i.i.i.i.i.i.i.i.i.i:                   ; preds = %"_ZN104_$LT$core..str..CharEscapeDebugContinue$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf4a8f76e59b6da59E.exit.i.i.i.i.i.i.i.i.i.i", %bb6.i.us.i.i.i.i.i.i.i.i.i.i.i
  %mid.sroa.9.0.us.i.i.i.i.i.i.i.i.i.i.i = phi i8 [ %mid.sroa.9.123.us.i.i.i.i.i.i.i.i.i.i.i, %bb6.i.us.i.i.i.i.i.i.i.i.i.i.i ], [ 5, %"_ZN104_$LT$core..str..CharEscapeDebugContinue$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf4a8f76e59b6da59E.exit.i.i.i.i.i.i.i.i.i.i" ]
  %mid.sroa.15.0.us.i.i.i.i.i.i.i.i.i.i.i = phi i16 [ %mid.sroa.15.125.us.i.i.i.i.i.i.i.i.i.i.i, %bb6.i.us.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.15.0.extract.trunc.i.i.i.i.i.i.i.i.i.i.i, %"_ZN104_$LT$core..str..CharEscapeDebugContinue$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf4a8f76e59b6da59E.exit.i.i.i.i.i.i.i.i.i.i" ]
  %mid.sroa.0.0.us.i.i.i.i.i.i.i.i.i.i.i = phi i8 [ %mid.sroa.0.127.us.i.i.i.i.i.i.i.i.i.i.i, %bb6.i.us.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.0.0.extract.trunc.i.i.i.i.i.i.i.i.i.i.i, %"_ZN104_$LT$core..str..CharEscapeDebugContinue$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf4a8f76e59b6da59E.exit.i.i.i.i.i.i.i.i.i.i" ]
  %trunc.i.i.us.i.i.i.i.i.i.i.i.i.i.i = trunc i8 %mid.sroa.0.0.us.i.i.i.i.i.i.i.i.i.i.i to i2
  switch i2 %trunc.i.i.us.i.i.i.i.i.i.i.i.i.i.i, label %bb2.i.i.us-lcssa.us38.i.i.i.i.i.i.i.i.i.i.i [
    i2 0, label %bb1.i.i.i.i.i.i.i.i.i4.backedge
    i2 1, label %bb1.i.i.i.i.i.i.i.i.i4.backedge
    i2 -2, label %bb6.i.us.i.i.i.i.i.i.i.i.i.i.i
    i2 -1, label %bb1.i.i.us.i.i.i.i.i.i.i.i.i.i.i
  ]

bb1.i.i.us.i.i.i.i.i.i.i.i.i.i.i:                 ; preds = %bb4.i.us.i.i.i.i.i.i.i.i.i.i.i
  %trunc.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i = trunc i8 %mid.sroa.9.0.us.i.i.i.i.i.i.i.i.i.i.i to i3
  switch i3 %trunc.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i, label %bb2.i.i.i.i.i.i.i.i.i.i.i.i.i.i [
    i3 0, label %bb1.i.i.i.i.i.i.i.i.i4.backedge
    i3 1, label %bb12.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i
    i3 2, label %bb6.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i
    i3 3, label %bb5.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i
    i3 -4, label %bb4.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i
    i3 -3, label %bb6.i.us.i.i.i.i.i.i.i.i.i.i.i
  ]

bb4.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i:               ; preds = %bb1.i.i.us.i.i.i.i.i.i.i.i.i.i.i
  br label %bb6.i.us.i.i.i.i.i.i.i.i.i.i.i

bb5.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i:               ; preds = %bb1.i.i.us.i.i.i.i.i.i.i.i.i.i.i
  br label %bb6.i.us.i.i.i.i.i.i.i.i.i.i.i

bb6.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i:               ; preds = %bb1.i.i.us.i.i.i.i.i.i.i.i.i.i.i
  %_10.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i = shl i16 %mid.sroa.15.0.us.i.i.i.i.i.i.i.i.i.i.i, 2
  %151 = and i16 %_10.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i, 28
  %152 = zext i16 %151 to i32
  %_7.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i = lshr i32 1114112, %152
  %153 = trunc i32 %_7.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i to i8
  %_15.i.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i = or i8 %153, 48
  %.0.i.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i = zext i8 %_15.i.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i to i32
  %_15.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i = icmp eq i16 %mid.sroa.15.0.us.i.i.i.i.i.i.i.i.i.i.i, 0
  %154 = add i16 %mid.sroa.15.0.us.i.i.i.i.i.i.i.i.i.i.i, -1
  %spec.select.us.i.i.i.i.i.i.i.i.i.i.i = select i1 %_15.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i, i16 0, i16 %154
  %spec.select36.us.i.i.i.i.i.i.i.i.i.i.i = select i1 %_15.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i, i8 1, i8 %mid.sroa.9.0.us.i.i.i.i.i.i.i.i.i.i.i
  br label %bb6.i.us.i.i.i.i.i.i.i.i.i.i.i

bb12.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i:              ; preds = %bb1.i.i.us.i.i.i.i.i.i.i.i.i.i.i
  br label %bb6.i.us.i.i.i.i.i.i.i.i.i.i.i

bb6.i.us.i.i.i.i.i.i.i.i.i.i.i:                   ; preds = %bb12.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i, %bb5.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i, %bb4.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i, %bb1.i.i.us.i.i.i.i.i.i.i.i.i.i.i, %bb4.i.us.i.i.i.i.i.i.i.i.i.i.i
  %.0.i.i29.us.i.i.i.i.i.i.i.i.i.i.i = phi i32 [ 125, %bb12.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i ], [ 123, %bb5.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i ], [ 117, %bb4.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i ], [ 92, %bb1.i.i.us.i.i.i.i.i.i.i.i.i.i.i ], [ 92, %bb4.i.us.i.i.i.i.i.i.i.i.i.i.i ], [ %.0.i.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i ]
  %mid.sroa.0.127.us.i.i.i.i.i.i.i.i.i.i.i = phi i8 [ %mid.sroa.0.0.us.i.i.i.i.i.i.i.i.i.i.i, %bb12.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.0.0.us.i.i.i.i.i.i.i.i.i.i.i, %bb5.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.0.0.us.i.i.i.i.i.i.i.i.i.i.i, %bb4.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.0.0.us.i.i.i.i.i.i.i.i.i.i.i, %bb1.i.i.us.i.i.i.i.i.i.i.i.i.i.i ], [ 1, %bb4.i.us.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.0.0.us.i.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i ]
  %mid.sroa.15.125.us.i.i.i.i.i.i.i.i.i.i.i = phi i16 [ %mid.sroa.15.0.us.i.i.i.i.i.i.i.i.i.i.i, %bb12.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.15.0.us.i.i.i.i.i.i.i.i.i.i.i, %bb5.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.15.0.us.i.i.i.i.i.i.i.i.i.i.i, %bb4.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.15.0.us.i.i.i.i.i.i.i.i.i.i.i, %bb1.i.i.us.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.15.0.us.i.i.i.i.i.i.i.i.i.i.i, %bb4.i.us.i.i.i.i.i.i.i.i.i.i.i ], [ %spec.select.us.i.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i ]
  %mid.sroa.9.123.us.i.i.i.i.i.i.i.i.i.i.i = phi i8 [ 0, %bb12.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i ], [ 2, %bb5.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i ], [ 3, %bb4.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i ], [ 4, %bb1.i.i.us.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.9.0.us.i.i.i.i.i.i.i.i.i.i.i, %bb4.i.us.i.i.i.i.i.i.i.i.i.i.i ], [ %spec.select36.us.i.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i ]
  %_3.0.i.i.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i = load {}*, {}** %122, align 1, !noalias !5523, !nonnull !568
  %_3.11.i.i.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %124, align 1, !noalias !5523, !nonnull !568
  %155 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11.i.i.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i, i16 4
  %156 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %155, align 1, !invariant.load !568, !noalias !5523, !nonnull !568
  %157 = call zeroext addrspace(1) i1 %156({}* nonnull align 1 %_3.0.i.i.i.i.i.us.i.i.i.i.i.i.i.i.i.i.i, i32 %.0.i.i29.us.i.i.i.i.i.i.i.i.i.i.i)
  br i1 %157, label %_ZN4core4iter6traits8iterator8Iterator12try_for_each17h310074cdfe6e6a38E.exit, label %bb4.i.us.i.i.i.i.i.i.i.i.i.i.i

bb2.i.i.us-lcssa.us38.i.i.i.i.i.i.i.i.i.i.i:      ; preds = %bb4.i.us.i.i.i.i.i.i.i.i.i.i.i
  unreachable

bb4.i.i.i.i.i.i.i.i.i63.i.i.i:                    ; preds = %"_ZN104_$LT$core..str..CharEscapeDebugContinue$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf4a8f76e59b6da59E.exit.i.i.i.i.i.i.i.i.i.i", %bb6.i.i.i.i.i.i.i.i.i64.i.i.i
  %mid.sroa.9.0.i.i.i.i.i.i.i.i.i.i.i = phi i8 [ %mid.sroa.9.123.i.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.i.i.i.i.i.i64.i.i.i ], [ 5, %"_ZN104_$LT$core..str..CharEscapeDebugContinue$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf4a8f76e59b6da59E.exit.i.i.i.i.i.i.i.i.i.i" ]
  %mid.sroa.15.0.i.i.i.i.i.i.i.i.i.i.i = phi i16 [ %mid.sroa.15.125.i.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.i.i.i.i.i.i64.i.i.i ], [ %mid.sroa.15.0.extract.trunc.i.i.i.i.i.i.i.i.i.i.i, %"_ZN104_$LT$core..str..CharEscapeDebugContinue$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf4a8f76e59b6da59E.exit.i.i.i.i.i.i.i.i.i.i" ]
  %mid.sroa.0.0.i.i.i.i.i.i.i.i.i.i.i = phi i8 [ %mid.sroa.0.127.i.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.i.i.i.i.i.i64.i.i.i ], [ %mid.sroa.0.0.extract.trunc.i.i.i.i.i.i.i.i.i.i.i, %"_ZN104_$LT$core..str..CharEscapeDebugContinue$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf4a8f76e59b6da59E.exit.i.i.i.i.i.i.i.i.i.i" ]
  %trunc.i.i.i.i.i.i.i.i.i.i.i.i.i11 = trunc i8 %mid.sroa.0.0.i.i.i.i.i.i.i.i.i.i.i to i2
  switch i2 %trunc.i.i.i.i.i.i.i.i.i.i.i.i.i11, label %bb2.i.i.us-lcssa39.i.i.i.i.i.i.i.i.i.i.i [
    i2 0, label %bb1.i.i.i.i.i.i.i.i.i4.backedge
    i2 1, label %"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit.i.i.i.i.i.i.i.i.i.i.i"
    i2 -2, label %bb6.i.i.i.i.i.i.i.i.i64.i.i.i
    i2 -1, label %bb1.i.i.i4.i.i.i.i.i.i.i.i.i.i
  ]

bb1.i.i.i4.i.i.i.i.i.i.i.i.i.i:                   ; preds = %bb4.i.i.i.i.i.i.i.i.i63.i.i.i
  %trunc.i.i.i.i.i.i.i.i.i.i.i.i.i.i = trunc i8 %mid.sroa.9.0.i.i.i.i.i.i.i.i.i.i.i to i3
  switch i3 %trunc.i.i.i.i.i.i.i.i.i.i.i.i.i.i, label %bb2.i.i.i.i.i.i.i.i.i.i.i.i.i.i [
    i3 0, label %bb1.i.i.i.i.i.i.i.i.i4.backedge
    i3 1, label %bb12.i.i.i.i.i.i.i.i.i.i.i.i.i.i
    i3 2, label %bb6.i.i.i.i.i.i.i.i.i.i.i.i.i.i
    i3 3, label %bb5.i.i.i.i.i.i.i.i.i.i.i.i.i.i
    i3 -4, label %bb4.i.i.i.i.i.i.i.i.i.i.i.i.i.i
    i3 -3, label %bb6.i.i.i.i.i.i.i.i.i64.i.i.i
  ]

bb2.i.i.i.i.i.i.i.i.i.i.i.i.i.i:                  ; preds = %bb1.i.i.i4.i.i.i.i.i.i.i.i.i.i, %bb1.i.i.us.i.i.i.i.i.i.i.i.i.i.i
  unreachable

bb4.i.i.i.i.i.i.i.i.i.i.i.i.i.i:                  ; preds = %bb1.i.i.i4.i.i.i.i.i.i.i.i.i.i
  br label %bb6.i.i.i.i.i.i.i.i.i64.i.i.i

bb5.i.i.i.i.i.i.i.i.i.i.i.i.i.i:                  ; preds = %bb1.i.i.i4.i.i.i.i.i.i.i.i.i.i
  br label %bb6.i.i.i.i.i.i.i.i.i64.i.i.i

bb6.i.i.i.i.i.i.i.i.i.i.i.i.i.i:                  ; preds = %bb1.i.i.i4.i.i.i.i.i.i.i.i.i.i
  %_10.i.i.i.i.i.i.i.i.i.i.i.i.i.i = shl i16 %mid.sroa.15.0.i.i.i.i.i.i.i.i.i.i.i, 2
  %158 = and i16 %_10.i.i.i.i.i.i.i.i.i.i.i.i.i.i, 28
  %159 = zext i16 %158 to i32
  %_7.i.i.i.i.i.i.i.i.i.i.i.i.i.i = lshr i32 %mid.sroa.7.0.extract.trunc.i.i.i.i.i.i.i.i.i.i.i, %159
  %160 = trunc i32 %_7.i.i.i.i.i.i.i.i.i.i.i.i.i.i to i8
  %num1.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i = and i8 %160, 15
  %_12.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i = icmp ult i8 %num1.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i, 10
  %_15.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i = or i8 %num1.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i, 48
  %_18.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i = add nuw nsw i8 %num1.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i, 87
  %.0.i.v.i.i.i.i.i.i.i.i.i.i.i.i.i.i = select i1 %_12.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i, i8 %_15.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i, i8 %_18.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i
  %.0.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i12 = zext i8 %.0.i.v.i.i.i.i.i.i.i.i.i.i.i.i.i.i to i32
  %_15.i.i.i.i.i.i.i.i.i.i.i.i.i.i = icmp eq i16 %mid.sroa.15.0.i.i.i.i.i.i.i.i.i.i.i, 0
  %161 = add i16 %mid.sroa.15.0.i.i.i.i.i.i.i.i.i.i.i, -1
  %spec.select.i.i.i.i.i.i.i.i.i.i.i = select i1 %_15.i.i.i.i.i.i.i.i.i.i.i.i.i.i, i16 0, i16 %161
  %spec.select36.i.i.i.i.i.i.i.i.i.i.i = select i1 %_15.i.i.i.i.i.i.i.i.i.i.i.i.i.i, i8 1, i8 %mid.sroa.9.0.i.i.i.i.i.i.i.i.i.i.i
  br label %bb6.i.i.i.i.i.i.i.i.i64.i.i.i

bb12.i.i.i.i.i.i.i.i.i.i.i.i.i.i:                 ; preds = %bb1.i.i.i4.i.i.i.i.i.i.i.i.i.i
  br label %bb6.i.i.i.i.i.i.i.i.i64.i.i.i

bb2.i.i.us-lcssa39.i.i.i.i.i.i.i.i.i.i.i:         ; preds = %bb4.i.i.i.i.i.i.i.i.i63.i.i.i
  unreachable

"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit.i.i.i.i.i.i.i.i.i.i.i": ; preds = %bb4.i.i.i.i.i.i.i.i.i63.i.i.i
  br label %bb6.i.i.i.i.i.i.i.i.i64.i.i.i

bb6.i.i.i.i.i.i.i.i.i64.i.i.i:                    ; preds = %"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit.i.i.i.i.i.i.i.i.i.i.i", %bb12.i.i.i.i.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.i.i.i.i.i.i.i.i.i.i.i, %bb5.i.i.i.i.i.i.i.i.i.i.i.i.i.i, %bb4.i.i.i.i.i.i.i.i.i.i.i.i.i.i, %bb1.i.i.i4.i.i.i.i.i.i.i.i.i.i, %bb4.i.i.i.i.i.i.i.i.i63.i.i.i
  %.0.i.i29.i.i.i.i.i.i.i.i.i.i.i = phi i32 [ %mid.sroa.7.0.extract.trunc.i.i.i.i.i.i.i.i.i.i.i, %"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit.i.i.i.i.i.i.i.i.i.i.i" ], [ 125, %bb12.i.i.i.i.i.i.i.i.i.i.i.i.i.i ], [ 123, %bb5.i.i.i.i.i.i.i.i.i.i.i.i.i.i ], [ 117, %bb4.i.i.i.i.i.i.i.i.i.i.i.i.i.i ], [ 92, %bb1.i.i.i4.i.i.i.i.i.i.i.i.i.i ], [ 92, %bb4.i.i.i.i.i.i.i.i.i63.i.i.i ], [ %.0.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i12, %bb6.i.i.i.i.i.i.i.i.i.i.i.i.i.i ]
  %mid.sroa.0.127.i.i.i.i.i.i.i.i.i.i.i = phi i8 [ 0, %"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit.i.i.i.i.i.i.i.i.i.i.i" ], [ %mid.sroa.0.0.i.i.i.i.i.i.i.i.i.i.i, %bb12.i.i.i.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.0.0.i.i.i.i.i.i.i.i.i.i.i, %bb5.i.i.i.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.0.0.i.i.i.i.i.i.i.i.i.i.i, %bb4.i.i.i.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.0.0.i.i.i.i.i.i.i.i.i.i.i, %bb1.i.i.i4.i.i.i.i.i.i.i.i.i.i ], [ 1, %bb4.i.i.i.i.i.i.i.i.i63.i.i.i ], [ %mid.sroa.0.0.i.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.i.i.i.i.i.i.i.i.i.i.i ]
  %mid.sroa.15.125.i.i.i.i.i.i.i.i.i.i.i = phi i16 [ %mid.sroa.15.0.i.i.i.i.i.i.i.i.i.i.i, %"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit.i.i.i.i.i.i.i.i.i.i.i" ], [ %mid.sroa.15.0.i.i.i.i.i.i.i.i.i.i.i, %bb12.i.i.i.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.15.0.i.i.i.i.i.i.i.i.i.i.i, %bb5.i.i.i.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.15.0.i.i.i.i.i.i.i.i.i.i.i, %bb4.i.i.i.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.15.0.i.i.i.i.i.i.i.i.i.i.i, %bb1.i.i.i4.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.15.0.i.i.i.i.i.i.i.i.i.i.i, %bb4.i.i.i.i.i.i.i.i.i63.i.i.i ], [ %spec.select.i.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.i.i.i.i.i.i.i.i.i.i.i ]
  %mid.sroa.9.123.i.i.i.i.i.i.i.i.i.i.i = phi i8 [ %mid.sroa.9.0.i.i.i.i.i.i.i.i.i.i.i, %"_ZN82_$LT$core..char..EscapeDebug$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99006f3573145f56E.exit.i.i.i.i.i.i.i.i.i.i.i" ], [ 0, %bb12.i.i.i.i.i.i.i.i.i.i.i.i.i.i ], [ 2, %bb5.i.i.i.i.i.i.i.i.i.i.i.i.i.i ], [ 3, %bb4.i.i.i.i.i.i.i.i.i.i.i.i.i.i ], [ 4, %bb1.i.i.i4.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.9.0.i.i.i.i.i.i.i.i.i.i.i, %bb4.i.i.i.i.i.i.i.i.i63.i.i.i ], [ %spec.select36.i.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.i.i.i.i.i.i.i.i.i.i.i ]
  %_3.0.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i = load {}*, {}** %122, align 1, !noalias !5523, !nonnull !568
  %_3.11.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %124, align 1, !noalias !5523, !nonnull !568
  %162 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i, i16 4
  %163 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %162, align 1, !invariant.load !568, !noalias !5523, !nonnull !568
  %164 = call zeroext addrspace(1) i1 %163({}* nonnull align 1 %_3.0.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i, i32 %.0.i.i29.i.i.i.i.i.i.i.i.i.i.i)
  br i1 %164, label %_ZN4core4iter6traits8iterator8Iterator12try_for_each17h310074cdfe6e6a38E.exit, label %bb4.i.i.i.i.i.i.i.i.i63.i.i.i

bb21.i.i66.i.i.i:                                 ; preds = %bb1.i.i.i.i.i.i.i.i.i4.backedge, %bb4.i.i.i.i.i.i.i.i.i6, %bb17.i.i60.i.i.i
  %_4.sroa.67.36.extract.trunc = trunc i64 %_7.sroa.7.0.i.i to i8
  %165 = icmp eq i8 %_4.sroa.67.36.extract.trunc, 4
  br i1 %165, label %_ZN4core4iter6traits8iterator8Iterator12try_for_each17h310074cdfe6e6a38E.exit, label %bb4.i38.i.i68.i.i.i.preheader

bb4.i38.i.i68.i.i.i.preheader:                    ; preds = %bb21.i.i66.i.i.i
  %166 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %0, i16 0, i32 11, i32 0
  %167 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %0, i16 0, i32 11, i32 1
  %168 = bitcast [3 x i16]** %167 to i1 ({}*, i32) addrspace(1)***
  br label %bb4.i38.i.i68.i.i.i

bb4.i38.i.i68.i.i.i:                              ; preds = %bb6.i42.i.i.i.i.i, %bb4.i38.i.i68.i.i.i.preheader
  %_4.sroa.67.0 = phi i64 [ %_4.sroa.67.1, %bb6.i42.i.i.i.i.i ], [ %_7.sroa.7.0.i.i, %bb4.i38.i.i68.i.i.i.preheader ]
  %169 = phi i8 [ %_4.sroa.67.36.extract.trunc91, %bb6.i42.i.i.i.i.i ], [ %_4.sroa.67.36.extract.trunc, %bb4.i38.i.i68.i.i.i.preheader ]
  %trunc.i.i46.i.i.i.i.i = trunc i8 %169 to i2
  switch i2 %trunc.i.i46.i.i.i.i.i, label %bb2.i.i68.i.i.i.i.i [
    i2 0, label %_ZN4core4iter6traits8iterator8Iterator12try_for_each17h310074cdfe6e6a38E.exit
    i2 1, label %bb4.i.i71.i.i.i.i.i
    i2 -2, label %bb3.i.i69.i.i.i.i.i
    i2 -1, label %bb1.i.i48.i.i.i.i.i
  ]

bb1.i.i48.i.i.i.i.i:                              ; preds = %bb4.i38.i.i68.i.i.i
  %_4.sroa.67.41.extract.shift = lshr i64 %_4.sroa.67.0, 40
  %trunc.i.i.i47.i.i.i.i.i = trunc i64 %_4.sroa.67.41.extract.shift to i3
  switch i3 %trunc.i.i.i47.i.i.i.i.i, label %bb2.i.i.i49.i.i.i.i.i [
    i3 0, label %_ZN4core4iter6traits8iterator8Iterator12try_for_each17h310074cdfe6e6a38E.exit
    i3 1, label %bb12.i.i.i67.i.i.i.i.i
    i3 2, label %bb6.i.i.i64.i.i.i.i.i
    i3 3, label %bb5.i.i.i52.i.i.i.i.i
    i3 -4, label %bb4.i.i.i51.i.i.i.i.i
    i3 -3, label %bb3.i.i.i50.i.i.i.i.i
  ]

bb2.i.i.i49.i.i.i.i.i:                            ; preds = %bb1.i.i48.i.i.i.i.i
  unreachable

bb3.i.i.i50.i.i.i.i.i:                            ; preds = %bb1.i.i48.i.i.i.i.i
  %_4.sroa.67.41.insert.mask104 = and i64 %_4.sroa.67.0, -280375465082881
  %_4.sroa.67.41.insert.insert105 = or i64 %_4.sroa.67.41.insert.mask104, 4398046511104
  br label %bb6.i42.i.i.i.i.i

bb4.i.i.i51.i.i.i.i.i:                            ; preds = %bb1.i.i48.i.i.i.i.i
  %_4.sroa.67.41.insert.mask101 = and i64 %_4.sroa.67.0, -280375465082881
  %_4.sroa.67.41.insert.insert102 = or i64 %_4.sroa.67.41.insert.mask101, 3298534883328
  br label %bb6.i42.i.i.i.i.i

bb5.i.i.i52.i.i.i.i.i:                            ; preds = %bb1.i.i48.i.i.i.i.i
  %_4.sroa.67.41.insert.mask98 = and i64 %_4.sroa.67.0, -280375465082881
  %_4.sroa.67.41.insert.insert99 = or i64 %_4.sroa.67.41.insert.mask98, 2199023255552
  br label %bb6.i42.i.i.i.i.i

bb6.i.i.i64.i.i.i.i.i:                            ; preds = %bb1.i.i48.i.i.i.i.i
  %_4.sroa.67.37.extract.shift = lshr i64 %_4.sroa.67.0, 8
  %_4.sroa.67.37.extract.trunc = trunc i64 %_4.sroa.67.37.extract.shift to i32
  %_4.sroa.67.42.extract.shift = lshr i64 %_4.sroa.67.0, 48
  %_4.sroa.67.42.extract.trunc = trunc i64 %_4.sroa.67.42.extract.shift to i16
  %_10.i.i.i55.i.i.i.i.i143 = shl nuw nsw i64 %_4.sroa.67.42.extract.shift, 2
  %_10.i.i.i55.i.i.i.i.i = trunc i64 %_10.i.i.i55.i.i.i.i.i143 to i16
  %170 = and i16 %_10.i.i.i55.i.i.i.i.i, 28
  %171 = zext i16 %170 to i32
  %_7.i.i.i56.i.i.i.i.i = lshr i32 %_4.sroa.67.37.extract.trunc, %171
  %172 = trunc i32 %_7.i.i.i56.i.i.i.i.i to i8
  %num1.i.i.i.i57.i.i.i.i.i = and i8 %172, 15
  %_12.i.i.i.i58.i.i.i.i.i = icmp ult i8 %num1.i.i.i.i57.i.i.i.i.i, 10
  %_15.i.i.i.i59.i.i.i.i.i = or i8 %num1.i.i.i.i57.i.i.i.i.i, 48
  %_18.i.i.i.i60.i.i.i.i.i = add nuw nsw i8 %num1.i.i.i.i57.i.i.i.i.i, 87
  %.0.i.v.i.i.i61.i.i.i.i.i = select i1 %_12.i.i.i.i58.i.i.i.i.i, i8 %_15.i.i.i.i59.i.i.i.i.i, i8 %_18.i.i.i.i60.i.i.i.i.i
  %.0.i.i.i.i62.i.i.i.i.i = zext i8 %.0.i.v.i.i.i61.i.i.i.i.i to i32
  %_15.i.i.i63.i.i.i.i.i = icmp eq i16 %_4.sroa.67.42.extract.trunc, 0
  br i1 %_15.i.i.i63.i.i.i.i.i, label %bb10.i.i.i66.i.i.i.i.i, label %bb9.i.i.i65.i.i.i.i.i

bb9.i.i.i65.i.i.i.i.i:                            ; preds = %bb6.i.i.i64.i.i.i.i.i
  %173 = add i16 %_4.sroa.67.42.extract.trunc, -1
  %_4.sroa.67.42.insert.ext = zext i16 %173 to i64
  %_4.sroa.67.42.insert.shift = shl nuw i64 %_4.sroa.67.42.insert.ext, 48
  %_4.sroa.67.42.insert.mask = and i64 %_4.sroa.67.0, 281474976710655
  %_4.sroa.67.42.insert.insert = or i64 %_4.sroa.67.42.insert.shift, %_4.sroa.67.42.insert.mask
  br label %bb6.i42.i.i.i.i.i

bb10.i.i.i66.i.i.i.i.i:                           ; preds = %bb6.i.i.i64.i.i.i.i.i
  %_4.sroa.67.41.insert.mask96 = and i64 %_4.sroa.67.0, -280375465082881
  %_4.sroa.67.41.insert.insert = or i64 %_4.sroa.67.41.insert.mask96, 1099511627776
  br label %bb6.i42.i.i.i.i.i

bb12.i.i.i67.i.i.i.i.i:                           ; preds = %bb1.i.i48.i.i.i.i.i
  %_4.sroa.67.41.insert.mask = and i64 %_4.sroa.67.0, -280375465082881
  br label %bb6.i42.i.i.i.i.i

bb2.i.i68.i.i.i.i.i:                              ; preds = %bb4.i38.i.i68.i.i.i
  unreachable

bb3.i.i69.i.i.i.i.i:                              ; preds = %bb4.i38.i.i68.i.i.i
  %_4.sroa.67.36.insert.mask86 = and i64 %_4.sroa.67.0, -256
  %_4.sroa.67.36.insert.insert87 = or i64 %_4.sroa.67.36.insert.mask86, 1
  br label %bb6.i42.i.i.i.i.i

bb4.i.i71.i.i.i.i.i:                              ; preds = %bb4.i38.i.i68.i.i.i
  %_4.sroa.67.37.extract.shift93 = lshr i64 %_4.sroa.67.0, 8
  %_4.sroa.67.37.extract.trunc94 = trunc i64 %_4.sroa.67.37.extract.shift93 to i32
  %_4.sroa.67.36.insert.mask89 = and i64 %_4.sroa.67.0, -256
  br label %bb6.i42.i.i.i.i.i

bb6.i42.i.i.i.i.i:                                ; preds = %bb4.i.i71.i.i.i.i.i, %bb3.i.i69.i.i.i.i.i, %bb12.i.i.i67.i.i.i.i.i, %bb10.i.i.i66.i.i.i.i.i, %bb9.i.i.i65.i.i.i.i.i, %bb5.i.i.i52.i.i.i.i.i, %bb4.i.i.i51.i.i.i.i.i, %bb3.i.i.i50.i.i.i.i.i
  %_4.sroa.67.1 = phi i64 [ %_4.sroa.67.41.insert.insert105, %bb3.i.i.i50.i.i.i.i.i ], [ %_4.sroa.67.41.insert.insert102, %bb4.i.i.i51.i.i.i.i.i ], [ %_4.sroa.67.41.insert.insert99, %bb5.i.i.i52.i.i.i.i.i ], [ %_4.sroa.67.41.insert.insert, %bb10.i.i.i66.i.i.i.i.i ], [ %_4.sroa.67.42.insert.insert, %bb9.i.i.i65.i.i.i.i.i ], [ %_4.sroa.67.41.insert.mask, %bb12.i.i.i67.i.i.i.i.i ], [ %_4.sroa.67.36.insert.insert87, %bb3.i.i69.i.i.i.i.i ], [ %_4.sroa.67.36.insert.mask89, %bb4.i.i71.i.i.i.i.i ]
  %.0.i.i72.ph.i.i.i.i.i = phi i32 [ 92, %bb3.i.i.i50.i.i.i.i.i ], [ 117, %bb4.i.i.i51.i.i.i.i.i ], [ 123, %bb5.i.i.i52.i.i.i.i.i ], [ %.0.i.i.i.i62.i.i.i.i.i, %bb10.i.i.i66.i.i.i.i.i ], [ %.0.i.i.i.i62.i.i.i.i.i, %bb9.i.i.i65.i.i.i.i.i ], [ 125, %bb12.i.i.i67.i.i.i.i.i ], [ 92, %bb3.i.i69.i.i.i.i.i ], [ %_4.sroa.67.37.extract.trunc94, %bb4.i.i71.i.i.i.i.i ]
  %_3.0.i.i.i.i.i40.i.i.i.i.i = load {}*, {}** %166, align 1, !nonnull !568
  %_3.11.i.i.i.i.i41.i.i.i.i.i = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %168, align 1, !nonnull !568
  %174 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11.i.i.i.i.i41.i.i.i.i.i, i16 4
  %175 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %174, align 1, !invariant.load !568, !nonnull !568
  %176 = call zeroext addrspace(1) i1 %175({}* nonnull align 1 %_3.0.i.i.i.i.i40.i.i.i.i.i, i32 %.0.i.i72.ph.i.i.i.i.i)
  %_4.sroa.67.36.extract.trunc91 = trunc i64 %_4.sroa.67.1 to i8
  br i1 %176, label %_ZN4core4iter6traits8iterator8Iterator12try_for_each17h310074cdfe6e6a38E.exit, label %bb4.i38.i.i68.i.i.i

_ZN4core4iter6traits8iterator8Iterator12try_for_each17h310074cdfe6e6a38E.exit: ; preds = %bb6.i.i.i.i.i.i, %bb6.i.i.i.i.i.i.i.i.i.i, %bb6.i.us.i.i.i.i.i.i.i.i.i, %bb6.i43.i.i.i.i.i, %bb6.i.i.i53.i.i.i, %bb6.i.i.i.i.i.i.i.i.i64.i.i.i, %bb6.i.us.i.i.i.i.i.i.i.i.i.i.i, %bb4.i38.i.i68.i.i.i, %bb1.i.i48.i.i.i.i.i, %bb6.i42.i.i.i.i.i, %bb21.i.i66.i.i.i, %bb14.i.i.i
  %merge.i.i.i = phi i1 [ false, %bb14.i.i.i ], [ false, %bb21.i.i66.i.i.i ], [ false, %bb4.i38.i.i68.i.i.i ], [ false, %bb1.i.i48.i.i.i.i.i ], [ true, %bb6.i42.i.i.i.i.i ], [ true, %bb6.i.us.i.i.i.i.i.i.i.i.i.i.i ], [ true, %bb6.i.i.i.i.i.i.i.i.i64.i.i.i ], [ true, %bb6.i.i.i53.i.i.i ], [ true, %bb6.i43.i.i.i.i.i ], [ true, %bb6.i.us.i.i.i.i.i.i.i.i.i ], [ true, %bb6.i.i.i.i.i.i.i.i.i.i ], [ true, %bb6.i.i.i.i.i.i ]
  ret i1 %merge.i.i.i
}

; <core::str::EscapeDefault as core::fmt::Display>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN63_$LT$core..str..EscapeDefault$u20$as$u20$core..fmt..Display$GT$3fmt17h456f240546f17b9bE"(%"str::EscapeDefault"* noalias nocapture readonly align 1 dereferenceable(20) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %0) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %__self_0_0.idx.i.i.i = bitcast %"str::EscapeDefault"* %self to i8**
  %__self_0_0.idx.val.i.i.i = load i8*, i8** %__self_0_0.idx.i.i.i, align 1, !alias.scope !5526, !noalias !5535
  %1 = getelementptr %"str::EscapeDefault", %"str::EscapeDefault"* %self, i16 0, i32 1, i32 1, i32 1, i32 1
  %__self_0_0.idx6.val.i.i.i = load i8*, i8** %1, align 1, !alias.scope !5526, !noalias !5535
  %2 = getelementptr inbounds %"str::EscapeDefault", %"str::EscapeDefault"* %self, i16 0, i32 1, i32 1, i32 3, i32 0, i16 0
  %3 = load i8, i8* %2, align 1, !range !632, !alias.scope !5539, !noalias !5542
  %4 = icmp eq i8 %3, 4
  br i1 %4, label %bb3.i.i.i, label %bb3.i9.i.i.i

bb3.i9.i.i.i:                                     ; preds = %start
  %trunc.i.i.i8.i.i.i = trunc i8 %3 to i2
  switch i2 %trunc.i.i.i8.i.i.i, label %bb2.i.i.i26.i.i.i [
    i2 0, label %"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE.exit.i42.i.i.i"
    i2 1, label %bb4.i.i.i28.i.i.i
    i2 -2, label %bb6.i.i.i30.i.i.i
    i2 -1, label %bb1.i.i.i14.i.i.i
  ]

bb1.i.i.i14.i.i.i:                                ; preds = %bb3.i9.i.i.i
  %5 = getelementptr inbounds %"str::EscapeDefault", %"str::EscapeDefault"* %self, i16 0, i32 1, i32 1, i32 3, i32 2
  %__self_0_0.i.i.i.i10.i.i.i = bitcast [7 x i8]* %5 to i32*
  %6 = getelementptr inbounds %"str::EscapeDefault", %"str::EscapeDefault"* %self, i16 0, i32 1, i32 1, i32 3, i32 2, i16 4
  %7 = getelementptr inbounds %"str::EscapeDefault", %"str::EscapeDefault"* %self, i16 0, i32 1, i32 1, i32 3, i32 2, i16 5
  %8 = bitcast i8* %7 to i16*
  %__self_0_0.val.i.i.i.i11.i.i.i = load i32, i32* %__self_0_0.i.i.i.i10.i.i.i, align 1, !alias.scope !5544, !noalias !5551
  %__self_0_1.val.i.i.i.i12.i.i.i = load i8, i8* %6, align 1, !alias.scope !5544, !noalias !5551
  %trunc.i.i.i.i.i13.i.i.i = trunc i8 %__self_0_1.val.i.i.i.i12.i.i.i to i3
  %switch.tableidx = xor i3 %trunc.i.i.i.i.i13.i.i.i, -4
  %switch.maskindex = zext i3 %switch.tableidx to i8
  %switch.shifted = lshr i8 -13, %switch.maskindex
  %9 = and i8 %switch.shifted, 1
  %switch.lobit = icmp ne i8 %9, 0
  call addrspace(1) void @llvm.assume(i1 %switch.lobit)
  %10 = zext i3 %switch.tableidx to i16
  %switch.gep = getelementptr inbounds [8 x i8], [8 x i8]* @"switch.table._ZN63_$LT$core..str..EscapeUnicode$u20$as$u20$core..fmt..Display$GT$3fmt17hcefaf5179aadfe2dE.195", i16 0, i16 %10
  %switch.load = load i8, i8* %switch.gep, align 1
  %__self_0_2.val.i.i.i.i22.i.i.i = load i16, i16* %8, align 1, !alias.scope !5544, !noalias !5551
  %phitmp.i.i23.i.i.i = zext i16 %__self_0_2.val.i.i.i.i22.i.i.i to i64
  %phitmp3.i.i24.i.i.i = shl nuw i64 %phitmp.i.i23.i.i.i, 48
  %phitmp = zext i8 %switch.load to i64
  %phitmp100 = shl nuw nsw i64 %phitmp, 40
  br label %"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE.exit.i42.i.i.i"

bb2.i.i.i26.i.i.i:                                ; preds = %bb3.i9.i.i.i
  unreachable

bb4.i.i.i28.i.i.i:                                ; preds = %bb3.i9.i.i.i
  %11 = getelementptr inbounds %"str::EscapeDefault", %"str::EscapeDefault"* %self, i16 0, i32 1, i32 1, i32 3, i32 2
  %12 = bitcast [7 x i8]* %11 to i32*
  %.val.i.i.i27.i.i.i = load i32, i32* %12, align 1, !alias.scope !5555, !noalias !5556
  br label %"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE.exit.i42.i.i.i"

bb6.i.i.i30.i.i.i:                                ; preds = %bb3.i9.i.i.i
  %13 = getelementptr inbounds %"str::EscapeDefault", %"str::EscapeDefault"* %self, i16 0, i32 1, i32 1, i32 3, i32 2
  %14 = bitcast [7 x i8]* %13 to i32*
  %.val7.i.i.i29.i.i.i = load i32, i32* %14, align 1, !alias.scope !5555, !noalias !5556
  br label %"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE.exit.i42.i.i.i"

"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE.exit.i42.i.i.i": ; preds = %bb6.i.i.i30.i.i.i, %bb4.i.i.i28.i.i.i, %bb1.i.i.i14.i.i.i, %bb3.i9.i.i.i
  %_3.sroa.11.0.i.i31.i.i.i = phi i64 [ %phitmp3.i.i24.i.i.i, %bb1.i.i.i14.i.i.i ], [ 0, %bb6.i.i.i30.i.i.i ], [ 0, %bb4.i.i.i28.i.i.i ], [ 0, %bb3.i9.i.i.i ]
  %_3.sroa.10.0.i.i32.i.i.i = phi i64 [ %phitmp100, %bb1.i.i.i14.i.i.i ], [ 0, %bb6.i.i.i30.i.i.i ], [ 0, %bb4.i.i.i28.i.i.i ], [ 0, %bb3.i9.i.i.i ]
  %_3.sroa.7.0.i.i33.i.i.i = phi i32 [ %__self_0_0.val.i.i.i.i11.i.i.i, %bb1.i.i.i14.i.i.i ], [ %.val7.i.i.i29.i.i.i, %bb6.i.i.i30.i.i.i ], [ %.val.i.i.i27.i.i.i, %bb4.i.i.i28.i.i.i ], [ undef, %bb3.i9.i.i.i ]
  %_3.sroa.0.0.i.i34.i.i.i = phi i64 [ 3, %bb1.i.i.i14.i.i.i ], [ 2, %bb6.i.i.i30.i.i.i ], [ 1, %bb4.i.i.i28.i.i.i ], [ 0, %bb3.i9.i.i.i ]
  %_3.sroa.10.0.insert.insert.i.i37.i.i.i = or i64 %_3.sroa.10.0.i.i32.i.i.i, %_3.sroa.11.0.i.i31.i.i.i
  %_3.sroa.7.0.insert.ext.i.i38.i.i.i = zext i32 %_3.sroa.7.0.i.i33.i.i.i to i64
  %_3.sroa.7.0.insert.shift.i.i39.i.i.i = shl nuw nsw i64 %_3.sroa.7.0.insert.ext.i.i38.i.i.i, 8
  %_3.sroa.0.0.insert.insert.i.i41.i.i.i = or i64 %_3.sroa.10.0.insert.insert.i.i37.i.i.i, %_3.sroa.7.0.insert.shift.i.i39.i.i.i
  br label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE.exit.i42.i.i.i", %start
  %_8.sroa.5.sroa.0.0.i.i.i = phi i64 [ %_3.sroa.0.0.insert.insert.i.i41.i.i.i, %"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE.exit.i42.i.i.i" ], [ 0, %start ]
  %_8.sroa.0.0.i.i.i = phi i64 [ %_3.sroa.0.0.i.i34.i.i.i, %"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE.exit.i42.i.i.i" ], [ 4, %start ]
  %15 = getelementptr inbounds %"str::EscapeDefault", %"str::EscapeDefault"* %self, i16 0, i32 1, i32 1, i32 5, i32 0, i16 0
  %16 = load i8, i8* %15, align 1, !range !632, !alias.scope !5557, !noalias !5560
  %17 = icmp eq i8 %16, 4
  br i1 %17, label %"_ZN63_$LT$core..str..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h37c06d3c469a8844E.exit", label %bb3.i.i.i.i

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %trunc.i.i.i.i.i.i = trunc i8 %16 to i2
  switch i2 %trunc.i.i.i.i.i.i, label %bb2.i.i.i.i.i.i [
    i2 0, label %"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE.exit.i.i.i.i"
    i2 1, label %bb4.i.i.i.i.i.i
    i2 -2, label %bb6.i.i.i.i.i.i
    i2 -1, label %bb1.i.i.i.i.i.i
  ]

bb1.i.i.i.i.i.i:                                  ; preds = %bb3.i.i.i.i
  %18 = getelementptr inbounds %"str::EscapeDefault", %"str::EscapeDefault"* %self, i16 0, i32 1, i32 1, i32 5, i32 2
  %__self_0_0.i.i.i.i.i.i.i = bitcast [7 x i8]* %18 to i32*
  %19 = getelementptr inbounds %"str::EscapeDefault", %"str::EscapeDefault"* %self, i16 0, i32 1, i32 1, i32 5, i32 2, i16 4
  %20 = getelementptr inbounds %"str::EscapeDefault", %"str::EscapeDefault"* %self, i16 0, i32 1, i32 1, i32 5, i32 2, i16 5
  %21 = bitcast i8* %20 to i16*
  %__self_0_0.val.i.i.i.i.i.i.i = load i32, i32* %__self_0_0.i.i.i.i.i.i.i, align 1, !alias.scope !5562, !noalias !5569
  %__self_0_1.val.i.i.i.i.i.i.i = load i8, i8* %19, align 1, !alias.scope !5562, !noalias !5569
  %trunc.i.i.i.i.i.i.i.i = trunc i8 %__self_0_1.val.i.i.i.i.i.i.i to i3
  %switch.tableidx92 = xor i3 %trunc.i.i.i.i.i.i.i.i, -4
  %switch.maskindex93 = zext i3 %switch.tableidx92 to i8
  %switch.shifted94 = lshr i8 -13, %switch.maskindex93
  %22 = and i8 %switch.shifted94, 1
  %switch.lobit95 = icmp ne i8 %22, 0
  call addrspace(1) void @llvm.assume(i1 %switch.lobit95)
  %23 = zext i3 %switch.tableidx92 to i16
  %switch.gep97 = getelementptr inbounds [8 x i8], [8 x i8]* @"switch.table._ZN63_$LT$core..str..EscapeUnicode$u20$as$u20$core..fmt..Display$GT$3fmt17hcefaf5179aadfe2dE.195", i16 0, i16 %23
  %switch.load98 = load i8, i8* %switch.gep97, align 1
  %__self_0_2.val.i.i.i.i.i.i.i = load i16, i16* %21, align 1, !alias.scope !5562, !noalias !5569
  %phitmp.i.i.i.i.i = zext i16 %__self_0_2.val.i.i.i.i.i.i.i to i64
  %phitmp3.i.i.i.i.i = shl nuw i64 %phitmp.i.i.i.i.i, 48
  %phitmp101 = zext i8 %switch.load98 to i64
  %phitmp102 = shl nuw nsw i64 %phitmp101, 40
  br label %"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE.exit.i.i.i.i"

bb2.i.i.i.i.i.i:                                  ; preds = %bb3.i.i.i.i
  unreachable

bb4.i.i.i.i.i.i:                                  ; preds = %bb3.i.i.i.i
  %24 = getelementptr inbounds %"str::EscapeDefault", %"str::EscapeDefault"* %self, i16 0, i32 1, i32 1, i32 5, i32 2
  %25 = bitcast [7 x i8]* %24 to i32*
  %.val.i.i.i.i.i.i = load i32, i32* %25, align 1, !alias.scope !5573, !noalias !5574
  br label %"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE.exit.i.i.i.i"

bb6.i.i.i.i.i.i:                                  ; preds = %bb3.i.i.i.i
  %26 = getelementptr inbounds %"str::EscapeDefault", %"str::EscapeDefault"* %self, i16 0, i32 1, i32 1, i32 5, i32 2
  %27 = bitcast [7 x i8]* %26 to i32*
  %.val7.i.i.i.i.i.i = load i32, i32* %27, align 1, !alias.scope !5573, !noalias !5574
  br label %"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE.exit.i.i.i.i"

"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE.exit.i.i.i.i": ; preds = %bb6.i.i.i.i.i.i, %bb4.i.i.i.i.i.i, %bb1.i.i.i.i.i.i, %bb3.i.i.i.i
  %_3.sroa.11.0.i.i.i.i.i = phi i64 [ %phitmp3.i.i.i.i.i, %bb1.i.i.i.i.i.i ], [ 0, %bb6.i.i.i.i.i.i ], [ 0, %bb4.i.i.i.i.i.i ], [ 0, %bb3.i.i.i.i ]
  %_3.sroa.10.0.i.i.i.i.i = phi i64 [ %phitmp102, %bb1.i.i.i.i.i.i ], [ 0, %bb6.i.i.i.i.i.i ], [ 0, %bb4.i.i.i.i.i.i ], [ 0, %bb3.i.i.i.i ]
  %_3.sroa.7.0.i.i.i.i.i = phi i32 [ %__self_0_0.val.i.i.i.i.i.i.i, %bb1.i.i.i.i.i.i ], [ %.val7.i.i.i.i.i.i, %bb6.i.i.i.i.i.i ], [ %.val.i.i.i.i.i.i, %bb4.i.i.i.i.i.i ], [ undef, %bb3.i.i.i.i ]
  %_3.sroa.0.0.i.i.i.i.i = phi i64 [ 3, %bb1.i.i.i.i.i.i ], [ 2, %bb6.i.i.i.i.i.i ], [ 1, %bb4.i.i.i.i.i.i ], [ 0, %bb3.i.i.i.i ]
  %_3.sroa.10.0.insert.insert.i.i.i.i.i = or i64 %_3.sroa.10.0.i.i.i.i.i, %_3.sroa.11.0.i.i.i.i.i
  %_3.sroa.7.0.insert.ext.i.i.i.i.i = zext i32 %_3.sroa.7.0.i.i.i.i.i to i64
  %_3.sroa.7.0.insert.shift.i.i.i.i.i = shl nuw nsw i64 %_3.sroa.7.0.insert.ext.i.i.i.i.i, 8
  %_3.sroa.0.0.insert.insert.i.i.i.i.i = or i64 %_3.sroa.10.0.insert.insert.i.i.i.i.i, %_3.sroa.7.0.insert.shift.i.i.i.i.i
  br label %"_ZN63_$LT$core..str..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h37c06d3c469a8844E.exit"

"_ZN63_$LT$core..str..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h37c06d3c469a8844E.exit": ; preds = %bb3.i.i.i, %"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE.exit.i.i.i.i"
  %_11.sroa.5.sroa.0.0.i.i.i = phi i64 [ %_3.sroa.0.0.insert.insert.i.i.i.i.i, %"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE.exit.i.i.i.i" ], [ 0, %bb3.i.i.i ]
  %_11.sroa.0.0.i.i.i = phi i64 [ %_3.sroa.0.0.i.i.i.i.i, %"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE.exit.i.i.i.i" ], [ 4, %bb3.i.i.i ]
  %_8.sroa.0.0.insert.insert.i.i.i = or i64 %_8.sroa.0.0.i.i.i, %_8.sroa.5.sroa.0.0.i.i.i
  %_11.sroa.0.0.insert.insert.i.i.i = or i64 %_11.sroa.0.0.i.i.i, %_11.sroa.5.sroa.0.0.i.i.i
  %_4.sroa.10.sroa.0.0.extract.trunc = trunc i64 %_8.sroa.0.0.insert.insert.i.i.i to i8
  %_4.sroa.10.sroa.10.0.extract.shift = lshr i64 %_8.sroa.0.0.insert.insert.i.i.i, 8
  %_4.sroa.10.sroa.10.0.extract.trunc = trunc i64 %_4.sroa.10.sroa.10.0.extract.shift to i32
  %28 = icmp eq i8 %_4.sroa.10.sroa.0.0.extract.trunc, 4
  br i1 %28, label %bb17.i.i.i.i, label %bb4.i.i.i.i.i.preheader

bb4.i.i.i.i.i.preheader:                          ; preds = %"_ZN63_$LT$core..str..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h37c06d3c469a8844E.exit"
  %_4.sroa.10.sroa.18.0.extract.shift = lshr i64 %_8.sroa.0.0.insert.insert.i.i.i, 48
  %_4.sroa.10.sroa.18.0.extract.trunc = trunc i64 %_4.sroa.10.sroa.18.0.extract.shift to i16
  %_4.sroa.10.sroa.12.0.extract.shift = lshr i64 %_8.sroa.0.0.insert.insert.i.i.i, 40
  %_4.sroa.10.sroa.12.0.extract.trunc = trunc i64 %_4.sroa.10.sroa.12.0.extract.shift to i8
  %29 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %0, i16 0, i32 11, i32 0
  %30 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %0, i16 0, i32 11, i32 1
  %31 = bitcast [3 x i16]** %30 to i1 ({}*, i32) addrspace(1)***
  br label %bb4.i.i.i.i.i

bb4.i.i.i.i.i:                                    ; preds = %bb4.i.i.i.i.i.preheader, %bb6.i.i.i.i.i
  %_4.sroa.10.sroa.0.0 = phi i8 [ %_4.sroa.10.sroa.0.1, %bb6.i.i.i.i.i ], [ %_4.sroa.10.sroa.0.0.extract.trunc, %bb4.i.i.i.i.i.preheader ]
  %_4.sroa.10.sroa.12.0 = phi i8 [ %_4.sroa.10.sroa.12.1, %bb6.i.i.i.i.i ], [ %_4.sroa.10.sroa.12.0.extract.trunc, %bb4.i.i.i.i.i.preheader ]
  %_4.sroa.10.sroa.18.0 = phi i16 [ %_4.sroa.10.sroa.18.1, %bb6.i.i.i.i.i ], [ %_4.sroa.10.sroa.18.0.extract.trunc, %bb4.i.i.i.i.i.preheader ]
  %trunc.i.i.i.i.i = trunc i8 %_4.sroa.10.sroa.0.0 to i2
  switch i2 %trunc.i.i.i.i.i, label %bb2.i.i.i.i.i [
    i2 0, label %bb17.i.i.i.i
    i2 1, label %bb4.i38.i.i.i.i
    i2 -2, label %bb6.i.i.i.i.i
    i2 -1, label %bb1.i.i.i.i.i
  ]

bb1.i.i.i.i.i:                                    ; preds = %bb4.i.i.i.i.i
  %trunc.i.i.i.i.i.i3 = trunc i8 %_4.sroa.10.sroa.12.0 to i3
  switch i3 %trunc.i.i.i.i.i.i3, label %bb2.i.i.i.i.i.i4 [
    i3 0, label %bb17.i.i.i.i
    i3 1, label %bb12.i.i.i.i.i.i
    i3 2, label %bb6.i.i.i.i.i.i6
    i3 3, label %bb5.i.i.i.i.i.i
    i3 -4, label %bb4.i.i.i.i.i.i5
    i3 -3, label %bb6.i.i.i.i.i
  ]

bb2.i.i.i.i.i.i4:                                 ; preds = %bb1.i.i.i.i.i
  unreachable

bb4.i.i.i.i.i.i5:                                 ; preds = %bb1.i.i.i.i.i
  br label %bb6.i.i.i.i.i

bb5.i.i.i.i.i.i:                                  ; preds = %bb1.i.i.i.i.i
  br label %bb6.i.i.i.i.i

bb6.i.i.i.i.i.i6:                                 ; preds = %bb1.i.i.i.i.i
  %_10.i.i.i.i.i.i = shl i16 %_4.sroa.10.sroa.18.0, 2
  %32 = and i16 %_10.i.i.i.i.i.i, 28
  %33 = zext i16 %32 to i32
  %_7.i.i.i.i.i.i = lshr i32 %_4.sroa.10.sroa.10.0.extract.trunc, %33
  %34 = trunc i32 %_7.i.i.i.i.i.i to i8
  %num1.i.i.i.i.i.i.i = and i8 %34, 15
  %_12.i.i.i.i.i.i.i = icmp ult i8 %num1.i.i.i.i.i.i.i, 10
  %_15.i.i.i.i.i.i.i = or i8 %num1.i.i.i.i.i.i.i, 48
  %_18.i.i.i.i.i.i.i = add nuw nsw i8 %num1.i.i.i.i.i.i.i, 87
  %.0.i.v.i.i.i.i.i.i = select i1 %_12.i.i.i.i.i.i.i, i8 %_15.i.i.i.i.i.i.i, i8 %_18.i.i.i.i.i.i.i
  %.0.i.i.i.i.i.i.i = zext i8 %.0.i.v.i.i.i.i.i.i to i32
  %_15.i.i.i.i.i.i = icmp eq i16 %_4.sroa.10.sroa.18.0, 0
  %35 = add i16 %_4.sroa.10.sroa.18.0, -1
  %spec.select = select i1 %_15.i.i.i.i.i.i, i8 1, i8 %_4.sroa.10.sroa.12.0
  %spec.select64 = select i1 %_15.i.i.i.i.i.i, i16 0, i16 %35
  br label %bb6.i.i.i.i.i

bb12.i.i.i.i.i.i:                                 ; preds = %bb1.i.i.i.i.i
  br label %bb6.i.i.i.i.i

bb2.i.i.i.i.i:                                    ; preds = %bb4.i.i.i.i.i
  unreachable

bb4.i38.i.i.i.i:                                  ; preds = %bb4.i.i.i.i.i
  br label %bb6.i.i.i.i.i

bb6.i.i.i.i.i:                                    ; preds = %bb6.i.i.i.i.i.i6, %bb4.i.i.i.i.i, %bb1.i.i.i.i.i, %bb4.i38.i.i.i.i, %bb12.i.i.i.i.i.i, %bb5.i.i.i.i.i.i, %bb4.i.i.i.i.i.i5
  %_4.sroa.10.sroa.0.1 = phi i8 [ %_4.sroa.10.sroa.0.0, %bb4.i.i.i.i.i.i5 ], [ %_4.sroa.10.sroa.0.0, %bb5.i.i.i.i.i.i ], [ %_4.sroa.10.sroa.0.0, %bb12.i.i.i.i.i.i ], [ 0, %bb4.i38.i.i.i.i ], [ %_4.sroa.10.sroa.0.0, %bb1.i.i.i.i.i ], [ 1, %bb4.i.i.i.i.i ], [ %_4.sroa.10.sroa.0.0, %bb6.i.i.i.i.i.i6 ]
  %_4.sroa.10.sroa.12.1 = phi i8 [ 3, %bb4.i.i.i.i.i.i5 ], [ 2, %bb5.i.i.i.i.i.i ], [ 0, %bb12.i.i.i.i.i.i ], [ %_4.sroa.10.sroa.12.0, %bb4.i38.i.i.i.i ], [ 4, %bb1.i.i.i.i.i ], [ %_4.sroa.10.sroa.12.0, %bb4.i.i.i.i.i ], [ %spec.select, %bb6.i.i.i.i.i.i6 ]
  %_4.sroa.10.sroa.18.1 = phi i16 [ %_4.sroa.10.sroa.18.0, %bb4.i.i.i.i.i.i5 ], [ %_4.sroa.10.sroa.18.0, %bb5.i.i.i.i.i.i ], [ %_4.sroa.10.sroa.18.0, %bb12.i.i.i.i.i.i ], [ %_4.sroa.10.sroa.18.0, %bb4.i38.i.i.i.i ], [ %_4.sroa.10.sroa.18.0, %bb1.i.i.i.i.i ], [ %_4.sroa.10.sroa.18.0, %bb4.i.i.i.i.i ], [ %spec.select64, %bb6.i.i.i.i.i.i6 ]
  %.0.i39.ph.i.i.i.i = phi i32 [ 117, %bb4.i.i.i.i.i.i5 ], [ 123, %bb5.i.i.i.i.i.i ], [ 125, %bb12.i.i.i.i.i.i ], [ %_4.sroa.10.sroa.10.0.extract.trunc, %bb4.i38.i.i.i.i ], [ 92, %bb1.i.i.i.i.i ], [ 92, %bb4.i.i.i.i.i ], [ %.0.i.i.i.i.i.i.i, %bb6.i.i.i.i.i.i6 ]
  %_3.0.i.i.i.i.i.i.i.i.i = load {}*, {}** %29, align 1, !nonnull !568
  %_3.11.i.i.i.i.i.i.i.i.i = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %31, align 1, !nonnull !568
  %36 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11.i.i.i.i.i.i.i.i.i, i16 4
  %37 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %36, align 1, !invariant.load !568, !nonnull !568
  %38 = call zeroext addrspace(1) i1 %37({}* nonnull align 1 %_3.0.i.i.i.i.i.i.i.i.i, i32 %.0.i39.ph.i.i.i.i)
  br i1 %38, label %_ZN4core4iter6traits8iterator8Iterator12try_for_each17h812d304e18d9e130E.exit, label %bb4.i.i.i.i.i

bb17.i.i.i.i:                                     ; preds = %bb1.i.i.i.i.i, %bb4.i.i.i.i.i, %"_ZN63_$LT$core..str..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h37c06d3c469a8844E.exit"
  %39 = icmp ne i8* %__self_0_0.idx6.val.i.i.i, null
  tail call addrspace(1) void @llvm.assume(i1 %39)
  %_13.i.i.i.i.i.i.i.i.i.i.i75 = icmp eq i8* %__self_0_0.idx.val.i.i.i, %__self_0_0.idx6.val.i.i.i
  br i1 %_13.i.i.i.i.i.i.i.i.i.i.i75, label %bb21.i.i.i.i, label %bb3.i.i.i.i.i.i.i.i.i.i.lr.ph

bb3.i.i.i.i.i.i.i.i.i.i.lr.ph:                    ; preds = %bb17.i.i.i.i
  %40 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %0, i16 0, i32 11, i32 0
  %41 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %0, i16 0, i32 11, i32 1
  %42 = bitcast [3 x i16]** %41 to i1 ({}*, i32) addrspace(1)***
  br label %bb3.i.i.i.i.i.i.i.i.i.i

bb1.i.i.i.i.i.i.i.i.backedge:                     ; preds = %bb1.i.i.i.i.i.i.i.i.i.i.i, %bb4.i.i.i.i.i.i.i.i.i.i.i, %bb1.i.us.i.i.i.i.i.i.i.i.i.i, %bb4.i.us.i.i.i.i.i.i.i.i.i.i, %bb4.i.us.i.i.i.i.i.i.i.i.i.i
  %_13.i.i.i.i.i.i.i.i.i.i.i = icmp eq i8* %_4.sroa.0.4, %__self_0_0.idx6.val.i.i.i
  br i1 %_13.i.i.i.i.i.i.i.i.i.i.i, label %bb21.i.i.i.i, label %bb3.i.i.i.i.i.i.i.i.i.i

bb3.i.i.i.i.i.i.i.i.i.i:                          ; preds = %bb3.i.i.i.i.i.i.i.i.i.i.lr.ph, %bb1.i.i.i.i.i.i.i.i.backedge
  %_4.sroa.0.076 = phi i8* [ %__self_0_0.idx.val.i.i.i, %bb3.i.i.i.i.i.i.i.i.i.i.lr.ph ], [ %_4.sroa.0.4, %bb1.i.i.i.i.i.i.i.i.backedge ]
  %43 = getelementptr inbounds i8, i8* %_4.sroa.0.076, i16 1
  %x.i.i.i.i.i.i.i.i.i.i = load i8, i8* %_4.sroa.0.076, align 1, !noalias !5575
  %_12.i.i.i.i.i.i.i.i.i.i = icmp sgt i8 %x.i.i.i.i.i.i.i.i.i.i, -1
  br i1 %_12.i.i.i.i.i.i.i.i.i.i, label %bb11.i.i.i.i.i.i.i.i.i.i, label %bb10.i.i.i.i.i.i.i.i.i.i

bb10.i.i.i.i.i.i.i.i.i.i:                         ; preds = %bb3.i.i.i.i.i.i.i.i.i.i
  %_3.i37.i.i.i.i.i.i.i.i.i.i = and i8 %x.i.i.i.i.i.i.i.i.i.i, 31
  %44 = zext i8 %_3.i37.i.i.i.i.i.i.i.i.i.i to i32
  %_13.i33.i.i.i.i.i.i.i.i.i.i = icmp eq i8* %43, %__self_0_0.idx6.val.i.i.i
  br i1 %_13.i33.i.i.i.i.i.i.i.i.i.i, label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i.i.i.i, label %bb3.i28.i.i.i.i.i.i.i.i.i.i

bb3.i28.i.i.i.i.i.i.i.i.i.i:                      ; preds = %bb10.i.i.i.i.i.i.i.i.i.i
  %45 = getelementptr inbounds i8, i8* %_4.sroa.0.076, i16 2
  %byte.i27.i.i.i.i.i.i.i.i.i.i = load i8, i8* %43, align 1, !alias.scope !5578, !noalias !5575
  %phitmp.i.i.i.i.i.i.i.i.i.i = and i8 %byte.i27.i.i.i.i.i.i.i.i.i.i, 63
  %phitmp42.i.i.i.i.i.i.i.i.i.i = zext i8 %phitmp.i.i.i.i.i.i.i.i.i.i to i32
  br label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i.i.i.i

_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i.i.i.i: ; preds = %bb3.i28.i.i.i.i.i.i.i.i.i.i, %bb10.i.i.i.i.i.i.i.i.i.i
  %_4.sroa.0.1 = phi i8* [ %__self_0_0.idx6.val.i.i.i, %bb10.i.i.i.i.i.i.i.i.i.i ], [ %45, %bb3.i28.i.i.i.i.i.i.i.i.i.i ]
  %.0.i29.i.i.i.i.i.i.i.i.i.i = phi i32 [ 0, %bb10.i.i.i.i.i.i.i.i.i.i ], [ %phitmp42.i.i.i.i.i.i.i.i.i.i, %bb3.i28.i.i.i.i.i.i.i.i.i.i ]
  %_3.i24.i.i.i.i.i.i.i.i.i.i = shl nuw nsw i32 %44, 6
  %46 = or i32 %.0.i29.i.i.i.i.i.i.i.i.i.i, %_3.i24.i.i.i.i.i.i.i.i.i.i
  %_24.i.i.i.i.i.i.i.i.i.i = icmp ugt i8 %x.i.i.i.i.i.i.i.i.i.i, -33
  br i1 %_24.i.i.i.i.i.i.i.i.i.i, label %bb17.i.i.i.i.i.i.i.i.i.i, label %bb6.i.i.i.i.i.i.i.i8

bb11.i.i.i.i.i.i.i.i.i.i:                         ; preds = %bb3.i.i.i.i.i.i.i.i.i.i
  %_14.i.i.i.i.i.i.i.i.i.i = zext i8 %x.i.i.i.i.i.i.i.i.i.i to i32
  br label %bb6.i.i.i.i.i.i.i.i8

bb17.i.i.i.i.i.i.i.i.i.i:                         ; preds = %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i.i.i.i
  %_13.i20.i.i.i.i.i.i.i.i.i.i = icmp eq i8* %_4.sroa.0.1, %__self_0_0.idx6.val.i.i.i
  br i1 %_13.i20.i.i.i.i.i.i.i.i.i.i, label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i.i.i.i, label %bb3.i15.i.i.i.i.i.i.i.i.i.i

bb3.i15.i.i.i.i.i.i.i.i.i.i:                      ; preds = %bb17.i.i.i.i.i.i.i.i.i.i
  %47 = getelementptr inbounds i8, i8* %_4.sroa.0.1, i16 1
  %byte.i14.i.i.i.i.i.i.i.i.i.i = load i8, i8* %_4.sroa.0.1, align 1, !alias.scope !5581, !noalias !5575
  %phitmp43.i.i.i.i.i.i.i.i.i.i = and i8 %byte.i14.i.i.i.i.i.i.i.i.i.i, 63
  %phitmp44.i.i.i.i.i.i.i.i.i.i = zext i8 %phitmp43.i.i.i.i.i.i.i.i.i.i to i32
  br label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i.i.i.i

_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i.i.i.i: ; preds = %bb3.i15.i.i.i.i.i.i.i.i.i.i, %bb17.i.i.i.i.i.i.i.i.i.i
  %_4.sroa.0.2 = phi i8* [ %_4.sroa.0.1, %bb17.i.i.i.i.i.i.i.i.i.i ], [ %47, %bb3.i15.i.i.i.i.i.i.i.i.i.i ]
  %_16.i6.i.i.i.i.i.i.i.i.i.i = phi i8* [ %__self_0_0.idx6.val.i.i.i, %bb17.i.i.i.i.i.i.i.i.i.i ], [ %47, %bb3.i15.i.i.i.i.i.i.i.i.i.i ]
  %.0.i16.i.i.i.i.i.i.i.i.i.i = phi i32 [ 0, %bb17.i.i.i.i.i.i.i.i.i.i ], [ %phitmp44.i.i.i.i.i.i.i.i.i.i, %bb3.i15.i.i.i.i.i.i.i.i.i.i ]
  %_3.i11.i.i.i.i.i.i.i.i.i.i = shl nuw nsw i32 %.0.i29.i.i.i.i.i.i.i.i.i.i, 6
  %48 = or i32 %.0.i16.i.i.i.i.i.i.i.i.i.i, %_3.i11.i.i.i.i.i.i.i.i.i.i
  %_34.i.i.i.i.i.i.i.i.i.i = shl nuw nsw i32 %44, 12
  %49 = or i32 %48, %_34.i.i.i.i.i.i.i.i.i.i
  %_37.i.i.i.i.i.i.i.i.i.i = icmp ugt i8 %x.i.i.i.i.i.i.i.i.i.i, -17
  br i1 %_37.i.i.i.i.i.i.i.i.i.i, label %bb22.i.i.i.i.i.i.i.i.i.i, label %bb6.i.i.i.i.i.i.i.i8

bb22.i.i.i.i.i.i.i.i.i.i:                         ; preds = %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i.i.i.i
  %_13.i7.i.i.i.i.i.i.i.i.i.i = icmp eq i8* %_16.i6.i.i.i.i.i.i.i.i.i.i, %__self_0_0.idx6.val.i.i.i
  br i1 %_13.i7.i.i.i.i.i.i.i.i.i.i, label %bb4.i.i.i.i.i.i.i.i7, label %bb3.i.i.i.i.i.i.i.i.i.i.i

bb3.i.i.i.i.i.i.i.i.i.i.i:                        ; preds = %bb22.i.i.i.i.i.i.i.i.i.i
  %50 = getelementptr inbounds i8, i8* %_16.i6.i.i.i.i.i.i.i.i.i.i, i16 1
  %byte.i.i.i.i.i.i.i.i.i.i.i = load i8, i8* %_16.i6.i.i.i.i.i.i.i.i.i.i, align 1, !alias.scope !5584, !noalias !5575
  %phitmp45.i.i.i.i.i.i.i.i.i.i = and i8 %byte.i.i.i.i.i.i.i.i.i.i.i, 63
  %phitmp46.i.i.i.i.i.i.i.i.i.i = zext i8 %phitmp45.i.i.i.i.i.i.i.i.i.i to i32
  br label %bb4.i.i.i.i.i.i.i.i7

bb4.i.i.i.i.i.i.i.i7:                             ; preds = %bb3.i.i.i.i.i.i.i.i.i.i.i, %bb22.i.i.i.i.i.i.i.i.i.i
  %_4.sroa.0.3 = phi i8* [ %_4.sroa.0.2, %bb22.i.i.i.i.i.i.i.i.i.i ], [ %50, %bb3.i.i.i.i.i.i.i.i.i.i.i ]
  %.0.i4.i.i.i.i.i.i.i.i.i.i = phi i32 [ 0, %bb22.i.i.i.i.i.i.i.i.i.i ], [ %phitmp46.i.i.i.i.i.i.i.i.i.i, %bb3.i.i.i.i.i.i.i.i.i.i.i ]
  %_43.i.i.i.i.i.i.i.i.i.i = shl nuw nsw i32 %44, 18
  %_42.i.i.i.i.i.i.i.i.i.i = and i32 %_43.i.i.i.i.i.i.i.i.i.i, 1835008
  %_3.i.i.i.i.i.i.i.i.i.i.i = shl nuw nsw i32 %48, 6
  %51 = or i32 %_3.i.i.i.i.i.i.i.i.i.i.i, %_42.i.i.i.i.i.i.i.i.i.i
  %52 = or i32 %51, %.0.i4.i.i.i.i.i.i.i.i.i.i
  %53 = icmp eq i32 %52, 1114112
  br i1 %53, label %bb21.i.i.i.i, label %bb6.i.i.i.i.i.i.i.i8

bb6.i.i.i.i.i.i.i.i8:                             ; preds = %bb4.i.i.i.i.i.i.i.i7, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i.i.i.i, %bb11.i.i.i.i.i.i.i.i.i.i, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i.i.i.i
  %_4.sroa.0.4 = phi i8* [ %43, %bb11.i.i.i.i.i.i.i.i.i.i ], [ %_4.sroa.0.3, %bb4.i.i.i.i.i.i.i.i7 ], [ %_4.sroa.0.2, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i.i.i.i ], [ %_4.sroa.0.1, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i.i.i.i ]
  %.sroa.0.0.i.i17.i.i.i.i.i.i.i.i = phi i32 [ %_14.i.i.i.i.i.i.i.i.i.i, %bb11.i.i.i.i.i.i.i.i.i.i ], [ %52, %bb4.i.i.i.i.i.i.i.i7 ], [ %49, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i.i.i.i ], [ %46, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i.i.i.i ]
  switch i32 %.sroa.0.0.i.i17.i.i.i.i.i.i.i.i, label %bb1.i.i.i.i.i.i.i.i.i.i.i.i [
    i32 9, label %"_ZN98_$LT$core..str..CharEscapeDefault$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf53924ff6e5867e2E.exit.i.i.i.i.i.i.i.i.i"
    i32 13, label %bb5.i.i.i.i.i.i.i.i.i.i.i.i
    i32 10, label %bb6.i.i.i.i.i.i.i.i.i.i.i.i
    i32 92, label %bb7.i.i.i.i.i.i.i.i.i.i.i.i
    i32 39, label %bb7.i.i.i.i.i.i.i.i.i.i.i.i
    i32 34, label %bb7.i.i.i.i.i.i.i.i.i.i.i.i
  ]

bb1.i.i.i.i.i.i.i.i.i.i.i.i:                      ; preds = %bb6.i.i.i.i.i.i.i.i8
  %self.off.i.i.i.i.i.i.i.i.i.i.i.i = add i32 %.sroa.0.0.i.i17.i.i.i.i.i.i.i.i, -32
  %54 = icmp ult i32 %self.off.i.i.i.i.i.i.i.i.i.i.i.i, 95
  br i1 %54, label %"_ZN98_$LT$core..str..CharEscapeDefault$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf53924ff6e5867e2E.exit.i.i.i.i.i.i.i.i.i", label %bb3.i.i.i.i.i.i.i.i.i.i.i.i

bb3.i.i.i.i.i.i.i.i.i.i.i.i:                      ; preds = %bb1.i.i.i.i.i.i.i.i.i.i.i.i
  %55 = icmp ult i32 %.sroa.0.0.i.i17.i.i.i.i.i.i.i.i, 1114112
  tail call addrspace(1) void @llvm.assume(i1 %55) #20, !noalias !5587
  %_6.i.i.i.i.i.i.i.i.i.i.i.i.i = or i32 %.sroa.0.0.i.i17.i.i.i.i.i.i.i.i, 1
  %56 = tail call addrspace(1) i32 @llvm.ctlz.i32(i32 %_6.i.i.i.i.i.i.i.i.i.i.i.i.i, i1 true) #20, !range !1299
  %msb.i.i.i.i.i.i.i.i.i.i.i.i.i = lshr i32 %56, 2
  %57 = trunc i32 %msb.i.i.i.i.i.i.i.i.i.i.i.i.i to i16
  %_12.i.i.i.i.i.i.i.i.i.i.i.i.i = xor i16 %57, 7
  %phitmp.i.i.i.i.i.i.i.i.i = zext i16 %_12.i.i.i.i.i.i.i.i.i.i.i.i.i to i64
  %phitmp10.i.i.i.i.i.i.i.i.i = shl nuw nsw i64 %phitmp.i.i.i.i.i.i.i.i.i, 48
  %phitmp11.i.i.i.i.i.i.i.i.i = or i64 %phitmp10.i.i.i.i.i.i.i.i.i, 5497558138880
  br label %"_ZN98_$LT$core..str..CharEscapeDefault$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf53924ff6e5867e2E.exit.i.i.i.i.i.i.i.i.i"

bb5.i.i.i.i.i.i.i.i.i.i.i.i:                      ; preds = %bb6.i.i.i.i.i.i.i.i8
  br label %"_ZN98_$LT$core..str..CharEscapeDefault$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf53924ff6e5867e2E.exit.i.i.i.i.i.i.i.i.i"

bb6.i.i.i.i.i.i.i.i.i.i.i.i:                      ; preds = %bb6.i.i.i.i.i.i.i.i8
  br label %"_ZN98_$LT$core..str..CharEscapeDefault$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf53924ff6e5867e2E.exit.i.i.i.i.i.i.i.i.i"

bb7.i.i.i.i.i.i.i.i.i.i.i.i:                      ; preds = %bb6.i.i.i.i.i.i.i.i8, %bb6.i.i.i.i.i.i.i.i8, %bb6.i.i.i.i.i.i.i.i8
  br label %"_ZN98_$LT$core..str..CharEscapeDefault$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf53924ff6e5867e2E.exit.i.i.i.i.i.i.i.i.i"

"_ZN98_$LT$core..str..CharEscapeDefault$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf53924ff6e5867e2E.exit.i.i.i.i.i.i.i.i.i": ; preds = %bb7.i.i.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.i.i.i.i.i.i.i.i.i, %bb5.i.i.i.i.i.i.i.i.i.i.i.i, %bb3.i.i.i.i.i.i.i.i.i.i.i.i, %bb1.i.i.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.i.i.i.i.i8
  %init_state.sroa.15.sroa.4.0.i.i.i.i.i.i.i.i.i.i.i.i = phi i64 [ 5497558138880, %bb1.i.i.i.i.i.i.i.i.i.i.i.i ], [ %phitmp11.i.i.i.i.i.i.i.i.i, %bb3.i.i.i.i.i.i.i.i.i.i.i.i ], [ 5497558138880, %bb7.i.i.i.i.i.i.i.i.i.i.i.i ], [ 5497558138880, %bb6.i.i.i.i.i.i.i.i.i.i.i.i ], [ 5497558138880, %bb5.i.i.i.i.i.i.i.i.i.i.i.i ], [ 5497558138880, %bb6.i.i.i.i.i.i.i.i8 ]
  %init_state.sroa.9.0.i.i.i.i.i.i.i.i.i.i.i.i = phi i32 [ %.sroa.0.0.i.i17.i.i.i.i.i.i.i.i, %bb1.i.i.i.i.i.i.i.i.i.i.i.i ], [ %.sroa.0.0.i.i17.i.i.i.i.i.i.i.i, %bb3.i.i.i.i.i.i.i.i.i.i.i.i ], [ %.sroa.0.0.i.i17.i.i.i.i.i.i.i.i, %bb7.i.i.i.i.i.i.i.i.i.i.i.i ], [ 110, %bb6.i.i.i.i.i.i.i.i.i.i.i.i ], [ 114, %bb5.i.i.i.i.i.i.i.i.i.i.i.i ], [ 116, %bb6.i.i.i.i.i.i.i.i8 ]
  %init_state.sroa.0.0.i.i.i.i.i.i.i.i.i.i.i.i = phi i64 [ 1, %bb1.i.i.i.i.i.i.i.i.i.i.i.i ], [ 3, %bb3.i.i.i.i.i.i.i.i.i.i.i.i ], [ 2, %bb7.i.i.i.i.i.i.i.i.i.i.i.i ], [ 2, %bb6.i.i.i.i.i.i.i.i.i.i.i.i ], [ 2, %bb5.i.i.i.i.i.i.i.i.i.i.i.i ], [ 2, %bb6.i.i.i.i.i.i.i.i8 ]
  %_7.sroa.4.0.insert.ext.i.i.i.i.i.i.i.i.i = zext i32 %init_state.sroa.9.0.i.i.i.i.i.i.i.i.i.i.i.i to i64
  %_7.sroa.4.0.insert.shift.i.i.i.i.i.i.i.i.i = shl nuw nsw i64 %_7.sroa.4.0.insert.ext.i.i.i.i.i.i.i.i.i, 8
  %_7.sroa.4.0.insert.insert.i.i.i.i.i.i.i.i.i = or i64 %_7.sroa.4.0.insert.shift.i.i.i.i.i.i.i.i.i, %init_state.sroa.15.sroa.4.0.i.i.i.i.i.i.i.i.i.i.i.i
  %_7.sroa.0.0.insert.insert.i.i.i.i.i.i.i.i.i = or i64 %init_state.sroa.0.0.i.i.i.i.i.i.i.i.i.i.i.i, %init_state.sroa.15.sroa.4.0.i.i.i.i.i.i.i.i.i.i.i.i
  %mid.sroa.0.0.extract.trunc.i.i.i.i.i.i.i.i.i.i = trunc i64 %_7.sroa.0.0.insert.insert.i.i.i.i.i.i.i.i.i to i8
  %mid.sroa.7.0.extract.shift.i.i.i.i.i.i.i.i.i.i = lshr i64 %_7.sroa.4.0.insert.insert.i.i.i.i.i.i.i.i.i, 8
  %mid.sroa.7.0.extract.trunc.i.i.i.i.i.i.i.i.i.i = trunc i64 %mid.sroa.7.0.extract.shift.i.i.i.i.i.i.i.i.i.i to i32
  %mid.sroa.15.0.extract.shift.i.i.i.i.i.i.i.i.i.i = lshr i64 %init_state.sroa.15.sroa.4.0.i.i.i.i.i.i.i.i.i.i.i.i, 48
  %mid.sroa.15.0.extract.trunc.i.i.i.i.i.i.i.i.i.i = trunc i64 %mid.sroa.15.0.extract.shift.i.i.i.i.i.i.i.i.i.i to i16
  %58 = icmp eq i32 %mid.sroa.7.0.extract.trunc.i.i.i.i.i.i.i.i.i.i, 1114112
  br i1 %58, label %bb4.i.us.i.i.i.i.i.i.i.i.i.i, label %bb4.i.i.i.i.i.i.i.i.i.i.i

bb4.i.us.i.i.i.i.i.i.i.i.i.i:                     ; preds = %"_ZN98_$LT$core..str..CharEscapeDefault$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf53924ff6e5867e2E.exit.i.i.i.i.i.i.i.i.i", %bb6.i.us.i.i.i.i.i.i.i.i.i.i
  %mid.sroa.9.0.us.i.i.i.i.i.i.i.i.i.i = phi i8 [ %mid.sroa.9.125.us.i.i.i.i.i.i.i.i.i.i, %bb6.i.us.i.i.i.i.i.i.i.i.i.i ], [ 5, %"_ZN98_$LT$core..str..CharEscapeDefault$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf53924ff6e5867e2E.exit.i.i.i.i.i.i.i.i.i" ]
  %mid.sroa.15.0.us.i.i.i.i.i.i.i.i.i.i = phi i16 [ %mid.sroa.15.127.us.i.i.i.i.i.i.i.i.i.i, %bb6.i.us.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.15.0.extract.trunc.i.i.i.i.i.i.i.i.i.i, %"_ZN98_$LT$core..str..CharEscapeDefault$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf53924ff6e5867e2E.exit.i.i.i.i.i.i.i.i.i" ]
  %mid.sroa.0.0.us.i.i.i.i.i.i.i.i.i.i = phi i8 [ %mid.sroa.0.129.us.i.i.i.i.i.i.i.i.i.i, %bb6.i.us.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.0.0.extract.trunc.i.i.i.i.i.i.i.i.i.i, %"_ZN98_$LT$core..str..CharEscapeDefault$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf53924ff6e5867e2E.exit.i.i.i.i.i.i.i.i.i" ]
  %trunc.i.us.i.i.i.i.i.i.i.i.i.i = trunc i8 %mid.sroa.0.0.us.i.i.i.i.i.i.i.i.i.i to i2
  switch i2 %trunc.i.us.i.i.i.i.i.i.i.i.i.i, label %bb2.i.us-lcssa.us40.i.i.i.i.i.i.i.i.i.i [
    i2 0, label %bb1.i.i.i.i.i.i.i.i.backedge
    i2 1, label %bb1.i.i.i.i.i.i.i.i.backedge
    i2 -2, label %bb6.i.us.i.i.i.i.i.i.i.i.i.i
    i2 -1, label %bb1.i.us.i.i.i.i.i.i.i.i.i.i
  ]

bb1.i.us.i.i.i.i.i.i.i.i.i.i:                     ; preds = %bb4.i.us.i.i.i.i.i.i.i.i.i.i
  %trunc.i.i.us.i.i.i.i.i.i.i.i.i.i = trunc i8 %mid.sroa.9.0.us.i.i.i.i.i.i.i.i.i.i to i3
  switch i3 %trunc.i.i.us.i.i.i.i.i.i.i.i.i.i, label %bb2.i.i.i.i.i.i.i.i.i.i.i.i [
    i3 0, label %bb1.i.i.i.i.i.i.i.i.backedge
    i3 1, label %bb12.i.i.us.i.i.i.i.i.i.i.i.i.i
    i3 2, label %bb6.i.i.us.i.i.i.i.i.i.i.i.i.i
    i3 3, label %bb5.i.i.us.i.i.i.i.i.i.i.i.i.i
    i3 -4, label %bb4.i.i.us.i.i.i.i.i.i.i.i.i.i
    i3 -3, label %bb6.i.us.i.i.i.i.i.i.i.i.i.i
  ]

bb4.i.i.us.i.i.i.i.i.i.i.i.i.i:                   ; preds = %bb1.i.us.i.i.i.i.i.i.i.i.i.i
  br label %bb6.i.us.i.i.i.i.i.i.i.i.i.i

bb5.i.i.us.i.i.i.i.i.i.i.i.i.i:                   ; preds = %bb1.i.us.i.i.i.i.i.i.i.i.i.i
  br label %bb6.i.us.i.i.i.i.i.i.i.i.i.i

bb6.i.i.us.i.i.i.i.i.i.i.i.i.i:                   ; preds = %bb1.i.us.i.i.i.i.i.i.i.i.i.i
  %_10.i.i.us.i.i.i.i.i.i.i.i.i.i = shl i16 %mid.sroa.15.0.us.i.i.i.i.i.i.i.i.i.i, 2
  %59 = and i16 %_10.i.i.us.i.i.i.i.i.i.i.i.i.i, 28
  %60 = zext i16 %59 to i32
  %_7.i.i.us.i.i.i.i.i.i.i.i.i.i = lshr i32 1114112, %60
  %61 = trunc i32 %_7.i.i.us.i.i.i.i.i.i.i.i.i.i to i8
  %_15.i.i.i.us.i.i.i.i.i.i.i.i.i.i = or i8 %61, 48
  %.0.i.i.i.us.i.i.i.i.i.i.i.i.i.i = zext i8 %_15.i.i.i.us.i.i.i.i.i.i.i.i.i.i to i32
  %_15.i.i.us.i.i.i.i.i.i.i.i.i.i = icmp eq i16 %mid.sroa.15.0.us.i.i.i.i.i.i.i.i.i.i, 0
  %62 = add i16 %mid.sroa.15.0.us.i.i.i.i.i.i.i.i.i.i, -1
  %spec.select.us.i.i.i.i.i.i.i.i.i.i = select i1 %_15.i.i.us.i.i.i.i.i.i.i.i.i.i, i16 0, i16 %62
  %spec.select38.us.i.i.i.i.i.i.i.i.i.i = select i1 %_15.i.i.us.i.i.i.i.i.i.i.i.i.i, i8 1, i8 %mid.sroa.9.0.us.i.i.i.i.i.i.i.i.i.i
  br label %bb6.i.us.i.i.i.i.i.i.i.i.i.i

bb12.i.i.us.i.i.i.i.i.i.i.i.i.i:                  ; preds = %bb1.i.us.i.i.i.i.i.i.i.i.i.i
  br label %bb6.i.us.i.i.i.i.i.i.i.i.i.i

bb6.i.us.i.i.i.i.i.i.i.i.i.i:                     ; preds = %bb12.i.i.us.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.us.i.i.i.i.i.i.i.i.i.i, %bb5.i.i.us.i.i.i.i.i.i.i.i.i.i, %bb4.i.i.us.i.i.i.i.i.i.i.i.i.i, %bb1.i.us.i.i.i.i.i.i.i.i.i.i, %bb4.i.us.i.i.i.i.i.i.i.i.i.i
  %.0.i1631.us.i.i.i.i.i.i.i.i.i.i = phi i32 [ 125, %bb12.i.i.us.i.i.i.i.i.i.i.i.i.i ], [ 123, %bb5.i.i.us.i.i.i.i.i.i.i.i.i.i ], [ 117, %bb4.i.i.us.i.i.i.i.i.i.i.i.i.i ], [ 92, %bb1.i.us.i.i.i.i.i.i.i.i.i.i ], [ 92, %bb4.i.us.i.i.i.i.i.i.i.i.i.i ], [ %.0.i.i.i.us.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.us.i.i.i.i.i.i.i.i.i.i ]
  %mid.sroa.0.129.us.i.i.i.i.i.i.i.i.i.i = phi i8 [ %mid.sroa.0.0.us.i.i.i.i.i.i.i.i.i.i, %bb12.i.i.us.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.0.0.us.i.i.i.i.i.i.i.i.i.i, %bb5.i.i.us.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.0.0.us.i.i.i.i.i.i.i.i.i.i, %bb4.i.i.us.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.0.0.us.i.i.i.i.i.i.i.i.i.i, %bb1.i.us.i.i.i.i.i.i.i.i.i.i ], [ 1, %bb4.i.us.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.0.0.us.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.us.i.i.i.i.i.i.i.i.i.i ]
  %mid.sroa.15.127.us.i.i.i.i.i.i.i.i.i.i = phi i16 [ %mid.sroa.15.0.us.i.i.i.i.i.i.i.i.i.i, %bb12.i.i.us.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.15.0.us.i.i.i.i.i.i.i.i.i.i, %bb5.i.i.us.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.15.0.us.i.i.i.i.i.i.i.i.i.i, %bb4.i.i.us.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.15.0.us.i.i.i.i.i.i.i.i.i.i, %bb1.i.us.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.15.0.us.i.i.i.i.i.i.i.i.i.i, %bb4.i.us.i.i.i.i.i.i.i.i.i.i ], [ %spec.select.us.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.us.i.i.i.i.i.i.i.i.i.i ]
  %mid.sroa.9.125.us.i.i.i.i.i.i.i.i.i.i = phi i8 [ 0, %bb12.i.i.us.i.i.i.i.i.i.i.i.i.i ], [ 2, %bb5.i.i.us.i.i.i.i.i.i.i.i.i.i ], [ 3, %bb4.i.i.us.i.i.i.i.i.i.i.i.i.i ], [ 4, %bb1.i.us.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.9.0.us.i.i.i.i.i.i.i.i.i.i, %bb4.i.us.i.i.i.i.i.i.i.i.i.i ], [ %spec.select38.us.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.us.i.i.i.i.i.i.i.i.i.i ]
  %_3.0.i.i.i.i.i.us.i.i.i.i.i.i.i.i.i.i = load {}*, {}** %40, align 1, !noalias !5596, !nonnull !568
  %_3.11.i.i.i.i.i.us.i.i.i.i.i.i.i.i.i.i = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %42, align 1, !noalias !5596, !nonnull !568
  %63 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11.i.i.i.i.i.us.i.i.i.i.i.i.i.i.i.i, i16 4
  %64 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %63, align 1, !invariant.load !568, !noalias !5596, !nonnull !568
  %65 = call zeroext addrspace(1) i1 %64({}* nonnull align 1 %_3.0.i.i.i.i.i.us.i.i.i.i.i.i.i.i.i.i, i32 %.0.i1631.us.i.i.i.i.i.i.i.i.i.i)
  br i1 %65, label %_ZN4core4iter6traits8iterator8Iterator12try_for_each17h812d304e18d9e130E.exit, label %bb4.i.us.i.i.i.i.i.i.i.i.i.i

bb2.i.us-lcssa.us40.i.i.i.i.i.i.i.i.i.i:          ; preds = %bb4.i.us.i.i.i.i.i.i.i.i.i.i
  unreachable

bb4.i.i.i.i.i.i.i.i.i.i.i:                        ; preds = %"_ZN98_$LT$core..str..CharEscapeDefault$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf53924ff6e5867e2E.exit.i.i.i.i.i.i.i.i.i", %bb6.i.i.i.i.i.i.i.i.i.i.i
  %mid.sroa.9.0.i.i.i.i.i.i.i.i.i.i = phi i8 [ %mid.sroa.9.125.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.i.i.i.i.i.i.i.i ], [ 5, %"_ZN98_$LT$core..str..CharEscapeDefault$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf53924ff6e5867e2E.exit.i.i.i.i.i.i.i.i.i" ]
  %mid.sroa.15.0.i.i.i.i.i.i.i.i.i.i = phi i16 [ %mid.sroa.15.127.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.15.0.extract.trunc.i.i.i.i.i.i.i.i.i.i, %"_ZN98_$LT$core..str..CharEscapeDefault$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf53924ff6e5867e2E.exit.i.i.i.i.i.i.i.i.i" ]
  %mid.sroa.0.0.i.i.i.i.i.i.i.i.i.i = phi i8 [ %mid.sroa.0.129.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.0.0.extract.trunc.i.i.i.i.i.i.i.i.i.i, %"_ZN98_$LT$core..str..CharEscapeDefault$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf53924ff6e5867e2E.exit.i.i.i.i.i.i.i.i.i" ]
  %trunc.i.i.i.i.i.i.i.i.i.i.i = trunc i8 %mid.sroa.0.0.i.i.i.i.i.i.i.i.i.i to i2
  switch i2 %trunc.i.i.i.i.i.i.i.i.i.i.i, label %bb2.i.us-lcssa41.i.i.i.i.i.i.i.i.i.i [
    i2 0, label %bb1.i.i.i.i.i.i.i.i.backedge
    i2 1, label %"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h96dd8241cf5bb4ccE.exit.i.i.i.i.i.i.i.i.i.i"
    i2 -2, label %bb6.i.i.i.i.i.i.i.i.i.i.i
    i2 -1, label %bb1.i.i.i.i.i.i.i.i.i.i.i
  ]

bb1.i.i.i.i.i.i.i.i.i.i.i:                        ; preds = %bb4.i.i.i.i.i.i.i.i.i.i.i
  %trunc.i.i.i.i.i.i.i.i.i.i.i.i = trunc i8 %mid.sroa.9.0.i.i.i.i.i.i.i.i.i.i to i3
  switch i3 %trunc.i.i.i.i.i.i.i.i.i.i.i.i, label %bb2.i.i.i.i.i.i.i.i.i.i.i.i [
    i3 0, label %bb1.i.i.i.i.i.i.i.i.backedge
    i3 1, label %bb12.i.i.i.i.i.i.i.i.i.i.i.i
    i3 2, label %bb6.i.i.i6.i.i.i.i.i.i.i.i.i
    i3 3, label %bb5.i.i.i4.i.i.i.i.i.i.i.i.i
    i3 -4, label %bb4.i.i.i.i.i.i.i.i.i.i.i.i
    i3 -3, label %bb6.i.i.i.i.i.i.i.i.i.i.i
  ]

bb2.i.i.i.i.i.i.i.i.i.i.i.i:                      ; preds = %bb1.i.i.i.i.i.i.i.i.i.i.i, %bb1.i.us.i.i.i.i.i.i.i.i.i.i
  unreachable

bb4.i.i.i.i.i.i.i.i.i.i.i.i:                      ; preds = %bb1.i.i.i.i.i.i.i.i.i.i.i
  br label %bb6.i.i.i.i.i.i.i.i.i.i.i

bb5.i.i.i4.i.i.i.i.i.i.i.i.i:                     ; preds = %bb1.i.i.i.i.i.i.i.i.i.i.i
  br label %bb6.i.i.i.i.i.i.i.i.i.i.i

bb6.i.i.i6.i.i.i.i.i.i.i.i.i:                     ; preds = %bb1.i.i.i.i.i.i.i.i.i.i.i
  %_10.i.i.i.i.i.i.i.i.i.i.i.i = shl i16 %mid.sroa.15.0.i.i.i.i.i.i.i.i.i.i, 2
  %66 = and i16 %_10.i.i.i.i.i.i.i.i.i.i.i.i, 28
  %67 = zext i16 %66 to i32
  %_7.i.i.i.i.i.i.i.i.i.i.i.i = lshr i32 %mid.sroa.7.0.extract.trunc.i.i.i.i.i.i.i.i.i.i, %67
  %68 = trunc i32 %_7.i.i.i.i.i.i.i.i.i.i.i.i to i8
  %num1.i.i.i.i.i.i.i.i.i.i.i.i.i = and i8 %68, 15
  %_12.i.i.i.i5.i.i.i.i.i.i.i.i.i = icmp ult i8 %num1.i.i.i.i.i.i.i.i.i.i.i.i.i, 10
  %_15.i.i.i.i.i.i.i.i.i.i.i.i.i = or i8 %num1.i.i.i.i.i.i.i.i.i.i.i.i.i, 48
  %_18.i.i.i.i.i.i.i.i.i.i.i.i.i = add nuw nsw i8 %num1.i.i.i.i.i.i.i.i.i.i.i.i.i, 87
  %.0.i.v.i.i.i.i.i.i.i.i.i.i.i.i = select i1 %_12.i.i.i.i5.i.i.i.i.i.i.i.i.i, i8 %_15.i.i.i.i.i.i.i.i.i.i.i.i.i, i8 %_18.i.i.i.i.i.i.i.i.i.i.i.i.i
  %.0.i.i.i.i.i.i.i.i.i.i.i.i.i = zext i8 %.0.i.v.i.i.i.i.i.i.i.i.i.i.i.i to i32
  %_15.i.i.i.i.i.i.i.i.i.i.i.i = icmp eq i16 %mid.sroa.15.0.i.i.i.i.i.i.i.i.i.i, 0
  %69 = add i16 %mid.sroa.15.0.i.i.i.i.i.i.i.i.i.i, -1
  %spec.select.i.i.i.i.i.i.i.i.i.i = select i1 %_15.i.i.i.i.i.i.i.i.i.i.i.i, i16 0, i16 %69
  %spec.select38.i.i.i.i.i.i.i.i.i.i = select i1 %_15.i.i.i.i.i.i.i.i.i.i.i.i, i8 1, i8 %mid.sroa.9.0.i.i.i.i.i.i.i.i.i.i
  br label %bb6.i.i.i.i.i.i.i.i.i.i.i

bb12.i.i.i.i.i.i.i.i.i.i.i.i:                     ; preds = %bb1.i.i.i.i.i.i.i.i.i.i.i
  br label %bb6.i.i.i.i.i.i.i.i.i.i.i

bb2.i.us-lcssa41.i.i.i.i.i.i.i.i.i.i:             ; preds = %bb4.i.i.i.i.i.i.i.i.i.i.i
  unreachable

"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h96dd8241cf5bb4ccE.exit.i.i.i.i.i.i.i.i.i.i": ; preds = %bb4.i.i.i.i.i.i.i.i.i.i.i
  br label %bb6.i.i.i.i.i.i.i.i.i.i.i

bb6.i.i.i.i.i.i.i.i.i.i.i:                        ; preds = %"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h96dd8241cf5bb4ccE.exit.i.i.i.i.i.i.i.i.i.i", %bb12.i.i.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.i6.i.i.i.i.i.i.i.i.i, %bb5.i.i.i4.i.i.i.i.i.i.i.i.i, %bb4.i.i.i.i.i.i.i.i.i.i.i.i, %bb1.i.i.i.i.i.i.i.i.i.i.i, %bb4.i.i.i.i.i.i.i.i.i.i.i
  %.0.i1631.i.i.i.i.i.i.i.i.i.i = phi i32 [ %mid.sroa.7.0.extract.trunc.i.i.i.i.i.i.i.i.i.i, %"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h96dd8241cf5bb4ccE.exit.i.i.i.i.i.i.i.i.i.i" ], [ 125, %bb12.i.i.i.i.i.i.i.i.i.i.i.i ], [ 123, %bb5.i.i.i4.i.i.i.i.i.i.i.i.i ], [ 117, %bb4.i.i.i.i.i.i.i.i.i.i.i.i ], [ 92, %bb1.i.i.i.i.i.i.i.i.i.i.i ], [ 92, %bb4.i.i.i.i.i.i.i.i.i.i.i ], [ %.0.i.i.i.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.i6.i.i.i.i.i.i.i.i.i ]
  %mid.sroa.0.129.i.i.i.i.i.i.i.i.i.i = phi i8 [ 0, %"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h96dd8241cf5bb4ccE.exit.i.i.i.i.i.i.i.i.i.i" ], [ %mid.sroa.0.0.i.i.i.i.i.i.i.i.i.i, %bb12.i.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.0.0.i.i.i.i.i.i.i.i.i.i, %bb5.i.i.i4.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.0.0.i.i.i.i.i.i.i.i.i.i, %bb4.i.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.0.0.i.i.i.i.i.i.i.i.i.i, %bb1.i.i.i.i.i.i.i.i.i.i.i ], [ 1, %bb4.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.0.0.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.i6.i.i.i.i.i.i.i.i.i ]
  %mid.sroa.15.127.i.i.i.i.i.i.i.i.i.i = phi i16 [ %mid.sroa.15.0.i.i.i.i.i.i.i.i.i.i, %"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h96dd8241cf5bb4ccE.exit.i.i.i.i.i.i.i.i.i.i" ], [ %mid.sroa.15.0.i.i.i.i.i.i.i.i.i.i, %bb12.i.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.15.0.i.i.i.i.i.i.i.i.i.i, %bb5.i.i.i4.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.15.0.i.i.i.i.i.i.i.i.i.i, %bb4.i.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.15.0.i.i.i.i.i.i.i.i.i.i, %bb1.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.15.0.i.i.i.i.i.i.i.i.i.i, %bb4.i.i.i.i.i.i.i.i.i.i.i ], [ %spec.select.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.i6.i.i.i.i.i.i.i.i.i ]
  %mid.sroa.9.125.i.i.i.i.i.i.i.i.i.i = phi i8 [ %mid.sroa.9.0.i.i.i.i.i.i.i.i.i.i, %"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h96dd8241cf5bb4ccE.exit.i.i.i.i.i.i.i.i.i.i" ], [ 0, %bb12.i.i.i.i.i.i.i.i.i.i.i.i ], [ 2, %bb5.i.i.i4.i.i.i.i.i.i.i.i.i ], [ 3, %bb4.i.i.i.i.i.i.i.i.i.i.i.i ], [ 4, %bb1.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.9.0.i.i.i.i.i.i.i.i.i.i, %bb4.i.i.i.i.i.i.i.i.i.i.i ], [ %spec.select38.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.i6.i.i.i.i.i.i.i.i.i ]
  %_3.0.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i = load {}*, {}** %40, align 1, !noalias !5596, !nonnull !568
  %_3.11.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %42, align 1, !noalias !5596, !nonnull !568
  %70 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i, i16 4
  %71 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %70, align 1, !invariant.load !568, !noalias !5596, !nonnull !568
  %72 = call zeroext addrspace(1) i1 %71({}* nonnull align 1 %_3.0.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i, i32 %.0.i1631.i.i.i.i.i.i.i.i.i.i)
  br i1 %72, label %_ZN4core4iter6traits8iterator8Iterator12try_for_each17h812d304e18d9e130E.exit, label %bb4.i.i.i.i.i.i.i.i.i.i.i

bb21.i.i.i.i:                                     ; preds = %bb1.i.i.i.i.i.i.i.i.backedge, %bb4.i.i.i.i.i.i.i.i7, %bb17.i.i.i.i
  %_4.sroa.28.12.extract.trunc40 = trunc i64 %_11.sroa.0.0.insert.insert.i.i.i to i8
  %73 = icmp eq i8 %_4.sroa.28.12.extract.trunc40, 4
  br i1 %73, label %_ZN4core4iter6traits8iterator8Iterator12try_for_each17h812d304e18d9e130E.exit, label %bb4.i40.i.i.i.i.preheader

bb4.i40.i.i.i.i.preheader:                        ; preds = %bb21.i.i.i.i
  %74 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %0, i16 0, i32 11, i32 0
  %75 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %0, i16 0, i32 11, i32 1
  %76 = bitcast [3 x i16]** %75 to i1 ({}*, i32) addrspace(1)***
  br label %bb4.i40.i.i.i.i

bb4.i40.i.i.i.i:                                  ; preds = %bb6.i44.i.i.i.i, %bb4.i40.i.i.i.i.preheader
  %_4.sroa.28.0 = phi i64 [ %_4.sroa.28.1, %bb6.i44.i.i.i.i ], [ %_11.sroa.0.0.insert.insert.i.i.i, %bb4.i40.i.i.i.i.preheader ]
  %77 = phi i8 [ %_4.sroa.28.12.extract.trunc, %bb6.i44.i.i.i.i ], [ %_4.sroa.28.12.extract.trunc40, %bb4.i40.i.i.i.i.preheader ]
  %trunc.i48.i.i.i.i = trunc i8 %77 to i2
  switch i2 %trunc.i48.i.i.i.i, label %bb2.i71.i.i.i.i [
    i2 0, label %_ZN4core4iter6traits8iterator8Iterator12try_for_each17h812d304e18d9e130E.exit
    i2 1, label %bb4.i74.i.i.i.i
    i2 -2, label %bb3.i72.i.i.i.i
    i2 -1, label %bb1.i50.i.i.i.i
  ]

bb1.i50.i.i.i.i:                                  ; preds = %bb4.i40.i.i.i.i
  %_4.sroa.28.17.extract.shift = lshr i64 %_4.sroa.28.0, 40
  %trunc.i.i49.i.i.i.i = trunc i64 %_4.sroa.28.17.extract.shift to i3
  switch i3 %trunc.i.i49.i.i.i.i, label %bb2.i.i51.i.i.i.i [
    i3 0, label %_ZN4core4iter6traits8iterator8Iterator12try_for_each17h812d304e18d9e130E.exit
    i3 1, label %bb12.i.i70.i.i.i.i
    i3 2, label %bb6.i.i67.i.i.i.i
    i3 3, label %bb5.i.i54.i.i.i.i
    i3 -4, label %bb4.i.i53.i.i.i.i
    i3 -3, label %bb3.i.i52.i.i.i.i
  ]

bb2.i.i51.i.i.i.i:                                ; preds = %bb1.i50.i.i.i.i
  unreachable

bb3.i.i52.i.i.i.i:                                ; preds = %bb1.i50.i.i.i.i
  %_4.sroa.28.17.insert.mask = and i64 %_4.sroa.28.0, -280375465082881
  %_4.sroa.28.17.insert.insert = or i64 %_4.sroa.28.17.insert.mask, 4398046511104
  br label %bb6.i44.i.i.i.i

bb4.i.i53.i.i.i.i:                                ; preds = %bb1.i50.i.i.i.i
  %_4.sroa.28.17.insert.mask45 = and i64 %_4.sroa.28.0, -280375465082881
  %_4.sroa.28.17.insert.insert46 = or i64 %_4.sroa.28.17.insert.mask45, 3298534883328
  br label %bb6.i44.i.i.i.i

bb5.i.i54.i.i.i.i:                                ; preds = %bb1.i50.i.i.i.i
  %_4.sroa.28.17.insert.mask48 = and i64 %_4.sroa.28.0, -280375465082881
  %_4.sroa.28.17.insert.insert49 = or i64 %_4.sroa.28.17.insert.mask48, 2199023255552
  br label %bb6.i44.i.i.i.i

bb6.i.i67.i.i.i.i:                                ; preds = %bb1.i50.i.i.i.i
  %_4.sroa.28.13.extract.shift = lshr i64 %_4.sroa.28.0, 8
  %_4.sroa.28.13.extract.trunc = trunc i64 %_4.sroa.28.13.extract.shift to i32
  %_4.sroa.28.18.extract.shift = lshr i64 %_4.sroa.28.0, 48
  %_4.sroa.28.18.extract.trunc = trunc i64 %_4.sroa.28.18.extract.shift to i16
  %_10.i.i58.i.i.i.i65 = shl nuw nsw i64 %_4.sroa.28.18.extract.shift, 2
  %_10.i.i58.i.i.i.i = trunc i64 %_10.i.i58.i.i.i.i65 to i16
  %78 = and i16 %_10.i.i58.i.i.i.i, 28
  %79 = zext i16 %78 to i32
  %_7.i.i59.i.i.i.i = lshr i32 %_4.sroa.28.13.extract.trunc, %79
  %80 = trunc i32 %_7.i.i59.i.i.i.i to i8
  %num1.i.i.i60.i.i.i.i = and i8 %80, 15
  %_12.i.i.i61.i.i.i.i = icmp ult i8 %num1.i.i.i60.i.i.i.i, 10
  %_15.i.i.i62.i.i.i.i = or i8 %num1.i.i.i60.i.i.i.i, 48
  %_18.i.i.i63.i.i.i.i = add nuw nsw i8 %num1.i.i.i60.i.i.i.i, 87
  %.0.i.v.i.i64.i.i.i.i = select i1 %_12.i.i.i61.i.i.i.i, i8 %_15.i.i.i62.i.i.i.i, i8 %_18.i.i.i63.i.i.i.i
  %.0.i.i.i65.i.i.i.i = zext i8 %.0.i.v.i.i64.i.i.i.i to i32
  %_15.i.i66.i.i.i.i = icmp eq i16 %_4.sroa.28.18.extract.trunc, 0
  br i1 %_15.i.i66.i.i.i.i, label %bb10.i.i69.i.i.i.i, label %bb9.i.i68.i.i.i.i

bb9.i.i68.i.i.i.i:                                ; preds = %bb6.i.i67.i.i.i.i
  %81 = add i16 %_4.sroa.28.18.extract.trunc, -1
  %_4.sroa.28.18.insert.ext = zext i16 %81 to i64
  %_4.sroa.28.18.insert.shift = shl nuw i64 %_4.sroa.28.18.insert.ext, 48
  %_4.sroa.28.18.insert.mask = and i64 %_4.sroa.28.0, 281474976710655
  %_4.sroa.28.18.insert.insert = or i64 %_4.sroa.28.18.insert.shift, %_4.sroa.28.18.insert.mask
  br label %bb6.i44.i.i.i.i

bb10.i.i69.i.i.i.i:                               ; preds = %bb6.i.i67.i.i.i.i
  %_4.sroa.28.17.insert.mask51 = and i64 %_4.sroa.28.0, -280375465082881
  %_4.sroa.28.17.insert.insert52 = or i64 %_4.sroa.28.17.insert.mask51, 1099511627776
  br label %bb6.i44.i.i.i.i

bb12.i.i70.i.i.i.i:                               ; preds = %bb1.i50.i.i.i.i
  %_4.sroa.28.17.insert.mask54 = and i64 %_4.sroa.28.0, -280375465082881
  br label %bb6.i44.i.i.i.i

bb2.i71.i.i.i.i:                                  ; preds = %bb4.i40.i.i.i.i
  unreachable

bb3.i72.i.i.i.i:                                  ; preds = %bb4.i40.i.i.i.i
  %_4.sroa.28.12.insert.mask35 = and i64 %_4.sroa.28.0, -256
  %_4.sroa.28.12.insert.insert36 = or i64 %_4.sroa.28.12.insert.mask35, 1
  br label %bb6.i44.i.i.i.i

bb4.i74.i.i.i.i:                                  ; preds = %bb4.i40.i.i.i.i
  %_4.sroa.28.13.extract.shift42 = lshr i64 %_4.sroa.28.0, 8
  %_4.sroa.28.13.extract.trunc43 = trunc i64 %_4.sroa.28.13.extract.shift42 to i32
  %_4.sroa.28.12.insert.mask38 = and i64 %_4.sroa.28.0, -256
  br label %bb6.i44.i.i.i.i

bb6.i44.i.i.i.i:                                  ; preds = %bb4.i74.i.i.i.i, %bb3.i72.i.i.i.i, %bb12.i.i70.i.i.i.i, %bb10.i.i69.i.i.i.i, %bb9.i.i68.i.i.i.i, %bb5.i.i54.i.i.i.i, %bb4.i.i53.i.i.i.i, %bb3.i.i52.i.i.i.i
  %_4.sroa.28.1 = phi i64 [ %_4.sroa.28.17.insert.insert, %bb3.i.i52.i.i.i.i ], [ %_4.sroa.28.17.insert.insert46, %bb4.i.i53.i.i.i.i ], [ %_4.sroa.28.17.insert.insert49, %bb5.i.i54.i.i.i.i ], [ %_4.sroa.28.17.insert.insert52, %bb10.i.i69.i.i.i.i ], [ %_4.sroa.28.18.insert.insert, %bb9.i.i68.i.i.i.i ], [ %_4.sroa.28.17.insert.mask54, %bb12.i.i70.i.i.i.i ], [ %_4.sroa.28.12.insert.insert36, %bb3.i72.i.i.i.i ], [ %_4.sroa.28.12.insert.mask38, %bb4.i74.i.i.i.i ]
  %.0.i75.ph.i.i.i.i = phi i32 [ 92, %bb3.i.i52.i.i.i.i ], [ 117, %bb4.i.i53.i.i.i.i ], [ 123, %bb5.i.i54.i.i.i.i ], [ %.0.i.i.i65.i.i.i.i, %bb10.i.i69.i.i.i.i ], [ %.0.i.i.i65.i.i.i.i, %bb9.i.i68.i.i.i.i ], [ 125, %bb12.i.i70.i.i.i.i ], [ 92, %bb3.i72.i.i.i.i ], [ %_4.sroa.28.13.extract.trunc43, %bb4.i74.i.i.i.i ]
  %_3.0.i.i.i.i.i42.i.i.i.i = load {}*, {}** %74, align 1, !nonnull !568
  %_3.11.i.i.i.i.i43.i.i.i.i = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %76, align 1, !nonnull !568
  %82 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11.i.i.i.i.i43.i.i.i.i, i16 4
  %83 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %82, align 1, !invariant.load !568, !nonnull !568
  %84 = call zeroext addrspace(1) i1 %83({}* nonnull align 1 %_3.0.i.i.i.i.i42.i.i.i.i, i32 %.0.i75.ph.i.i.i.i)
  %_4.sroa.28.12.extract.trunc = trunc i64 %_4.sroa.28.1 to i8
  br i1 %84, label %_ZN4core4iter6traits8iterator8Iterator12try_for_each17h812d304e18d9e130E.exit, label %bb4.i40.i.i.i.i

_ZN4core4iter6traits8iterator8Iterator12try_for_each17h812d304e18d9e130E.exit: ; preds = %bb6.i.i.i.i.i, %bb6.i.i.i.i.i.i.i.i.i.i.i, %bb6.i.us.i.i.i.i.i.i.i.i.i.i, %bb4.i40.i.i.i.i, %bb1.i50.i.i.i.i, %bb6.i44.i.i.i.i, %bb21.i.i.i.i
  %.0.i.i.i.i = phi i1 [ false, %bb21.i.i.i.i ], [ false, %bb4.i40.i.i.i.i ], [ false, %bb1.i50.i.i.i.i ], [ true, %bb6.i44.i.i.i.i ], [ true, %bb6.i.us.i.i.i.i.i.i.i.i.i.i ], [ true, %bb6.i.i.i.i.i.i.i.i.i.i.i ], [ true, %bb6.i.i.i.i.i ]
  ret i1 %.0.i.i.i.i
}

; <core::str::EscapeUnicode as core::fmt::Display>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN63_$LT$core..str..EscapeUnicode$u20$as$u20$core..fmt..Display$GT$3fmt17hcefaf5179aadfe2dE"(%"str::EscapeUnicode"* noalias nocapture readonly align 1 dereferenceable(18) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %0) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %1 = getelementptr inbounds %"str::EscapeUnicode", %"str::EscapeUnicode"* %self, i16 0, i32 1, i32 1, i32 3
  %__self_0_0.idx.i.i.i = bitcast %"str::EscapeUnicode"* %self to i8**
  %__self_0_0.idx.val.i.i.i = load i8*, i8** %__self_0_0.idx.i.i.i, align 1, !alias.scope !5599, !noalias !5608
  %2 = getelementptr %"str::EscapeUnicode", %"str::EscapeUnicode"* %self, i16 0, i32 1, i32 1, i32 1, i32 1
  %__self_0_0.idx6.val.i.i.i = load i8*, i8** %2, align 1, !alias.scope !5599, !noalias !5608
  %3 = bitcast %"option::Option<char::EscapeUnicode>"* %1 to i32*
  %4 = load i32, i32* %3, align 1, !range !4132, !alias.scope !5612, !noalias !5615
  %5 = icmp eq i32 %4, 1114112
  br i1 %5, label %bb3.i.i.i, label %bb3.i11.i.i.i

bb3.i11.i.i.i:                                    ; preds = %start
  %6 = getelementptr inbounds %"str::EscapeUnicode", %"str::EscapeUnicode"* %self, i16 0, i32 1, i32 1, i32 3, i32 2, i16 0
  %7 = getelementptr inbounds %"str::EscapeUnicode", %"str::EscapeUnicode"* %self, i16 0, i32 1, i32 1, i32 3, i32 2, i16 1
  %8 = bitcast i8* %7 to i16*
  %__self_0_1.val.i.i9.i.i.i = load i8, i8* %6, align 1, !alias.scope !5617, !noalias !5620
  %trunc.i.i.i10.i.i.i = trunc i8 %__self_0_1.val.i.i9.i.i.i to i3
  %switch.tableidx = xor i3 %trunc.i.i.i10.i.i.i, -4
  %switch.maskindex = zext i3 %switch.tableidx to i8
  %switch.shifted = lshr i8 -13, %switch.maskindex
  %9 = and i8 %switch.shifted, 1
  %switch.lobit = icmp ne i8 %9, 0
  call addrspace(1) void @llvm.assume(i1 %switch.lobit)
  %10 = zext i3 %switch.tableidx to i16
  %switch.gep = getelementptr inbounds [8 x i8], [8 x i8]* @"switch.table._ZN63_$LT$core..str..EscapeUnicode$u20$as$u20$core..fmt..Display$GT$3fmt17hcefaf5179aadfe2dE.195", i16 0, i16 %10
  %switch.load = load i8, i8* %switch.gep, align 1
  %__self_0_2.val.i.i19.i.i.i = load i16, i16* %8, align 1, !alias.scope !5617, !noalias !5620
  br label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i11.i.i.i, %start
  %_8.sroa.6.0.i.i.i = phi i16 [ %__self_0_2.val.i.i19.i.i.i, %bb3.i11.i.i.i ], [ undef, %start ]
  %_8.sroa.5.0.i.i.i = phi i8 [ %switch.load, %bb3.i11.i.i.i ], [ undef, %start ]
  %11 = getelementptr inbounds %"str::EscapeUnicode", %"str::EscapeUnicode"* %self, i16 0, i32 1, i32 1, i32 5
  %12 = bitcast %"option::Option<char::EscapeUnicode>"* %11 to i32*
  %13 = load i32, i32* %12, align 1, !range !4132, !alias.scope !5622, !noalias !5625
  %14 = icmp eq i32 %13, 1114112
  br i1 %14, label %"_ZN63_$LT$core..str..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h0b841a6c2a2501c4E.exit", label %bb3.i.i.i.i

bb3.i.i.i.i:                                      ; preds = %bb3.i.i.i
  %15 = getelementptr inbounds %"str::EscapeUnicode", %"str::EscapeUnicode"* %self, i16 0, i32 1, i32 1, i32 5, i32 2, i16 0
  %16 = getelementptr inbounds %"str::EscapeUnicode", %"str::EscapeUnicode"* %self, i16 0, i32 1, i32 1, i32 5, i32 2, i16 1
  %17 = bitcast i8* %16 to i16*
  %__self_0_1.val.i.i.i.i.i = load i8, i8* %15, align 1, !alias.scope !5627, !noalias !5630
  %trunc.i.i.i.i.i.i = trunc i8 %__self_0_1.val.i.i.i.i.i to i3
  %switch.tableidx26 = xor i3 %trunc.i.i.i.i.i.i, -4
  %switch.maskindex27 = zext i3 %switch.tableidx26 to i8
  %switch.shifted28 = lshr i8 -13, %switch.maskindex27
  %18 = and i8 %switch.shifted28, 1
  %switch.lobit29 = icmp ne i8 %18, 0
  call addrspace(1) void @llvm.assume(i1 %switch.lobit29)
  %19 = zext i3 %switch.tableidx26 to i16
  %switch.gep31 = getelementptr inbounds [8 x i8], [8 x i8]* @"switch.table._ZN63_$LT$core..str..EscapeUnicode$u20$as$u20$core..fmt..Display$GT$3fmt17hcefaf5179aadfe2dE.195", i16 0, i16 %19
  %switch.load32 = load i8, i8* %switch.gep31, align 1
  %__self_0_2.val.i.i.i.i.i = load i16, i16* %17, align 1, !alias.scope !5627, !noalias !5630
  br label %"_ZN63_$LT$core..str..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h0b841a6c2a2501c4E.exit"

"_ZN63_$LT$core..str..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h0b841a6c2a2501c4E.exit": ; preds = %bb3.i.i.i, %bb3.i.i.i.i
  %_11.sroa.6.0.i.i.i = phi i16 [ %__self_0_2.val.i.i.i.i.i, %bb3.i.i.i.i ], [ undef, %bb3.i.i.i ]
  %_11.sroa.5.0.i.i.i = phi i8 [ %switch.load32, %bb3.i.i.i.i ], [ undef, %bb3.i.i.i ]
  br i1 %5, label %bb17.i.i.i.i, label %bb1.i.i.i.i.i.preheader

bb1.i.i.i.i.i.preheader:                          ; preds = %"_ZN63_$LT$core..str..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h0b841a6c2a2501c4E.exit"
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %0, i16 0, i32 11, i32 0
  %21 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %0, i16 0, i32 11, i32 1
  %22 = bitcast [3 x i16]** %21 to i1 ({}*, i32) addrspace(1)***
  br label %bb1.i.i.i.i.i

bb1.i.i.i.i.i:                                    ; preds = %bb1.i.i.i.i.i.preheader, %bb6.i.i.i.i.i
  %_4.sroa.28.0 = phi i16 [ %_4.sroa.28.1, %bb6.i.i.i.i.i ], [ %_8.sroa.6.0.i.i.i, %bb1.i.i.i.i.i.preheader ]
  %_4.sroa.19.0 = phi i8 [ %_4.sroa.19.1, %bb6.i.i.i.i.i ], [ %_8.sroa.5.0.i.i.i, %bb1.i.i.i.i.i.preheader ]
  %trunc.i.i.i.i.i.i3 = trunc i8 %_4.sroa.19.0 to i3
  switch i3 %trunc.i.i.i.i.i.i3, label %bb2.i.i.i.i.i.i4 [
    i3 0, label %bb17.i.i.i.i
    i3 1, label %bb12.i.i.i.i.i.i
    i3 2, label %bb6.i.i.i.i.i.i8
    i3 3, label %bb5.i.i.i.i.i.i7
    i3 -4, label %bb4.i.i.i.i.i.i6
    i3 -3, label %bb6.i.i.i.i.i
  ]

bb2.i.i.i.i.i.i4:                                 ; preds = %bb1.i.i.i.i.i
  unreachable

bb4.i.i.i.i.i.i6:                                 ; preds = %bb1.i.i.i.i.i
  br label %bb6.i.i.i.i.i

bb5.i.i.i.i.i.i7:                                 ; preds = %bb1.i.i.i.i.i
  br label %bb6.i.i.i.i.i

bb6.i.i.i.i.i.i8:                                 ; preds = %bb1.i.i.i.i.i
  %_10.i.i.i.i.i.i = shl i16 %_4.sroa.28.0, 2
  %23 = and i16 %_10.i.i.i.i.i.i, 28
  %24 = zext i16 %23 to i32
  %_7.i.i.i.i.i.i = lshr i32 %4, %24
  %25 = trunc i32 %_7.i.i.i.i.i.i to i8
  %num1.i.i.i.i.i.i.i = and i8 %25, 15
  %_12.i.i.i.i.i.i.i = icmp ult i8 %num1.i.i.i.i.i.i.i, 10
  %_15.i.i.i.i.i.i.i = or i8 %num1.i.i.i.i.i.i.i, 48
  %_18.i.i.i.i.i.i.i = add nuw nsw i8 %num1.i.i.i.i.i.i.i, 87
  %.0.i.v.i.i.i.i.i.i = select i1 %_12.i.i.i.i.i.i.i, i8 %_15.i.i.i.i.i.i.i, i8 %_18.i.i.i.i.i.i.i
  %.0.i.i.i.i.i.i.i = zext i8 %.0.i.v.i.i.i.i.i.i to i32
  %_15.i.i.i.i.i.i = icmp eq i16 %_4.sroa.28.0, 0
  %26 = add i16 %_4.sroa.28.0, -1
  %spec.select = select i1 %_15.i.i.i.i.i.i, i16 0, i16 %26
  %spec.select15 = select i1 %_15.i.i.i.i.i.i, i8 1, i8 %_4.sroa.19.0
  br label %bb6.i.i.i.i.i

bb12.i.i.i.i.i.i:                                 ; preds = %bb1.i.i.i.i.i
  br label %bb6.i.i.i.i.i

bb6.i.i.i.i.i:                                    ; preds = %bb6.i.i.i.i.i.i8, %bb1.i.i.i.i.i, %bb12.i.i.i.i.i.i, %bb5.i.i.i.i.i.i7, %bb4.i.i.i.i.i.i6
  %_4.sroa.28.1 = phi i16 [ %_4.sroa.28.0, %bb4.i.i.i.i.i.i6 ], [ %_4.sroa.28.0, %bb5.i.i.i.i.i.i7 ], [ %_4.sroa.28.0, %bb12.i.i.i.i.i.i ], [ %_4.sroa.28.0, %bb1.i.i.i.i.i ], [ %spec.select, %bb6.i.i.i.i.i.i8 ]
  %_4.sroa.19.1 = phi i8 [ 3, %bb4.i.i.i.i.i.i6 ], [ 2, %bb5.i.i.i.i.i.i7 ], [ 0, %bb12.i.i.i.i.i.i ], [ 4, %bb1.i.i.i.i.i ], [ %spec.select15, %bb6.i.i.i.i.i.i8 ]
  %.0.i.ph.i.i.i.i.i = phi i32 [ 117, %bb4.i.i.i.i.i.i6 ], [ 123, %bb5.i.i.i.i.i.i7 ], [ 125, %bb12.i.i.i.i.i.i ], [ 92, %bb1.i.i.i.i.i ], [ %.0.i.i.i.i.i.i.i, %bb6.i.i.i.i.i.i8 ]
  %_3.0.i.i.i.i.i.i.i.i.i = load {}*, {}** %20, align 1, !nonnull !568
  %_3.11.i.i.i.i.i.i.i.i.i = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %22, align 1, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11.i.i.i.i.i.i.i.i.i, i16 4
  %28 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %27, align 1, !invariant.load !568, !nonnull !568
  %29 = call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i.i.i.i.i.i.i.i.i, i32 %.0.i.ph.i.i.i.i.i)
  br i1 %29, label %_ZN4core4iter6traits8iterator8Iterator12try_for_each17h50e99cb29f35fdefE.exit, label %bb1.i.i.i.i.i

bb17.i.i.i.i:                                     ; preds = %bb1.i.i.i.i.i, %"_ZN63_$LT$core..str..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h0b841a6c2a2501c4E.exit"
  %30 = icmp ne i8* %__self_0_0.idx.val.i.i.i, null
  tail call addrspace(1) void @llvm.assume(i1 %30)
  %31 = icmp ne i8* %__self_0_0.idx6.val.i.i.i, null
  tail call addrspace(1) void @llvm.assume(i1 %31)
  %_13.i.i.i.i13.i.i.i.i.i.i.i = icmp eq i8* %__self_0_0.idx.val.i.i.i, %__self_0_0.idx6.val.i.i.i
  br i1 %_13.i.i.i.i13.i.i.i.i.i.i.i, label %bb21.i.i.i.i, label %bb3.i.i.i.i.i.i.i.i.i.i.preheader

bb3.i.i.i.i.i.i.i.i.i.i.preheader:                ; preds = %bb17.i.i.i.i
  %32 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %0, i16 0, i32 11, i32 0
  %33 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %0, i16 0, i32 11, i32 1
  %34 = bitcast [3 x i16]** %33 to i1 ({}*, i32) addrspace(1)***
  br label %bb3.i.i.i.i.i.i.i.i.i.i

bb3.i.i.i.i.i.i.i.i.i.i:                          ; preds = %bb3.i.i.i.i.i.i.i.i.i.i.preheader, %bb8.i.i.i.i.i.i.i.i
  %_16.i.i.i.i15.i.i.i.i.i.i.i = phi i8* [ %_4.sroa.0.3, %bb8.i.i.i.i.i.i.i.i ], [ %__self_0_0.idx.val.i.i.i, %bb3.i.i.i.i.i.i.i.i.i.i.preheader ]
  %35 = getelementptr inbounds i8, i8* %_16.i.i.i.i15.i.i.i.i.i.i.i, i16 1
  %x.i.i.i.i.i.i.i.i.i.i = load i8, i8* %_16.i.i.i.i15.i.i.i.i.i.i.i, align 1, !noalias !5632
  %_12.i.i.i.i.i.i.i.i.i.i = icmp sgt i8 %x.i.i.i.i.i.i.i.i.i.i, -1
  br i1 %_12.i.i.i.i.i.i.i.i.i.i, label %bb11.i.i.i.i.i.i.i.i.i.i, label %bb10.i.i.i.i.i.i.i.i.i.i

bb10.i.i.i.i.i.i.i.i.i.i:                         ; preds = %bb3.i.i.i.i.i.i.i.i.i.i
  %_3.i37.i.i.i.i.i.i.i.i.i.i = and i8 %x.i.i.i.i.i.i.i.i.i.i, 31
  %36 = zext i8 %_3.i37.i.i.i.i.i.i.i.i.i.i to i32
  %_13.i33.i.i.i.i.i.i.i.i.i.i = icmp eq i8* %35, %__self_0_0.idx6.val.i.i.i
  br i1 %_13.i33.i.i.i.i.i.i.i.i.i.i, label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i.i.i.i, label %bb3.i28.i.i.i.i.i.i.i.i.i.i

bb3.i28.i.i.i.i.i.i.i.i.i.i:                      ; preds = %bb10.i.i.i.i.i.i.i.i.i.i
  %37 = getelementptr inbounds i8, i8* %_16.i.i.i.i15.i.i.i.i.i.i.i, i16 2
  %byte.i27.i.i.i.i.i.i.i.i.i.i = load i8, i8* %35, align 1, !alias.scope !5635, !noalias !5632
  %phitmp.i.i.i.i.i.i.i.i.i.i = and i8 %byte.i27.i.i.i.i.i.i.i.i.i.i, 63
  %phitmp42.i.i.i.i.i.i.i.i.i.i = zext i8 %phitmp.i.i.i.i.i.i.i.i.i.i to i32
  br label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i.i.i.i

_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i.i.i.i: ; preds = %bb3.i28.i.i.i.i.i.i.i.i.i.i, %bb10.i.i.i.i.i.i.i.i.i.i
  %_4.sroa.0.0 = phi i8* [ %__self_0_0.idx6.val.i.i.i, %bb10.i.i.i.i.i.i.i.i.i.i ], [ %37, %bb3.i28.i.i.i.i.i.i.i.i.i.i ]
  %.0.i29.i.i.i.i.i.i.i.i.i.i = phi i32 [ 0, %bb10.i.i.i.i.i.i.i.i.i.i ], [ %phitmp42.i.i.i.i.i.i.i.i.i.i, %bb3.i28.i.i.i.i.i.i.i.i.i.i ]
  %_3.i24.i.i.i.i.i.i.i.i.i.i = shl nuw nsw i32 %36, 6
  %38 = or i32 %.0.i29.i.i.i.i.i.i.i.i.i.i, %_3.i24.i.i.i.i.i.i.i.i.i.i
  %_24.i.i.i.i.i.i.i.i.i.i = icmp ugt i8 %x.i.i.i.i.i.i.i.i.i.i, -33
  br i1 %_24.i.i.i.i.i.i.i.i.i.i, label %bb17.i.i.i.i.i.i.i.i.i.i, label %bb6.i.i.i.i.i.i.i.i

bb11.i.i.i.i.i.i.i.i.i.i:                         ; preds = %bb3.i.i.i.i.i.i.i.i.i.i
  %_14.i.i.i.i.i.i.i.i.i.i = zext i8 %x.i.i.i.i.i.i.i.i.i.i to i32
  br label %bb6.i.i.i.i.i.i.i.i

bb17.i.i.i.i.i.i.i.i.i.i:                         ; preds = %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i.i.i.i
  %_13.i20.i.i.i.i.i.i.i.i.i.i = icmp eq i8* %_4.sroa.0.0, %__self_0_0.idx6.val.i.i.i
  br i1 %_13.i20.i.i.i.i.i.i.i.i.i.i, label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i.i.i.i, label %bb3.i15.i.i.i.i.i.i.i.i.i.i

bb3.i15.i.i.i.i.i.i.i.i.i.i:                      ; preds = %bb17.i.i.i.i.i.i.i.i.i.i
  %39 = getelementptr inbounds i8, i8* %_4.sroa.0.0, i16 1
  %byte.i14.i.i.i.i.i.i.i.i.i.i = load i8, i8* %_4.sroa.0.0, align 1, !alias.scope !5638, !noalias !5632
  %phitmp43.i.i.i.i.i.i.i.i.i.i = and i8 %byte.i14.i.i.i.i.i.i.i.i.i.i, 63
  %phitmp44.i.i.i.i.i.i.i.i.i.i = zext i8 %phitmp43.i.i.i.i.i.i.i.i.i.i to i32
  br label %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i.i.i.i

_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i.i.i.i: ; preds = %bb3.i15.i.i.i.i.i.i.i.i.i.i, %bb17.i.i.i.i.i.i.i.i.i.i
  %_4.sroa.0.1 = phi i8* [ %_4.sroa.0.0, %bb17.i.i.i.i.i.i.i.i.i.i ], [ %39, %bb3.i15.i.i.i.i.i.i.i.i.i.i ]
  %_16.i6.i.i.i.i.i.i.i.i.i.i = phi i8* [ %__self_0_0.idx6.val.i.i.i, %bb17.i.i.i.i.i.i.i.i.i.i ], [ %39, %bb3.i15.i.i.i.i.i.i.i.i.i.i ]
  %.0.i16.i.i.i.i.i.i.i.i.i.i = phi i32 [ 0, %bb17.i.i.i.i.i.i.i.i.i.i ], [ %phitmp44.i.i.i.i.i.i.i.i.i.i, %bb3.i15.i.i.i.i.i.i.i.i.i.i ]
  %_3.i11.i.i.i.i.i.i.i.i.i.i = shl nuw nsw i32 %.0.i29.i.i.i.i.i.i.i.i.i.i, 6
  %40 = or i32 %.0.i16.i.i.i.i.i.i.i.i.i.i, %_3.i11.i.i.i.i.i.i.i.i.i.i
  %_34.i.i.i.i.i.i.i.i.i.i = shl nuw nsw i32 %36, 12
  %41 = or i32 %40, %_34.i.i.i.i.i.i.i.i.i.i
  %_37.i.i.i.i.i.i.i.i.i.i = icmp ugt i8 %x.i.i.i.i.i.i.i.i.i.i, -17
  br i1 %_37.i.i.i.i.i.i.i.i.i.i, label %bb22.i.i.i.i.i.i.i.i.i.i, label %bb6.i.i.i.i.i.i.i.i

bb22.i.i.i.i.i.i.i.i.i.i:                         ; preds = %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i.i.i.i
  %_13.i7.i.i.i.i.i.i.i.i.i.i = icmp eq i8* %_16.i6.i.i.i.i.i.i.i.i.i.i, %__self_0_0.idx6.val.i.i.i
  br i1 %_13.i7.i.i.i.i.i.i.i.i.i.i, label %bb4.i.i.i.i.i.i.i.i, label %bb3.i.i.i.i.i.i.i.i.i.i.i

bb3.i.i.i.i.i.i.i.i.i.i.i:                        ; preds = %bb22.i.i.i.i.i.i.i.i.i.i
  %42 = getelementptr inbounds i8, i8* %_16.i6.i.i.i.i.i.i.i.i.i.i, i16 1
  %byte.i.i.i.i.i.i.i.i.i.i.i = load i8, i8* %_16.i6.i.i.i.i.i.i.i.i.i.i, align 1, !alias.scope !5641, !noalias !5632
  %phitmp45.i.i.i.i.i.i.i.i.i.i = and i8 %byte.i.i.i.i.i.i.i.i.i.i.i, 63
  %phitmp46.i.i.i.i.i.i.i.i.i.i = zext i8 %phitmp45.i.i.i.i.i.i.i.i.i.i to i32
  br label %bb4.i.i.i.i.i.i.i.i

bb4.i.i.i.i.i.i.i.i:                              ; preds = %bb3.i.i.i.i.i.i.i.i.i.i.i, %bb22.i.i.i.i.i.i.i.i.i.i
  %_4.sroa.0.2 = phi i8* [ %_4.sroa.0.1, %bb22.i.i.i.i.i.i.i.i.i.i ], [ %42, %bb3.i.i.i.i.i.i.i.i.i.i.i ]
  %.0.i4.i.i.i.i.i.i.i.i.i.i = phi i32 [ 0, %bb22.i.i.i.i.i.i.i.i.i.i ], [ %phitmp46.i.i.i.i.i.i.i.i.i.i, %bb3.i.i.i.i.i.i.i.i.i.i.i ]
  %_43.i.i.i.i.i.i.i.i.i.i = shl nuw nsw i32 %36, 18
  %_42.i.i.i.i.i.i.i.i.i.i = and i32 %_43.i.i.i.i.i.i.i.i.i.i, 1835008
  %_3.i.i.i.i.i.i.i.i.i.i.i = shl nuw nsw i32 %40, 6
  %43 = or i32 %_3.i.i.i.i.i.i.i.i.i.i.i, %_42.i.i.i.i.i.i.i.i.i.i
  %44 = or i32 %43, %.0.i4.i.i.i.i.i.i.i.i.i.i
  %45 = icmp eq i32 %44, 1114112
  br i1 %45, label %bb21.i.i.i.i, label %bb6.i.i.i.i.i.i.i.i

bb6.i.i.i.i.i.i.i.i:                              ; preds = %bb4.i.i.i.i.i.i.i.i, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i.i.i.i, %bb11.i.i.i.i.i.i.i.i.i.i, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i.i.i.i
  %_4.sroa.0.3 = phi i8* [ %35, %bb11.i.i.i.i.i.i.i.i.i.i ], [ %_4.sroa.0.2, %bb4.i.i.i.i.i.i.i.i ], [ %_4.sroa.0.1, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i.i.i.i ], [ %_4.sroa.0.0, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i.i.i.i ]
  %.sroa.0.0.i.i16.i.i.i.i.i.i.i.i = phi i32 [ %_14.i.i.i.i.i.i.i.i.i.i, %bb11.i.i.i.i.i.i.i.i.i.i ], [ %44, %bb4.i.i.i.i.i.i.i.i ], [ %41, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit17.i.i.i.i.i.i.i.i.i.i ], [ %38, %_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E.exit30.i.i.i.i.i.i.i.i.i.i ]
  %46 = icmp ult i32 %.sroa.0.0.i.i16.i.i.i.i.i.i.i.i, 1114112
  tail call addrspace(1) void @llvm.assume(i1 %46) #20, !noalias !5644
  %_6.i.i.i.i.i.i.i.i.i.i.i.i = or i32 %.sroa.0.0.i.i16.i.i.i.i.i.i.i.i, 1
  %47 = tail call addrspace(1) i32 @llvm.ctlz.i32(i32 %_6.i.i.i.i.i.i.i.i.i.i.i.i, i1 true) #20, !range !1299
  %msb.i.i.i.i.i.i.i.i.i.i.i.i = lshr i32 %47, 2
  %48 = trunc i32 %msb.i.i.i.i.i.i.i.i.i.i.i.i to i16
  %_12.i.i.i.i.i.i.i.i.i.i.i.i = xor i16 %48, 7
  br label %bb1.i.i.i.i.i.i.i.i.i.i.i

bb1.i.i.i.i.i.i.i.i.i.i.i:                        ; preds = %bb6.i.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.i.i.i.i.i
  %mid.sroa.5.0.i.i.i.i.i.i.i.i.i.i = phi i8 [ 5, %bb6.i.i.i.i.i.i.i.i ], [ %mid.sroa.5.1.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.i.i.i.i.i.i.i.i ]
  %mid.sroa.11.0.i.i.i.i.i.i.i.i.i.i = phi i16 [ %_12.i.i.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.i.i.i.i.i ], [ %mid.sroa.11.1.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.i.i.i.i.i.i.i.i ]
  %trunc.i.i.i.i.i.i.i.i.i.i.i.i = trunc i8 %mid.sroa.5.0.i.i.i.i.i.i.i.i.i.i to i3
  switch i3 %trunc.i.i.i.i.i.i.i.i.i.i.i.i, label %bb2.i.i.i.i.i.i.i.i.i.i.i.i [
    i3 0, label %bb8.i.i.i.i.i.i.i.i
    i3 1, label %bb12.i.i.i.i.i.i.i.i.i.i.i.i
    i3 2, label %bb6.i.i.i.i.i.i.i.i.i.i.i.i
    i3 3, label %bb5.i.i.i.i.i.i.i.i.i.i.i.i
    i3 -4, label %bb4.i.i.i.i.i.i.i.i.i.i.i.i
    i3 -3, label %bb6.i.i.i.i.i.i.i.i.i.i.i
  ]

bb2.i.i.i.i.i.i.i.i.i.i.i.i:                      ; preds = %bb1.i.i.i.i.i.i.i.i.i.i.i
  unreachable

bb4.i.i.i.i.i.i.i.i.i.i.i.i:                      ; preds = %bb1.i.i.i.i.i.i.i.i.i.i.i
  br label %bb6.i.i.i.i.i.i.i.i.i.i.i

bb5.i.i.i.i.i.i.i.i.i.i.i.i:                      ; preds = %bb1.i.i.i.i.i.i.i.i.i.i.i
  br label %bb6.i.i.i.i.i.i.i.i.i.i.i

bb6.i.i.i.i.i.i.i.i.i.i.i.i:                      ; preds = %bb1.i.i.i.i.i.i.i.i.i.i.i
  %_10.i.i.i.i.i.i.i.i.i.i.i.i = shl i16 %mid.sroa.11.0.i.i.i.i.i.i.i.i.i.i, 2
  %49 = and i16 %_10.i.i.i.i.i.i.i.i.i.i.i.i, 28
  %50 = zext i16 %49 to i32
  %_7.i.i.i.i.i.i.i.i.i.i.i.i = lshr i32 %.sroa.0.0.i.i16.i.i.i.i.i.i.i.i, %50
  %51 = trunc i32 %_7.i.i.i.i.i.i.i.i.i.i.i.i to i8
  %num1.i.i.i.i.i.i.i.i.i.i.i.i.i = and i8 %51, 15
  %_12.i.i.i.i.i.i.i.i.i.i.i.i.i = icmp ult i8 %num1.i.i.i.i.i.i.i.i.i.i.i.i.i, 10
  %_15.i.i.i.i.i.i.i.i.i.i.i.i.i = or i8 %num1.i.i.i.i.i.i.i.i.i.i.i.i.i, 48
  %_18.i.i.i.i.i.i.i.i.i.i.i.i.i = add nuw nsw i8 %num1.i.i.i.i.i.i.i.i.i.i.i.i.i, 87
  %.0.i.v.i.i.i.i.i.i.i.i.i.i.i.i = select i1 %_12.i.i.i.i.i.i.i.i.i.i.i.i.i, i8 %_15.i.i.i.i.i.i.i.i.i.i.i.i.i, i8 %_18.i.i.i.i.i.i.i.i.i.i.i.i.i
  %.0.i.i.i.i.i.i.i.i.i.i.i.i.i = zext i8 %.0.i.v.i.i.i.i.i.i.i.i.i.i.i.i to i32
  %_15.i.i.i.i.i.i.i.i.i.i.i.i = icmp eq i16 %mid.sroa.11.0.i.i.i.i.i.i.i.i.i.i, 0
  %52 = add i16 %mid.sroa.11.0.i.i.i.i.i.i.i.i.i.i, -1
  %spec.select.i.i.i.i.i.i.i.i.i.i = select i1 %_15.i.i.i.i.i.i.i.i.i.i.i.i, i8 1, i8 %mid.sroa.5.0.i.i.i.i.i.i.i.i.i.i
  %spec.select25.i.i.i.i.i.i.i.i.i.i = select i1 %_15.i.i.i.i.i.i.i.i.i.i.i.i, i16 0, i16 %52
  br label %bb6.i.i.i.i.i.i.i.i.i.i.i

bb12.i.i.i.i.i.i.i.i.i.i.i.i:                     ; preds = %bb1.i.i.i.i.i.i.i.i.i.i.i
  br label %bb6.i.i.i.i.i.i.i.i.i.i.i

bb6.i.i.i.i.i.i.i.i.i.i.i:                        ; preds = %bb12.i.i.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.i.i.i.i.i.i.i.i.i, %bb5.i.i.i.i.i.i.i.i.i.i.i.i, %bb4.i.i.i.i.i.i.i.i.i.i.i.i, %bb1.i.i.i.i.i.i.i.i.i.i.i
  %mid.sroa.5.1.i.i.i.i.i.i.i.i.i.i = phi i8 [ 3, %bb4.i.i.i.i.i.i.i.i.i.i.i.i ], [ 2, %bb5.i.i.i.i.i.i.i.i.i.i.i.i ], [ 0, %bb12.i.i.i.i.i.i.i.i.i.i.i.i ], [ 4, %bb1.i.i.i.i.i.i.i.i.i.i.i ], [ %spec.select.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.i.i.i.i.i.i.i.i.i ]
  %mid.sroa.11.1.i.i.i.i.i.i.i.i.i.i = phi i16 [ %mid.sroa.11.0.i.i.i.i.i.i.i.i.i.i, %bb4.i.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.11.0.i.i.i.i.i.i.i.i.i.i, %bb5.i.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.11.0.i.i.i.i.i.i.i.i.i.i, %bb12.i.i.i.i.i.i.i.i.i.i.i.i ], [ %mid.sroa.11.0.i.i.i.i.i.i.i.i.i.i, %bb1.i.i.i.i.i.i.i.i.i.i.i ], [ %spec.select25.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.i.i.i.i.i.i.i.i.i ]
  %.0.i.ph.i.i.i.i.i.i.i.i.i.i.i = phi i32 [ 117, %bb4.i.i.i.i.i.i.i.i.i.i.i.i ], [ 123, %bb5.i.i.i.i.i.i.i.i.i.i.i.i ], [ 125, %bb12.i.i.i.i.i.i.i.i.i.i.i.i ], [ 92, %bb1.i.i.i.i.i.i.i.i.i.i.i ], [ %.0.i.i.i.i.i.i.i.i.i.i.i.i.i, %bb6.i.i.i.i.i.i.i.i.i.i.i.i ]
  %_3.0.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i = load {}*, {}** %32, align 1, !noalias !5651, !nonnull !568
  %_3.11.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %34, align 1, !noalias !5651, !nonnull !568
  %53 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i, i16 4
  %54 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %53, align 1, !invariant.load !568, !noalias !5651, !nonnull !568
  %55 = call zeroext addrspace(1) i1 %54({}* nonnull align 1 %_3.0.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i, i32 %.0.i.ph.i.i.i.i.i.i.i.i.i.i.i)
  br i1 %55, label %_ZN4core4iter6traits8iterator8Iterator12try_for_each17h50e99cb29f35fdefE.exit, label %bb1.i.i.i.i.i.i.i.i.i.i.i

bb8.i.i.i.i.i.i.i.i:                              ; preds = %bb1.i.i.i.i.i.i.i.i.i.i.i
  %56 = icmp ne i8* %_4.sroa.0.3, null
  tail call addrspace(1) void @llvm.assume(i1 %56)
  %_13.i.i.i.i.i.i.i.i.i.i.i = icmp eq i8* %_4.sroa.0.3, %__self_0_0.idx6.val.i.i.i
  br i1 %_13.i.i.i.i.i.i.i.i.i.i.i, label %bb21.i.i.i.i, label %bb3.i.i.i.i.i.i.i.i.i.i

bb21.i.i.i.i:                                     ; preds = %bb8.i.i.i.i.i.i.i.i, %bb4.i.i.i.i.i.i.i.i, %bb17.i.i.i.i
  br i1 %14, label %_ZN4core4iter6traits8iterator8Iterator12try_for_each17h50e99cb29f35fdefE.exit, label %bb1.i45.i.i.i.i.preheader

bb1.i45.i.i.i.i.preheader:                        ; preds = %bb21.i.i.i.i
  %57 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %0, i16 0, i32 11, i32 0
  %58 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %0, i16 0, i32 11, i32 1
  %59 = bitcast [3 x i16]** %58 to i1 ({}*, i32) addrspace(1)***
  br label %bb1.i45.i.i.i.i

bb1.i45.i.i.i.i:                                  ; preds = %bb1.i45.i.i.i.i.preheader, %bb6.i69.i.i.i.i
  %_4.sroa.37.0 = phi i8 [ %_4.sroa.37.1, %bb6.i69.i.i.i.i ], [ %_11.sroa.5.0.i.i.i, %bb1.i45.i.i.i.i.preheader ]
  %_4.sroa.44.0 = phi i16 [ %_4.sroa.44.1, %bb6.i69.i.i.i.i ], [ %_11.sroa.6.0.i.i.i, %bb1.i45.i.i.i.i.preheader ]
  %trunc.i.i44.i.i.i.i = trunc i8 %_4.sroa.37.0 to i3
  switch i3 %trunc.i.i44.i.i.i.i, label %bb2.i.i46.i.i.i.i [
    i3 0, label %_ZN4core4iter6traits8iterator8Iterator12try_for_each17h50e99cb29f35fdefE.exit
    i3 1, label %bb12.i.i64.i.i.i.i
    i3 2, label %bb6.i.i61.i.i.i.i
    i3 3, label %bb5.i.i49.i.i.i.i
    i3 -4, label %bb4.i.i48.i.i.i.i
    i3 -3, label %bb6.i69.i.i.i.i
  ]

bb2.i.i46.i.i.i.i:                                ; preds = %bb1.i45.i.i.i.i
  unreachable

bb4.i.i48.i.i.i.i:                                ; preds = %bb1.i45.i.i.i.i
  br label %bb6.i69.i.i.i.i

bb5.i.i49.i.i.i.i:                                ; preds = %bb1.i45.i.i.i.i
  br label %bb6.i69.i.i.i.i

bb6.i.i61.i.i.i.i:                                ; preds = %bb1.i45.i.i.i.i
  %_10.i.i52.i.i.i.i = shl i16 %_4.sroa.44.0, 2
  %60 = and i16 %_10.i.i52.i.i.i.i, 28
  %61 = zext i16 %60 to i32
  %_7.i.i53.i.i.i.i = lshr i32 %13, %61
  %62 = trunc i32 %_7.i.i53.i.i.i.i to i8
  %num1.i.i.i54.i.i.i.i = and i8 %62, 15
  %_12.i.i.i55.i.i.i.i = icmp ult i8 %num1.i.i.i54.i.i.i.i, 10
  %_15.i.i.i56.i.i.i.i = or i8 %num1.i.i.i54.i.i.i.i, 48
  %_18.i.i.i57.i.i.i.i = add nuw nsw i8 %num1.i.i.i54.i.i.i.i, 87
  %.0.i.v.i.i58.i.i.i.i = select i1 %_12.i.i.i55.i.i.i.i, i8 %_15.i.i.i56.i.i.i.i, i8 %_18.i.i.i57.i.i.i.i
  %.0.i.i.i59.i.i.i.i = zext i8 %.0.i.v.i.i58.i.i.i.i to i32
  %_15.i.i60.i.i.i.i = icmp eq i16 %_4.sroa.44.0, 0
  %63 = add i16 %_4.sroa.44.0, -1
  %spec.select16 = select i1 %_15.i.i60.i.i.i.i, i8 1, i8 %_4.sroa.37.0
  %spec.select17 = select i1 %_15.i.i60.i.i.i.i, i16 0, i16 %63
  br label %bb6.i69.i.i.i.i

bb12.i.i64.i.i.i.i:                               ; preds = %bb1.i45.i.i.i.i
  br label %bb6.i69.i.i.i.i

bb6.i69.i.i.i.i:                                  ; preds = %bb6.i.i61.i.i.i.i, %bb1.i45.i.i.i.i, %bb12.i.i64.i.i.i.i, %bb5.i.i49.i.i.i.i, %bb4.i.i48.i.i.i.i
  %_4.sroa.37.1 = phi i8 [ 3, %bb4.i.i48.i.i.i.i ], [ 2, %bb5.i.i49.i.i.i.i ], [ 0, %bb12.i.i64.i.i.i.i ], [ 4, %bb1.i45.i.i.i.i ], [ %spec.select16, %bb6.i.i61.i.i.i.i ]
  %_4.sroa.44.1 = phi i16 [ %_4.sroa.44.0, %bb4.i.i48.i.i.i.i ], [ %_4.sroa.44.0, %bb5.i.i49.i.i.i.i ], [ %_4.sroa.44.0, %bb12.i.i64.i.i.i.i ], [ %_4.sroa.44.0, %bb1.i45.i.i.i.i ], [ %spec.select17, %bb6.i.i61.i.i.i.i ]
  %.0.i.ph.i65.i.i.i.i = phi i32 [ 117, %bb4.i.i48.i.i.i.i ], [ 123, %bb5.i.i49.i.i.i.i ], [ 125, %bb12.i.i64.i.i.i.i ], [ 92, %bb1.i45.i.i.i.i ], [ %.0.i.i.i59.i.i.i.i, %bb6.i.i61.i.i.i.i ]
  %_3.0.i.i.i.i.i67.i.i.i.i = load {}*, {}** %57, align 1, !nonnull !568
  %_3.11.i.i.i.i.i68.i.i.i.i = load i1 ({}*, i32) addrspace(1)**, i1 ({}*, i32) addrspace(1)*** %59, align 1, !nonnull !568
  %64 = getelementptr inbounds i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %_3.11.i.i.i.i.i68.i.i.i.i, i16 4
  %65 = load i1 ({}*, i32) addrspace(1)*, i1 ({}*, i32) addrspace(1)** %64, align 1, !invariant.load !568, !nonnull !568
  %66 = call zeroext addrspace(1) i1 %65({}* nonnull align 1 %_3.0.i.i.i.i.i67.i.i.i.i, i32 %.0.i.ph.i65.i.i.i.i)
  br i1 %66, label %_ZN4core4iter6traits8iterator8Iterator12try_for_each17h50e99cb29f35fdefE.exit, label %bb1.i45.i.i.i.i

_ZN4core4iter6traits8iterator8Iterator12try_for_each17h50e99cb29f35fdefE.exit: ; preds = %bb6.i.i.i.i.i, %bb6.i.i.i.i.i.i.i.i.i.i.i, %bb1.i45.i.i.i.i, %bb6.i69.i.i.i.i, %bb21.i.i.i.i
  %.0.i.i.i.i = phi i1 [ false, %bb21.i.i.i.i ], [ false, %bb1.i45.i.i.i.i ], [ true, %bb6.i69.i.i.i.i ], [ true, %bb6.i.i.i.i.i.i.i.i.i.i.i ], [ true, %bb6.i.i.i.i.i ]
  ret i1 %.0.i.i.i.i
}

; core::unicode::unicode_data::alphabetic::lookup
; Function Attrs: uwtable
define zeroext i1 @_ZN4core7unicode12unicode_data10alphabetic6lookup17h73fcf460fa64cc07E(i32 %c) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = icmp ult i32 %c, 1114112
  tail call addrspace(1) void @llvm.assume(i1 %0)
  %1 = shl nuw i32 %c, 11
  %2 = icmp ult i32 %c, 92160
  %base.0.mid.i.i.i = select i1 %2, i16 0, i16 26
  %mid.1.i.i.i = add nuw nsw i16 %base.0.mid.i.i.i, 13
  %3 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [208 x i8] }>* @_ZN4core7unicode12unicode_data10alphabetic17SHORT_OFFSET_RUNS17h81c96da457d55823E to [0 x i32]*), i16 0, i16 %mid.1.i.i.i
  %_20.val.1.i.i.i = load i32, i32* %3, align 1, !noalias !5654
  %_5.0.i.i.i.i.1.i.i.i = shl i32 %_20.val.1.i.i.i, 11
  %4 = icmp ugt i32 %_5.0.i.i.i.i.1.i.i.i, %1
  %base.0.mid.1.i.i.i = select i1 %4, i16 %base.0.mid.i.i.i, i16 %mid.1.i.i.i
  %mid.2.i.i.i = add nuw nsw i16 %base.0.mid.1.i.i.i, 6
  %5 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [208 x i8] }>* @_ZN4core7unicode12unicode_data10alphabetic17SHORT_OFFSET_RUNS17h81c96da457d55823E to [0 x i32]*), i16 0, i16 %mid.2.i.i.i
  %_20.val.2.i.i.i = load i32, i32* %5, align 1, !noalias !5654
  %_5.0.i.i.i.i.2.i.i.i = shl i32 %_20.val.2.i.i.i, 11
  %6 = icmp ugt i32 %_5.0.i.i.i.i.2.i.i.i, %1
  %base.0.mid.2.i.i.i = select i1 %6, i16 %base.0.mid.1.i.i.i, i16 %mid.2.i.i.i
  %mid.3.i.i.i = add nuw nsw i16 %base.0.mid.2.i.i.i, 3
  %7 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [208 x i8] }>* @_ZN4core7unicode12unicode_data10alphabetic17SHORT_OFFSET_RUNS17h81c96da457d55823E to [0 x i32]*), i16 0, i16 %mid.3.i.i.i
  %_20.val.3.i.i.i = load i32, i32* %7, align 1, !noalias !5654
  %_5.0.i.i.i.i.3.i.i.i = shl i32 %_20.val.3.i.i.i, 11
  %8 = icmp ugt i32 %_5.0.i.i.i.i.3.i.i.i, %1
  %base.0.mid.3.i.i.i = select i1 %8, i16 %base.0.mid.2.i.i.i, i16 %mid.3.i.i.i
  %mid.4.i.i.i = add nuw nsw i16 %base.0.mid.3.i.i.i, 2
  %9 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [208 x i8] }>* @_ZN4core7unicode12unicode_data10alphabetic17SHORT_OFFSET_RUNS17h81c96da457d55823E to [0 x i32]*), i16 0, i16 %mid.4.i.i.i
  %_20.val.4.i.i.i = load i32, i32* %9, align 1, !noalias !5654
  %_5.0.i.i.i.i.4.i.i.i = shl i32 %_20.val.4.i.i.i, 11
  %10 = icmp ugt i32 %_5.0.i.i.i.i.4.i.i.i, %1
  %base.0.mid.4.i.i.i = select i1 %10, i16 %base.0.mid.3.i.i.i, i16 %mid.4.i.i.i
  %mid.5.i.i.i = add nuw nsw i16 %base.0.mid.4.i.i.i, 1
  %11 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [208 x i8] }>* @_ZN4core7unicode12unicode_data10alphabetic17SHORT_OFFSET_RUNS17h81c96da457d55823E to [0 x i32]*), i16 0, i16 %mid.5.i.i.i
  %_20.val.5.i.i.i = load i32, i32* %11, align 1, !noalias !5654
  %_5.0.i.i.i.i.5.i.i.i = shl i32 %_20.val.5.i.i.i, 11
  %12 = icmp ugt i32 %_5.0.i.i.i.i.5.i.i.i, %1
  %base.0.mid.5.i.i.i = select i1 %12, i16 %base.0.mid.4.i.i.i, i16 %mid.5.i.i.i
  %13 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [208 x i8] }>* @_ZN4core7unicode12unicode_data10alphabetic17SHORT_OFFSET_RUNS17h81c96da457d55823E to [0 x i32]*), i16 0, i16 %base.0.mid.5.i.i.i
  %_32.val.i.i.i = load i32, i32* %13, align 1, !noalias !5654
  %_5.0.i.i.i.i6.i.i.i = shl i32 %_32.val.i.i.i, 11
  %_3.i.i9.i.i.i = icmp ult i32 %_5.0.i.i.i.i6.i.i.i, %1
  %_6.i.i10.i.i.i = icmp eq i32 %_5.0.i.i.i.i6.i.i.i, %1
  %_39.i.i.i = zext i1 %_3.i.i9.i.i.i to i16
  %14 = zext i1 %_6.i.i10.i.i.i to i16
  %.sroa.4.1.i.i.i = add nuw nsw i16 %14, %_39.i.i.i
  %last_idx.0.i = add nuw nsw i16 %.sroa.4.1.i.i.i, %base.0.mid.5.i.i.i
  %_21.i = icmp ult i16 %last_idx.0.i, 52
  br i1 %_21.i, label %bb6.i, label %panic.i, !prof !4, !misexpect !5

bb6.i:                                            ; preds = %start
  %15 = getelementptr inbounds [52 x i32], [52 x i32]* bitcast (<{ [208 x i8] }>* @_ZN4core7unicode12unicode_data10alphabetic17SHORT_OFFSET_RUNS17h81c96da457d55823E to [52 x i32]*), i16 0, i16 %last_idx.0.i
  %_18.i = load i32, i32* %15, align 1
  %_2.i.i = lshr i32 %_18.i, 21
  %16 = trunc i32 %_2.i.i to i16
  %_3.i.i.i = icmp eq i16 %last_idx.0.i, 51
  br i1 %_3.i.i.i, label %bb13.i, label %bb10.i

bb10.i:                                           ; preds = %bb6.i
  %_26.i = add nuw nsw i16 %last_idx.0.i, 1
  %17 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [208 x i8] }>* @_ZN4core7unicode12unicode_data10alphabetic17SHORT_OFFSET_RUNS17h81c96da457d55823E to [0 x i32]*), i16 0, i16 %_26.i
  %_31.i = load i32, i32* %17, align 1
  %_2.i6.i = lshr i32 %_31.i, 21
  %18 = trunc i32 %_2.i6.i to i16
  br label %bb13.i

bb13.i:                                           ; preds = %bb10.i, %bb6.i
  %_30.pn.i = phi i16 [ %18, %bb10.i ], [ 1391, %bb6.i ]
  %19 = tail call addrspace(1) { i16, i1 } @llvm.usub.with.overflow.i16(i16 %last_idx.0.i, i16 1) #20
  %20 = extractvalue { i16, i1 } %19, 0
  %21 = extractvalue { i16, i1 } %19, 1
  br i1 %21, label %"_ZN4core6option15Option$LT$T$GT$3map17h01ef77005f6b24b4E.exit.i", label %bb3.i2.i

bb3.i2.i:                                         ; preds = %bb13.i
  %_6.i.i.i = icmp ult i16 %20, 52
  br i1 %_6.i.i.i, label %"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17h7f90cdb7b69e7dbcE.exit.i.i", label %panic.i.i.i, !prof !4, !misexpect !5

panic.i.i.i:                                      ; preds = %bb3.i2.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %20, i16 52, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18904 to %"panic::Location"*)), !noalias !5659
  unreachable

"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17h7f90cdb7b69e7dbcE.exit.i.i": ; preds = %bb3.i2.i
  %22 = getelementptr inbounds [52 x i32], [52 x i32]* bitcast (<{ [208 x i8] }>* @_ZN4core7unicode12unicode_data10alphabetic17SHORT_OFFSET_RUNS17h81c96da457d55823E to [52 x i32]*), i16 0, i16 %20
  %_3.i.i3.i = load i32, i32* %22, align 1, !noalias !5659
  %23 = and i32 %_3.i.i3.i, 2097151
  br label %"_ZN4core6option15Option$LT$T$GT$3map17h01ef77005f6b24b4E.exit.i"

"_ZN4core6option15Option$LT$T$GT$3map17h01ef77005f6b24b4E.exit.i": ; preds = %"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17h7f90cdb7b69e7dbcE.exit.i.i", %bb13.i
  %.sroa.0.0.i4.i = phi i32 [ 0, %bb13.i ], [ %23, %"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17h7f90cdb7b69e7dbcE.exit.i.i" ]
  %total.i = sub nsw i32 %c, %.sroa.0.0.i4.i
  %24 = xor i16 %16, -1
  %_49.i = add nsw i16 %_30.pn.i, %24
  %25 = icmp eq i16 %_49.i, 0
  br i1 %25, label %_ZN4core7unicode12unicode_data11skip_search17h735183f3d251d9daE.exit, label %bb22.preheader.i

bb22.preheader.i:                                 ; preds = %"_ZN4core6option15Option$LT$T$GT$3map17h01ef77005f6b24b4E.exit.i"
  %26 = add nsw i16 %_30.pn.i, -1
  br label %bb22.i

bb22.i:                                           ; preds = %bb25.i, %bb22.preheader.i
  %prefix_sum.017.i = phi i32 [ %29, %bb25.i ], [ 0, %bb22.preheader.i ]
  %offset_idx.016.i = phi i16 [ %30, %bb25.i ], [ %16, %bb22.preheader.i ]
  %iter.sroa.0.015.i = phi i16 [ %27, %bb25.i ], [ 0, %bb22.preheader.i ]
  %27 = add nuw nsw i16 %iter.sroa.0.015.i, 1
  %_62.i = icmp ult i16 %offset_idx.016.i, 1391
  br i1 %_62.i, label %bb24.i, label %panic2.i, !prof !4, !misexpect !5

bb24.i:                                           ; preds = %bb22.i
  %28 = getelementptr inbounds <{ [1391 x i8] }>, <{ [1391 x i8] }>* @_ZN4core7unicode12unicode_data10alphabetic7OFFSETS17h0ebec3fc8d5de111E, i16 0, i32 0, i16 %offset_idx.016.i
  %offset.i = load i8, i8* %28, align 1
  %_63.i = zext i8 %offset.i to i32
  %29 = add i32 %prefix_sum.017.i, %_63.i
  %_65.i = icmp ugt i32 %29, %total.i
  br i1 %_65.i, label %_ZN4core7unicode12unicode_data11skip_search17h735183f3d251d9daE.exit, label %bb25.i

bb25.i:                                           ; preds = %bb24.i
  %30 = add nuw nsw i16 %offset_idx.016.i, 1
  %31 = icmp ult i16 %27, %_49.i
  br i1 %31, label %bb22.i, label %_ZN4core7unicode12unicode_data11skip_search17h735183f3d251d9daE.exit

panic.i:                                          ; preds = %start
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %last_idx.0.i, i16 52, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18900 to %"panic::Location"*))
  unreachable

panic2.i:                                         ; preds = %bb22.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %offset_idx.016.i, i16 1391, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18902 to %"panic::Location"*))
  unreachable

_ZN4core7unicode12unicode_data11skip_search17h735183f3d251d9daE.exit: ; preds = %bb24.i, %bb25.i, %"_ZN4core6option15Option$LT$T$GT$3map17h01ef77005f6b24b4E.exit.i"
  %offset_idx.0.lcssa.i = phi i16 [ %16, %"_ZN4core6option15Option$LT$T$GT$3map17h01ef77005f6b24b4E.exit.i" ], [ %offset_idx.016.i, %bb24.i ], [ %26, %bb25.i ]
  %_68.i = and i16 %offset_idx.0.lcssa.i, 1
  %32 = icmp ne i16 %_68.i, 0
  ret i1 %32
}

; core::unicode::unicode_data::case_ignorable::lookup
; Function Attrs: uwtable
define zeroext i1 @_ZN4core7unicode12unicode_data14case_ignorable6lookup17hebd89d454c754020E(i32 %c) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = icmp ult i32 %c, 1114112
  tail call addrspace(1) void @llvm.assume(i1 %0)
  %1 = shl nuw i32 %c, 11
  %2 = icmp ult i32 %c, 71995
  %base.0.mid.i.i.i = select i1 %2, i16 0, i16 16
  %mid.1.i.i.i = or i16 %base.0.mid.i.i.i, 8
  %3 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [128 x i8] }>* @_ZN4core7unicode12unicode_data14case_ignorable17SHORT_OFFSET_RUNS17h67eb676df4ab4136E to [0 x i32]*), i16 0, i16 %mid.1.i.i.i
  %_20.val.1.i.i.i = load i32, i32* %3, align 1, !noalias !5664
  %_5.0.i.i.i.i.1.i.i.i = shl i32 %_20.val.1.i.i.i, 11
  %4 = icmp ugt i32 %_5.0.i.i.i.i.1.i.i.i, %1
  %base.0.mid.1.i.i.i = select i1 %4, i16 %base.0.mid.i.i.i, i16 %mid.1.i.i.i
  %mid.2.i.i.i = or i16 %base.0.mid.1.i.i.i, 4
  %5 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [128 x i8] }>* @_ZN4core7unicode12unicode_data14case_ignorable17SHORT_OFFSET_RUNS17h67eb676df4ab4136E to [0 x i32]*), i16 0, i16 %mid.2.i.i.i
  %_20.val.2.i.i.i = load i32, i32* %5, align 1, !noalias !5664
  %_5.0.i.i.i.i.2.i.i.i = shl i32 %_20.val.2.i.i.i, 11
  %6 = icmp ugt i32 %_5.0.i.i.i.i.2.i.i.i, %1
  %base.0.mid.2.i.i.i = select i1 %6, i16 %base.0.mid.1.i.i.i, i16 %mid.2.i.i.i
  %mid.3.i.i.i = or i16 %base.0.mid.2.i.i.i, 2
  %7 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [128 x i8] }>* @_ZN4core7unicode12unicode_data14case_ignorable17SHORT_OFFSET_RUNS17h67eb676df4ab4136E to [0 x i32]*), i16 0, i16 %mid.3.i.i.i
  %_20.val.3.i.i.i = load i32, i32* %7, align 1, !noalias !5664
  %_5.0.i.i.i.i.3.i.i.i = shl i32 %_20.val.3.i.i.i, 11
  %8 = icmp ugt i32 %_5.0.i.i.i.i.3.i.i.i, %1
  %base.0.mid.3.i.i.i = select i1 %8, i16 %base.0.mid.2.i.i.i, i16 %mid.3.i.i.i
  %mid.4.i.i.i = add i16 %base.0.mid.3.i.i.i, 1
  %9 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [128 x i8] }>* @_ZN4core7unicode12unicode_data14case_ignorable17SHORT_OFFSET_RUNS17h67eb676df4ab4136E to [0 x i32]*), i16 0, i16 %mid.4.i.i.i
  %_20.val.4.i.i.i = load i32, i32* %9, align 1, !noalias !5664
  %_5.0.i.i.i.i.4.i.i.i = shl i32 %_20.val.4.i.i.i, 11
  %10 = icmp ugt i32 %_5.0.i.i.i.i.4.i.i.i, %1
  %base.0.mid.4.i.i.i = select i1 %10, i16 %base.0.mid.3.i.i.i, i16 %mid.4.i.i.i
  %11 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [128 x i8] }>* @_ZN4core7unicode12unicode_data14case_ignorable17SHORT_OFFSET_RUNS17h67eb676df4ab4136E to [0 x i32]*), i16 0, i16 %base.0.mid.4.i.i.i
  %_32.val.i.i.i = load i32, i32* %11, align 1, !noalias !5664
  %_5.0.i.i.i.i6.i.i.i = shl i32 %_32.val.i.i.i, 11
  %_3.i.i9.i.i.i = icmp ult i32 %_5.0.i.i.i.i6.i.i.i, %1
  %_6.i.i10.i.i.i = icmp eq i32 %_5.0.i.i.i.i6.i.i.i, %1
  %_39.i.i.i = zext i1 %_3.i.i9.i.i.i to i16
  %12 = zext i1 %_6.i.i10.i.i.i to i16
  %.sroa.4.1.i.i.i = add nuw nsw i16 %12, %_39.i.i.i
  %last_idx.0.i = add i16 %.sroa.4.1.i.i.i, %base.0.mid.4.i.i.i
  %_21.i = icmp ult i16 %last_idx.0.i, 32
  br i1 %_21.i, label %bb6.i, label %panic.i, !prof !4, !misexpect !5

bb6.i:                                            ; preds = %start
  %13 = getelementptr inbounds [32 x i32], [32 x i32]* bitcast (<{ [128 x i8] }>* @_ZN4core7unicode12unicode_data14case_ignorable17SHORT_OFFSET_RUNS17h67eb676df4ab4136E to [32 x i32]*), i16 0, i16 %last_idx.0.i
  %_18.i = load i32, i32* %13, align 1
  %_2.i.i = lshr i32 %_18.i, 21
  %14 = trunc i32 %_2.i.i to i16
  %_3.i.i.i = icmp eq i16 %last_idx.0.i, 31
  br i1 %_3.i.i.i, label %bb13.i, label %bb10.i

bb10.i:                                           ; preds = %bb6.i
  %_26.i = add nuw nsw i16 %last_idx.0.i, 1
  %15 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [128 x i8] }>* @_ZN4core7unicode12unicode_data14case_ignorable17SHORT_OFFSET_RUNS17h67eb676df4ab4136E to [0 x i32]*), i16 0, i16 %_26.i
  %_31.i = load i32, i32* %15, align 1
  %_2.i6.i = lshr i32 %_31.i, 21
  %16 = trunc i32 %_2.i6.i to i16
  br label %bb13.i

bb13.i:                                           ; preds = %bb10.i, %bb6.i
  %_30.pn.i = phi i16 [ %16, %bb10.i ], [ 821, %bb6.i ]
  %17 = tail call addrspace(1) { i16, i1 } @llvm.usub.with.overflow.i16(i16 %last_idx.0.i, i16 1) #20
  %18 = extractvalue { i16, i1 } %17, 0
  %19 = extractvalue { i16, i1 } %17, 1
  br i1 %19, label %"_ZN4core6option15Option$LT$T$GT$3map17h556f864426b89504E.exit.i", label %bb3.i2.i

bb3.i2.i:                                         ; preds = %bb13.i
  %_6.i.i.i = icmp ult i16 %18, 32
  br i1 %_6.i.i.i, label %"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17h1f6afc82f3e8e6abE.exit.i.i", label %panic.i.i.i, !prof !4, !misexpect !5

panic.i.i.i:                                      ; preds = %bb3.i2.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %18, i16 32, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18904 to %"panic::Location"*)), !noalias !5669
  unreachable

"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17h1f6afc82f3e8e6abE.exit.i.i": ; preds = %bb3.i2.i
  %20 = getelementptr inbounds [32 x i32], [32 x i32]* bitcast (<{ [128 x i8] }>* @_ZN4core7unicode12unicode_data14case_ignorable17SHORT_OFFSET_RUNS17h67eb676df4ab4136E to [32 x i32]*), i16 0, i16 %18
  %_3.i.i3.i = load i32, i32* %20, align 1, !noalias !5669
  %21 = and i32 %_3.i.i3.i, 2097151
  br label %"_ZN4core6option15Option$LT$T$GT$3map17h556f864426b89504E.exit.i"

"_ZN4core6option15Option$LT$T$GT$3map17h556f864426b89504E.exit.i": ; preds = %"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17h1f6afc82f3e8e6abE.exit.i.i", %bb13.i
  %.sroa.0.0.i4.i = phi i32 [ 0, %bb13.i ], [ %21, %"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17h1f6afc82f3e8e6abE.exit.i.i" ]
  %total.i = sub nsw i32 %c, %.sroa.0.0.i4.i
  %22 = xor i16 %14, -1
  %_49.i = add nsw i16 %_30.pn.i, %22
  %23 = icmp eq i16 %_49.i, 0
  br i1 %23, label %_ZN4core7unicode12unicode_data11skip_search17h62e195541274f21aE.exit, label %bb22.preheader.i

bb22.preheader.i:                                 ; preds = %"_ZN4core6option15Option$LT$T$GT$3map17h556f864426b89504E.exit.i"
  %24 = add nsw i16 %_30.pn.i, -1
  br label %bb22.i

bb22.i:                                           ; preds = %bb25.i, %bb22.preheader.i
  %prefix_sum.017.i = phi i32 [ %27, %bb25.i ], [ 0, %bb22.preheader.i ]
  %offset_idx.016.i = phi i16 [ %28, %bb25.i ], [ %14, %bb22.preheader.i ]
  %iter.sroa.0.015.i = phi i16 [ %25, %bb25.i ], [ 0, %bb22.preheader.i ]
  %25 = add nuw nsw i16 %iter.sroa.0.015.i, 1
  %_62.i = icmp ult i16 %offset_idx.016.i, 821
  br i1 %_62.i, label %bb24.i, label %panic2.i, !prof !4, !misexpect !5

bb24.i:                                           ; preds = %bb22.i
  %26 = getelementptr inbounds <{ [821 x i8] }>, <{ [821 x i8] }>* @_ZN4core7unicode12unicode_data14case_ignorable7OFFSETS17h41f65c926c17407bE, i16 0, i32 0, i16 %offset_idx.016.i
  %offset.i = load i8, i8* %26, align 1
  %_63.i = zext i8 %offset.i to i32
  %27 = add i32 %prefix_sum.017.i, %_63.i
  %_65.i = icmp ugt i32 %27, %total.i
  br i1 %_65.i, label %_ZN4core7unicode12unicode_data11skip_search17h62e195541274f21aE.exit, label %bb25.i

bb25.i:                                           ; preds = %bb24.i
  %28 = add nuw nsw i16 %offset_idx.016.i, 1
  %29 = icmp ult i16 %25, %_49.i
  br i1 %29, label %bb22.i, label %_ZN4core7unicode12unicode_data11skip_search17h62e195541274f21aE.exit

panic.i:                                          ; preds = %start
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %last_idx.0.i, i16 32, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18900 to %"panic::Location"*))
  unreachable

panic2.i:                                         ; preds = %bb22.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %offset_idx.016.i, i16 821, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18902 to %"panic::Location"*))
  unreachable

_ZN4core7unicode12unicode_data11skip_search17h62e195541274f21aE.exit: ; preds = %bb24.i, %bb25.i, %"_ZN4core6option15Option$LT$T$GT$3map17h556f864426b89504E.exit.i"
  %offset_idx.0.lcssa.i = phi i16 [ %14, %"_ZN4core6option15Option$LT$T$GT$3map17h556f864426b89504E.exit.i" ], [ %offset_idx.016.i, %bb24.i ], [ %24, %bb25.i ]
  %_68.i = and i16 %offset_idx.0.lcssa.i, 1
  %30 = icmp ne i16 %_68.i, 0
  ret i1 %30
}

; core::unicode::unicode_data::cased::lookup
; Function Attrs: uwtable
define zeroext i1 @_ZN4core7unicode12unicode_data5cased6lookup17hf63512799ee1c5ffE(i32 %c) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = icmp ult i32 %c, 1114112
  tail call addrspace(1) void @llvm.assume(i1 %0)
  %1 = shl nuw i32 %c, 11
  %2 = icmp ult i32 %c, 65313
  %base.0.mid.i.i.i = select i1 %2, i16 0, i16 9
  %mid.1.i.i.i = add nuw nsw i16 %base.0.mid.i.i.i, 5
  %3 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [76 x i8] }>* @_ZN4core7unicode12unicode_data5cased17SHORT_OFFSET_RUNS17h23c20f8fd890a467E to [0 x i32]*), i16 0, i16 %mid.1.i.i.i
  %_20.val.1.i.i.i = load i32, i32* %3, align 1, !noalias !5674
  %_5.0.i.i.i.i.1.i.i.i = shl i32 %_20.val.1.i.i.i, 11
  %4 = icmp ugt i32 %_5.0.i.i.i.i.1.i.i.i, %1
  %base.0.mid.1.i.i.i = select i1 %4, i16 %base.0.mid.i.i.i, i16 %mid.1.i.i.i
  %mid.2.i.i.i = add nuw nsw i16 %base.0.mid.1.i.i.i, 2
  %5 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [76 x i8] }>* @_ZN4core7unicode12unicode_data5cased17SHORT_OFFSET_RUNS17h23c20f8fd890a467E to [0 x i32]*), i16 0, i16 %mid.2.i.i.i
  %_20.val.2.i.i.i = load i32, i32* %5, align 1, !noalias !5674
  %_5.0.i.i.i.i.2.i.i.i = shl i32 %_20.val.2.i.i.i, 11
  %6 = icmp ugt i32 %_5.0.i.i.i.i.2.i.i.i, %1
  %base.0.mid.2.i.i.i = select i1 %6, i16 %base.0.mid.1.i.i.i, i16 %mid.2.i.i.i
  %mid.3.i.i.i = add nuw nsw i16 %base.0.mid.2.i.i.i, 1
  %7 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [76 x i8] }>* @_ZN4core7unicode12unicode_data5cased17SHORT_OFFSET_RUNS17h23c20f8fd890a467E to [0 x i32]*), i16 0, i16 %mid.3.i.i.i
  %_20.val.3.i.i.i = load i32, i32* %7, align 1, !noalias !5674
  %_5.0.i.i.i.i.3.i.i.i = shl i32 %_20.val.3.i.i.i, 11
  %8 = icmp ugt i32 %_5.0.i.i.i.i.3.i.i.i, %1
  %base.0.mid.3.i.i.i = select i1 %8, i16 %base.0.mid.2.i.i.i, i16 %mid.3.i.i.i
  %mid.4.i.i.i = add nuw nsw i16 %base.0.mid.3.i.i.i, 1
  %9 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [76 x i8] }>* @_ZN4core7unicode12unicode_data5cased17SHORT_OFFSET_RUNS17h23c20f8fd890a467E to [0 x i32]*), i16 0, i16 %mid.4.i.i.i
  %_20.val.4.i.i.i = load i32, i32* %9, align 1, !noalias !5674
  %_5.0.i.i.i.i.4.i.i.i = shl i32 %_20.val.4.i.i.i, 11
  %10 = icmp ugt i32 %_5.0.i.i.i.i.4.i.i.i, %1
  %base.0.mid.4.i.i.i = select i1 %10, i16 %base.0.mid.3.i.i.i, i16 %mid.4.i.i.i
  %11 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [76 x i8] }>* @_ZN4core7unicode12unicode_data5cased17SHORT_OFFSET_RUNS17h23c20f8fd890a467E to [0 x i32]*), i16 0, i16 %base.0.mid.4.i.i.i
  %_32.val.i.i.i = load i32, i32* %11, align 1, !noalias !5674
  %_5.0.i.i.i.i6.i.i.i = shl i32 %_32.val.i.i.i, 11
  %_3.i.i9.i.i.i = icmp ult i32 %_5.0.i.i.i.i6.i.i.i, %1
  %_6.i.i10.i.i.i = icmp eq i32 %_5.0.i.i.i.i6.i.i.i, %1
  %_39.i.i.i = zext i1 %_3.i.i9.i.i.i to i16
  %12 = zext i1 %_6.i.i10.i.i.i to i16
  %.sroa.4.1.i.i.i = add nuw nsw i16 %12, %_39.i.i.i
  %last_idx.0.i = add nuw nsw i16 %.sroa.4.1.i.i.i, %base.0.mid.4.i.i.i
  %_21.i = icmp ult i16 %last_idx.0.i, 19
  br i1 %_21.i, label %bb6.i, label %panic.i, !prof !4, !misexpect !5

bb6.i:                                            ; preds = %start
  %13 = getelementptr inbounds [19 x i32], [19 x i32]* bitcast (<{ [76 x i8] }>* @_ZN4core7unicode12unicode_data5cased17SHORT_OFFSET_RUNS17h23c20f8fd890a467E to [19 x i32]*), i16 0, i16 %last_idx.0.i
  %_18.i = load i32, i32* %13, align 1
  %_2.i.i = lshr i32 %_18.i, 21
  %14 = trunc i32 %_2.i.i to i16
  %_3.i.i.i = icmp eq i16 %last_idx.0.i, 18
  br i1 %_3.i.i.i, label %bb13.i, label %bb10.i

bb10.i:                                           ; preds = %bb6.i
  %_26.i = add nuw nsw i16 %last_idx.0.i, 1
  %15 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [76 x i8] }>* @_ZN4core7unicode12unicode_data5cased17SHORT_OFFSET_RUNS17h23c20f8fd890a467E to [0 x i32]*), i16 0, i16 %_26.i
  %_31.i = load i32, i32* %15, align 1
  %_2.i6.i = lshr i32 %_31.i, 21
  %16 = trunc i32 %_2.i6.i to i16
  br label %bb13.i

bb13.i:                                           ; preds = %bb10.i, %bb6.i
  %_30.pn.i = phi i16 [ %16, %bb10.i ], [ 283, %bb6.i ]
  %17 = tail call addrspace(1) { i16, i1 } @llvm.usub.with.overflow.i16(i16 %last_idx.0.i, i16 1) #20
  %18 = extractvalue { i16, i1 } %17, 0
  %19 = extractvalue { i16, i1 } %17, 1
  br i1 %19, label %"_ZN4core6option15Option$LT$T$GT$3map17h7061bddaf314142fE.exit.i", label %bb3.i2.i

bb3.i2.i:                                         ; preds = %bb13.i
  %_6.i.i.i = icmp ult i16 %18, 19
  br i1 %_6.i.i.i, label %"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17hf94b2c1d1bc52905E.exit.i.i", label %panic.i.i.i, !prof !4, !misexpect !5

panic.i.i.i:                                      ; preds = %bb3.i2.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %18, i16 19, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18904 to %"panic::Location"*)), !noalias !5679
  unreachable

"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17hf94b2c1d1bc52905E.exit.i.i": ; preds = %bb3.i2.i
  %20 = getelementptr inbounds [19 x i32], [19 x i32]* bitcast (<{ [76 x i8] }>* @_ZN4core7unicode12unicode_data5cased17SHORT_OFFSET_RUNS17h23c20f8fd890a467E to [19 x i32]*), i16 0, i16 %18
  %_3.i.i3.i = load i32, i32* %20, align 1, !noalias !5679
  %21 = and i32 %_3.i.i3.i, 2097151
  br label %"_ZN4core6option15Option$LT$T$GT$3map17h7061bddaf314142fE.exit.i"

"_ZN4core6option15Option$LT$T$GT$3map17h7061bddaf314142fE.exit.i": ; preds = %"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17hf94b2c1d1bc52905E.exit.i.i", %bb13.i
  %.sroa.0.0.i4.i = phi i32 [ 0, %bb13.i ], [ %21, %"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17hf94b2c1d1bc52905E.exit.i.i" ]
  %total.i = sub nsw i32 %c, %.sroa.0.0.i4.i
  %22 = xor i16 %14, -1
  %_49.i = add nsw i16 %_30.pn.i, %22
  %23 = icmp eq i16 %_49.i, 0
  br i1 %23, label %_ZN4core7unicode12unicode_data11skip_search17hde21f8398273e88eE.exit, label %bb22.preheader.i

bb22.preheader.i:                                 ; preds = %"_ZN4core6option15Option$LT$T$GT$3map17h7061bddaf314142fE.exit.i"
  %24 = add nsw i16 %_30.pn.i, -1
  br label %bb22.i

bb22.i:                                           ; preds = %bb25.i, %bb22.preheader.i
  %prefix_sum.017.i = phi i32 [ %27, %bb25.i ], [ 0, %bb22.preheader.i ]
  %offset_idx.016.i = phi i16 [ %28, %bb25.i ], [ %14, %bb22.preheader.i ]
  %iter.sroa.0.015.i = phi i16 [ %25, %bb25.i ], [ 0, %bb22.preheader.i ]
  %25 = add nuw nsw i16 %iter.sroa.0.015.i, 1
  %_62.i = icmp ult i16 %offset_idx.016.i, 283
  br i1 %_62.i, label %bb24.i, label %panic2.i, !prof !4, !misexpect !5

bb24.i:                                           ; preds = %bb22.i
  %26 = getelementptr inbounds <{ [283 x i8] }>, <{ [283 x i8] }>* @_ZN4core7unicode12unicode_data5cased7OFFSETS17h764dfe9a9b68797eE, i16 0, i32 0, i16 %offset_idx.016.i
  %offset.i = load i8, i8* %26, align 1
  %_63.i = zext i8 %offset.i to i32
  %27 = add i32 %prefix_sum.017.i, %_63.i
  %_65.i = icmp ugt i32 %27, %total.i
  br i1 %_65.i, label %_ZN4core7unicode12unicode_data11skip_search17hde21f8398273e88eE.exit, label %bb25.i

bb25.i:                                           ; preds = %bb24.i
  %28 = add nuw nsw i16 %offset_idx.016.i, 1
  %29 = icmp ult i16 %25, %_49.i
  br i1 %29, label %bb22.i, label %_ZN4core7unicode12unicode_data11skip_search17hde21f8398273e88eE.exit

panic.i:                                          ; preds = %start
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %last_idx.0.i, i16 19, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18900 to %"panic::Location"*))
  unreachable

panic2.i:                                         ; preds = %bb22.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %offset_idx.016.i, i16 283, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18902 to %"panic::Location"*))
  unreachable

_ZN4core7unicode12unicode_data11skip_search17hde21f8398273e88eE.exit: ; preds = %bb24.i, %bb25.i, %"_ZN4core6option15Option$LT$T$GT$3map17h7061bddaf314142fE.exit.i"
  %offset_idx.0.lcssa.i = phi i16 [ %14, %"_ZN4core6option15Option$LT$T$GT$3map17h7061bddaf314142fE.exit.i" ], [ %offset_idx.016.i, %bb24.i ], [ %24, %bb25.i ]
  %_68.i = and i16 %offset_idx.0.lcssa.i, 1
  %30 = icmp ne i16 %_68.i, 0
  ret i1 %30
}

; core::unicode::unicode_data::cc::lookup
; Function Attrs: uwtable
define zeroext i1 @_ZN4core7unicode12unicode_data2cc6lookup17h2396e87f7ff95340E(i32 %c) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = icmp ult i32 %c, 1114112
  tail call addrspace(1) void @llvm.assume(i1 %0)
  %_65.1.i = icmp ult i32 %c, 32
  br i1 %_65.1.i, label %_ZN4core7unicode12unicode_data11skip_search17h543413c04c665d64E.exit, label %bb24.2.i

bb24.2.i:                                         ; preds = %start
  %c.off = add nsw i32 %c, -127
  %1 = icmp ult i32 %c.off, 33
  ret i1 %1

_ZN4core7unicode12unicode_data11skip_search17h543413c04c665d64E.exit: ; preds = %start
  ret i1 true
}

; core::unicode::unicode_data::grapheme_extend::lookup
; Function Attrs: uwtable
define zeroext i1 @_ZN4core7unicode12unicode_data15grapheme_extend6lookup17h1efbd4bf685b4a0bE(i32 %c) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = icmp ult i32 %c, 1114112
  tail call addrspace(1) void @llvm.assume(i1 %0)
  %1 = shl nuw i32 %c, 11
  %2 = icmp ult i32 %c, 68900
  %base.0.mid.i.i.i = select i1 %2, i16 0, i16 15
  %mid.1.i.i.i = add nuw nsw i16 %base.0.mid.i.i.i, 8
  %3 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [124 x i8] }>* @_ZN4core7unicode12unicode_data15grapheme_extend17SHORT_OFFSET_RUNS17h1498aad6dc246e9dE to [0 x i32]*), i16 0, i16 %mid.1.i.i.i
  %_20.val.1.i.i.i = load i32, i32* %3, align 1, !noalias !5684
  %_5.0.i.i.i.i.1.i.i.i = shl i32 %_20.val.1.i.i.i, 11
  %4 = icmp ugt i32 %_5.0.i.i.i.i.1.i.i.i, %1
  %base.0.mid.1.i.i.i = select i1 %4, i16 %base.0.mid.i.i.i, i16 %mid.1.i.i.i
  %mid.2.i.i.i = add nuw nsw i16 %base.0.mid.1.i.i.i, 4
  %5 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [124 x i8] }>* @_ZN4core7unicode12unicode_data15grapheme_extend17SHORT_OFFSET_RUNS17h1498aad6dc246e9dE to [0 x i32]*), i16 0, i16 %mid.2.i.i.i
  %_20.val.2.i.i.i = load i32, i32* %5, align 1, !noalias !5684
  %_5.0.i.i.i.i.2.i.i.i = shl i32 %_20.val.2.i.i.i, 11
  %6 = icmp ugt i32 %_5.0.i.i.i.i.2.i.i.i, %1
  %base.0.mid.2.i.i.i = select i1 %6, i16 %base.0.mid.1.i.i.i, i16 %mid.2.i.i.i
  %mid.3.i.i.i = add nuw nsw i16 %base.0.mid.2.i.i.i, 2
  %7 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [124 x i8] }>* @_ZN4core7unicode12unicode_data15grapheme_extend17SHORT_OFFSET_RUNS17h1498aad6dc246e9dE to [0 x i32]*), i16 0, i16 %mid.3.i.i.i
  %_20.val.3.i.i.i = load i32, i32* %7, align 1, !noalias !5684
  %_5.0.i.i.i.i.3.i.i.i = shl i32 %_20.val.3.i.i.i, 11
  %8 = icmp ugt i32 %_5.0.i.i.i.i.3.i.i.i, %1
  %base.0.mid.3.i.i.i = select i1 %8, i16 %base.0.mid.2.i.i.i, i16 %mid.3.i.i.i
  %mid.4.i.i.i = add nuw nsw i16 %base.0.mid.3.i.i.i, 1
  %9 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [124 x i8] }>* @_ZN4core7unicode12unicode_data15grapheme_extend17SHORT_OFFSET_RUNS17h1498aad6dc246e9dE to [0 x i32]*), i16 0, i16 %mid.4.i.i.i
  %_20.val.4.i.i.i = load i32, i32* %9, align 1, !noalias !5684
  %_5.0.i.i.i.i.4.i.i.i = shl i32 %_20.val.4.i.i.i, 11
  %10 = icmp ugt i32 %_5.0.i.i.i.i.4.i.i.i, %1
  %base.0.mid.4.i.i.i = select i1 %10, i16 %base.0.mid.3.i.i.i, i16 %mid.4.i.i.i
  %11 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [124 x i8] }>* @_ZN4core7unicode12unicode_data15grapheme_extend17SHORT_OFFSET_RUNS17h1498aad6dc246e9dE to [0 x i32]*), i16 0, i16 %base.0.mid.4.i.i.i
  %_32.val.i.i.i = load i32, i32* %11, align 1, !noalias !5684
  %_5.0.i.i.i.i6.i.i.i = shl i32 %_32.val.i.i.i, 11
  %_3.i.i9.i.i.i = icmp ult i32 %_5.0.i.i.i.i6.i.i.i, %1
  %_6.i.i10.i.i.i = icmp eq i32 %_5.0.i.i.i.i6.i.i.i, %1
  %_39.i.i.i = zext i1 %_3.i.i9.i.i.i to i16
  %12 = zext i1 %_6.i.i10.i.i.i to i16
  %.sroa.4.1.i.i.i = add nuw nsw i16 %12, %_39.i.i.i
  %last_idx.0.i = add nuw nsw i16 %.sroa.4.1.i.i.i, %base.0.mid.4.i.i.i
  %_21.i = icmp ult i16 %last_idx.0.i, 31
  br i1 %_21.i, label %bb6.i, label %panic.i, !prof !4, !misexpect !5

bb6.i:                                            ; preds = %start
  %13 = getelementptr inbounds [31 x i32], [31 x i32]* bitcast (<{ [124 x i8] }>* @_ZN4core7unicode12unicode_data15grapheme_extend17SHORT_OFFSET_RUNS17h1498aad6dc246e9dE to [31 x i32]*), i16 0, i16 %last_idx.0.i
  %_18.i = load i32, i32* %13, align 1
  %_2.i.i = lshr i32 %_18.i, 21
  %14 = trunc i32 %_2.i.i to i16
  %_3.i.i.i = icmp eq i16 %last_idx.0.i, 30
  br i1 %_3.i.i.i, label %bb13.i, label %bb10.i

bb10.i:                                           ; preds = %bb6.i
  %_26.i = add nuw nsw i16 %last_idx.0.i, 1
  %15 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [124 x i8] }>* @_ZN4core7unicode12unicode_data15grapheme_extend17SHORT_OFFSET_RUNS17h1498aad6dc246e9dE to [0 x i32]*), i16 0, i16 %_26.i
  %_31.i = load i32, i32* %15, align 1
  %_2.i6.i = lshr i32 %_31.i, 21
  %16 = trunc i32 %_2.i6.i to i16
  br label %bb13.i

bb13.i:                                           ; preds = %bb10.i, %bb6.i
  %_30.pn.i = phi i16 [ %16, %bb10.i ], [ 689, %bb6.i ]
  %17 = tail call addrspace(1) { i16, i1 } @llvm.usub.with.overflow.i16(i16 %last_idx.0.i, i16 1) #20
  %18 = extractvalue { i16, i1 } %17, 0
  %19 = extractvalue { i16, i1 } %17, 1
  br i1 %19, label %"_ZN4core6option15Option$LT$T$GT$3map17ha311893580c2ac09E.exit.i", label %bb3.i2.i

bb3.i2.i:                                         ; preds = %bb13.i
  %_6.i.i.i = icmp ult i16 %18, 31
  br i1 %_6.i.i.i, label %"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17he9a2cbc1f893f0d7E.exit.i.i", label %panic.i.i.i, !prof !4, !misexpect !5

panic.i.i.i:                                      ; preds = %bb3.i2.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %18, i16 31, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18904 to %"panic::Location"*)), !noalias !5689
  unreachable

"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17he9a2cbc1f893f0d7E.exit.i.i": ; preds = %bb3.i2.i
  %20 = getelementptr inbounds [31 x i32], [31 x i32]* bitcast (<{ [124 x i8] }>* @_ZN4core7unicode12unicode_data15grapheme_extend17SHORT_OFFSET_RUNS17h1498aad6dc246e9dE to [31 x i32]*), i16 0, i16 %18
  %_3.i.i3.i = load i32, i32* %20, align 1, !noalias !5689
  %21 = and i32 %_3.i.i3.i, 2097151
  br label %"_ZN4core6option15Option$LT$T$GT$3map17ha311893580c2ac09E.exit.i"

"_ZN4core6option15Option$LT$T$GT$3map17ha311893580c2ac09E.exit.i": ; preds = %"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17he9a2cbc1f893f0d7E.exit.i.i", %bb13.i
  %.sroa.0.0.i4.i = phi i32 [ 0, %bb13.i ], [ %21, %"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17he9a2cbc1f893f0d7E.exit.i.i" ]
  %total.i = sub nsw i32 %c, %.sroa.0.0.i4.i
  %22 = xor i16 %14, -1
  %_49.i = add nsw i16 %_30.pn.i, %22
  %23 = icmp eq i16 %_49.i, 0
  br i1 %23, label %_ZN4core7unicode12unicode_data11skip_search17h35b9bd55fbbe50acE.exit, label %bb22.preheader.i

bb22.preheader.i:                                 ; preds = %"_ZN4core6option15Option$LT$T$GT$3map17ha311893580c2ac09E.exit.i"
  %24 = add nsw i16 %_30.pn.i, -1
  br label %bb22.i

bb22.i:                                           ; preds = %bb25.i, %bb22.preheader.i
  %prefix_sum.017.i = phi i32 [ %27, %bb25.i ], [ 0, %bb22.preheader.i ]
  %offset_idx.016.i = phi i16 [ %28, %bb25.i ], [ %14, %bb22.preheader.i ]
  %iter.sroa.0.015.i = phi i16 [ %25, %bb25.i ], [ 0, %bb22.preheader.i ]
  %25 = add nuw nsw i16 %iter.sroa.0.015.i, 1
  %_62.i = icmp ult i16 %offset_idx.016.i, 689
  br i1 %_62.i, label %bb24.i, label %panic2.i, !prof !4, !misexpect !5

bb24.i:                                           ; preds = %bb22.i
  %26 = getelementptr inbounds <{ [689 x i8] }>, <{ [689 x i8] }>* @_ZN4core7unicode12unicode_data15grapheme_extend7OFFSETS17hc96003212ac666a2E, i16 0, i32 0, i16 %offset_idx.016.i
  %offset.i = load i8, i8* %26, align 1
  %_63.i = zext i8 %offset.i to i32
  %27 = add i32 %prefix_sum.017.i, %_63.i
  %_65.i = icmp ugt i32 %27, %total.i
  br i1 %_65.i, label %_ZN4core7unicode12unicode_data11skip_search17h35b9bd55fbbe50acE.exit, label %bb25.i

bb25.i:                                           ; preds = %bb24.i
  %28 = add nuw nsw i16 %offset_idx.016.i, 1
  %29 = icmp ult i16 %25, %_49.i
  br i1 %29, label %bb22.i, label %_ZN4core7unicode12unicode_data11skip_search17h35b9bd55fbbe50acE.exit

panic.i:                                          ; preds = %start
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %last_idx.0.i, i16 31, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18900 to %"panic::Location"*))
  unreachable

panic2.i:                                         ; preds = %bb22.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %offset_idx.016.i, i16 689, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18902 to %"panic::Location"*))
  unreachable

_ZN4core7unicode12unicode_data11skip_search17h35b9bd55fbbe50acE.exit: ; preds = %bb24.i, %bb25.i, %"_ZN4core6option15Option$LT$T$GT$3map17ha311893580c2ac09E.exit.i"
  %offset_idx.0.lcssa.i = phi i16 [ %14, %"_ZN4core6option15Option$LT$T$GT$3map17ha311893580c2ac09E.exit.i" ], [ %offset_idx.016.i, %bb24.i ], [ %24, %bb25.i ]
  %_68.i = and i16 %offset_idx.0.lcssa.i, 1
  %30 = icmp ne i16 %_68.i, 0
  ret i1 %30
}

; core::unicode::unicode_data::lowercase::lookup
; Function Attrs: uwtable
define zeroext i1 @_ZN4core7unicode12unicode_data9lowercase6lookup17haec9736e1c6ee295E(i32 %c) unnamed_addr addrspace(1) #2 {
start:
  %0 = icmp ult i32 %c, 1114112
  tail call addrspace(1) void @llvm.assume(i1 %0)
  %_7.i = lshr i32 %c, 6
  %bucket_idx.i = trunc i32 %_7.i to i16
  %chunk_map_idx1.i = lshr i32 %c, 10
  %1 = trunc i32 %chunk_map_idx1.i to i16
  %chunk_piece.i = and i16 %bucket_idx.i, 15
  %_3.i.i.i = icmp ugt i16 %1, 122
  br i1 %_3.i.i.i, label %_ZN4core7unicode12unicode_data13bitset_search17h24ca73fcd56f112aE.exit, label %bb5.i

bb5.i:                                            ; preds = %start
  %2 = getelementptr inbounds [0 x i8], [0 x i8]* bitcast (<{ [123 x i8] }>* @_ZN4core7unicode12unicode_data9lowercase17BITSET_CHUNKS_MAP17hfcb2765f428e33b7E to [0 x i8]*), i16 0, i16 %1
  %v.i = load i8, i8* %2, align 1
  %_24.i = zext i8 %v.i to i16
  %_27.i = icmp ult i8 %v.i, 18
  br i1 %_27.i, label %bb8.i, label %panic.i, !prof !4, !misexpect !5

bb8.i:                                            ; preds = %bb5.i
  %3 = getelementptr inbounds [18 x [16 x i8]], [18 x [16 x i8]]* bitcast (<{ [288 x i8] }>* @_ZN4core7unicode12unicode_data9lowercase19BITSET_INDEX_CHUNKS17h66c7fd5bd25b6c3dE to [18 x [16 x i8]]*), i16 0, i16 %_24.i, i16 %chunk_piece.i
  %_23.i = load i8, i8* %3, align 1
  %idx.i = zext i8 %_23.i to i16
  %_3.i.i3.i = icmp ugt i8 %_23.i, 51
  br i1 %_3.i.i3.i, label %bb10.i, label %bb11.i

bb10.i:                                           ; preds = %bb8.i
  %_40.i = add nsw i16 %idx.i, -52
  %_46.i = icmp ult i16 %_40.i, 20
  br i1 %_46.i, label %bb13.i, label %panic3.i, !prof !4, !misexpect !5

bb11.i:                                           ; preds = %bb8.i
  %4 = getelementptr inbounds [0 x i64], [0 x i64]* bitcast (<{ [416 x i8] }>* @_ZN4core7unicode12unicode_data9lowercase16BITSET_CANONICAL17h1fd297ac86ab402bE to [0 x i64]*), i16 0, i16 %idx.i
  %5 = load i64, i64* %4, align 1
  br label %bb22.i

bb13.i:                                           ; preds = %bb10.i
  %6 = getelementptr inbounds [20 x { i8, i8 }], [20 x { i8, i8 }]* bitcast (<{ [40 x i8] }>* @_ZN4core7unicode12unicode_data9lowercase14BITSET_MAPPING17hb8457edf18ac5486E to [20 x { i8, i8 }]*), i16 0, i16 %_40.i, i32 0
  %real_idx.i = load i8, i8* %6, align 1
  %7 = getelementptr inbounds [20 x { i8, i8 }], [20 x { i8, i8 }]* bitcast (<{ [40 x i8] }>* @_ZN4core7unicode12unicode_data9lowercase14BITSET_MAPPING17hb8457edf18ac5486E to [20 x { i8, i8 }]*), i16 0, i16 %_40.i, i32 1
  %mapping.i = load i8, i8* %7, align 1
  %_48.i = zext i8 %real_idx.i to i16
  %_51.i = icmp ult i8 %real_idx.i, 52
  br i1 %_51.i, label %bb14.i, label %panic4.i, !prof !4, !misexpect !5

bb14.i:                                           ; preds = %bb13.i
  %8 = getelementptr inbounds [52 x i64], [52 x i64]* bitcast (<{ [416 x i8] }>* @_ZN4core7unicode12unicode_data9lowercase16BITSET_CANONICAL17h1fd297ac86ab402bE to [52 x i64]*), i16 0, i16 %_48.i
  %9 = load i64, i64* %8, align 1
  %10 = shl i8 %mapping.i, 1
  %sext.i = ashr i8 %10, 7
  %11 = sext i8 %sext.i to i64
  %spec.select.i = xor i64 %9, %11
  %_61.i = icmp slt i8 %mapping.i, 0
  br i1 %_61.i, label %bb19.i, label %bb18.i

bb18.i:                                           ; preds = %bb14.i
  %_4.i.i = zext i8 %mapping.i to i64
  %12 = tail call addrspace(1) i64 @llvm.fshl.i64(i64 %spec.select.i, i64 %spec.select.i, i64 %_4.i.i) #20
  br label %bb22.i

bb19.i:                                           ; preds = %bb14.i
  %13 = and i8 %mapping.i, 63
  %14 = zext i8 %13 to i64
  %15 = lshr i64 %spec.select.i, %14
  br label %bb22.i

bb22.i:                                           ; preds = %bb19.i, %bb18.i, %bb11.i
  %word.0.i = phi i64 [ %5, %bb11.i ], [ %15, %bb19.i ], [ %12, %bb18.i ]
  %16 = and i32 %c, 63
  %17 = zext i32 %16 to i64
  %_73.i = shl nuw i64 1, %17
  %_71.i = and i64 %word.0.i, %_73.i
  %18 = icmp ne i64 %_71.i, 0
  br label %_ZN4core7unicode12unicode_data13bitset_search17h24ca73fcd56f112aE.exit

panic.i:                                          ; preds = %bb5.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_24.i, i16 18, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18894 to %"panic::Location"*))
  unreachable

panic3.i:                                         ; preds = %bb10.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_40.i, i16 20, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18896 to %"panic::Location"*))
  unreachable

panic4.i:                                         ; preds = %bb13.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_48.i, i16 52, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18898 to %"panic::Location"*))
  unreachable

_ZN4core7unicode12unicode_data13bitset_search17h24ca73fcd56f112aE.exit: ; preds = %start, %bb22.i
  %.0.i = phi i1 [ %18, %bb22.i ], [ false, %start ]
  ret i1 %.0.i
}

; core::unicode::unicode_data::n::lookup
; Function Attrs: uwtable
define zeroext i1 @_ZN4core7unicode12unicode_data1n6lookup17hab55b49a8b5024e9E(i32 %c) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = icmp ult i32 %c, 1114112
  tail call addrspace(1) void @llvm.assume(i1 %0)
  %1 = shl nuw i32 %c, 11
  %2 = icmp ult i32 %c, 68858
  %base.0.mid.i.i.i = select i1 %2, i16 0, i16 19
  %mid.1.i.i.i = add nuw nsw i16 %base.0.mid.i.i.i, 9
  %3 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [152 x i8] }>* @_ZN4core7unicode12unicode_data1n17SHORT_OFFSET_RUNS17hd940b4c0e277952dE to [0 x i32]*), i16 0, i16 %mid.1.i.i.i
  %_20.val.1.i.i.i = load i32, i32* %3, align 1, !noalias !5694
  %_5.0.i.i.i.i.1.i.i.i = shl i32 %_20.val.1.i.i.i, 11
  %4 = icmp ugt i32 %_5.0.i.i.i.i.1.i.i.i, %1
  %base.0.mid.1.i.i.i = select i1 %4, i16 %base.0.mid.i.i.i, i16 %mid.1.i.i.i
  %mid.2.i.i.i = add nuw nsw i16 %base.0.mid.1.i.i.i, 5
  %5 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [152 x i8] }>* @_ZN4core7unicode12unicode_data1n17SHORT_OFFSET_RUNS17hd940b4c0e277952dE to [0 x i32]*), i16 0, i16 %mid.2.i.i.i
  %_20.val.2.i.i.i = load i32, i32* %5, align 1, !noalias !5694
  %_5.0.i.i.i.i.2.i.i.i = shl i32 %_20.val.2.i.i.i, 11
  %6 = icmp ugt i32 %_5.0.i.i.i.i.2.i.i.i, %1
  %base.0.mid.2.i.i.i = select i1 %6, i16 %base.0.mid.1.i.i.i, i16 %mid.2.i.i.i
  %mid.3.i.i.i = add nuw nsw i16 %base.0.mid.2.i.i.i, 2
  %7 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [152 x i8] }>* @_ZN4core7unicode12unicode_data1n17SHORT_OFFSET_RUNS17hd940b4c0e277952dE to [0 x i32]*), i16 0, i16 %mid.3.i.i.i
  %_20.val.3.i.i.i = load i32, i32* %7, align 1, !noalias !5694
  %_5.0.i.i.i.i.3.i.i.i = shl i32 %_20.val.3.i.i.i, 11
  %8 = icmp ugt i32 %_5.0.i.i.i.i.3.i.i.i, %1
  %base.0.mid.3.i.i.i = select i1 %8, i16 %base.0.mid.2.i.i.i, i16 %mid.3.i.i.i
  %mid.4.i.i.i = add nuw nsw i16 %base.0.mid.3.i.i.i, 1
  %9 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [152 x i8] }>* @_ZN4core7unicode12unicode_data1n17SHORT_OFFSET_RUNS17hd940b4c0e277952dE to [0 x i32]*), i16 0, i16 %mid.4.i.i.i
  %_20.val.4.i.i.i = load i32, i32* %9, align 1, !noalias !5694
  %_5.0.i.i.i.i.4.i.i.i = shl i32 %_20.val.4.i.i.i, 11
  %10 = icmp ugt i32 %_5.0.i.i.i.i.4.i.i.i, %1
  %base.0.mid.4.i.i.i = select i1 %10, i16 %base.0.mid.3.i.i.i, i16 %mid.4.i.i.i
  %mid.5.i.i.i = add nuw nsw i16 %base.0.mid.4.i.i.i, 1
  %11 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [152 x i8] }>* @_ZN4core7unicode12unicode_data1n17SHORT_OFFSET_RUNS17hd940b4c0e277952dE to [0 x i32]*), i16 0, i16 %mid.5.i.i.i
  %_20.val.5.i.i.i = load i32, i32* %11, align 1, !noalias !5694
  %_5.0.i.i.i.i.5.i.i.i = shl i32 %_20.val.5.i.i.i, 11
  %12 = icmp ugt i32 %_5.0.i.i.i.i.5.i.i.i, %1
  %base.0.mid.5.i.i.i = select i1 %12, i16 %base.0.mid.4.i.i.i, i16 %mid.5.i.i.i
  %13 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [152 x i8] }>* @_ZN4core7unicode12unicode_data1n17SHORT_OFFSET_RUNS17hd940b4c0e277952dE to [0 x i32]*), i16 0, i16 %base.0.mid.5.i.i.i
  %_32.val.i.i.i = load i32, i32* %13, align 1, !noalias !5694
  %_5.0.i.i.i.i6.i.i.i = shl i32 %_32.val.i.i.i, 11
  %_3.i.i9.i.i.i = icmp ult i32 %_5.0.i.i.i.i6.i.i.i, %1
  %_6.i.i10.i.i.i = icmp eq i32 %_5.0.i.i.i.i6.i.i.i, %1
  %_39.i.i.i = zext i1 %_3.i.i9.i.i.i to i16
  %14 = zext i1 %_6.i.i10.i.i.i to i16
  %.sroa.4.1.i.i.i = add nuw nsw i16 %14, %_39.i.i.i
  %last_idx.0.i = add nuw nsw i16 %.sroa.4.1.i.i.i, %base.0.mid.5.i.i.i
  %_21.i = icmp ult i16 %last_idx.0.i, 38
  br i1 %_21.i, label %bb6.i, label %panic.i, !prof !4, !misexpect !5

bb6.i:                                            ; preds = %start
  %15 = getelementptr inbounds [38 x i32], [38 x i32]* bitcast (<{ [152 x i8] }>* @_ZN4core7unicode12unicode_data1n17SHORT_OFFSET_RUNS17hd940b4c0e277952dE to [38 x i32]*), i16 0, i16 %last_idx.0.i
  %_18.i = load i32, i32* %15, align 1
  %_2.i.i = lshr i32 %_18.i, 21
  %16 = trunc i32 %_2.i.i to i16
  %_3.i.i.i = icmp eq i16 %last_idx.0.i, 37
  br i1 %_3.i.i.i, label %bb13.i, label %bb10.i

bb10.i:                                           ; preds = %bb6.i
  %_26.i = add nuw nsw i16 %last_idx.0.i, 1
  %17 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [152 x i8] }>* @_ZN4core7unicode12unicode_data1n17SHORT_OFFSET_RUNS17hd940b4c0e277952dE to [0 x i32]*), i16 0, i16 %_26.i
  %_31.i = load i32, i32* %17, align 1
  %_2.i6.i = lshr i32 %_31.i, 21
  %18 = trunc i32 %_2.i6.i to i16
  br label %bb13.i

bb13.i:                                           ; preds = %bb10.i, %bb6.i
  %_30.pn.i = phi i16 [ %18, %bb10.i ], [ 267, %bb6.i ]
  %19 = tail call addrspace(1) { i16, i1 } @llvm.usub.with.overflow.i16(i16 %last_idx.0.i, i16 1) #20
  %20 = extractvalue { i16, i1 } %19, 0
  %21 = extractvalue { i16, i1 } %19, 1
  br i1 %21, label %"_ZN4core6option15Option$LT$T$GT$3map17h4e107bae80b276c2E.exit.i", label %bb3.i2.i

bb3.i2.i:                                         ; preds = %bb13.i
  %_6.i.i.i = icmp ult i16 %20, 38
  br i1 %_6.i.i.i, label %"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17hd343cb5adc9a1486E.exit.i.i", label %panic.i.i.i, !prof !4, !misexpect !5

panic.i.i.i:                                      ; preds = %bb3.i2.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %20, i16 38, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18904 to %"panic::Location"*)), !noalias !5699
  unreachable

"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17hd343cb5adc9a1486E.exit.i.i": ; preds = %bb3.i2.i
  %22 = getelementptr inbounds [38 x i32], [38 x i32]* bitcast (<{ [152 x i8] }>* @_ZN4core7unicode12unicode_data1n17SHORT_OFFSET_RUNS17hd940b4c0e277952dE to [38 x i32]*), i16 0, i16 %20
  %_3.i.i3.i = load i32, i32* %22, align 1, !noalias !5699
  %23 = and i32 %_3.i.i3.i, 2097151
  br label %"_ZN4core6option15Option$LT$T$GT$3map17h4e107bae80b276c2E.exit.i"

"_ZN4core6option15Option$LT$T$GT$3map17h4e107bae80b276c2E.exit.i": ; preds = %"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17hd343cb5adc9a1486E.exit.i.i", %bb13.i
  %.sroa.0.0.i4.i = phi i32 [ 0, %bb13.i ], [ %23, %"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17hd343cb5adc9a1486E.exit.i.i" ]
  %total.i = sub nsw i32 %c, %.sroa.0.0.i4.i
  %24 = xor i16 %16, -1
  %_49.i = add nsw i16 %_30.pn.i, %24
  %25 = icmp eq i16 %_49.i, 0
  br i1 %25, label %_ZN4core7unicode12unicode_data11skip_search17h796a6e17cb4ae4ebE.exit, label %bb22.preheader.i

bb22.preheader.i:                                 ; preds = %"_ZN4core6option15Option$LT$T$GT$3map17h4e107bae80b276c2E.exit.i"
  %26 = add nsw i16 %_30.pn.i, -1
  br label %bb22.i

bb22.i:                                           ; preds = %bb25.i, %bb22.preheader.i
  %prefix_sum.017.i = phi i32 [ %29, %bb25.i ], [ 0, %bb22.preheader.i ]
  %offset_idx.016.i = phi i16 [ %30, %bb25.i ], [ %16, %bb22.preheader.i ]
  %iter.sroa.0.015.i = phi i16 [ %27, %bb25.i ], [ 0, %bb22.preheader.i ]
  %27 = add nuw nsw i16 %iter.sroa.0.015.i, 1
  %_62.i = icmp ult i16 %offset_idx.016.i, 267
  br i1 %_62.i, label %bb24.i, label %panic2.i, !prof !4, !misexpect !5

bb24.i:                                           ; preds = %bb22.i
  %28 = getelementptr inbounds <{ [267 x i8] }>, <{ [267 x i8] }>* @_ZN4core7unicode12unicode_data1n7OFFSETS17h7afb275d30f16843E, i16 0, i32 0, i16 %offset_idx.016.i
  %offset.i = load i8, i8* %28, align 1
  %_63.i = zext i8 %offset.i to i32
  %29 = add i32 %prefix_sum.017.i, %_63.i
  %_65.i = icmp ugt i32 %29, %total.i
  br i1 %_65.i, label %_ZN4core7unicode12unicode_data11skip_search17h796a6e17cb4ae4ebE.exit, label %bb25.i

bb25.i:                                           ; preds = %bb24.i
  %30 = add nuw nsw i16 %offset_idx.016.i, 1
  %31 = icmp ult i16 %27, %_49.i
  br i1 %31, label %bb22.i, label %_ZN4core7unicode12unicode_data11skip_search17h796a6e17cb4ae4ebE.exit

panic.i:                                          ; preds = %start
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %last_idx.0.i, i16 38, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18900 to %"panic::Location"*))
  unreachable

panic2.i:                                         ; preds = %bb22.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %offset_idx.016.i, i16 267, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18902 to %"panic::Location"*))
  unreachable

_ZN4core7unicode12unicode_data11skip_search17h796a6e17cb4ae4ebE.exit: ; preds = %bb24.i, %bb25.i, %"_ZN4core6option15Option$LT$T$GT$3map17h4e107bae80b276c2E.exit.i"
  %offset_idx.0.lcssa.i = phi i16 [ %16, %"_ZN4core6option15Option$LT$T$GT$3map17h4e107bae80b276c2E.exit.i" ], [ %offset_idx.016.i, %bb24.i ], [ %26, %bb25.i ]
  %_68.i = and i16 %offset_idx.0.lcssa.i, 1
  %32 = icmp ne i16 %_68.i, 0
  ret i1 %32
}

; core::unicode::unicode_data::uppercase::lookup
; Function Attrs: uwtable
define zeroext i1 @_ZN4core7unicode12unicode_data9uppercase6lookup17hacb8a6e434d99eceE(i32 %c) unnamed_addr addrspace(1) #2 {
start:
  %0 = icmp ult i32 %c, 1114112
  tail call addrspace(1) void @llvm.assume(i1 %0)
  %_7.i = lshr i32 %c, 6
  %bucket_idx.i = trunc i32 %_7.i to i16
  %chunk_map_idx1.i = lshr i32 %c, 10
  %1 = trunc i32 %chunk_map_idx1.i to i16
  %chunk_piece.i = and i16 %bucket_idx.i, 15
  %_3.i.i.i = icmp ugt i16 %1, 124
  br i1 %_3.i.i.i, label %_ZN4core7unicode12unicode_data13bitset_search17h1c1e340029ecdb57E.exit, label %bb5.i

bb5.i:                                            ; preds = %start
  %2 = getelementptr inbounds [0 x i8], [0 x i8]* bitcast (<{ [125 x i8] }>* @_ZN4core7unicode12unicode_data9uppercase17BITSET_CHUNKS_MAP17he5d28641f662d290E to [0 x i8]*), i16 0, i16 %1
  %v.i = load i8, i8* %2, align 1
  %_24.i = zext i8 %v.i to i16
  %_27.i = icmp ult i8 %v.i, 17
  br i1 %_27.i, label %bb8.i, label %panic.i, !prof !4, !misexpect !5

bb8.i:                                            ; preds = %bb5.i
  %3 = getelementptr inbounds [17 x [16 x i8]], [17 x [16 x i8]]* bitcast (<{ [272 x i8] }>* @_ZN4core7unicode12unicode_data9uppercase19BITSET_INDEX_CHUNKS17he35af3e5298d99f7E to [17 x [16 x i8]]*), i16 0, i16 %_24.i, i16 %chunk_piece.i
  %_23.i = load i8, i8* %3, align 1
  %idx.i = zext i8 %_23.i to i16
  %_3.i.i3.i = icmp ugt i8 %_23.i, 40
  br i1 %_3.i.i3.i, label %bb10.i, label %bb11.i

bb10.i:                                           ; preds = %bb8.i
  %_40.i = add nsw i16 %idx.i, -41
  %_46.i = icmp ult i16 %_40.i, 26
  br i1 %_46.i, label %bb13.i, label %panic3.i, !prof !4, !misexpect !5

bb11.i:                                           ; preds = %bb8.i
  %4 = getelementptr inbounds [0 x i64], [0 x i64]* bitcast (<{ [328 x i8] }>* @_ZN4core7unicode12unicode_data9uppercase16BITSET_CANONICAL17hb337f069e0fc600fE to [0 x i64]*), i16 0, i16 %idx.i
  %5 = load i64, i64* %4, align 1
  br label %bb22.i

bb13.i:                                           ; preds = %bb10.i
  %6 = getelementptr inbounds [26 x { i8, i8 }], [26 x { i8, i8 }]* bitcast (<{ [52 x i8] }>* @_ZN4core7unicode12unicode_data9uppercase14BITSET_MAPPING17h5d7043d016f9effeE to [26 x { i8, i8 }]*), i16 0, i16 %_40.i, i32 0
  %real_idx.i = load i8, i8* %6, align 1
  %7 = getelementptr inbounds [26 x { i8, i8 }], [26 x { i8, i8 }]* bitcast (<{ [52 x i8] }>* @_ZN4core7unicode12unicode_data9uppercase14BITSET_MAPPING17h5d7043d016f9effeE to [26 x { i8, i8 }]*), i16 0, i16 %_40.i, i32 1
  %mapping.i = load i8, i8* %7, align 1
  %_48.i = zext i8 %real_idx.i to i16
  %_51.i = icmp ult i8 %real_idx.i, 41
  br i1 %_51.i, label %bb14.i, label %panic4.i, !prof !4, !misexpect !5

bb14.i:                                           ; preds = %bb13.i
  %8 = getelementptr inbounds [41 x i64], [41 x i64]* bitcast (<{ [328 x i8] }>* @_ZN4core7unicode12unicode_data9uppercase16BITSET_CANONICAL17hb337f069e0fc600fE to [41 x i64]*), i16 0, i16 %_48.i
  %9 = load i64, i64* %8, align 1
  %10 = shl i8 %mapping.i, 1
  %sext.i = ashr i8 %10, 7
  %11 = sext i8 %sext.i to i64
  %spec.select.i = xor i64 %9, %11
  %_61.i = icmp slt i8 %mapping.i, 0
  br i1 %_61.i, label %bb19.i, label %bb18.i

bb18.i:                                           ; preds = %bb14.i
  %_4.i.i = zext i8 %mapping.i to i64
  %12 = tail call addrspace(1) i64 @llvm.fshl.i64(i64 %spec.select.i, i64 %spec.select.i, i64 %_4.i.i) #20
  br label %bb22.i

bb19.i:                                           ; preds = %bb14.i
  %13 = and i8 %mapping.i, 63
  %14 = zext i8 %13 to i64
  %15 = lshr i64 %spec.select.i, %14
  br label %bb22.i

bb22.i:                                           ; preds = %bb19.i, %bb18.i, %bb11.i
  %word.0.i = phi i64 [ %5, %bb11.i ], [ %15, %bb19.i ], [ %12, %bb18.i ]
  %16 = and i32 %c, 63
  %17 = zext i32 %16 to i64
  %_73.i = shl nuw i64 1, %17
  %_71.i = and i64 %word.0.i, %_73.i
  %18 = icmp ne i64 %_71.i, 0
  br label %_ZN4core7unicode12unicode_data13bitset_search17h1c1e340029ecdb57E.exit

panic.i:                                          ; preds = %bb5.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_24.i, i16 17, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18894 to %"panic::Location"*))
  unreachable

panic3.i:                                         ; preds = %bb10.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_40.i, i16 26, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18896 to %"panic::Location"*))
  unreachable

panic4.i:                                         ; preds = %bb13.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %_48.i, i16 41, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18898 to %"panic::Location"*))
  unreachable

_ZN4core7unicode12unicode_data13bitset_search17h1c1e340029ecdb57E.exit: ; preds = %start, %bb22.i
  %.0.i = phi i1 [ %18, %bb22.i ], [ false, %start ]
  ret i1 %.0.i
}

; core::unicode::unicode_data::white_space::lookup
; Function Attrs: uwtable
define zeroext i1 @_ZN4core7unicode12unicode_data11white_space6lookup17hb25ac8ada5802067E(i32 %c) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = icmp ult i32 %c, 1114112
  tail call addrspace(1) void @llvm.assume(i1 %0)
  %1 = shl nuw i32 %c, 11
  %2 = icmp ult i32 %c, 12288
  %base.0.mid.i.i.i = select i1 %2, i16 0, i16 2
  %mid.1.i.i.i = or i16 %base.0.mid.i.i.i, 1
  %3 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [16 x i8] }>* @_ZN4core7unicode12unicode_data11white_space17SHORT_OFFSET_RUNS17h39a3d768926d83a8E to [0 x i32]*), i16 0, i16 %mid.1.i.i.i
  %_20.val.1.i.i.i = load i32, i32* %3, align 1, !noalias !5704
  %_5.0.i.i.i.i.1.i.i.i = shl i32 %_20.val.1.i.i.i, 11
  %4 = icmp ugt i32 %_5.0.i.i.i.i.1.i.i.i, %1
  %base.0.mid.1.i.i.i = select i1 %4, i16 %base.0.mid.i.i.i, i16 %mid.1.i.i.i
  %5 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [16 x i8] }>* @_ZN4core7unicode12unicode_data11white_space17SHORT_OFFSET_RUNS17h39a3d768926d83a8E to [0 x i32]*), i16 0, i16 %base.0.mid.1.i.i.i
  %_32.val.i.i.i = load i32, i32* %5, align 1, !noalias !5704
  %_5.0.i.i.i.i6.i.i.i = shl i32 %_32.val.i.i.i, 11
  %_3.i.i9.i.i.i = icmp ult i32 %_5.0.i.i.i.i6.i.i.i, %1
  %_6.i.i10.i.i.i = icmp eq i32 %_5.0.i.i.i.i6.i.i.i, %1
  %_39.i.i.i = zext i1 %_3.i.i9.i.i.i to i16
  %.sroa.4.1.i.i.i = add nuw nsw i16 %base.0.mid.1.i.i.i, %_39.i.i.i
  %6 = zext i1 %_6.i.i10.i.i.i to i16
  %last_idx.0.i = add nuw nsw i16 %.sroa.4.1.i.i.i, %6
  %_21.i = icmp ult i16 %last_idx.0.i, 4
  br i1 %_21.i, label %bb6.i, label %panic.i, !prof !4, !misexpect !5

bb6.i:                                            ; preds = %start
  %7 = getelementptr inbounds [4 x i32], [4 x i32]* bitcast (<{ [16 x i8] }>* @_ZN4core7unicode12unicode_data11white_space17SHORT_OFFSET_RUNS17h39a3d768926d83a8E to [4 x i32]*), i16 0, i16 %last_idx.0.i
  %_18.i = load i32, i32* %7, align 1
  %_2.i.i = lshr i32 %_18.i, 21
  %8 = trunc i32 %_2.i.i to i16
  %_3.i.i.i = icmp eq i16 %last_idx.0.i, 3
  br i1 %_3.i.i.i, label %bb13.i, label %bb10.i

bb10.i:                                           ; preds = %bb6.i
  %_26.i = add nuw nsw i16 %last_idx.0.i, 1
  %9 = getelementptr inbounds [0 x i32], [0 x i32]* bitcast (<{ [16 x i8] }>* @_ZN4core7unicode12unicode_data11white_space17SHORT_OFFSET_RUNS17h39a3d768926d83a8E to [0 x i32]*), i16 0, i16 %_26.i
  %_31.i = load i32, i32* %9, align 1
  %_2.i6.i = lshr i32 %_31.i, 21
  %10 = trunc i32 %_2.i6.i to i16
  br label %bb13.i

bb13.i:                                           ; preds = %bb10.i, %bb6.i
  %_30.pn.i = phi i16 [ %10, %bb10.i ], [ 21, %bb6.i ]
  %11 = tail call addrspace(1) { i16, i1 } @llvm.usub.with.overflow.i16(i16 %last_idx.0.i, i16 1) #20
  %12 = extractvalue { i16, i1 } %11, 0
  %13 = extractvalue { i16, i1 } %11, 1
  br i1 %13, label %"_ZN4core6option15Option$LT$T$GT$3map17hb8940c7f044b037dE.exit.i", label %bb3.i2.i

bb3.i2.i:                                         ; preds = %bb13.i
  %_6.i.i.i = icmp ult i16 %12, 4
  br i1 %_6.i.i.i, label %"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17hec65b838f0f73162E.exit.i.i", label %panic.i.i.i, !prof !4, !misexpect !5

panic.i.i.i:                                      ; preds = %bb3.i2.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %12, i16 4, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18904 to %"panic::Location"*)), !noalias !5709
  unreachable

"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17hec65b838f0f73162E.exit.i.i": ; preds = %bb3.i2.i
  %14 = getelementptr inbounds [4 x i32], [4 x i32]* bitcast (<{ [16 x i8] }>* @_ZN4core7unicode12unicode_data11white_space17SHORT_OFFSET_RUNS17h39a3d768926d83a8E to [4 x i32]*), i16 0, i16 %12
  %_3.i.i3.i = load i32, i32* %14, align 1, !noalias !5709
  %15 = and i32 %_3.i.i3.i, 2097151
  br label %"_ZN4core6option15Option$LT$T$GT$3map17hb8940c7f044b037dE.exit.i"

"_ZN4core6option15Option$LT$T$GT$3map17hb8940c7f044b037dE.exit.i": ; preds = %"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17hec65b838f0f73162E.exit.i.i", %bb13.i
  %.sroa.0.0.i4.i = phi i32 [ 0, %bb13.i ], [ %15, %"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17hec65b838f0f73162E.exit.i.i" ]
  %total.i = sub nsw i32 %c, %.sroa.0.0.i4.i
  %16 = xor i16 %8, -1
  %_49.i = add nsw i16 %_30.pn.i, %16
  %17 = icmp eq i16 %_49.i, 0
  br i1 %17, label %_ZN4core7unicode12unicode_data11skip_search17h8727fa7399b99a60E.exit, label %bb22.preheader.i

bb22.preheader.i:                                 ; preds = %"_ZN4core6option15Option$LT$T$GT$3map17hb8940c7f044b037dE.exit.i"
  %18 = add nsw i16 %_30.pn.i, -1
  br label %bb22.i

bb22.i:                                           ; preds = %bb25.i, %bb22.preheader.i
  %prefix_sum.017.i = phi i32 [ %21, %bb25.i ], [ 0, %bb22.preheader.i ]
  %offset_idx.016.i = phi i16 [ %22, %bb25.i ], [ %8, %bb22.preheader.i ]
  %iter.sroa.0.015.i = phi i16 [ %19, %bb25.i ], [ 0, %bb22.preheader.i ]
  %19 = add nuw nsw i16 %iter.sroa.0.015.i, 1
  %_62.i = icmp ult i16 %offset_idx.016.i, 21
  br i1 %_62.i, label %bb24.i, label %panic2.i, !prof !4, !misexpect !5

bb24.i:                                           ; preds = %bb22.i
  %20 = getelementptr inbounds <{ [21 x i8] }>, <{ [21 x i8] }>* @_ZN4core7unicode12unicode_data11white_space7OFFSETS17h6313147bad63dd3cE, i16 0, i32 0, i16 %offset_idx.016.i
  %offset.i = load i8, i8* %20, align 1
  %_63.i = zext i8 %offset.i to i32
  %21 = add i32 %prefix_sum.017.i, %_63.i
  %_65.i = icmp ugt i32 %21, %total.i
  br i1 %_65.i, label %_ZN4core7unicode12unicode_data11skip_search17h8727fa7399b99a60E.exit, label %bb25.i

bb25.i:                                           ; preds = %bb24.i
  %22 = add nuw nsw i16 %offset_idx.016.i, 1
  %23 = icmp ult i16 %19, %_49.i
  br i1 %23, label %bb22.i, label %_ZN4core7unicode12unicode_data11skip_search17h8727fa7399b99a60E.exit

panic.i:                                          ; preds = %start
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %last_idx.0.i, i16 4, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18900 to %"panic::Location"*))
  unreachable

panic2.i:                                         ; preds = %bb22.i
; call core::panicking::panic_bounds_check
  tail call addrspace(1) void @_ZN4core9panicking18panic_bounds_check17h4a7a766776796a1cE(i16 %offset_idx.016.i, i16 21, %"panic::Location"* noalias readonly align 1 dereferenceable(12) bitcast (<{ i8*, [10 x i8] }>* @alloc18902 to %"panic::Location"*))
  unreachable

_ZN4core7unicode12unicode_data11skip_search17h8727fa7399b99a60E.exit: ; preds = %bb24.i, %bb25.i, %"_ZN4core6option15Option$LT$T$GT$3map17hb8940c7f044b037dE.exit.i"
  %offset_idx.0.lcssa.i = phi i16 [ %8, %"_ZN4core6option15Option$LT$T$GT$3map17hb8940c7f044b037dE.exit.i" ], [ %offset_idx.016.i, %bb24.i ], [ %18, %bb25.i ]
  %_68.i = and i16 %offset_idx.0.lcssa.i, 1
  %24 = icmp ne i16 %_68.i, 0
  ret i1 %24
}

; core::unicode::unicode_data::conversions::to_lower
; Function Attrs: uwtable
define void @_ZN4core7unicode12unicode_data11conversions8to_lower17h5eb4f120e7245eebE([3 x i32]* noalias nocapture sret dereferenceable(12) %0, i32 %c) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %1 = icmp ult i32 %c, 7790
  %base.0.mid.i.i = select i1 %1, i16 0, i16 696
  %mid.i.i.1 = add nuw nsw i16 %base.0.mid.i.i, 348
  %2 = getelementptr inbounds [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }], [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]* bitcast (<{ [22288 x i8] }>* @alloc3723 to [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]*), i16 0, i16 %mid.i.i.1
  %3 = bitcast { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }* %2 to i32*
  %4 = load i32, i32* %3, align 1, !range !690, !alias.scope !5714, !noalias !5721
  %5 = icmp ugt i32 %4, %c
  %base.0.mid.i.i.1 = select i1 %5, i16 %base.0.mid.i.i, i16 %mid.i.i.1
  %mid.i.i.2 = add nuw nsw i16 %base.0.mid.i.i.1, 174
  %6 = getelementptr inbounds [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }], [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]* bitcast (<{ [22288 x i8] }>* @alloc3723 to [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]*), i16 0, i16 %mid.i.i.2
  %7 = bitcast { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }* %6 to i32*
  %8 = load i32, i32* %7, align 1, !range !690, !alias.scope !5714, !noalias !5721
  %9 = icmp ugt i32 %8, %c
  %base.0.mid.i.i.2 = select i1 %9, i16 %base.0.mid.i.i.1, i16 %mid.i.i.2
  %mid.i.i.3 = add nuw nsw i16 %base.0.mid.i.i.2, 87
  %10 = getelementptr inbounds [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }], [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]* bitcast (<{ [22288 x i8] }>* @alloc3723 to [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]*), i16 0, i16 %mid.i.i.3
  %11 = bitcast { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }* %10 to i32*
  %12 = load i32, i32* %11, align 1, !range !690, !alias.scope !5714, !noalias !5721
  %13 = icmp ugt i32 %12, %c
  %base.0.mid.i.i.3 = select i1 %13, i16 %base.0.mid.i.i.2, i16 %mid.i.i.3
  %mid.i.i.4 = add nuw nsw i16 %base.0.mid.i.i.3, 44
  %14 = getelementptr inbounds [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }], [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]* bitcast (<{ [22288 x i8] }>* @alloc3723 to [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]*), i16 0, i16 %mid.i.i.4
  %15 = bitcast { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }* %14 to i32*
  %16 = load i32, i32* %15, align 1, !range !690, !alias.scope !5714, !noalias !5721
  %17 = icmp ugt i32 %16, %c
  %base.0.mid.i.i.4 = select i1 %17, i16 %base.0.mid.i.i.3, i16 %mid.i.i.4
  %mid.i.i.5 = add nuw nsw i16 %base.0.mid.i.i.4, 22
  %18 = getelementptr inbounds [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }], [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]* bitcast (<{ [22288 x i8] }>* @alloc3723 to [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]*), i16 0, i16 %mid.i.i.5
  %19 = bitcast { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }* %18 to i32*
  %20 = load i32, i32* %19, align 1, !range !690, !alias.scope !5714, !noalias !5721
  %21 = icmp ugt i32 %20, %c
  %base.0.mid.i.i.5 = select i1 %21, i16 %base.0.mid.i.i.4, i16 %mid.i.i.5
  %mid.i.i.6 = add nuw nsw i16 %base.0.mid.i.i.5, 11
  %22 = getelementptr inbounds [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }], [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]* bitcast (<{ [22288 x i8] }>* @alloc3723 to [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]*), i16 0, i16 %mid.i.i.6
  %23 = bitcast { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }* %22 to i32*
  %24 = load i32, i32* %23, align 1, !range !690, !alias.scope !5714, !noalias !5721
  %25 = icmp ugt i32 %24, %c
  %base.0.mid.i.i.6 = select i1 %25, i16 %base.0.mid.i.i.5, i16 %mid.i.i.6
  %mid.i.i.7 = add nuw nsw i16 %base.0.mid.i.i.6, 5
  %26 = getelementptr inbounds [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }], [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]* bitcast (<{ [22288 x i8] }>* @alloc3723 to [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]*), i16 0, i16 %mid.i.i.7
  %27 = bitcast { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }* %26 to i32*
  %28 = load i32, i32* %27, align 1, !range !690, !alias.scope !5714, !noalias !5721
  %29 = icmp ugt i32 %28, %c
  %base.0.mid.i.i.7 = select i1 %29, i16 %base.0.mid.i.i.6, i16 %mid.i.i.7
  %mid.i.i.8 = add nuw nsw i16 %base.0.mid.i.i.7, 3
  %30 = getelementptr inbounds [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }], [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]* bitcast (<{ [22288 x i8] }>* @alloc3723 to [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]*), i16 0, i16 %mid.i.i.8
  %31 = bitcast { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }* %30 to i32*
  %32 = load i32, i32* %31, align 1, !range !690, !alias.scope !5714, !noalias !5721
  %33 = icmp ugt i32 %32, %c
  %base.0.mid.i.i.8 = select i1 %33, i16 %base.0.mid.i.i.7, i16 %mid.i.i.8
  %mid.i.i.9 = add nuw nsw i16 %base.0.mid.i.i.8, 1
  %34 = getelementptr inbounds [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }], [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]* bitcast (<{ [22288 x i8] }>* @alloc3723 to [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]*), i16 0, i16 %mid.i.i.9
  %35 = bitcast { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }* %34 to i32*
  %36 = load i32, i32* %35, align 1, !range !690, !alias.scope !5714, !noalias !5721
  %37 = icmp ugt i32 %36, %c
  %base.0.mid.i.i.9 = select i1 %37, i16 %base.0.mid.i.i.8, i16 %mid.i.i.9
  %mid.i.i.10 = add nuw nsw i16 %base.0.mid.i.i.9, 1
  %38 = getelementptr inbounds [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }], [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]* bitcast (<{ [22288 x i8] }>* @alloc3723 to [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]*), i16 0, i16 %mid.i.i.10
  %39 = bitcast { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }* %38 to i32*
  %40 = load i32, i32* %39, align 1, !range !690, !alias.scope !5714, !noalias !5721
  %41 = icmp ugt i32 %40, %c
  %base.0.mid.i.i.10 = select i1 %41, i16 %base.0.mid.i.i.9, i16 %mid.i.i.10
  %42 = getelementptr inbounds [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }], [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]* bitcast (<{ [22288 x i8] }>* @alloc3723 to [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]*), i16 0, i16 %base.0.mid.i.i.10
  %43 = bitcast { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }* %42 to i32*
  %44 = load i32, i32* %43, align 1, !range !690, !alias.scope !5723, !noalias !5721
  %_6.i.i26.i.i = icmp eq i32 %44, %c
  br i1 %_6.i.i26.i.i, label %bb5, label %bb4

bb4:                                              ; preds = %start
  %45 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i16 0, i16 0
  store i32 %c, i32* %45, align 1
  %46 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i16 0, i16 1
  store i32 0, i32* %46, align 1
  %47 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i16 0, i16 2
  store i32 0, i32* %47, align 1
  br label %bb6

bb5:                                              ; preds = %start
  %48 = getelementptr inbounds [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }], [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]* bitcast (<{ [22288 x i8] }>* @alloc3723 to [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]*), i16 0, i16 %base.0.mid.i.i.10, i32 3
  %49 = bitcast [3 x i32]* %0 to i8*
  %50 = bitcast [3 x i32]* %48 to i8*
  tail call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 dereferenceable(12) %49, i8* nonnull align 1 dereferenceable(12) %50, i16 12, i1 false)
  br label %bb6

bb6:                                              ; preds = %bb4, %bb5
  ret void
}

; core::unicode::unicode_data::conversions::to_upper
; Function Attrs: uwtable
define void @_ZN4core7unicode12unicode_data11conversions8to_upper17h71ae93d20727a7e1E([3 x i32]* noalias nocapture sret dereferenceable(12) %0, i32 %c) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %1 = icmp ult i32 %c, 8036
  %base.0.mid.i.i = select i1 %1, i16 0, i16 742
  %mid.i.i.1 = add nuw nsw i16 %base.0.mid.i.i, 371
  %2 = getelementptr inbounds [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }], [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]* bitcast (<{ [23760 x i8] }>* @alloc6697 to [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]*), i16 0, i16 %mid.i.i.1
  %3 = bitcast { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }* %2 to i32*
  %4 = load i32, i32* %3, align 1, !range !690, !alias.scope !5726, !noalias !5733
  %5 = icmp ugt i32 %4, %c
  %base.0.mid.i.i.1 = select i1 %5, i16 %base.0.mid.i.i, i16 %mid.i.i.1
  %mid.i.i.2 = add nuw nsw i16 %base.0.mid.i.i.1, 186
  %6 = getelementptr inbounds [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }], [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]* bitcast (<{ [23760 x i8] }>* @alloc6697 to [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]*), i16 0, i16 %mid.i.i.2
  %7 = bitcast { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }* %6 to i32*
  %8 = load i32, i32* %7, align 1, !range !690, !alias.scope !5726, !noalias !5733
  %9 = icmp ugt i32 %8, %c
  %base.0.mid.i.i.2 = select i1 %9, i16 %base.0.mid.i.i.1, i16 %mid.i.i.2
  %mid.i.i.3 = add nuw nsw i16 %base.0.mid.i.i.2, 93
  %10 = getelementptr inbounds [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }], [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]* bitcast (<{ [23760 x i8] }>* @alloc6697 to [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]*), i16 0, i16 %mid.i.i.3
  %11 = bitcast { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }* %10 to i32*
  %12 = load i32, i32* %11, align 1, !range !690, !alias.scope !5726, !noalias !5733
  %13 = icmp ugt i32 %12, %c
  %base.0.mid.i.i.3 = select i1 %13, i16 %base.0.mid.i.i.2, i16 %mid.i.i.3
  %mid.i.i.4 = add nuw nsw i16 %base.0.mid.i.i.3, 46
  %14 = getelementptr inbounds [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }], [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]* bitcast (<{ [23760 x i8] }>* @alloc6697 to [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]*), i16 0, i16 %mid.i.i.4
  %15 = bitcast { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }* %14 to i32*
  %16 = load i32, i32* %15, align 1, !range !690, !alias.scope !5726, !noalias !5733
  %17 = icmp ugt i32 %16, %c
  %base.0.mid.i.i.4 = select i1 %17, i16 %base.0.mid.i.i.3, i16 %mid.i.i.4
  %mid.i.i.5 = add nuw nsw i16 %base.0.mid.i.i.4, 23
  %18 = getelementptr inbounds [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }], [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]* bitcast (<{ [23760 x i8] }>* @alloc6697 to [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]*), i16 0, i16 %mid.i.i.5
  %19 = bitcast { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }* %18 to i32*
  %20 = load i32, i32* %19, align 1, !range !690, !alias.scope !5726, !noalias !5733
  %21 = icmp ugt i32 %20, %c
  %base.0.mid.i.i.5 = select i1 %21, i16 %base.0.mid.i.i.4, i16 %mid.i.i.5
  %mid.i.i.6 = add nuw nsw i16 %base.0.mid.i.i.5, 12
  %22 = getelementptr inbounds [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }], [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]* bitcast (<{ [23760 x i8] }>* @alloc6697 to [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]*), i16 0, i16 %mid.i.i.6
  %23 = bitcast { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }* %22 to i32*
  %24 = load i32, i32* %23, align 1, !range !690, !alias.scope !5726, !noalias !5733
  %25 = icmp ugt i32 %24, %c
  %base.0.mid.i.i.6 = select i1 %25, i16 %base.0.mid.i.i.5, i16 %mid.i.i.6
  %mid.i.i.7 = add nuw nsw i16 %base.0.mid.i.i.6, 6
  %26 = getelementptr inbounds [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }], [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]* bitcast (<{ [23760 x i8] }>* @alloc6697 to [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]*), i16 0, i16 %mid.i.i.7
  %27 = bitcast { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }* %26 to i32*
  %28 = load i32, i32* %27, align 1, !range !690, !alias.scope !5726, !noalias !5733
  %29 = icmp ugt i32 %28, %c
  %base.0.mid.i.i.7 = select i1 %29, i16 %base.0.mid.i.i.6, i16 %mid.i.i.7
  %mid.i.i.8 = add nuw nsw i16 %base.0.mid.i.i.7, 3
  %30 = getelementptr inbounds [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }], [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]* bitcast (<{ [23760 x i8] }>* @alloc6697 to [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]*), i16 0, i16 %mid.i.i.8
  %31 = bitcast { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }* %30 to i32*
  %32 = load i32, i32* %31, align 1, !range !690, !alias.scope !5726, !noalias !5733
  %33 = icmp ugt i32 %32, %c
  %base.0.mid.i.i.8 = select i1 %33, i16 %base.0.mid.i.i.7, i16 %mid.i.i.8
  %mid.i.i.9 = add nuw nsw i16 %base.0.mid.i.i.8, 1
  %34 = getelementptr inbounds [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }], [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]* bitcast (<{ [23760 x i8] }>* @alloc6697 to [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]*), i16 0, i16 %mid.i.i.9
  %35 = bitcast { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }* %34 to i32*
  %36 = load i32, i32* %35, align 1, !range !690, !alias.scope !5726, !noalias !5733
  %37 = icmp ugt i32 %36, %c
  %base.0.mid.i.i.9 = select i1 %37, i16 %base.0.mid.i.i.8, i16 %mid.i.i.9
  %mid.i.i.10 = add nuw nsw i16 %base.0.mid.i.i.9, 1
  %38 = getelementptr inbounds [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }], [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]* bitcast (<{ [23760 x i8] }>* @alloc6697 to [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]*), i16 0, i16 %mid.i.i.10
  %39 = bitcast { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }* %38 to i32*
  %40 = load i32, i32* %39, align 1, !range !690, !alias.scope !5726, !noalias !5733
  %41 = icmp ugt i32 %40, %c
  %base.0.mid.i.i.10 = select i1 %41, i16 %base.0.mid.i.i.9, i16 %mid.i.i.10
  %42 = getelementptr inbounds [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }], [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]* bitcast (<{ [23760 x i8] }>* @alloc6697 to [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]*), i16 0, i16 %base.0.mid.i.i.10
  %43 = bitcast { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }* %42 to i32*
  %44 = load i32, i32* %43, align 1, !range !690, !alias.scope !5735, !noalias !5733
  %_6.i.i26.i.i = icmp eq i32 %44, %c
  br i1 %_6.i.i26.i.i, label %bb5, label %bb4

bb4:                                              ; preds = %start
  %45 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i16 0, i16 0
  store i32 %c, i32* %45, align 1
  %46 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i16 0, i16 1
  store i32 0, i32* %46, align 1
  %47 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i16 0, i16 2
  store i32 0, i32* %47, align 1
  br label %bb6

bb5:                                              ; preds = %start
  %48 = getelementptr inbounds [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }], [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]* bitcast (<{ [23760 x i8] }>* @alloc6697 to [0 x { [0 x i8], i32, [0 x i8], [3 x i32], [0 x i8] }]*), i16 0, i16 %base.0.mid.i.i.10, i32 3
  %49 = bitcast [3 x i32]* %0 to i8*
  %50 = bitcast [3 x i32]* %48 to i8*
  tail call addrspace(1) void @llvm.memcpy.p0i8.p0i8.i16(i8* nonnull align 1 dereferenceable(12) %49, i8* nonnull align 1 dereferenceable(12) %50, i16 12, i1 false)
  br label %bb6

bb6:                                              ; preds = %bb4, %bb5
  ret void
}

; <core::future::ResumeTy as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN59_$LT$core..future..ResumeTy$u20$as$u20$core..fmt..Debug$GT$3fmt17h07b1876c5fdc444eE"(i8** noalias readonly align 1 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_13 = alloca i8**, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !5738, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !5738, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !5738, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [8 x i8] }>* @alloc19223 to [0 x i8]*), i16 8), !noalias !5747
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !5747, !noalias !5748
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !5747, !noalias !5748
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !5747, !noalias !5748
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !5747, !noalias !5748
  %12 = bitcast i8*** %_13 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i8** %self, i8*** %_13, align 1
  %_10.0 = bitcast i8*** %_13 to {}*
; call core::fmt::builders::DebugTuple::field
  %_8 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_10.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8***) addrspace(1)*, i16, i16, i1 (i8***, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1F to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %13 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %13, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %14 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %14, align 1, !alias.scope !5749, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !5752, !noalias !5749
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %15 = icmp eq i32 %_2.i.i.i.i.i, 0
  %16 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %15, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %16, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %17, align 1, !noalias !5755, !nonnull !568
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %16, i16 0, i32 11, i32 1
  %19 = bitcast [3 x i16]** %18 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %19, align 1, !noalias !5755, !nonnull !568
  %20 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %21 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %20, align 1, !invariant.load !568, !noalias !5755, !nonnull !568
  %22 = call zeroext addrspace(1) i1 %21({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %22, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %23 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %23, align 1, !noalias !5758, !nonnull !568
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %25 = bitcast [3 x i16]** %24 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %25, align 1, !noalias !5758, !nonnull !568
  %26 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %27 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %26, align 1, !invariant.load !568, !noalias !5758, !nonnull !568
  %28 = call zeroext addrspace(1) i1 %27({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %28 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %29 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %30 = icmp ne i8 %29, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %30
}

; <core::task::wake::RawWaker as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN63_$LT$core..task..wake..RawWaker$u20$as$u20$core..fmt..Debug$GT$3fmt17h2eebde19343f0627E"({ i8*, i8* }* noalias readonly align 1 dereferenceable(4) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_24 = alloca %"task::wake::RawWakerVTable"**, align 1
  %_16 = alloca {}**, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %0 = getelementptr inbounds { i8*, i8* }, { i8*, i8* }* %self, i16 0, i32 1
  %1 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %1)
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %2, align 1, !noalias !5761, !nonnull !568
  %3 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %4 = bitcast [3 x i16]** %3 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %4, align 1, !noalias !5761, !nonnull !568
  %5 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %6 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %5, align 1, !invariant.load !568, !noalias !5761, !nonnull !568
  %7 = tail call zeroext addrspace(1) i1 %6({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [8 x i8] }>* @alloc19224 to [0 x i8]*), i16 8), !noalias !5770
  %8 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %8, align 1, !alias.scope !5770, !noalias !5771
  %9 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %10 = zext i1 %7 to i8
  store i8 %10, i8* %9, align 1, !alias.scope !5770, !noalias !5771
  %11 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %11, align 1, !alias.scope !5770, !noalias !5771
  %12 = bitcast {}*** %_16 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast {}*** %_16 to { i8*, i8* }**
  store { i8*, i8* }* %self, { i8*, i8* }** %13, align 1
  %_13.0 = bitcast {}*** %_16 to {}*
; call core::fmt::builders::DebugStruct::field
  %_9 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19225 to [0 x i8]*), i16 4, {}* nonnull align 1 %_13.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({}***) addrspace(1)*, i16, i16, i1 ({}***, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1G to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %14 = bitcast %"task::wake::RawWakerVTable"*** %_24 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast %"task::wake::RawWakerVTable"*** %_24 to i8***
  store i8** %0, i8*** %15, align 1
  %_21.0 = bitcast %"task::wake::RawWakerVTable"*** %_24 to {}*
; call core::fmt::builders::DebugStruct::field
  %_17 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc19226 to [0 x i8]*), i16 6, {}* nonnull align 1 %_21.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (%"task::wake::RawWakerVTable"***) addrspace(1)*, i16, i16, i1 (%"task::wake::RawWakerVTable"***, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1H to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %16 = load i8, i8* %11, align 1, !range !87
  %_2.i = icmp eq i8 %16, 0
  %.pre.i = load i8, i8* %9, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %17 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %17, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !5772, !noalias !5775
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %18 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %19, align 1, !nonnull !568
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %21 = bitcast [3 x i16]** %20 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %21, align 1, !nonnull !568
  %22 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %23 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %22, align 1, !invariant.load !568, !nonnull !568
  br i1 %18, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %24 = call zeroext addrspace(1) i1 %23({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %25 = call zeroext addrspace(1) i1 %23({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %25, %bb3.i.i.i ], [ %24, %bb2.i.i.i ]
  %26 = zext i1 %.0.i.i to i8
  store i8 %26, i8* %9, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %27 = phi i8 [ %26, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %28 = icmp ne i8 %27, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %1)
  ret i1 %28
}

; <core::task::wake::RawWakerVTable as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN69_$LT$core..task..wake..RawWakerVTable$u20$as$u20$core..fmt..Debug$GT$3fmt17h4f1c401452768856E"(%"task::wake::RawWakerVTable"* noalias readonly align 1 dereferenceable(8) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_42 = alloca void ({}*) addrspace(1)**, align 1
  %_34 = alloca void ({}*) addrspace(1)**, align 1
  %_26 = alloca void ({}*) addrspace(1)**, align 1
  %_18 = alloca { i8*, i8* } ({}*) addrspace(1)**, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %__self_0_1 = getelementptr inbounds %"task::wake::RawWakerVTable", %"task::wake::RawWakerVTable"* %self, i16 0, i32 3
  %__self_0_2 = getelementptr inbounds %"task::wake::RawWakerVTable", %"task::wake::RawWakerVTable"* %self, i16 0, i32 5
  %__self_0_3 = getelementptr inbounds %"task::wake::RawWakerVTable", %"task::wake::RawWakerVTable"* %self, i16 0, i32 7
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !5778, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !5778, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !5778, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [14 x i8] }>* @alloc19227 to [0 x i8]*), i16 14), !noalias !5787
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !5787, !noalias !5788
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !5787, !noalias !5788
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !5787, !noalias !5788
  %11 = bitcast { i8*, i8* } ({}*) addrspace(1)*** %_18 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  %12 = bitcast { i8*, i8* } ({}*) addrspace(1)*** %_18 to %"task::wake::RawWakerVTable"**
  store %"task::wake::RawWakerVTable"* %self, %"task::wake::RawWakerVTable"** %12, align 1
  %_15.0 = bitcast { i8*, i8* } ({}*) addrspace(1)*** %_18 to {}*
; call core::fmt::builders::DebugStruct::field
  %_11 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19228 to [0 x i8]*), i16 5, {}* nonnull align 1 %_15.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({ i8*, i8* } ({}*) addrspace(1)***) addrspace(1)*, i16, i16, i1 ({ i8*, i8* } ({}*) addrspace(1)***, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1I to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %13 = bitcast void ({}*) addrspace(1)*** %_26 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store void ({}*) addrspace(1)** %__self_0_1, void ({}*) addrspace(1)*** %_26, align 1
  %_23.0 = bitcast void ({}*) addrspace(1)*** %_26 to {}*
; call core::fmt::builders::DebugStruct::field
  %_19 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19229 to [0 x i8]*), i16 4, {}* nonnull align 1 %_23.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (void ({}*) addrspace(1)***) addrspace(1)*, i16, i16, i1 (void ({}*) addrspace(1)***, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1J to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast void ({}*) addrspace(1)*** %_34 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store void ({}*) addrspace(1)** %__self_0_2, void ({}*) addrspace(1)*** %_34, align 1
  %_31.0 = bitcast void ({}*) addrspace(1)*** %_34 to {}*
; call core::fmt::builders::DebugStruct::field
  %_27 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [11 x i8] }>* @alloc19230 to [0 x i8]*), i16 11, {}* nonnull align 1 %_31.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (void ({}*) addrspace(1)***) addrspace(1)*, i16, i16, i1 (void ({}*) addrspace(1)***, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1J to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast void ({}*) addrspace(1)*** %_42 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15)
  store void ({}*) addrspace(1)** %__self_0_3, void ({}*) addrspace(1)*** %_42, align 1
  %_39.0 = bitcast void ({}*) addrspace(1)*** %_42 to {}*
; call core::fmt::builders::DebugStruct::field
  %_35 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19231 to [0 x i8]*), i16 4, {}* nonnull align 1 %_39.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (void ({}*) addrspace(1)***) addrspace(1)*, i16, i16, i1 (void ({}*) addrspace(1)***, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1J to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15)
  %16 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %16, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %17 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %17, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !5789, !noalias !5792
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %18 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %19, align 1, !nonnull !568
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %21 = bitcast [3 x i16]** %20 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %21, align 1, !nonnull !568
  %22 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %23 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %22, align 1, !invariant.load !568, !nonnull !568
  br i1 %18, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %24 = call zeroext addrspace(1) i1 %23({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %25 = call zeroext addrspace(1) i1 %23({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %25, %bb3.i.i.i ], [ %24, %bb2.i.i.i ]
  %26 = zext i1 %.0.i.i to i8
  store i8 %26, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %27 = phi i8 [ %26, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %28 = icmp ne i8 %27, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %28
}

; <core::alloc::layout::Layout as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN64_$LT$core..alloc..layout..Layout$u20$as$u20$core..fmt..Debug$GT$3fmt17hacfd0aedf229606cE"({ i16, i16 }* noalias readonly align 1 dereferenceable(4) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_24 = alloca i16*, align 1
  %_16 = alloca i16*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %__self_0_0 = getelementptr inbounds { i16, i16 }, { i16, i16 }* %self, i16 0, i32 0
  %__self_0_1 = getelementptr inbounds { i16, i16 }, { i16, i16 }* %self, i16 0, i32 1
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !5795, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !5795, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !5795, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc19232 to [0 x i8]*), i16 6), !noalias !5804
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !5804, !noalias !5805
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !5804, !noalias !5805
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !5804, !noalias !5805
  %11 = bitcast i16** %_16 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  store i16* %__self_0_0, i16** %_16, align 1
  %_13.0 = bitcast i16** %_16 to {}*
; call core::fmt::builders::DebugStruct::field
  %_9 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19233 to [0 x i8]*), i16 5, {}* nonnull align 1 %_13.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.C to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %12 = bitcast i16** %_24 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i16* %__self_0_1, i16** %_24, align 1
  %_21.0 = bitcast i16** %_24 to {}*
; call core::fmt::builders::DebugStruct::field
  %_17 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc19234 to [0 x i8]*), i16 6, {}* nonnull align 1 %_21.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1K to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %13, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %14 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %14, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !5806, !noalias !5809
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %15 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %16, align 1, !nonnull !568
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %18 = bitcast [3 x i16]** %17 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %20 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %19, align 1, !invariant.load !568, !nonnull !568
  br i1 %15, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %21 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %22 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %22, %bb3.i.i.i ], [ %21, %bb2.i.i.i ]
  %23 = zext i1 %.0.i.i to i8
  store i8 %23, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %24 = phi i8 [ %23, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %25 = icmp ne i8 %24, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %25
}

; <core::alloc::layout::LayoutErr as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN67_$LT$core..alloc..layout..LayoutErr$u20$as$u20$core..fmt..Debug$GT$3fmt17h036409b1b5ffad21E"(%"alloc::layout::LayoutErr"* noalias nonnull readonly align 1 %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_15 = alloca {}*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !5812, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !5812, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !5812, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [9 x i8] }>* @alloc19235 to [0 x i8]*), i16 9), !noalias !5821
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !5821, !noalias !5822
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !5821, !noalias !5822
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !5821, !noalias !5822
  %11 = bitcast {}** %_15 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  %12 = bitcast {}** %_15 to %"alloc::layout::LayoutErr"**
  store %"alloc::layout::LayoutErr"* %self, %"alloc::layout::LayoutErr"** %12, align 1
  %_12.0 = bitcast {}** %_15 to {}*
; call core::fmt::builders::DebugStruct::field
  %_8 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [7 x i8] }>* @alloc19236 to [0 x i8]*), i16 7, {}* nonnull align 1 %_12.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void ({}**) addrspace(1)*, i16, i16, i1 ({}**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.D to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %13 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %13, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %14 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %14, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !5823, !noalias !5826
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %15 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %16, align 1, !nonnull !568
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %18 = bitcast [3 x i16]** %17 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %20 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %19, align 1, !invariant.load !568, !nonnull !568
  br i1 %15, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %21 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %22 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %22, %bb3.i.i.i ], [ %21, %bb2.i.i.i ]
  %23 = zext i1 %.0.i.i to i8
  store i8 %23, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %24 = phi i8 [ %23, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %25 = icmp ne i8 %24, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %25
}

; <core::alloc::AllocErr as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN58_$LT$core..alloc..AllocErr$u20$as$u20$core..fmt..Debug$GT$3fmt17h9572117fac62e62cE"(%"alloc::AllocErr"* noalias nocapture nonnull readonly align 1 %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit:
  %0 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %0, align 1, !noalias !5829, !nonnull !568
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %2 = bitcast [3 x i16]** %1 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %2, align 1, !noalias !5829, !nonnull !568
  %3 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %4 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %3, align 1, !invariant.load !568, !noalias !5829, !nonnull !568
  %5 = tail call zeroext addrspace(1) i1 %4({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [8 x i8] }>* @alloc19237 to [0 x i8]*), i16 8), !noalias !5838
  ret i1 %5
}

; <core::alloc::AllocInit as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN59_$LT$core..alloc..AllocInit$u20$as$u20$core..fmt..Debug$GT$3fmt17hab062a989edb300fE"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = load i8, i8* %self, align 1, !range !87
  %switch = icmp eq i8 %0, 1
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !nonnull !568
  br i1 %switch, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc19238 to [0 x i8]*), i16 6), !noalias !5839
  br label %bb8

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30: ; preds = %start
  %7 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [13 x i8] }>* @alloc19239 to [0 x i8]*), i16 13), !noalias !5844
  br label %bb8

bb8:                                              ; preds = %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit
  %.0.in = phi i1 [ %7, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit30 ], [ %6, %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit ]
  ret i1 %.0.in
}

; <core::alloc::MemoryBlock as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN61_$LT$core..alloc..MemoryBlock$u20$as$u20$core..fmt..Debug$GT$3fmt17h8f1277e90bdeb6c0E"({ i8*, i16 }* noalias readonly align 1 dereferenceable(4) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_24 = alloca i16*, align 1
  %_16 = alloca i8**, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugStruct", align 1
  %__self_0_0 = getelementptr inbounds { i8*, i16 }, { i8*, i16 }* %self, i16 0, i32 0
  %__self_0_1 = getelementptr inbounds { i8*, i16 }, { i8*, i16 }* %self, i16 0, i32 1
  %0 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !5849, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !5849, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !5849, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [11 x i8] }>* @alloc19240 to [0 x i8]*), i16 11), !noalias !5858
  %7 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !5858, !noalias !5859
  %8 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !5858, !noalias !5859
  %10 = getelementptr inbounds %"fmt::builders::DebugStruct", %"fmt::builders::DebugStruct"* %debug_trait_builder, i16 0, i32 5
  store i8 0, i8* %10, align 1, !alias.scope !5858, !noalias !5859
  %11 = bitcast i8*** %_16 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %11)
  store i8** %__self_0_0, i8*** %_16, align 1
  %_13.0 = bitcast i8*** %_16 to {}*
; call core::fmt::builders::DebugStruct::field
  %_9 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [3 x i8] }>* @alloc19241 to [0 x i8]*), i16 3, {}* nonnull align 1 %_13.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8***) addrspace(1)*, i16, i16, i1 (i8***, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1L to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %11)
  %12 = bitcast i16** %_24 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i16* %__self_0_1, i16** %_24, align 1
  %_21.0 = bitcast i16** %_24 to {}*
; call core::fmt::builders::DebugStruct::field
  %_17 = call align 1 dereferenceable(4) addrspace(1) %"fmt::builders::DebugStruct"* @_ZN4core3fmt8builders11DebugStruct5field17h39c265597d8dc08fE(%"fmt::builders::DebugStruct"* nonnull align 1 dereferenceable(4) %debug_trait_builder, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19242 to [0 x i8]*), i16 4, {}* nonnull align 1 %_21.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.C to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = load i8, i8* %10, align 1, !range !87
  %_2.i = icmp eq i8 %13, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_4.i = icmp eq i8 %.pre.i, 0
  br i1 %_4.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %14 = bitcast %"fmt::builders::DebugStruct"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %14, align 1, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !5860, !noalias !5863
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %15 = icmp eq i32 %_2.i.i.i.i.i, 0
  %_5.cast.i.i.i = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  %16 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %16, align 1, !nonnull !568
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_5.cast.i.i.i, i16 0, i32 11, i32 1
  %18 = bitcast [3 x i16]** %17 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %18, align 1, !nonnull !568
  %19 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %20 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %19, align 1, !invariant.load !568, !nonnull !568
  br i1 %15, label %bb2.i.i.i, label %bb3.i.i.i

bb2.i.i.i:                                        ; preds = %bb3.i.i
  %21 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [2 x i8] }>* @alloc18652 to [0 x i8]*), i16 2)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %22 = call zeroext addrspace(1) i1 %20({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18681 to [0 x i8]*), i16 1)
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i": ; preds = %bb3.i.i.i, %bb2.i.i.i, %bb2.i
  %.0.i.i = phi i1 [ true, %bb2.i ], [ %22, %bb3.i.i.i ], [ %21, %bb2.i.i.i ]
  %23 = zext i1 %.0.i.i to i8
  store i8 %23, i8* %8, align 1
  br label %_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit

_ZN4core3fmt8builders11DebugStruct6finish17h27d83c8014788c04E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i"
  %24 = phi i8 [ %23, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h374ce0a9c13d7710E.exit.i" ], [ %.pre.i, %start ]
  %25 = icmp ne i8 %24, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0)
  ret i1 %25
}

; <core::alloc::ReallocPlacement as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN66_$LT$core..alloc..ReallocPlacement$u20$as$u20$core..fmt..Debug$GT$3fmt17h545cdec57285da77E"(i8* noalias nocapture readonly align 1 dereferenceable(1) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %0 = load i8, i8* %self, align 1, !range !87
  %switch = icmp eq i8 %0, 1
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !nonnull !568
  %.sink = select i1 %switch, [0 x i8]* bitcast (<{ [7 x i8] }>* @alloc19243 to [0 x i8]*), [0 x i8]* bitcast (<{ [7 x i8] }>* @alloc19244 to [0 x i8]*)
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 %.sink, i16 7), !noalias !568
  ret i1 %6
}

; <core::core_arch::simd::u8x2 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN64_$LT$core..core_arch..simd..u8x2$u20$as$u20$core..fmt..Debug$GT$3fmt17h6b3cbb6681c17880E"(<2 x i8>* noalias readonly align 2 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_20 = alloca i8*, align 1
  %_14 = alloca i8*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <2 x i8>, <2 x i8>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <2 x i8>, <2 x i8>* %self, i16 0, i16 1
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !5866, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !5866, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !5866, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19245 to [0 x i8]*), i16 4), !noalias !5875
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !5875, !noalias !5876
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !5875, !noalias !5876
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !5875, !noalias !5876
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !5875, !noalias !5876
  %12 = bitcast i8** %_14 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i8* %__self_0_0, i8** %_14, align 1
  %_11.0 = bitcast i8** %_14 to {}*
; call core::fmt::builders::DebugTuple::field
  %_9 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_11.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i8** %_20 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i8* %__self_0_1, i8** %_20, align 1
  %_17.0 = bitcast i8** %_20 to {}*
; call core::fmt::builders::DebugTuple::field
  %_15 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_17.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %14 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %14, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %15 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %15, align 1, !alias.scope !5877, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !5880, !noalias !5877
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %16 = icmp eq i32 %_2.i.i.i.i.i, 0
  %17 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %16, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %18, align 1, !noalias !5883, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !noalias !5883, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !noalias !5883, !nonnull !568
  %23 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %23, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %24, align 1, !noalias !5886, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %26, align 1, !noalias !5886, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %28 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !5886, !nonnull !568
  %29 = call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %29 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %30 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %31 = icmp ne i8 %30, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %31
}

; <core::core_arch::simd::i8x2 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN64_$LT$core..core_arch..simd..i8x2$u20$as$u20$core..fmt..Debug$GT$3fmt17h1c4483d889e118f5E"(<2 x i8>* noalias readonly align 2 dereferenceable(2) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_20 = alloca i8*, align 1
  %_14 = alloca i8*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <2 x i8>, <2 x i8>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <2 x i8>, <2 x i8>* %self, i16 0, i16 1
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !5889, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !5889, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !5889, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19246 to [0 x i8]*), i16 4), !noalias !5898
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !5898, !noalias !5899
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !5898, !noalias !5899
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !5898, !noalias !5899
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !5898, !noalias !5899
  %12 = bitcast i8** %_14 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i8* %__self_0_0, i8** %_14, align 1
  %_11.0 = bitcast i8** %_14 to {}*
; call core::fmt::builders::DebugTuple::field
  %_9 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_11.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i8** %_20 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i8* %__self_0_1, i8** %_20, align 1
  %_17.0 = bitcast i8** %_20 to {}*
; call core::fmt::builders::DebugTuple::field
  %_15 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_17.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %14 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %14, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %15 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %15, align 1, !alias.scope !5900, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !5903, !noalias !5900
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %16 = icmp eq i32 %_2.i.i.i.i.i, 0
  %17 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %16, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %18, align 1, !noalias !5906, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !noalias !5906, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !noalias !5906, !nonnull !568
  %23 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %23, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %24, align 1, !noalias !5909, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %26, align 1, !noalias !5909, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %28 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !5909, !nonnull !568
  %29 = call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %29 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %30 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %31 = icmp ne i8 %30, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %31
}

; <core::core_arch::simd::u8x4 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN64_$LT$core..core_arch..simd..u8x4$u20$as$u20$core..fmt..Debug$GT$3fmt17haab4ff04a85fd3baE"(<4 x i8>* noalias readonly align 4 dereferenceable(4) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_34 = alloca i8*, align 1
  %_28 = alloca i8*, align 1
  %_22 = alloca i8*, align 1
  %_16 = alloca i8*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <4 x i8>, <4 x i8>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <4 x i8>, <4 x i8>* %self, i16 0, i16 1
  %__self_0_2 = getelementptr inbounds <4 x i8>, <4 x i8>* %self, i16 0, i16 2
  %__self_0_3 = getelementptr inbounds <4 x i8>, <4 x i8>* %self, i16 0, i16 3
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !5912, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !5912, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !5912, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19247 to [0 x i8]*), i16 4), !noalias !5921
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !5921, !noalias !5922
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !5921, !noalias !5922
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !5921, !noalias !5922
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !5921, !noalias !5922
  %12 = bitcast i8** %_16 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i8* %__self_0_0, i8** %_16, align 1
  %_13.0 = bitcast i8** %_16 to {}*
; call core::fmt::builders::DebugTuple::field
  %_11 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_13.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i8** %_22 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i8* %__self_0_1, i8** %_22, align 1
  %_19.0 = bitcast i8** %_22 to {}*
; call core::fmt::builders::DebugTuple::field
  %_17 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_19.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast i8** %_28 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store i8* %__self_0_2, i8** %_28, align 1
  %_25.0 = bitcast i8** %_28 to {}*
; call core::fmt::builders::DebugTuple::field
  %_23 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_25.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast i8** %_34 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15)
  store i8* %__self_0_3, i8** %_34, align 1
  %_31.0 = bitcast i8** %_34 to {}*
; call core::fmt::builders::DebugTuple::field
  %_29 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_31.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %16 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %16, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %17 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %17, align 1, !alias.scope !5923, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !5926, !noalias !5923
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %18 = icmp eq i32 %_2.i.i.i.i.i, 0
  %19 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %18, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %19, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %20, align 1, !noalias !5929, !nonnull !568
  %21 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %19, i16 0, i32 11, i32 1
  %22 = bitcast [3 x i16]** %21 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %22, align 1, !noalias !5929, !nonnull !568
  %23 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %24 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %23, align 1, !invariant.load !568, !noalias !5929, !nonnull !568
  %25 = call zeroext addrspace(1) i1 %24({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %25, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %26 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %26, align 1, !noalias !5932, !nonnull !568
  %27 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %28 = bitcast [3 x i16]** %27 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %28, align 1, !noalias !5932, !nonnull !568
  %29 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %30 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %29, align 1, !invariant.load !568, !noalias !5932, !nonnull !568
  %31 = call zeroext addrspace(1) i1 %30({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %31 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %32 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %33 = icmp ne i8 %32, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %33
}

; <core::core_arch::simd::u16x2 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..core_arch..simd..u16x2$u20$as$u20$core..fmt..Debug$GT$3fmt17h607bab75c9ed7e18E"(<2 x i16>* noalias readonly align 4 dereferenceable(4) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_20 = alloca i16*, align 1
  %_14 = alloca i16*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <2 x i16>, <2 x i16>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <2 x i16>, <2 x i16>* %self, i16 0, i16 1
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !5935, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !5935, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !5935, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19248 to [0 x i8]*), i16 5), !noalias !5944
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !5944, !noalias !5945
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !5944, !noalias !5945
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !5944, !noalias !5945
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !5944, !noalias !5945
  %12 = bitcast i16** %_14 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i16* %__self_0_0, i16** %_14, align 1
  %_11.0 = bitcast i16** %_14 to {}*
; call core::fmt::builders::DebugTuple::field
  %_9 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_11.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.B to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i16** %_20 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i16* %__self_0_1, i16** %_20, align 1
  %_17.0 = bitcast i16** %_20 to {}*
; call core::fmt::builders::DebugTuple::field
  %_15 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_17.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.B to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %14 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %14, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %15 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %15, align 1, !alias.scope !5946, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !5949, !noalias !5946
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %16 = icmp eq i32 %_2.i.i.i.i.i, 0
  %17 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %16, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %18, align 1, !noalias !5952, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !noalias !5952, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !noalias !5952, !nonnull !568
  %23 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %23, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %24, align 1, !noalias !5955, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %26, align 1, !noalias !5955, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %28 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !5955, !nonnull !568
  %29 = call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %29 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %30 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %31 = icmp ne i8 %30, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %31
}

; <core::core_arch::simd::i8x4 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN64_$LT$core..core_arch..simd..i8x4$u20$as$u20$core..fmt..Debug$GT$3fmt17hbbb9370309b0569cE"(<4 x i8>* noalias readonly align 4 dereferenceable(4) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_34 = alloca i8*, align 1
  %_28 = alloca i8*, align 1
  %_22 = alloca i8*, align 1
  %_16 = alloca i8*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <4 x i8>, <4 x i8>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <4 x i8>, <4 x i8>* %self, i16 0, i16 1
  %__self_0_2 = getelementptr inbounds <4 x i8>, <4 x i8>* %self, i16 0, i16 2
  %__self_0_3 = getelementptr inbounds <4 x i8>, <4 x i8>* %self, i16 0, i16 3
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !5958, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !5958, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !5958, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19249 to [0 x i8]*), i16 4), !noalias !5967
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !5967, !noalias !5968
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !5967, !noalias !5968
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !5967, !noalias !5968
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !5967, !noalias !5968
  %12 = bitcast i8** %_16 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i8* %__self_0_0, i8** %_16, align 1
  %_13.0 = bitcast i8** %_16 to {}*
; call core::fmt::builders::DebugTuple::field
  %_11 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_13.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i8** %_22 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i8* %__self_0_1, i8** %_22, align 1
  %_19.0 = bitcast i8** %_22 to {}*
; call core::fmt::builders::DebugTuple::field
  %_17 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_19.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast i8** %_28 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store i8* %__self_0_2, i8** %_28, align 1
  %_25.0 = bitcast i8** %_28 to {}*
; call core::fmt::builders::DebugTuple::field
  %_23 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_25.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast i8** %_34 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15)
  store i8* %__self_0_3, i8** %_34, align 1
  %_31.0 = bitcast i8** %_34 to {}*
; call core::fmt::builders::DebugTuple::field
  %_29 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_31.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %16 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %16, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %17 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %17, align 1, !alias.scope !5969, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !5972, !noalias !5969
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %18 = icmp eq i32 %_2.i.i.i.i.i, 0
  %19 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %18, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %19, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %20, align 1, !noalias !5975, !nonnull !568
  %21 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %19, i16 0, i32 11, i32 1
  %22 = bitcast [3 x i16]** %21 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %22, align 1, !noalias !5975, !nonnull !568
  %23 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %24 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %23, align 1, !invariant.load !568, !noalias !5975, !nonnull !568
  %25 = call zeroext addrspace(1) i1 %24({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %25, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %26 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %26, align 1, !noalias !5978, !nonnull !568
  %27 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %28 = bitcast [3 x i16]** %27 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %28, align 1, !noalias !5978, !nonnull !568
  %29 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %30 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %29, align 1, !invariant.load !568, !noalias !5978, !nonnull !568
  %31 = call zeroext addrspace(1) i1 %30({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %31 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %32 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %33 = icmp ne i8 %32, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %33
}

; <core::core_arch::simd::i16x2 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..core_arch..simd..i16x2$u20$as$u20$core..fmt..Debug$GT$3fmt17h90a5d86df7fbd07fE"(<2 x i16>* noalias readonly align 4 dereferenceable(4) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_20 = alloca i16*, align 1
  %_14 = alloca i16*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <2 x i16>, <2 x i16>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <2 x i16>, <2 x i16>* %self, i16 0, i16 1
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !5981, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !5981, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !5981, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19250 to [0 x i8]*), i16 5), !noalias !5990
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !5990, !noalias !5991
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !5990, !noalias !5991
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !5990, !noalias !5991
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !5990, !noalias !5991
  %12 = bitcast i16** %_14 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i16* %__self_0_0, i16** %_14, align 1
  %_11.0 = bitcast i16** %_14 to {}*
; call core::fmt::builders::DebugTuple::field
  %_9 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_11.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i16** %_20 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i16* %__self_0_1, i16** %_20, align 1
  %_17.0 = bitcast i16** %_20 to {}*
; call core::fmt::builders::DebugTuple::field
  %_15 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_17.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %14 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %14, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %15 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %15, align 1, !alias.scope !5992, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !5995, !noalias !5992
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %16 = icmp eq i32 %_2.i.i.i.i.i, 0
  %17 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %16, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %18, align 1, !noalias !5998, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !noalias !5998, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !noalias !5998, !nonnull !568
  %23 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %23, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %24, align 1, !noalias !6001, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %26, align 1, !noalias !6001, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %28 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !6001, !nonnull !568
  %29 = call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %29 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %30 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %31 = icmp ne i8 %30, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %31
}

; <core::core_arch::simd::u8x8 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN64_$LT$core..core_arch..simd..u8x8$u20$as$u20$core..fmt..Debug$GT$3fmt17h55e0833d53149efeE"(<8 x i8>* noalias readonly align 8 dereferenceable(8) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_62 = alloca i8*, align 1
  %_56 = alloca i8*, align 1
  %_50 = alloca i8*, align 1
  %_44 = alloca i8*, align 1
  %_38 = alloca i8*, align 1
  %_32 = alloca i8*, align 1
  %_26 = alloca i8*, align 1
  %_20 = alloca i8*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <8 x i8>, <8 x i8>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <8 x i8>, <8 x i8>* %self, i16 0, i16 1
  %__self_0_2 = getelementptr inbounds <8 x i8>, <8 x i8>* %self, i16 0, i16 2
  %__self_0_3 = getelementptr inbounds <8 x i8>, <8 x i8>* %self, i16 0, i16 3
  %__self_0_4 = getelementptr inbounds <8 x i8>, <8 x i8>* %self, i16 0, i16 4
  %__self_0_5 = getelementptr inbounds <8 x i8>, <8 x i8>* %self, i16 0, i16 5
  %__self_0_6 = getelementptr inbounds <8 x i8>, <8 x i8>* %self, i16 0, i16 6
  %__self_0_7 = getelementptr inbounds <8 x i8>, <8 x i8>* %self, i16 0, i16 7
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6004, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6004, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6004, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19251 to [0 x i8]*), i16 4), !noalias !6013
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6013, !noalias !6014
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6013, !noalias !6014
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6013, !noalias !6014
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6013, !noalias !6014
  %12 = bitcast i8** %_20 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i8* %__self_0_0, i8** %_20, align 1
  %_17.0 = bitcast i8** %_20 to {}*
; call core::fmt::builders::DebugTuple::field
  %_15 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_17.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i8** %_26 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i8* %__self_0_1, i8** %_26, align 1
  %_23.0 = bitcast i8** %_26 to {}*
; call core::fmt::builders::DebugTuple::field
  %_21 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_23.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast i8** %_32 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store i8* %__self_0_2, i8** %_32, align 1
  %_29.0 = bitcast i8** %_32 to {}*
; call core::fmt::builders::DebugTuple::field
  %_27 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_29.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast i8** %_38 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15)
  store i8* %__self_0_3, i8** %_38, align 1
  %_35.0 = bitcast i8** %_38 to {}*
; call core::fmt::builders::DebugTuple::field
  %_33 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_35.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15)
  %16 = bitcast i8** %_44 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %16)
  store i8* %__self_0_4, i8** %_44, align 1
  %_41.0 = bitcast i8** %_44 to {}*
; call core::fmt::builders::DebugTuple::field
  %_39 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_41.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %16)
  %17 = bitcast i8** %_50 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %17)
  store i8* %__self_0_5, i8** %_50, align 1
  %_47.0 = bitcast i8** %_50 to {}*
; call core::fmt::builders::DebugTuple::field
  %_45 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_47.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %17)
  %18 = bitcast i8** %_56 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %18)
  store i8* %__self_0_6, i8** %_56, align 1
  %_53.0 = bitcast i8** %_56 to {}*
; call core::fmt::builders::DebugTuple::field
  %_51 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_53.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %18)
  %19 = bitcast i8** %_62 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %19)
  store i8* %__self_0_7, i8** %_62, align 1
  %_59.0 = bitcast i8** %_62 to {}*
; call core::fmt::builders::DebugTuple::field
  %_57 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_59.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %19)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %20 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %20, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %21 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %21, align 1, !alias.scope !6015, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6018, !noalias !6015
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %22 = icmp eq i32 %_2.i.i.i.i.i, 0
  %23 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %22, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %23, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %24, align 1, !noalias !6021, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %23, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %26, align 1, !noalias !6021, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %28 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !6021, !nonnull !568
  %29 = call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %29, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %30 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %30, align 1, !noalias !6024, !nonnull !568
  %31 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %32 = bitcast [3 x i16]** %31 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %32, align 1, !noalias !6024, !nonnull !568
  %33 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %34 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %33, align 1, !invariant.load !568, !noalias !6024, !nonnull !568
  %35 = call zeroext addrspace(1) i1 %34({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %35 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %36 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %37 = icmp ne i8 %36, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %37
}

; <core::core_arch::simd::u16x4 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..core_arch..simd..u16x4$u20$as$u20$core..fmt..Debug$GT$3fmt17h55fd4830d606b19bE"(<4 x i16>* noalias readonly align 8 dereferenceable(8) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_34 = alloca i16*, align 1
  %_28 = alloca i16*, align 1
  %_22 = alloca i16*, align 1
  %_16 = alloca i16*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <4 x i16>, <4 x i16>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <4 x i16>, <4 x i16>* %self, i16 0, i16 1
  %__self_0_2 = getelementptr inbounds <4 x i16>, <4 x i16>* %self, i16 0, i16 2
  %__self_0_3 = getelementptr inbounds <4 x i16>, <4 x i16>* %self, i16 0, i16 3
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6027, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6027, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6027, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19252 to [0 x i8]*), i16 5), !noalias !6036
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6036, !noalias !6037
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6036, !noalias !6037
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6036, !noalias !6037
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6036, !noalias !6037
  %12 = bitcast i16** %_16 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i16* %__self_0_0, i16** %_16, align 1
  %_13.0 = bitcast i16** %_16 to {}*
; call core::fmt::builders::DebugTuple::field
  %_11 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_13.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.B to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i16** %_22 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i16* %__self_0_1, i16** %_22, align 1
  %_19.0 = bitcast i16** %_22 to {}*
; call core::fmt::builders::DebugTuple::field
  %_17 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_19.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.B to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast i16** %_28 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store i16* %__self_0_2, i16** %_28, align 1
  %_25.0 = bitcast i16** %_28 to {}*
; call core::fmt::builders::DebugTuple::field
  %_23 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_25.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.B to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast i16** %_34 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15)
  store i16* %__self_0_3, i16** %_34, align 1
  %_31.0 = bitcast i16** %_34 to {}*
; call core::fmt::builders::DebugTuple::field
  %_29 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_31.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.B to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %16 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %16, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %17 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %17, align 1, !alias.scope !6038, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6041, !noalias !6038
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %18 = icmp eq i32 %_2.i.i.i.i.i, 0
  %19 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %18, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %19, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %20, align 1, !noalias !6044, !nonnull !568
  %21 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %19, i16 0, i32 11, i32 1
  %22 = bitcast [3 x i16]** %21 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %22, align 1, !noalias !6044, !nonnull !568
  %23 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %24 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %23, align 1, !invariant.load !568, !noalias !6044, !nonnull !568
  %25 = call zeroext addrspace(1) i1 %24({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %25, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %26 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %26, align 1, !noalias !6047, !nonnull !568
  %27 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %28 = bitcast [3 x i16]** %27 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %28, align 1, !noalias !6047, !nonnull !568
  %29 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %30 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %29, align 1, !invariant.load !568, !noalias !6047, !nonnull !568
  %31 = call zeroext addrspace(1) i1 %30({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %31 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %32 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %33 = icmp ne i8 %32, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %33
}

; <core::core_arch::simd::u32x2 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..core_arch..simd..u32x2$u20$as$u20$core..fmt..Debug$GT$3fmt17h40afea223d2edfefE"(<2 x i32>* noalias readonly align 8 dereferenceable(8) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_20 = alloca i32*, align 1
  %_14 = alloca i32*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <2 x i32>, <2 x i32>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <2 x i32>, <2 x i32>* %self, i16 0, i16 1
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6050, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6050, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6050, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19253 to [0 x i8]*), i16 5), !noalias !6059
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6059, !noalias !6060
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6059, !noalias !6060
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6059, !noalias !6060
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6059, !noalias !6060
  %12 = bitcast i32** %_14 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i32* %__self_0_0, i32** %_14, align 1
  %_11.0 = bitcast i32** %_14 to {}*
; call core::fmt::builders::DebugTuple::field
  %_9 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_11.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1e to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i32** %_20 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i32* %__self_0_1, i32** %_20, align 1
  %_17.0 = bitcast i32** %_20 to {}*
; call core::fmt::builders::DebugTuple::field
  %_15 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_17.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1e to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %14 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %14, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %15 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %15, align 1, !alias.scope !6061, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6064, !noalias !6061
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %16 = icmp eq i32 %_2.i.i.i.i.i, 0
  %17 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %16, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %18, align 1, !noalias !6067, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !noalias !6067, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !noalias !6067, !nonnull !568
  %23 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %23, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %24, align 1, !noalias !6070, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %26, align 1, !noalias !6070, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %28 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !6070, !nonnull !568
  %29 = call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %29 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %30 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %31 = icmp ne i8 %30, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %31
}

; <core::core_arch::simd::u64x1 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..core_arch..simd..u64x1$u20$as$u20$core..fmt..Debug$GT$3fmt17hff25c8c143a6a54eE"(<1 x i64>* noalias readonly align 8 dereferenceable(8) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_13 = alloca i64*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <1 x i64>, <1 x i64>* %self, i16 0, i16 0
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6073, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6073, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6073, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19254 to [0 x i8]*), i16 5), !noalias !6082
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6082, !noalias !6083
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6082, !noalias !6083
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6082, !noalias !6083
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6082, !noalias !6083
  %12 = bitcast i64** %_13 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i64* %__self_0_0, i64** %_13, align 1
  %_10.0 = bitcast i64** %_13 to {}*
; call core::fmt::builders::DebugTuple::field
  %_8 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_10.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.w to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %13 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %13, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %14 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %14, align 1, !alias.scope !6084, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6087, !noalias !6084
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %15 = icmp eq i32 %_2.i.i.i.i.i, 0
  %16 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %15, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %16, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %17, align 1, !noalias !6090, !nonnull !568
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %16, i16 0, i32 11, i32 1
  %19 = bitcast [3 x i16]** %18 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %19, align 1, !noalias !6090, !nonnull !568
  %20 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %21 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %20, align 1, !invariant.load !568, !noalias !6090, !nonnull !568
  %22 = call zeroext addrspace(1) i1 %21({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %22, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %23 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %23, align 1, !noalias !6093, !nonnull !568
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %25 = bitcast [3 x i16]** %24 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %25, align 1, !noalias !6093, !nonnull !568
  %26 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %27 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %26, align 1, !invariant.load !568, !noalias !6093, !nonnull !568
  %28 = call zeroext addrspace(1) i1 %27({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %28 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %29 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %30 = icmp ne i8 %29, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %30
}

; <core::core_arch::simd::i8x8 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN64_$LT$core..core_arch..simd..i8x8$u20$as$u20$core..fmt..Debug$GT$3fmt17h1c6a44ae90ef6eccE"(<8 x i8>* noalias readonly align 8 dereferenceable(8) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_62 = alloca i8*, align 1
  %_56 = alloca i8*, align 1
  %_50 = alloca i8*, align 1
  %_44 = alloca i8*, align 1
  %_38 = alloca i8*, align 1
  %_32 = alloca i8*, align 1
  %_26 = alloca i8*, align 1
  %_20 = alloca i8*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <8 x i8>, <8 x i8>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <8 x i8>, <8 x i8>* %self, i16 0, i16 1
  %__self_0_2 = getelementptr inbounds <8 x i8>, <8 x i8>* %self, i16 0, i16 2
  %__self_0_3 = getelementptr inbounds <8 x i8>, <8 x i8>* %self, i16 0, i16 3
  %__self_0_4 = getelementptr inbounds <8 x i8>, <8 x i8>* %self, i16 0, i16 4
  %__self_0_5 = getelementptr inbounds <8 x i8>, <8 x i8>* %self, i16 0, i16 5
  %__self_0_6 = getelementptr inbounds <8 x i8>, <8 x i8>* %self, i16 0, i16 6
  %__self_0_7 = getelementptr inbounds <8 x i8>, <8 x i8>* %self, i16 0, i16 7
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6096, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6096, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6096, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [4 x i8] }>* @alloc19255 to [0 x i8]*), i16 4), !noalias !6105
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6105, !noalias !6106
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6105, !noalias !6106
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6105, !noalias !6106
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6105, !noalias !6106
  %12 = bitcast i8** %_20 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i8* %__self_0_0, i8** %_20, align 1
  %_17.0 = bitcast i8** %_20 to {}*
; call core::fmt::builders::DebugTuple::field
  %_15 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_17.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i8** %_26 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i8* %__self_0_1, i8** %_26, align 1
  %_23.0 = bitcast i8** %_26 to {}*
; call core::fmt::builders::DebugTuple::field
  %_21 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_23.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast i8** %_32 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store i8* %__self_0_2, i8** %_32, align 1
  %_29.0 = bitcast i8** %_32 to {}*
; call core::fmt::builders::DebugTuple::field
  %_27 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_29.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast i8** %_38 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15)
  store i8* %__self_0_3, i8** %_38, align 1
  %_35.0 = bitcast i8** %_38 to {}*
; call core::fmt::builders::DebugTuple::field
  %_33 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_35.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15)
  %16 = bitcast i8** %_44 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %16)
  store i8* %__self_0_4, i8** %_44, align 1
  %_41.0 = bitcast i8** %_44 to {}*
; call core::fmt::builders::DebugTuple::field
  %_39 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_41.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %16)
  %17 = bitcast i8** %_50 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %17)
  store i8* %__self_0_5, i8** %_50, align 1
  %_47.0 = bitcast i8** %_50 to {}*
; call core::fmt::builders::DebugTuple::field
  %_45 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_47.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %17)
  %18 = bitcast i8** %_56 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %18)
  store i8* %__self_0_6, i8** %_56, align 1
  %_53.0 = bitcast i8** %_56 to {}*
; call core::fmt::builders::DebugTuple::field
  %_51 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_53.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %18)
  %19 = bitcast i8** %_62 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %19)
  store i8* %__self_0_7, i8** %_62, align 1
  %_59.0 = bitcast i8** %_62 to {}*
; call core::fmt::builders::DebugTuple::field
  %_57 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_59.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %19)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %20 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %20, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %21 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %21, align 1, !alias.scope !6107, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6110, !noalias !6107
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %22 = icmp eq i32 %_2.i.i.i.i.i, 0
  %23 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %22, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %23, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %24, align 1, !noalias !6113, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %23, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %26, align 1, !noalias !6113, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %28 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !6113, !nonnull !568
  %29 = call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %29, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %30 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %30, align 1, !noalias !6116, !nonnull !568
  %31 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %32 = bitcast [3 x i16]** %31 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %32, align 1, !noalias !6116, !nonnull !568
  %33 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %34 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %33, align 1, !invariant.load !568, !noalias !6116, !nonnull !568
  %35 = call zeroext addrspace(1) i1 %34({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %35 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %36 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %37 = icmp ne i8 %36, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %37
}

; <core::core_arch::simd::i16x4 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..core_arch..simd..i16x4$u20$as$u20$core..fmt..Debug$GT$3fmt17h2038dd49345ab5daE"(<4 x i16>* noalias readonly align 8 dereferenceable(8) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_34 = alloca i16*, align 1
  %_28 = alloca i16*, align 1
  %_22 = alloca i16*, align 1
  %_16 = alloca i16*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <4 x i16>, <4 x i16>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <4 x i16>, <4 x i16>* %self, i16 0, i16 1
  %__self_0_2 = getelementptr inbounds <4 x i16>, <4 x i16>* %self, i16 0, i16 2
  %__self_0_3 = getelementptr inbounds <4 x i16>, <4 x i16>* %self, i16 0, i16 3
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6119, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6119, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6119, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19256 to [0 x i8]*), i16 5), !noalias !6128
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6128, !noalias !6129
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6128, !noalias !6129
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6128, !noalias !6129
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6128, !noalias !6129
  %12 = bitcast i16** %_16 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i16* %__self_0_0, i16** %_16, align 1
  %_13.0 = bitcast i16** %_16 to {}*
; call core::fmt::builders::DebugTuple::field
  %_11 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_13.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i16** %_22 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i16* %__self_0_1, i16** %_22, align 1
  %_19.0 = bitcast i16** %_22 to {}*
; call core::fmt::builders::DebugTuple::field
  %_17 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_19.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast i16** %_28 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store i16* %__self_0_2, i16** %_28, align 1
  %_25.0 = bitcast i16** %_28 to {}*
; call core::fmt::builders::DebugTuple::field
  %_23 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_25.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast i16** %_34 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15)
  store i16* %__self_0_3, i16** %_34, align 1
  %_31.0 = bitcast i16** %_34 to {}*
; call core::fmt::builders::DebugTuple::field
  %_29 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_31.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %16 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %16, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %17 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %17, align 1, !alias.scope !6130, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6133, !noalias !6130
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %18 = icmp eq i32 %_2.i.i.i.i.i, 0
  %19 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %18, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %19, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %20, align 1, !noalias !6136, !nonnull !568
  %21 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %19, i16 0, i32 11, i32 1
  %22 = bitcast [3 x i16]** %21 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %22, align 1, !noalias !6136, !nonnull !568
  %23 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %24 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %23, align 1, !invariant.load !568, !noalias !6136, !nonnull !568
  %25 = call zeroext addrspace(1) i1 %24({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %25, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %26 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %26, align 1, !noalias !6139, !nonnull !568
  %27 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %28 = bitcast [3 x i16]** %27 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %28, align 1, !noalias !6139, !nonnull !568
  %29 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %30 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %29, align 1, !invariant.load !568, !noalias !6139, !nonnull !568
  %31 = call zeroext addrspace(1) i1 %30({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %31 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %32 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %33 = icmp ne i8 %32, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %33
}

; <core::core_arch::simd::i32x2 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..core_arch..simd..i32x2$u20$as$u20$core..fmt..Debug$GT$3fmt17h6e8fc80a7c4f4aa7E"(<2 x i32>* noalias readonly align 8 dereferenceable(8) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_20 = alloca i32*, align 1
  %_14 = alloca i32*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <2 x i32>, <2 x i32>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <2 x i32>, <2 x i32>* %self, i16 0, i16 1
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6142, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6142, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6142, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19257 to [0 x i8]*), i16 5), !noalias !6151
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6151, !noalias !6152
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6151, !noalias !6152
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6151, !noalias !6152
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6151, !noalias !6152
  %12 = bitcast i32** %_14 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i32* %__self_0_0, i32** %_14, align 1
  %_11.0 = bitcast i32** %_14 to {}*
; call core::fmt::builders::DebugTuple::field
  %_9 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_11.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i32** %_20 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i32* %__self_0_1, i32** %_20, align 1
  %_17.0 = bitcast i32** %_20 to {}*
; call core::fmt::builders::DebugTuple::field
  %_15 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_17.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %14 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %14, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %15 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %15, align 1, !alias.scope !6153, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6156, !noalias !6153
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %16 = icmp eq i32 %_2.i.i.i.i.i, 0
  %17 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %16, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %18, align 1, !noalias !6159, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !noalias !6159, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !noalias !6159, !nonnull !568
  %23 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %23, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %24, align 1, !noalias !6162, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %26, align 1, !noalias !6162, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %28 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !6162, !nonnull !568
  %29 = call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %29 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %30 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %31 = icmp ne i8 %30, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %31
}

; <core::core_arch::simd::i64x1 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..core_arch..simd..i64x1$u20$as$u20$core..fmt..Debug$GT$3fmt17hf4f53b61180cad57E"(<1 x i64>* noalias readonly align 8 dereferenceable(8) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_13 = alloca i64*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <1 x i64>, <1 x i64>* %self, i16 0, i16 0
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6165, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6165, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6165, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19258 to [0 x i8]*), i16 5), !noalias !6174
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6174, !noalias !6175
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6174, !noalias !6175
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6174, !noalias !6175
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6174, !noalias !6175
  %12 = bitcast i64** %_13 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i64* %__self_0_0, i64** %_13, align 1
  %_10.0 = bitcast i64** %_13 to {}*
; call core::fmt::builders::DebugTuple::field
  %_8 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_10.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.u to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %13 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %13, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %14 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %14, align 1, !alias.scope !6176, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6179, !noalias !6176
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %15 = icmp eq i32 %_2.i.i.i.i.i, 0
  %16 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %15, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %17 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %16, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %17, align 1, !noalias !6182, !nonnull !568
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %16, i16 0, i32 11, i32 1
  %19 = bitcast [3 x i16]** %18 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %19, align 1, !noalias !6182, !nonnull !568
  %20 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %21 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %20, align 1, !invariant.load !568, !noalias !6182, !nonnull !568
  %22 = call zeroext addrspace(1) i1 %21({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %22, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %23 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %23, align 1, !noalias !6185, !nonnull !568
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %25 = bitcast [3 x i16]** %24 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %25, align 1, !noalias !6185, !nonnull !568
  %26 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %27 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %26, align 1, !invariant.load !568, !noalias !6185, !nonnull !568
  %28 = call zeroext addrspace(1) i1 %27({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %28 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %29 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %30 = icmp ne i8 %29, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %30
}

; <core::core_arch::simd::f32x2 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..core_arch..simd..f32x2$u20$as$u20$core..fmt..Debug$GT$3fmt17hfdcf3ec01f7091b7E"(<2 x float>* noalias readonly align 8 dereferenceable(8) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_20 = alloca float*, align 1
  %_14 = alloca float*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <2 x float>, <2 x float>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <2 x float>, <2 x float>* %self, i16 0, i16 1
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6188, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6188, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6188, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19259 to [0 x i8]*), i16 5), !noalias !6197
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6197, !noalias !6198
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6197, !noalias !6198
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6197, !noalias !6198
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6197, !noalias !6198
  %12 = bitcast float** %_14 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store float* %__self_0_0, float** %_14, align 1
  %_11.0 = bitcast float** %_14 to {}*
; call core::fmt::builders::DebugTuple::field
  %_9 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_11.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (float**) addrspace(1)*, i16, i16, i1 (float**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1O to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast float** %_20 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store float* %__self_0_1, float** %_20, align 1
  %_17.0 = bitcast float** %_20 to {}*
; call core::fmt::builders::DebugTuple::field
  %_15 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_17.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (float**) addrspace(1)*, i16, i16, i1 (float**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1O to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %14 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %14, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %15 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %15, align 1, !alias.scope !6199, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6202, !noalias !6199
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %16 = icmp eq i32 %_2.i.i.i.i.i, 0
  %17 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %16, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %18, align 1, !noalias !6205, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !noalias !6205, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !noalias !6205, !nonnull !568
  %23 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %23, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %24, align 1, !noalias !6208, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %26, align 1, !noalias !6208, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %28 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !6208, !nonnull !568
  %29 = call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %29 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %30 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %31 = icmp ne i8 %30, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %31
}

; <core::core_arch::simd::u8x16 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..core_arch..simd..u8x16$u20$as$u20$core..fmt..Debug$GT$3fmt17h594d652ee62019e2E"(<16 x i8>* noalias readonly align 16 dereferenceable(16) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_118 = alloca i8*, align 1
  %_112 = alloca i8*, align 1
  %_106 = alloca i8*, align 1
  %_100 = alloca i8*, align 1
  %_94 = alloca i8*, align 1
  %_88 = alloca i8*, align 1
  %_82 = alloca i8*, align 1
  %_76 = alloca i8*, align 1
  %_70 = alloca i8*, align 1
  %_64 = alloca i8*, align 1
  %_58 = alloca i8*, align 1
  %_52 = alloca i8*, align 1
  %_46 = alloca i8*, align 1
  %_40 = alloca i8*, align 1
  %_34 = alloca i8*, align 1
  %_28 = alloca i8*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 1
  %__self_0_2 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 2
  %__self_0_3 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 3
  %__self_0_4 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 4
  %__self_0_5 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 5
  %__self_0_6 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 6
  %__self_0_7 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 7
  %__self_0_8 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 8
  %__self_0_9 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 9
  %__self_0_10 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 10
  %__self_0_11 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 11
  %__self_0_12 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 12
  %__self_0_13 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 13
  %__self_0_14 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 14
  %__self_0_15 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 15
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6211, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6211, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6211, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19260 to [0 x i8]*), i16 5), !noalias !6220
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6220, !noalias !6221
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6220, !noalias !6221
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6220, !noalias !6221
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6220, !noalias !6221
  %12 = bitcast i8** %_28 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i8* %__self_0_0, i8** %_28, align 1
  %_25.0 = bitcast i8** %_28 to {}*
; call core::fmt::builders::DebugTuple::field
  %_23 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_25.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i8** %_34 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i8* %__self_0_1, i8** %_34, align 1
  %_31.0 = bitcast i8** %_34 to {}*
; call core::fmt::builders::DebugTuple::field
  %_29 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_31.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast i8** %_40 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store i8* %__self_0_2, i8** %_40, align 1
  %_37.0 = bitcast i8** %_40 to {}*
; call core::fmt::builders::DebugTuple::field
  %_35 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_37.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast i8** %_46 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15)
  store i8* %__self_0_3, i8** %_46, align 1
  %_43.0 = bitcast i8** %_46 to {}*
; call core::fmt::builders::DebugTuple::field
  %_41 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_43.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15)
  %16 = bitcast i8** %_52 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %16)
  store i8* %__self_0_4, i8** %_52, align 1
  %_49.0 = bitcast i8** %_52 to {}*
; call core::fmt::builders::DebugTuple::field
  %_47 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_49.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %16)
  %17 = bitcast i8** %_58 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %17)
  store i8* %__self_0_5, i8** %_58, align 1
  %_55.0 = bitcast i8** %_58 to {}*
; call core::fmt::builders::DebugTuple::field
  %_53 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_55.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %17)
  %18 = bitcast i8** %_64 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %18)
  store i8* %__self_0_6, i8** %_64, align 1
  %_61.0 = bitcast i8** %_64 to {}*
; call core::fmt::builders::DebugTuple::field
  %_59 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_61.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %18)
  %19 = bitcast i8** %_70 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %19)
  store i8* %__self_0_7, i8** %_70, align 1
  %_67.0 = bitcast i8** %_70 to {}*
; call core::fmt::builders::DebugTuple::field
  %_65 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_67.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %19)
  %20 = bitcast i8** %_76 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %20)
  store i8* %__self_0_8, i8** %_76, align 1
  %_73.0 = bitcast i8** %_76 to {}*
; call core::fmt::builders::DebugTuple::field
  %_71 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_73.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %20)
  %21 = bitcast i8** %_82 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %21)
  store i8* %__self_0_9, i8** %_82, align 1
  %_79.0 = bitcast i8** %_82 to {}*
; call core::fmt::builders::DebugTuple::field
  %_77 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_79.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %21)
  %22 = bitcast i8** %_88 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %22)
  store i8* %__self_0_10, i8** %_88, align 1
  %_85.0 = bitcast i8** %_88 to {}*
; call core::fmt::builders::DebugTuple::field
  %_83 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_85.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %22)
  %23 = bitcast i8** %_94 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %23)
  store i8* %__self_0_11, i8** %_94, align 1
  %_91.0 = bitcast i8** %_94 to {}*
; call core::fmt::builders::DebugTuple::field
  %_89 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_91.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %23)
  %24 = bitcast i8** %_100 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %24)
  store i8* %__self_0_12, i8** %_100, align 1
  %_97.0 = bitcast i8** %_100 to {}*
; call core::fmt::builders::DebugTuple::field
  %_95 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_97.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %24)
  %25 = bitcast i8** %_106 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %25)
  store i8* %__self_0_13, i8** %_106, align 1
  %_103.0 = bitcast i8** %_106 to {}*
; call core::fmt::builders::DebugTuple::field
  %_101 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_103.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %25)
  %26 = bitcast i8** %_112 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %26)
  store i8* %__self_0_14, i8** %_112, align 1
  %_109.0 = bitcast i8** %_112 to {}*
; call core::fmt::builders::DebugTuple::field
  %_107 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_109.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %26)
  %27 = bitcast i8** %_118 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %27)
  store i8* %__self_0_15, i8** %_118, align 1
  %_115.0 = bitcast i8** %_118 to {}*
; call core::fmt::builders::DebugTuple::field
  %_113 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_115.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %27)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %28 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %28, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %29 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %29, align 1, !alias.scope !6222, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6225, !noalias !6222
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %30 = icmp eq i32 %_2.i.i.i.i.i, 0
  %31 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %30, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %32 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %31, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %32, align 1, !noalias !6228, !nonnull !568
  %33 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %31, i16 0, i32 11, i32 1
  %34 = bitcast [3 x i16]** %33 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %34, align 1, !noalias !6228, !nonnull !568
  %35 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %36 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %35, align 1, !invariant.load !568, !noalias !6228, !nonnull !568
  %37 = call zeroext addrspace(1) i1 %36({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %37, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %38 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %38, align 1, !noalias !6231, !nonnull !568
  %39 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %40 = bitcast [3 x i16]** %39 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %40, align 1, !noalias !6231, !nonnull !568
  %41 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %42 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %41, align 1, !invariant.load !568, !noalias !6231, !nonnull !568
  %43 = call zeroext addrspace(1) i1 %42({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %43 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %44 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %45 = icmp ne i8 %44, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %45
}

; <core::core_arch::simd::u16x8 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..core_arch..simd..u16x8$u20$as$u20$core..fmt..Debug$GT$3fmt17hd8a634717b12c114E"(<8 x i16>* noalias readonly align 16 dereferenceable(16) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_62 = alloca i16*, align 1
  %_56 = alloca i16*, align 1
  %_50 = alloca i16*, align 1
  %_44 = alloca i16*, align 1
  %_38 = alloca i16*, align 1
  %_32 = alloca i16*, align 1
  %_26 = alloca i16*, align 1
  %_20 = alloca i16*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <8 x i16>, <8 x i16>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <8 x i16>, <8 x i16>* %self, i16 0, i16 1
  %__self_0_2 = getelementptr inbounds <8 x i16>, <8 x i16>* %self, i16 0, i16 2
  %__self_0_3 = getelementptr inbounds <8 x i16>, <8 x i16>* %self, i16 0, i16 3
  %__self_0_4 = getelementptr inbounds <8 x i16>, <8 x i16>* %self, i16 0, i16 4
  %__self_0_5 = getelementptr inbounds <8 x i16>, <8 x i16>* %self, i16 0, i16 5
  %__self_0_6 = getelementptr inbounds <8 x i16>, <8 x i16>* %self, i16 0, i16 6
  %__self_0_7 = getelementptr inbounds <8 x i16>, <8 x i16>* %self, i16 0, i16 7
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6234, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6234, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6234, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19261 to [0 x i8]*), i16 5), !noalias !6243
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6243, !noalias !6244
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6243, !noalias !6244
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6243, !noalias !6244
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6243, !noalias !6244
  %12 = bitcast i16** %_20 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i16* %__self_0_0, i16** %_20, align 1
  %_17.0 = bitcast i16** %_20 to {}*
; call core::fmt::builders::DebugTuple::field
  %_15 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_17.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.B to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i16** %_26 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i16* %__self_0_1, i16** %_26, align 1
  %_23.0 = bitcast i16** %_26 to {}*
; call core::fmt::builders::DebugTuple::field
  %_21 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_23.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.B to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast i16** %_32 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store i16* %__self_0_2, i16** %_32, align 1
  %_29.0 = bitcast i16** %_32 to {}*
; call core::fmt::builders::DebugTuple::field
  %_27 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_29.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.B to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast i16** %_38 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15)
  store i16* %__self_0_3, i16** %_38, align 1
  %_35.0 = bitcast i16** %_38 to {}*
; call core::fmt::builders::DebugTuple::field
  %_33 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_35.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.B to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15)
  %16 = bitcast i16** %_44 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %16)
  store i16* %__self_0_4, i16** %_44, align 1
  %_41.0 = bitcast i16** %_44 to {}*
; call core::fmt::builders::DebugTuple::field
  %_39 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_41.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.B to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %16)
  %17 = bitcast i16** %_50 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %17)
  store i16* %__self_0_5, i16** %_50, align 1
  %_47.0 = bitcast i16** %_50 to {}*
; call core::fmt::builders::DebugTuple::field
  %_45 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_47.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.B to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %17)
  %18 = bitcast i16** %_56 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %18)
  store i16* %__self_0_6, i16** %_56, align 1
  %_53.0 = bitcast i16** %_56 to {}*
; call core::fmt::builders::DebugTuple::field
  %_51 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_53.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.B to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %18)
  %19 = bitcast i16** %_62 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %19)
  store i16* %__self_0_7, i16** %_62, align 1
  %_59.0 = bitcast i16** %_62 to {}*
; call core::fmt::builders::DebugTuple::field
  %_57 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_59.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.B to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %19)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %20 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %20, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %21 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %21, align 1, !alias.scope !6245, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6248, !noalias !6245
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %22 = icmp eq i32 %_2.i.i.i.i.i, 0
  %23 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %22, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %23, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %24, align 1, !noalias !6251, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %23, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %26, align 1, !noalias !6251, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %28 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !6251, !nonnull !568
  %29 = call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %29, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %30 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %30, align 1, !noalias !6254, !nonnull !568
  %31 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %32 = bitcast [3 x i16]** %31 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %32, align 1, !noalias !6254, !nonnull !568
  %33 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %34 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %33, align 1, !invariant.load !568, !noalias !6254, !nonnull !568
  %35 = call zeroext addrspace(1) i1 %34({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %35 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %36 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %37 = icmp ne i8 %36, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %37
}

; <core::core_arch::simd::u32x4 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..core_arch..simd..u32x4$u20$as$u20$core..fmt..Debug$GT$3fmt17h161e1f5dfabc06feE"(<4 x i32>* noalias readonly align 16 dereferenceable(16) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_34 = alloca i32*, align 1
  %_28 = alloca i32*, align 1
  %_22 = alloca i32*, align 1
  %_16 = alloca i32*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <4 x i32>, <4 x i32>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <4 x i32>, <4 x i32>* %self, i16 0, i16 1
  %__self_0_2 = getelementptr inbounds <4 x i32>, <4 x i32>* %self, i16 0, i16 2
  %__self_0_3 = getelementptr inbounds <4 x i32>, <4 x i32>* %self, i16 0, i16 3
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6257, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6257, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6257, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19262 to [0 x i8]*), i16 5), !noalias !6266
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6266, !noalias !6267
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6266, !noalias !6267
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6266, !noalias !6267
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6266, !noalias !6267
  %12 = bitcast i32** %_16 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i32* %__self_0_0, i32** %_16, align 1
  %_13.0 = bitcast i32** %_16 to {}*
; call core::fmt::builders::DebugTuple::field
  %_11 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_13.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1e to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i32** %_22 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i32* %__self_0_1, i32** %_22, align 1
  %_19.0 = bitcast i32** %_22 to {}*
; call core::fmt::builders::DebugTuple::field
  %_17 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_19.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1e to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast i32** %_28 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store i32* %__self_0_2, i32** %_28, align 1
  %_25.0 = bitcast i32** %_28 to {}*
; call core::fmt::builders::DebugTuple::field
  %_23 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_25.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1e to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast i32** %_34 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15)
  store i32* %__self_0_3, i32** %_34, align 1
  %_31.0 = bitcast i32** %_34 to {}*
; call core::fmt::builders::DebugTuple::field
  %_29 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_31.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1e to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %16 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %16, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %17 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %17, align 1, !alias.scope !6268, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6271, !noalias !6268
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %18 = icmp eq i32 %_2.i.i.i.i.i, 0
  %19 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %18, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %19, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %20, align 1, !noalias !6274, !nonnull !568
  %21 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %19, i16 0, i32 11, i32 1
  %22 = bitcast [3 x i16]** %21 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %22, align 1, !noalias !6274, !nonnull !568
  %23 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %24 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %23, align 1, !invariant.load !568, !noalias !6274, !nonnull !568
  %25 = call zeroext addrspace(1) i1 %24({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %25, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %26 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %26, align 1, !noalias !6277, !nonnull !568
  %27 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %28 = bitcast [3 x i16]** %27 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %28, align 1, !noalias !6277, !nonnull !568
  %29 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %30 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %29, align 1, !invariant.load !568, !noalias !6277, !nonnull !568
  %31 = call zeroext addrspace(1) i1 %30({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %31 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %32 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %33 = icmp ne i8 %32, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %33
}

; <core::core_arch::simd::u64x2 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..core_arch..simd..u64x2$u20$as$u20$core..fmt..Debug$GT$3fmt17h6a5e941e723fd555E"(<2 x i64>* noalias readonly align 16 dereferenceable(16) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_20 = alloca i64*, align 1
  %_14 = alloca i64*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <2 x i64>, <2 x i64>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <2 x i64>, <2 x i64>* %self, i16 0, i16 1
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6280, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6280, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6280, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19263 to [0 x i8]*), i16 5), !noalias !6289
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6289, !noalias !6290
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6289, !noalias !6290
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6289, !noalias !6290
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6289, !noalias !6290
  %12 = bitcast i64** %_14 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i64* %__self_0_0, i64** %_14, align 1
  %_11.0 = bitcast i64** %_14 to {}*
; call core::fmt::builders::DebugTuple::field
  %_9 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_11.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.w to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i64** %_20 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i64* %__self_0_1, i64** %_20, align 1
  %_17.0 = bitcast i64** %_20 to {}*
; call core::fmt::builders::DebugTuple::field
  %_15 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_17.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.w to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %14 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %14, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %15 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %15, align 1, !alias.scope !6291, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6294, !noalias !6291
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %16 = icmp eq i32 %_2.i.i.i.i.i, 0
  %17 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %16, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %18, align 1, !noalias !6297, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !noalias !6297, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !noalias !6297, !nonnull !568
  %23 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %23, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %24, align 1, !noalias !6300, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %26, align 1, !noalias !6300, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %28 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !6300, !nonnull !568
  %29 = call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %29 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %30 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %31 = icmp ne i8 %30, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %31
}

; <core::core_arch::simd::i8x16 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..core_arch..simd..i8x16$u20$as$u20$core..fmt..Debug$GT$3fmt17h84a2ebe4ffafa091E"(<16 x i8>* noalias readonly align 16 dereferenceable(16) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_118 = alloca i8*, align 1
  %_112 = alloca i8*, align 1
  %_106 = alloca i8*, align 1
  %_100 = alloca i8*, align 1
  %_94 = alloca i8*, align 1
  %_88 = alloca i8*, align 1
  %_82 = alloca i8*, align 1
  %_76 = alloca i8*, align 1
  %_70 = alloca i8*, align 1
  %_64 = alloca i8*, align 1
  %_58 = alloca i8*, align 1
  %_52 = alloca i8*, align 1
  %_46 = alloca i8*, align 1
  %_40 = alloca i8*, align 1
  %_34 = alloca i8*, align 1
  %_28 = alloca i8*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 1
  %__self_0_2 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 2
  %__self_0_3 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 3
  %__self_0_4 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 4
  %__self_0_5 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 5
  %__self_0_6 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 6
  %__self_0_7 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 7
  %__self_0_8 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 8
  %__self_0_9 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 9
  %__self_0_10 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 10
  %__self_0_11 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 11
  %__self_0_12 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 12
  %__self_0_13 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 13
  %__self_0_14 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 14
  %__self_0_15 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 15
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6303, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6303, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6303, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19264 to [0 x i8]*), i16 5), !noalias !6312
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6312, !noalias !6313
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6312, !noalias !6313
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6312, !noalias !6313
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6312, !noalias !6313
  %12 = bitcast i8** %_28 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i8* %__self_0_0, i8** %_28, align 1
  %_25.0 = bitcast i8** %_28 to {}*
; call core::fmt::builders::DebugTuple::field
  %_23 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_25.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i8** %_34 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i8* %__self_0_1, i8** %_34, align 1
  %_31.0 = bitcast i8** %_34 to {}*
; call core::fmt::builders::DebugTuple::field
  %_29 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_31.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast i8** %_40 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store i8* %__self_0_2, i8** %_40, align 1
  %_37.0 = bitcast i8** %_40 to {}*
; call core::fmt::builders::DebugTuple::field
  %_35 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_37.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast i8** %_46 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15)
  store i8* %__self_0_3, i8** %_46, align 1
  %_43.0 = bitcast i8** %_46 to {}*
; call core::fmt::builders::DebugTuple::field
  %_41 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_43.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15)
  %16 = bitcast i8** %_52 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %16)
  store i8* %__self_0_4, i8** %_52, align 1
  %_49.0 = bitcast i8** %_52 to {}*
; call core::fmt::builders::DebugTuple::field
  %_47 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_49.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %16)
  %17 = bitcast i8** %_58 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %17)
  store i8* %__self_0_5, i8** %_58, align 1
  %_55.0 = bitcast i8** %_58 to {}*
; call core::fmt::builders::DebugTuple::field
  %_53 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_55.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %17)
  %18 = bitcast i8** %_64 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %18)
  store i8* %__self_0_6, i8** %_64, align 1
  %_61.0 = bitcast i8** %_64 to {}*
; call core::fmt::builders::DebugTuple::field
  %_59 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_61.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %18)
  %19 = bitcast i8** %_70 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %19)
  store i8* %__self_0_7, i8** %_70, align 1
  %_67.0 = bitcast i8** %_70 to {}*
; call core::fmt::builders::DebugTuple::field
  %_65 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_67.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %19)
  %20 = bitcast i8** %_76 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %20)
  store i8* %__self_0_8, i8** %_76, align 1
  %_73.0 = bitcast i8** %_76 to {}*
; call core::fmt::builders::DebugTuple::field
  %_71 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_73.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %20)
  %21 = bitcast i8** %_82 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %21)
  store i8* %__self_0_9, i8** %_82, align 1
  %_79.0 = bitcast i8** %_82 to {}*
; call core::fmt::builders::DebugTuple::field
  %_77 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_79.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %21)
  %22 = bitcast i8** %_88 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %22)
  store i8* %__self_0_10, i8** %_88, align 1
  %_85.0 = bitcast i8** %_88 to {}*
; call core::fmt::builders::DebugTuple::field
  %_83 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_85.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %22)
  %23 = bitcast i8** %_94 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %23)
  store i8* %__self_0_11, i8** %_94, align 1
  %_91.0 = bitcast i8** %_94 to {}*
; call core::fmt::builders::DebugTuple::field
  %_89 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_91.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %23)
  %24 = bitcast i8** %_100 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %24)
  store i8* %__self_0_12, i8** %_100, align 1
  %_97.0 = bitcast i8** %_100 to {}*
; call core::fmt::builders::DebugTuple::field
  %_95 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_97.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %24)
  %25 = bitcast i8** %_106 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %25)
  store i8* %__self_0_13, i8** %_106, align 1
  %_103.0 = bitcast i8** %_106 to {}*
; call core::fmt::builders::DebugTuple::field
  %_101 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_103.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %25)
  %26 = bitcast i8** %_112 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %26)
  store i8* %__self_0_14, i8** %_112, align 1
  %_109.0 = bitcast i8** %_112 to {}*
; call core::fmt::builders::DebugTuple::field
  %_107 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_109.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %26)
  %27 = bitcast i8** %_118 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %27)
  store i8* %__self_0_15, i8** %_118, align 1
  %_115.0 = bitcast i8** %_118 to {}*
; call core::fmt::builders::DebugTuple::field
  %_113 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_115.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %27)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %28 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %28, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %29 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %29, align 1, !alias.scope !6314, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6317, !noalias !6314
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %30 = icmp eq i32 %_2.i.i.i.i.i, 0
  %31 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %30, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %32 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %31, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %32, align 1, !noalias !6320, !nonnull !568
  %33 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %31, i16 0, i32 11, i32 1
  %34 = bitcast [3 x i16]** %33 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %34, align 1, !noalias !6320, !nonnull !568
  %35 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %36 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %35, align 1, !invariant.load !568, !noalias !6320, !nonnull !568
  %37 = call zeroext addrspace(1) i1 %36({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %37, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %38 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %38, align 1, !noalias !6323, !nonnull !568
  %39 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %40 = bitcast [3 x i16]** %39 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %40, align 1, !noalias !6323, !nonnull !568
  %41 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %42 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %41, align 1, !invariant.load !568, !noalias !6323, !nonnull !568
  %43 = call zeroext addrspace(1) i1 %42({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %43 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %44 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %45 = icmp ne i8 %44, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %45
}

; <core::core_arch::simd::i16x8 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..core_arch..simd..i16x8$u20$as$u20$core..fmt..Debug$GT$3fmt17ha5ef83f5441ef28bE"(<8 x i16>* noalias readonly align 16 dereferenceable(16) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_62 = alloca i16*, align 1
  %_56 = alloca i16*, align 1
  %_50 = alloca i16*, align 1
  %_44 = alloca i16*, align 1
  %_38 = alloca i16*, align 1
  %_32 = alloca i16*, align 1
  %_26 = alloca i16*, align 1
  %_20 = alloca i16*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <8 x i16>, <8 x i16>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <8 x i16>, <8 x i16>* %self, i16 0, i16 1
  %__self_0_2 = getelementptr inbounds <8 x i16>, <8 x i16>* %self, i16 0, i16 2
  %__self_0_3 = getelementptr inbounds <8 x i16>, <8 x i16>* %self, i16 0, i16 3
  %__self_0_4 = getelementptr inbounds <8 x i16>, <8 x i16>* %self, i16 0, i16 4
  %__self_0_5 = getelementptr inbounds <8 x i16>, <8 x i16>* %self, i16 0, i16 5
  %__self_0_6 = getelementptr inbounds <8 x i16>, <8 x i16>* %self, i16 0, i16 6
  %__self_0_7 = getelementptr inbounds <8 x i16>, <8 x i16>* %self, i16 0, i16 7
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6326, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6326, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6326, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19265 to [0 x i8]*), i16 5), !noalias !6335
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6335, !noalias !6336
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6335, !noalias !6336
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6335, !noalias !6336
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6335, !noalias !6336
  %12 = bitcast i16** %_20 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i16* %__self_0_0, i16** %_20, align 1
  %_17.0 = bitcast i16** %_20 to {}*
; call core::fmt::builders::DebugTuple::field
  %_15 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_17.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i16** %_26 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i16* %__self_0_1, i16** %_26, align 1
  %_23.0 = bitcast i16** %_26 to {}*
; call core::fmt::builders::DebugTuple::field
  %_21 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_23.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast i16** %_32 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store i16* %__self_0_2, i16** %_32, align 1
  %_29.0 = bitcast i16** %_32 to {}*
; call core::fmt::builders::DebugTuple::field
  %_27 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_29.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast i16** %_38 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15)
  store i16* %__self_0_3, i16** %_38, align 1
  %_35.0 = bitcast i16** %_38 to {}*
; call core::fmt::builders::DebugTuple::field
  %_33 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_35.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15)
  %16 = bitcast i16** %_44 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %16)
  store i16* %__self_0_4, i16** %_44, align 1
  %_41.0 = bitcast i16** %_44 to {}*
; call core::fmt::builders::DebugTuple::field
  %_39 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_41.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %16)
  %17 = bitcast i16** %_50 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %17)
  store i16* %__self_0_5, i16** %_50, align 1
  %_47.0 = bitcast i16** %_50 to {}*
; call core::fmt::builders::DebugTuple::field
  %_45 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_47.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %17)
  %18 = bitcast i16** %_56 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %18)
  store i16* %__self_0_6, i16** %_56, align 1
  %_53.0 = bitcast i16** %_56 to {}*
; call core::fmt::builders::DebugTuple::field
  %_51 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_53.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %18)
  %19 = bitcast i16** %_62 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %19)
  store i16* %__self_0_7, i16** %_62, align 1
  %_59.0 = bitcast i16** %_62 to {}*
; call core::fmt::builders::DebugTuple::field
  %_57 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_59.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %19)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %20 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %20, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %21 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %21, align 1, !alias.scope !6337, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6340, !noalias !6337
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %22 = icmp eq i32 %_2.i.i.i.i.i, 0
  %23 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %22, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %23, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %24, align 1, !noalias !6343, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %23, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %26, align 1, !noalias !6343, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %28 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !6343, !nonnull !568
  %29 = call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %29, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %30 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %30, align 1, !noalias !6346, !nonnull !568
  %31 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %32 = bitcast [3 x i16]** %31 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %32, align 1, !noalias !6346, !nonnull !568
  %33 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %34 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %33, align 1, !invariant.load !568, !noalias !6346, !nonnull !568
  %35 = call zeroext addrspace(1) i1 %34({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %35 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %36 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %37 = icmp ne i8 %36, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %37
}

; <core::core_arch::simd::i32x4 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..core_arch..simd..i32x4$u20$as$u20$core..fmt..Debug$GT$3fmt17h5345dd88810b19aaE"(<4 x i32>* noalias readonly align 16 dereferenceable(16) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_34 = alloca i32*, align 1
  %_28 = alloca i32*, align 1
  %_22 = alloca i32*, align 1
  %_16 = alloca i32*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <4 x i32>, <4 x i32>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <4 x i32>, <4 x i32>* %self, i16 0, i16 1
  %__self_0_2 = getelementptr inbounds <4 x i32>, <4 x i32>* %self, i16 0, i16 2
  %__self_0_3 = getelementptr inbounds <4 x i32>, <4 x i32>* %self, i16 0, i16 3
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6349, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6349, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6349, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19266 to [0 x i8]*), i16 5), !noalias !6358
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6358, !noalias !6359
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6358, !noalias !6359
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6358, !noalias !6359
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6358, !noalias !6359
  %12 = bitcast i32** %_16 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i32* %__self_0_0, i32** %_16, align 1
  %_13.0 = bitcast i32** %_16 to {}*
; call core::fmt::builders::DebugTuple::field
  %_11 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_13.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i32** %_22 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i32* %__self_0_1, i32** %_22, align 1
  %_19.0 = bitcast i32** %_22 to {}*
; call core::fmt::builders::DebugTuple::field
  %_17 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_19.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast i32** %_28 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store i32* %__self_0_2, i32** %_28, align 1
  %_25.0 = bitcast i32** %_28 to {}*
; call core::fmt::builders::DebugTuple::field
  %_23 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_25.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast i32** %_34 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15)
  store i32* %__self_0_3, i32** %_34, align 1
  %_31.0 = bitcast i32** %_34 to {}*
; call core::fmt::builders::DebugTuple::field
  %_29 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_31.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %16 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %16, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %17 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %17, align 1, !alias.scope !6360, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6363, !noalias !6360
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %18 = icmp eq i32 %_2.i.i.i.i.i, 0
  %19 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %18, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %19, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %20, align 1, !noalias !6366, !nonnull !568
  %21 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %19, i16 0, i32 11, i32 1
  %22 = bitcast [3 x i16]** %21 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %22, align 1, !noalias !6366, !nonnull !568
  %23 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %24 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %23, align 1, !invariant.load !568, !noalias !6366, !nonnull !568
  %25 = call zeroext addrspace(1) i1 %24({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %25, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %26 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %26, align 1, !noalias !6369, !nonnull !568
  %27 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %28 = bitcast [3 x i16]** %27 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %28, align 1, !noalias !6369, !nonnull !568
  %29 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %30 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %29, align 1, !invariant.load !568, !noalias !6369, !nonnull !568
  %31 = call zeroext addrspace(1) i1 %30({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %31 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %32 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %33 = icmp ne i8 %32, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %33
}

; <core::core_arch::simd::i64x2 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..core_arch..simd..i64x2$u20$as$u20$core..fmt..Debug$GT$3fmt17hed0bdc93ea7ed9c1E"(<2 x i64>* noalias readonly align 16 dereferenceable(16) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_20 = alloca i64*, align 1
  %_14 = alloca i64*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <2 x i64>, <2 x i64>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <2 x i64>, <2 x i64>* %self, i16 0, i16 1
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6372, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6372, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6372, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19267 to [0 x i8]*), i16 5), !noalias !6381
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6381, !noalias !6382
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6381, !noalias !6382
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6381, !noalias !6382
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6381, !noalias !6382
  %12 = bitcast i64** %_14 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i64* %__self_0_0, i64** %_14, align 1
  %_11.0 = bitcast i64** %_14 to {}*
; call core::fmt::builders::DebugTuple::field
  %_9 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_11.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.u to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i64** %_20 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i64* %__self_0_1, i64** %_20, align 1
  %_17.0 = bitcast i64** %_20 to {}*
; call core::fmt::builders::DebugTuple::field
  %_15 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_17.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.u to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %14 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %14, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %15 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %15, align 1, !alias.scope !6383, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6386, !noalias !6383
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %16 = icmp eq i32 %_2.i.i.i.i.i, 0
  %17 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %16, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %18, align 1, !noalias !6389, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !noalias !6389, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !noalias !6389, !nonnull !568
  %23 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %23, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %24, align 1, !noalias !6392, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %26, align 1, !noalias !6392, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %28 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !6392, !nonnull !568
  %29 = call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %29 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %30 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %31 = icmp ne i8 %30, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %31
}

; <core::core_arch::simd::f32x4 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..core_arch..simd..f32x4$u20$as$u20$core..fmt..Debug$GT$3fmt17hb0ebeeb0d1bad536E"(<4 x float>* noalias readonly align 16 dereferenceable(16) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_34 = alloca float*, align 1
  %_28 = alloca float*, align 1
  %_22 = alloca float*, align 1
  %_16 = alloca float*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <4 x float>, <4 x float>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <4 x float>, <4 x float>* %self, i16 0, i16 1
  %__self_0_2 = getelementptr inbounds <4 x float>, <4 x float>* %self, i16 0, i16 2
  %__self_0_3 = getelementptr inbounds <4 x float>, <4 x float>* %self, i16 0, i16 3
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6395, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6395, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6395, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19268 to [0 x i8]*), i16 5), !noalias !6404
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6404, !noalias !6405
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6404, !noalias !6405
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6404, !noalias !6405
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6404, !noalias !6405
  %12 = bitcast float** %_16 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store float* %__self_0_0, float** %_16, align 1
  %_13.0 = bitcast float** %_16 to {}*
; call core::fmt::builders::DebugTuple::field
  %_11 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_13.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (float**) addrspace(1)*, i16, i16, i1 (float**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1O to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast float** %_22 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store float* %__self_0_1, float** %_22, align 1
  %_19.0 = bitcast float** %_22 to {}*
; call core::fmt::builders::DebugTuple::field
  %_17 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_19.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (float**) addrspace(1)*, i16, i16, i1 (float**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1O to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast float** %_28 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store float* %__self_0_2, float** %_28, align 1
  %_25.0 = bitcast float** %_28 to {}*
; call core::fmt::builders::DebugTuple::field
  %_23 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_25.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (float**) addrspace(1)*, i16, i16, i1 (float**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1O to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast float** %_34 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15)
  store float* %__self_0_3, float** %_34, align 1
  %_31.0 = bitcast float** %_34 to {}*
; call core::fmt::builders::DebugTuple::field
  %_29 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_31.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (float**) addrspace(1)*, i16, i16, i1 (float**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1O to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %16 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %16, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %17 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %17, align 1, !alias.scope !6406, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6409, !noalias !6406
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %18 = icmp eq i32 %_2.i.i.i.i.i, 0
  %19 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %18, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %19, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %20, align 1, !noalias !6412, !nonnull !568
  %21 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %19, i16 0, i32 11, i32 1
  %22 = bitcast [3 x i16]** %21 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %22, align 1, !noalias !6412, !nonnull !568
  %23 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %24 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %23, align 1, !invariant.load !568, !noalias !6412, !nonnull !568
  %25 = call zeroext addrspace(1) i1 %24({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %25, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %26 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %26, align 1, !noalias !6415, !nonnull !568
  %27 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %28 = bitcast [3 x i16]** %27 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %28, align 1, !noalias !6415, !nonnull !568
  %29 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %30 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %29, align 1, !invariant.load !568, !noalias !6415, !nonnull !568
  %31 = call zeroext addrspace(1) i1 %30({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %31 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %32 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %33 = icmp ne i8 %32, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %33
}

; <core::core_arch::simd::f64x2 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..core_arch..simd..f64x2$u20$as$u20$core..fmt..Debug$GT$3fmt17h57705a6880e76354E"(<2 x double>* noalias readonly align 16 dereferenceable(16) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_20 = alloca double*, align 1
  %_14 = alloca double*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <2 x double>, <2 x double>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <2 x double>, <2 x double>* %self, i16 0, i16 1
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6418, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6418, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6418, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19269 to [0 x i8]*), i16 5), !noalias !6427
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6427, !noalias !6428
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6427, !noalias !6428
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6427, !noalias !6428
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6427, !noalias !6428
  %12 = bitcast double** %_14 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store double* %__self_0_0, double** %_14, align 1
  %_11.0 = bitcast double** %_14 to {}*
; call core::fmt::builders::DebugTuple::field
  %_9 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_11.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (double**) addrspace(1)*, i16, i16, i1 (double**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1P to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast double** %_20 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store double* %__self_0_1, double** %_20, align 1
  %_17.0 = bitcast double** %_20 to {}*
; call core::fmt::builders::DebugTuple::field
  %_15 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_17.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (double**) addrspace(1)*, i16, i16, i1 (double**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1P to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %14 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %14, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %15 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %15, align 1, !alias.scope !6429, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6432, !noalias !6429
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %16 = icmp eq i32 %_2.i.i.i.i.i, 0
  %17 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %16, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %18, align 1, !noalias !6435, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !noalias !6435, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !noalias !6435, !nonnull !568
  %23 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %23, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %24, align 1, !noalias !6438, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %26, align 1, !noalias !6438, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %28 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !6438, !nonnull !568
  %29 = call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %29 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %30 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %31 = icmp ne i8 %30, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %31
}

; <core::core_arch::simd::m8x16 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..core_arch..simd..m8x16$u20$as$u20$core..fmt..Debug$GT$3fmt17heba3e5428cf6bf39E"(<16 x i8>* noalias readonly align 16 dereferenceable(16) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_118 = alloca i8*, align 1
  %_112 = alloca i8*, align 1
  %_106 = alloca i8*, align 1
  %_100 = alloca i8*, align 1
  %_94 = alloca i8*, align 1
  %_88 = alloca i8*, align 1
  %_82 = alloca i8*, align 1
  %_76 = alloca i8*, align 1
  %_70 = alloca i8*, align 1
  %_64 = alloca i8*, align 1
  %_58 = alloca i8*, align 1
  %_52 = alloca i8*, align 1
  %_46 = alloca i8*, align 1
  %_40 = alloca i8*, align 1
  %_34 = alloca i8*, align 1
  %_28 = alloca i8*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 1
  %__self_0_2 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 2
  %__self_0_3 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 3
  %__self_0_4 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 4
  %__self_0_5 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 5
  %__self_0_6 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 6
  %__self_0_7 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 7
  %__self_0_8 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 8
  %__self_0_9 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 9
  %__self_0_10 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 10
  %__self_0_11 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 11
  %__self_0_12 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 12
  %__self_0_13 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 13
  %__self_0_14 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 14
  %__self_0_15 = getelementptr inbounds <16 x i8>, <16 x i8>* %self, i16 0, i16 15
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6441, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6441, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6441, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19270 to [0 x i8]*), i16 5), !noalias !6450
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6450, !noalias !6451
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6450, !noalias !6451
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6450, !noalias !6451
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6450, !noalias !6451
  %12 = bitcast i8** %_28 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i8* %__self_0_0, i8** %_28, align 1
  %_25.0 = bitcast i8** %_28 to {}*
; call core::fmt::builders::DebugTuple::field
  %_23 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_25.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i8** %_34 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i8* %__self_0_1, i8** %_34, align 1
  %_31.0 = bitcast i8** %_34 to {}*
; call core::fmt::builders::DebugTuple::field
  %_29 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_31.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast i8** %_40 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store i8* %__self_0_2, i8** %_40, align 1
  %_37.0 = bitcast i8** %_40 to {}*
; call core::fmt::builders::DebugTuple::field
  %_35 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_37.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast i8** %_46 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15)
  store i8* %__self_0_3, i8** %_46, align 1
  %_43.0 = bitcast i8** %_46 to {}*
; call core::fmt::builders::DebugTuple::field
  %_41 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_43.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15)
  %16 = bitcast i8** %_52 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %16)
  store i8* %__self_0_4, i8** %_52, align 1
  %_49.0 = bitcast i8** %_52 to {}*
; call core::fmt::builders::DebugTuple::field
  %_47 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_49.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %16)
  %17 = bitcast i8** %_58 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %17)
  store i8* %__self_0_5, i8** %_58, align 1
  %_55.0 = bitcast i8** %_58 to {}*
; call core::fmt::builders::DebugTuple::field
  %_53 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_55.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %17)
  %18 = bitcast i8** %_64 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %18)
  store i8* %__self_0_6, i8** %_64, align 1
  %_61.0 = bitcast i8** %_64 to {}*
; call core::fmt::builders::DebugTuple::field
  %_59 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_61.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %18)
  %19 = bitcast i8** %_70 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %19)
  store i8* %__self_0_7, i8** %_70, align 1
  %_67.0 = bitcast i8** %_70 to {}*
; call core::fmt::builders::DebugTuple::field
  %_65 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_67.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %19)
  %20 = bitcast i8** %_76 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %20)
  store i8* %__self_0_8, i8** %_76, align 1
  %_73.0 = bitcast i8** %_76 to {}*
; call core::fmt::builders::DebugTuple::field
  %_71 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_73.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %20)
  %21 = bitcast i8** %_82 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %21)
  store i8* %__self_0_9, i8** %_82, align 1
  %_79.0 = bitcast i8** %_82 to {}*
; call core::fmt::builders::DebugTuple::field
  %_77 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_79.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %21)
  %22 = bitcast i8** %_88 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %22)
  store i8* %__self_0_10, i8** %_88, align 1
  %_85.0 = bitcast i8** %_88 to {}*
; call core::fmt::builders::DebugTuple::field
  %_83 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_85.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %22)
  %23 = bitcast i8** %_94 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %23)
  store i8* %__self_0_11, i8** %_94, align 1
  %_91.0 = bitcast i8** %_94 to {}*
; call core::fmt::builders::DebugTuple::field
  %_89 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_91.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %23)
  %24 = bitcast i8** %_100 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %24)
  store i8* %__self_0_12, i8** %_100, align 1
  %_97.0 = bitcast i8** %_100 to {}*
; call core::fmt::builders::DebugTuple::field
  %_95 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_97.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %24)
  %25 = bitcast i8** %_106 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %25)
  store i8* %__self_0_13, i8** %_106, align 1
  %_103.0 = bitcast i8** %_106 to {}*
; call core::fmt::builders::DebugTuple::field
  %_101 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_103.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %25)
  %26 = bitcast i8** %_112 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %26)
  store i8* %__self_0_14, i8** %_112, align 1
  %_109.0 = bitcast i8** %_112 to {}*
; call core::fmt::builders::DebugTuple::field
  %_107 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_109.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %26)
  %27 = bitcast i8** %_118 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %27)
  store i8* %__self_0_15, i8** %_118, align 1
  %_115.0 = bitcast i8** %_118 to {}*
; call core::fmt::builders::DebugTuple::field
  %_113 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_115.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %27)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %28 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %28, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %29 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %29, align 1, !alias.scope !6452, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6455, !noalias !6452
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %30 = icmp eq i32 %_2.i.i.i.i.i, 0
  %31 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %30, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %32 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %31, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %32, align 1, !noalias !6458, !nonnull !568
  %33 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %31, i16 0, i32 11, i32 1
  %34 = bitcast [3 x i16]** %33 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %34, align 1, !noalias !6458, !nonnull !568
  %35 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %36 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %35, align 1, !invariant.load !568, !noalias !6458, !nonnull !568
  %37 = call zeroext addrspace(1) i1 %36({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %37, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %38 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %38, align 1, !noalias !6461, !nonnull !568
  %39 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %40 = bitcast [3 x i16]** %39 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %40, align 1, !noalias !6461, !nonnull !568
  %41 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %42 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %41, align 1, !invariant.load !568, !noalias !6461, !nonnull !568
  %43 = call zeroext addrspace(1) i1 %42({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %43 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %44 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %45 = icmp ne i8 %44, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %45
}

; <core::core_arch::simd::m16x8 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..core_arch..simd..m16x8$u20$as$u20$core..fmt..Debug$GT$3fmt17hcae1f08b2d63453aE"(<8 x i16>* noalias readonly align 16 dereferenceable(16) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_62 = alloca i16*, align 1
  %_56 = alloca i16*, align 1
  %_50 = alloca i16*, align 1
  %_44 = alloca i16*, align 1
  %_38 = alloca i16*, align 1
  %_32 = alloca i16*, align 1
  %_26 = alloca i16*, align 1
  %_20 = alloca i16*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <8 x i16>, <8 x i16>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <8 x i16>, <8 x i16>* %self, i16 0, i16 1
  %__self_0_2 = getelementptr inbounds <8 x i16>, <8 x i16>* %self, i16 0, i16 2
  %__self_0_3 = getelementptr inbounds <8 x i16>, <8 x i16>* %self, i16 0, i16 3
  %__self_0_4 = getelementptr inbounds <8 x i16>, <8 x i16>* %self, i16 0, i16 4
  %__self_0_5 = getelementptr inbounds <8 x i16>, <8 x i16>* %self, i16 0, i16 5
  %__self_0_6 = getelementptr inbounds <8 x i16>, <8 x i16>* %self, i16 0, i16 6
  %__self_0_7 = getelementptr inbounds <8 x i16>, <8 x i16>* %self, i16 0, i16 7
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6464, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6464, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6464, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19271 to [0 x i8]*), i16 5), !noalias !6473
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6473, !noalias !6474
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6473, !noalias !6474
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6473, !noalias !6474
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6473, !noalias !6474
  %12 = bitcast i16** %_20 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i16* %__self_0_0, i16** %_20, align 1
  %_17.0 = bitcast i16** %_20 to {}*
; call core::fmt::builders::DebugTuple::field
  %_15 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_17.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i16** %_26 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i16* %__self_0_1, i16** %_26, align 1
  %_23.0 = bitcast i16** %_26 to {}*
; call core::fmt::builders::DebugTuple::field
  %_21 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_23.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast i16** %_32 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store i16* %__self_0_2, i16** %_32, align 1
  %_29.0 = bitcast i16** %_32 to {}*
; call core::fmt::builders::DebugTuple::field
  %_27 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_29.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast i16** %_38 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15)
  store i16* %__self_0_3, i16** %_38, align 1
  %_35.0 = bitcast i16** %_38 to {}*
; call core::fmt::builders::DebugTuple::field
  %_33 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_35.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15)
  %16 = bitcast i16** %_44 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %16)
  store i16* %__self_0_4, i16** %_44, align 1
  %_41.0 = bitcast i16** %_44 to {}*
; call core::fmt::builders::DebugTuple::field
  %_39 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_41.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %16)
  %17 = bitcast i16** %_50 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %17)
  store i16* %__self_0_5, i16** %_50, align 1
  %_47.0 = bitcast i16** %_50 to {}*
; call core::fmt::builders::DebugTuple::field
  %_45 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_47.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %17)
  %18 = bitcast i16** %_56 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %18)
  store i16* %__self_0_6, i16** %_56, align 1
  %_53.0 = bitcast i16** %_56 to {}*
; call core::fmt::builders::DebugTuple::field
  %_51 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_53.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %18)
  %19 = bitcast i16** %_62 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %19)
  store i16* %__self_0_7, i16** %_62, align 1
  %_59.0 = bitcast i16** %_62 to {}*
; call core::fmt::builders::DebugTuple::field
  %_57 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_59.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %19)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %20 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %20, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %21 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %21, align 1, !alias.scope !6475, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6478, !noalias !6475
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %22 = icmp eq i32 %_2.i.i.i.i.i, 0
  %23 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %22, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %23, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %24, align 1, !noalias !6481, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %23, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %26, align 1, !noalias !6481, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %28 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !6481, !nonnull !568
  %29 = call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %29, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %30 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %30, align 1, !noalias !6484, !nonnull !568
  %31 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %32 = bitcast [3 x i16]** %31 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %32, align 1, !noalias !6484, !nonnull !568
  %33 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %34 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %33, align 1, !invariant.load !568, !noalias !6484, !nonnull !568
  %35 = call zeroext addrspace(1) i1 %34({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %35 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %36 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %37 = icmp ne i8 %36, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %37
}

; <core::core_arch::simd::m32x4 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..core_arch..simd..m32x4$u20$as$u20$core..fmt..Debug$GT$3fmt17h83987213c3d27886E"(<4 x i32>* noalias readonly align 16 dereferenceable(16) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_34 = alloca i32*, align 1
  %_28 = alloca i32*, align 1
  %_22 = alloca i32*, align 1
  %_16 = alloca i32*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <4 x i32>, <4 x i32>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <4 x i32>, <4 x i32>* %self, i16 0, i16 1
  %__self_0_2 = getelementptr inbounds <4 x i32>, <4 x i32>* %self, i16 0, i16 2
  %__self_0_3 = getelementptr inbounds <4 x i32>, <4 x i32>* %self, i16 0, i16 3
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6487, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6487, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6487, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19272 to [0 x i8]*), i16 5), !noalias !6496
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6496, !noalias !6497
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6496, !noalias !6497
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6496, !noalias !6497
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6496, !noalias !6497
  %12 = bitcast i32** %_16 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i32* %__self_0_0, i32** %_16, align 1
  %_13.0 = bitcast i32** %_16 to {}*
; call core::fmt::builders::DebugTuple::field
  %_11 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_13.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i32** %_22 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i32* %__self_0_1, i32** %_22, align 1
  %_19.0 = bitcast i32** %_22 to {}*
; call core::fmt::builders::DebugTuple::field
  %_17 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_19.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast i32** %_28 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store i32* %__self_0_2, i32** %_28, align 1
  %_25.0 = bitcast i32** %_28 to {}*
; call core::fmt::builders::DebugTuple::field
  %_23 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_25.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast i32** %_34 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15)
  store i32* %__self_0_3, i32** %_34, align 1
  %_31.0 = bitcast i32** %_34 to {}*
; call core::fmt::builders::DebugTuple::field
  %_29 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_31.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %16 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %16, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %17 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %17, align 1, !alias.scope !6498, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6501, !noalias !6498
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %18 = icmp eq i32 %_2.i.i.i.i.i, 0
  %19 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %18, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %19, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %20, align 1, !noalias !6504, !nonnull !568
  %21 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %19, i16 0, i32 11, i32 1
  %22 = bitcast [3 x i16]** %21 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %22, align 1, !noalias !6504, !nonnull !568
  %23 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %24 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %23, align 1, !invariant.load !568, !noalias !6504, !nonnull !568
  %25 = call zeroext addrspace(1) i1 %24({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %25, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %26 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %26, align 1, !noalias !6507, !nonnull !568
  %27 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %28 = bitcast [3 x i16]** %27 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %28, align 1, !noalias !6507, !nonnull !568
  %29 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %30 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %29, align 1, !invariant.load !568, !noalias !6507, !nonnull !568
  %31 = call zeroext addrspace(1) i1 %30({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %31 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %32 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %33 = icmp ne i8 %32, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %33
}

; <core::core_arch::simd::m64x2 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..core_arch..simd..m64x2$u20$as$u20$core..fmt..Debug$GT$3fmt17hd8d6ec3c23ed9867E"(<2 x i64>* noalias readonly align 16 dereferenceable(16) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_20 = alloca i64*, align 1
  %_14 = alloca i64*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <2 x i64>, <2 x i64>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <2 x i64>, <2 x i64>* %self, i16 0, i16 1
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6510, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6510, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6510, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19273 to [0 x i8]*), i16 5), !noalias !6519
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6519, !noalias !6520
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6519, !noalias !6520
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6519, !noalias !6520
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6519, !noalias !6520
  %12 = bitcast i64** %_14 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i64* %__self_0_0, i64** %_14, align 1
  %_11.0 = bitcast i64** %_14 to {}*
; call core::fmt::builders::DebugTuple::field
  %_9 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_11.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.u to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i64** %_20 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i64* %__self_0_1, i64** %_20, align 1
  %_17.0 = bitcast i64** %_20 to {}*
; call core::fmt::builders::DebugTuple::field
  %_15 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_17.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.u to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %14 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %14, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %15 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %15, align 1, !alias.scope !6521, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6524, !noalias !6521
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %16 = icmp eq i32 %_2.i.i.i.i.i, 0
  %17 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %16, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %18 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %18, align 1, !noalias !6527, !nonnull !568
  %19 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %17, i16 0, i32 11, i32 1
  %20 = bitcast [3 x i16]** %19 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %20, align 1, !noalias !6527, !nonnull !568
  %21 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %22 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %21, align 1, !invariant.load !568, !noalias !6527, !nonnull !568
  %23 = call zeroext addrspace(1) i1 %22({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %23, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %24, align 1, !noalias !6530, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %26, align 1, !noalias !6530, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %28 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !6530, !nonnull !568
  %29 = call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %29 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %30 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %31 = icmp ne i8 %30, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %31
}

; <core::core_arch::simd::u8x32 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..core_arch..simd..u8x32$u20$as$u20$core..fmt..Debug$GT$3fmt17h46327b169956d8d4E"(<32 x i8>* noalias readonly align 32 dereferenceable(32) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_230 = alloca i8*, align 1
  %_224 = alloca i8*, align 1
  %_218 = alloca i8*, align 1
  %_212 = alloca i8*, align 1
  %_206 = alloca i8*, align 1
  %_200 = alloca i8*, align 1
  %_194 = alloca i8*, align 1
  %_188 = alloca i8*, align 1
  %_182 = alloca i8*, align 1
  %_176 = alloca i8*, align 1
  %_170 = alloca i8*, align 1
  %_164 = alloca i8*, align 1
  %_158 = alloca i8*, align 1
  %_152 = alloca i8*, align 1
  %_146 = alloca i8*, align 1
  %_140 = alloca i8*, align 1
  %_134 = alloca i8*, align 1
  %_128 = alloca i8*, align 1
  %_122 = alloca i8*, align 1
  %_116 = alloca i8*, align 1
  %_110 = alloca i8*, align 1
  %_104 = alloca i8*, align 1
  %_98 = alloca i8*, align 1
  %_92 = alloca i8*, align 1
  %_86 = alloca i8*, align 1
  %_80 = alloca i8*, align 1
  %_74 = alloca i8*, align 1
  %_68 = alloca i8*, align 1
  %_62 = alloca i8*, align 1
  %_56 = alloca i8*, align 1
  %_50 = alloca i8*, align 1
  %_44 = alloca i8*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 1
  %__self_0_2 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 2
  %__self_0_3 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 3
  %__self_0_4 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 4
  %__self_0_5 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 5
  %__self_0_6 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 6
  %__self_0_7 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 7
  %__self_0_8 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 8
  %__self_0_9 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 9
  %__self_0_10 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 10
  %__self_0_11 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 11
  %__self_0_12 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 12
  %__self_0_13 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 13
  %__self_0_14 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 14
  %__self_0_15 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 15
  %__self_0_16 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 16
  %__self_0_17 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 17
  %__self_0_18 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 18
  %__self_0_19 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 19
  %__self_0_20 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 20
  %__self_0_21 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 21
  %__self_0_22 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 22
  %__self_0_23 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 23
  %__self_0_24 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 24
  %__self_0_25 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 25
  %__self_0_26 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 26
  %__self_0_27 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 27
  %__self_0_28 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 28
  %__self_0_29 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 29
  %__self_0_30 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 30
  %__self_0_31 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 31
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6533, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6533, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6533, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19274 to [0 x i8]*), i16 5), !noalias !6542
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6542, !noalias !6543
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6542, !noalias !6543
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6542, !noalias !6543
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6542, !noalias !6543
  %12 = bitcast i8** %_44 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i8* %__self_0_0, i8** %_44, align 1
  %_41.0 = bitcast i8** %_44 to {}*
; call core::fmt::builders::DebugTuple::field
  %_39 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_41.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i8** %_50 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i8* %__self_0_1, i8** %_50, align 1
  %_47.0 = bitcast i8** %_50 to {}*
; call core::fmt::builders::DebugTuple::field
  %_45 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_47.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast i8** %_56 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store i8* %__self_0_2, i8** %_56, align 1
  %_53.0 = bitcast i8** %_56 to {}*
; call core::fmt::builders::DebugTuple::field
  %_51 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_53.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast i8** %_62 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15)
  store i8* %__self_0_3, i8** %_62, align 1
  %_59.0 = bitcast i8** %_62 to {}*
; call core::fmt::builders::DebugTuple::field
  %_57 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_59.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15)
  %16 = bitcast i8** %_68 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %16)
  store i8* %__self_0_4, i8** %_68, align 1
  %_65.0 = bitcast i8** %_68 to {}*
; call core::fmt::builders::DebugTuple::field
  %_63 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_65.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %16)
  %17 = bitcast i8** %_74 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %17)
  store i8* %__self_0_5, i8** %_74, align 1
  %_71.0 = bitcast i8** %_74 to {}*
; call core::fmt::builders::DebugTuple::field
  %_69 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_71.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %17)
  %18 = bitcast i8** %_80 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %18)
  store i8* %__self_0_6, i8** %_80, align 1
  %_77.0 = bitcast i8** %_80 to {}*
; call core::fmt::builders::DebugTuple::field
  %_75 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_77.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %18)
  %19 = bitcast i8** %_86 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %19)
  store i8* %__self_0_7, i8** %_86, align 1
  %_83.0 = bitcast i8** %_86 to {}*
; call core::fmt::builders::DebugTuple::field
  %_81 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_83.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %19)
  %20 = bitcast i8** %_92 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %20)
  store i8* %__self_0_8, i8** %_92, align 1
  %_89.0 = bitcast i8** %_92 to {}*
; call core::fmt::builders::DebugTuple::field
  %_87 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_89.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %20)
  %21 = bitcast i8** %_98 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %21)
  store i8* %__self_0_9, i8** %_98, align 1
  %_95.0 = bitcast i8** %_98 to {}*
; call core::fmt::builders::DebugTuple::field
  %_93 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_95.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %21)
  %22 = bitcast i8** %_104 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %22)
  store i8* %__self_0_10, i8** %_104, align 1
  %_101.0 = bitcast i8** %_104 to {}*
; call core::fmt::builders::DebugTuple::field
  %_99 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_101.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %22)
  %23 = bitcast i8** %_110 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %23)
  store i8* %__self_0_11, i8** %_110, align 1
  %_107.0 = bitcast i8** %_110 to {}*
; call core::fmt::builders::DebugTuple::field
  %_105 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_107.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %23)
  %24 = bitcast i8** %_116 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %24)
  store i8* %__self_0_12, i8** %_116, align 1
  %_113.0 = bitcast i8** %_116 to {}*
; call core::fmt::builders::DebugTuple::field
  %_111 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_113.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %24)
  %25 = bitcast i8** %_122 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %25)
  store i8* %__self_0_13, i8** %_122, align 1
  %_119.0 = bitcast i8** %_122 to {}*
; call core::fmt::builders::DebugTuple::field
  %_117 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_119.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %25)
  %26 = bitcast i8** %_128 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %26)
  store i8* %__self_0_14, i8** %_128, align 1
  %_125.0 = bitcast i8** %_128 to {}*
; call core::fmt::builders::DebugTuple::field
  %_123 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_125.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %26)
  %27 = bitcast i8** %_134 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %27)
  store i8* %__self_0_15, i8** %_134, align 1
  %_131.0 = bitcast i8** %_134 to {}*
; call core::fmt::builders::DebugTuple::field
  %_129 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_131.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %27)
  %28 = bitcast i8** %_140 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %28)
  store i8* %__self_0_16, i8** %_140, align 1
  %_137.0 = bitcast i8** %_140 to {}*
; call core::fmt::builders::DebugTuple::field
  %_135 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_137.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %28)
  %29 = bitcast i8** %_146 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %29)
  store i8* %__self_0_17, i8** %_146, align 1
  %_143.0 = bitcast i8** %_146 to {}*
; call core::fmt::builders::DebugTuple::field
  %_141 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_143.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %29)
  %30 = bitcast i8** %_152 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %30)
  store i8* %__self_0_18, i8** %_152, align 1
  %_149.0 = bitcast i8** %_152 to {}*
; call core::fmt::builders::DebugTuple::field
  %_147 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_149.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %30)
  %31 = bitcast i8** %_158 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %31)
  store i8* %__self_0_19, i8** %_158, align 1
  %_155.0 = bitcast i8** %_158 to {}*
; call core::fmt::builders::DebugTuple::field
  %_153 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_155.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %31)
  %32 = bitcast i8** %_164 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %32)
  store i8* %__self_0_20, i8** %_164, align 1
  %_161.0 = bitcast i8** %_164 to {}*
; call core::fmt::builders::DebugTuple::field
  %_159 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_161.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %32)
  %33 = bitcast i8** %_170 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %33)
  store i8* %__self_0_21, i8** %_170, align 1
  %_167.0 = bitcast i8** %_170 to {}*
; call core::fmt::builders::DebugTuple::field
  %_165 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_167.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %33)
  %34 = bitcast i8** %_176 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %34)
  store i8* %__self_0_22, i8** %_176, align 1
  %_173.0 = bitcast i8** %_176 to {}*
; call core::fmt::builders::DebugTuple::field
  %_171 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_173.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %34)
  %35 = bitcast i8** %_182 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %35)
  store i8* %__self_0_23, i8** %_182, align 1
  %_179.0 = bitcast i8** %_182 to {}*
; call core::fmt::builders::DebugTuple::field
  %_177 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_179.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %35)
  %36 = bitcast i8** %_188 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %36)
  store i8* %__self_0_24, i8** %_188, align 1
  %_185.0 = bitcast i8** %_188 to {}*
; call core::fmt::builders::DebugTuple::field
  %_183 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_185.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %36)
  %37 = bitcast i8** %_194 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %37)
  store i8* %__self_0_25, i8** %_194, align 1
  %_191.0 = bitcast i8** %_194 to {}*
; call core::fmt::builders::DebugTuple::field
  %_189 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_191.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %37)
  %38 = bitcast i8** %_200 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %38)
  store i8* %__self_0_26, i8** %_200, align 1
  %_197.0 = bitcast i8** %_200 to {}*
; call core::fmt::builders::DebugTuple::field
  %_195 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_197.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %38)
  %39 = bitcast i8** %_206 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %39)
  store i8* %__self_0_27, i8** %_206, align 1
  %_203.0 = bitcast i8** %_206 to {}*
; call core::fmt::builders::DebugTuple::field
  %_201 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_203.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %39)
  %40 = bitcast i8** %_212 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %40)
  store i8* %__self_0_28, i8** %_212, align 1
  %_209.0 = bitcast i8** %_212 to {}*
; call core::fmt::builders::DebugTuple::field
  %_207 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_209.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %40)
  %41 = bitcast i8** %_218 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %41)
  store i8* %__self_0_29, i8** %_218, align 1
  %_215.0 = bitcast i8** %_218 to {}*
; call core::fmt::builders::DebugTuple::field
  %_213 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_215.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %41)
  %42 = bitcast i8** %_224 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %42)
  store i8* %__self_0_30, i8** %_224, align 1
  %_221.0 = bitcast i8** %_224 to {}*
; call core::fmt::builders::DebugTuple::field
  %_219 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_221.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %42)
  %43 = bitcast i8** %_230 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %43)
  store i8* %__self_0_31, i8** %_230, align 1
  %_227.0 = bitcast i8** %_230 to {}*
; call core::fmt::builders::DebugTuple::field
  %_225 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_227.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.h to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %43)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %44 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %44, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %45 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %45, align 1, !alias.scope !6544, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6547, !noalias !6544
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %46 = icmp eq i32 %_2.i.i.i.i.i, 0
  %47 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %46, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %48 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %47, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %48, align 1, !noalias !6550, !nonnull !568
  %49 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %47, i16 0, i32 11, i32 1
  %50 = bitcast [3 x i16]** %49 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %50, align 1, !noalias !6550, !nonnull !568
  %51 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %52 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %51, align 1, !invariant.load !568, !noalias !6550, !nonnull !568
  %53 = call zeroext addrspace(1) i1 %52({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %53, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %54 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %54, align 1, !noalias !6553, !nonnull !568
  %55 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %56 = bitcast [3 x i16]** %55 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %56, align 1, !noalias !6553, !nonnull !568
  %57 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %58 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %57, align 1, !invariant.load !568, !noalias !6553, !nonnull !568
  %59 = call zeroext addrspace(1) i1 %58({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %59 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %60 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %61 = icmp ne i8 %60, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %61
}

; <core::core_arch::simd::u16x16 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN66_$LT$core..core_arch..simd..u16x16$u20$as$u20$core..fmt..Debug$GT$3fmt17h5b3a786f3791ee4cE"(<16 x i16>* noalias readonly align 32 dereferenceable(32) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_118 = alloca i16*, align 1
  %_112 = alloca i16*, align 1
  %_106 = alloca i16*, align 1
  %_100 = alloca i16*, align 1
  %_94 = alloca i16*, align 1
  %_88 = alloca i16*, align 1
  %_82 = alloca i16*, align 1
  %_76 = alloca i16*, align 1
  %_70 = alloca i16*, align 1
  %_64 = alloca i16*, align 1
  %_58 = alloca i16*, align 1
  %_52 = alloca i16*, align 1
  %_46 = alloca i16*, align 1
  %_40 = alloca i16*, align 1
  %_34 = alloca i16*, align 1
  %_28 = alloca i16*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <16 x i16>, <16 x i16>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <16 x i16>, <16 x i16>* %self, i16 0, i16 1
  %__self_0_2 = getelementptr inbounds <16 x i16>, <16 x i16>* %self, i16 0, i16 2
  %__self_0_3 = getelementptr inbounds <16 x i16>, <16 x i16>* %self, i16 0, i16 3
  %__self_0_4 = getelementptr inbounds <16 x i16>, <16 x i16>* %self, i16 0, i16 4
  %__self_0_5 = getelementptr inbounds <16 x i16>, <16 x i16>* %self, i16 0, i16 5
  %__self_0_6 = getelementptr inbounds <16 x i16>, <16 x i16>* %self, i16 0, i16 6
  %__self_0_7 = getelementptr inbounds <16 x i16>, <16 x i16>* %self, i16 0, i16 7
  %__self_0_8 = getelementptr inbounds <16 x i16>, <16 x i16>* %self, i16 0, i16 8
  %__self_0_9 = getelementptr inbounds <16 x i16>, <16 x i16>* %self, i16 0, i16 9
  %__self_0_10 = getelementptr inbounds <16 x i16>, <16 x i16>* %self, i16 0, i16 10
  %__self_0_11 = getelementptr inbounds <16 x i16>, <16 x i16>* %self, i16 0, i16 11
  %__self_0_12 = getelementptr inbounds <16 x i16>, <16 x i16>* %self, i16 0, i16 12
  %__self_0_13 = getelementptr inbounds <16 x i16>, <16 x i16>* %self, i16 0, i16 13
  %__self_0_14 = getelementptr inbounds <16 x i16>, <16 x i16>* %self, i16 0, i16 14
  %__self_0_15 = getelementptr inbounds <16 x i16>, <16 x i16>* %self, i16 0, i16 15
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6556, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6556, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6556, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc19275 to [0 x i8]*), i16 6), !noalias !6565
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6565, !noalias !6566
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6565, !noalias !6566
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6565, !noalias !6566
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6565, !noalias !6566
  %12 = bitcast i16** %_28 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i16* %__self_0_0, i16** %_28, align 1
  %_25.0 = bitcast i16** %_28 to {}*
; call core::fmt::builders::DebugTuple::field
  %_23 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_25.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.B to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i16** %_34 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i16* %__self_0_1, i16** %_34, align 1
  %_31.0 = bitcast i16** %_34 to {}*
; call core::fmt::builders::DebugTuple::field
  %_29 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_31.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.B to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast i16** %_40 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store i16* %__self_0_2, i16** %_40, align 1
  %_37.0 = bitcast i16** %_40 to {}*
; call core::fmt::builders::DebugTuple::field
  %_35 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_37.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.B to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast i16** %_46 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15)
  store i16* %__self_0_3, i16** %_46, align 1
  %_43.0 = bitcast i16** %_46 to {}*
; call core::fmt::builders::DebugTuple::field
  %_41 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_43.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.B to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15)
  %16 = bitcast i16** %_52 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %16)
  store i16* %__self_0_4, i16** %_52, align 1
  %_49.0 = bitcast i16** %_52 to {}*
; call core::fmt::builders::DebugTuple::field
  %_47 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_49.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.B to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %16)
  %17 = bitcast i16** %_58 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %17)
  store i16* %__self_0_5, i16** %_58, align 1
  %_55.0 = bitcast i16** %_58 to {}*
; call core::fmt::builders::DebugTuple::field
  %_53 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_55.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.B to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %17)
  %18 = bitcast i16** %_64 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %18)
  store i16* %__self_0_6, i16** %_64, align 1
  %_61.0 = bitcast i16** %_64 to {}*
; call core::fmt::builders::DebugTuple::field
  %_59 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_61.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.B to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %18)
  %19 = bitcast i16** %_70 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %19)
  store i16* %__self_0_7, i16** %_70, align 1
  %_67.0 = bitcast i16** %_70 to {}*
; call core::fmt::builders::DebugTuple::field
  %_65 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_67.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.B to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %19)
  %20 = bitcast i16** %_76 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %20)
  store i16* %__self_0_8, i16** %_76, align 1
  %_73.0 = bitcast i16** %_76 to {}*
; call core::fmt::builders::DebugTuple::field
  %_71 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_73.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.B to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %20)
  %21 = bitcast i16** %_82 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %21)
  store i16* %__self_0_9, i16** %_82, align 1
  %_79.0 = bitcast i16** %_82 to {}*
; call core::fmt::builders::DebugTuple::field
  %_77 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_79.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.B to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %21)
  %22 = bitcast i16** %_88 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %22)
  store i16* %__self_0_10, i16** %_88, align 1
  %_85.0 = bitcast i16** %_88 to {}*
; call core::fmt::builders::DebugTuple::field
  %_83 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_85.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.B to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %22)
  %23 = bitcast i16** %_94 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %23)
  store i16* %__self_0_11, i16** %_94, align 1
  %_91.0 = bitcast i16** %_94 to {}*
; call core::fmt::builders::DebugTuple::field
  %_89 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_91.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.B to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %23)
  %24 = bitcast i16** %_100 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %24)
  store i16* %__self_0_12, i16** %_100, align 1
  %_97.0 = bitcast i16** %_100 to {}*
; call core::fmt::builders::DebugTuple::field
  %_95 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_97.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.B to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %24)
  %25 = bitcast i16** %_106 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %25)
  store i16* %__self_0_13, i16** %_106, align 1
  %_103.0 = bitcast i16** %_106 to {}*
; call core::fmt::builders::DebugTuple::field
  %_101 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_103.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.B to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %25)
  %26 = bitcast i16** %_112 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %26)
  store i16* %__self_0_14, i16** %_112, align 1
  %_109.0 = bitcast i16** %_112 to {}*
; call core::fmt::builders::DebugTuple::field
  %_107 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_109.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.B to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %26)
  %27 = bitcast i16** %_118 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %27)
  store i16* %__self_0_15, i16** %_118, align 1
  %_115.0 = bitcast i16** %_118 to {}*
; call core::fmt::builders::DebugTuple::field
  %_113 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_115.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.B to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %27)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %28 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %28, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %29 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %29, align 1, !alias.scope !6567, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6570, !noalias !6567
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %30 = icmp eq i32 %_2.i.i.i.i.i, 0
  %31 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %30, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %32 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %31, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %32, align 1, !noalias !6573, !nonnull !568
  %33 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %31, i16 0, i32 11, i32 1
  %34 = bitcast [3 x i16]** %33 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %34, align 1, !noalias !6573, !nonnull !568
  %35 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %36 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %35, align 1, !invariant.load !568, !noalias !6573, !nonnull !568
  %37 = call zeroext addrspace(1) i1 %36({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %37, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %38 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %38, align 1, !noalias !6576, !nonnull !568
  %39 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %40 = bitcast [3 x i16]** %39 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %40, align 1, !noalias !6576, !nonnull !568
  %41 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %42 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %41, align 1, !invariant.load !568, !noalias !6576, !nonnull !568
  %43 = call zeroext addrspace(1) i1 %42({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %43 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %44 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %45 = icmp ne i8 %44, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %45
}

; <core::core_arch::simd::u32x8 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..core_arch..simd..u32x8$u20$as$u20$core..fmt..Debug$GT$3fmt17h2040657babef3680E"(<8 x i32>* noalias readonly align 32 dereferenceable(32) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_62 = alloca i32*, align 1
  %_56 = alloca i32*, align 1
  %_50 = alloca i32*, align 1
  %_44 = alloca i32*, align 1
  %_38 = alloca i32*, align 1
  %_32 = alloca i32*, align 1
  %_26 = alloca i32*, align 1
  %_20 = alloca i32*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <8 x i32>, <8 x i32>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <8 x i32>, <8 x i32>* %self, i16 0, i16 1
  %__self_0_2 = getelementptr inbounds <8 x i32>, <8 x i32>* %self, i16 0, i16 2
  %__self_0_3 = getelementptr inbounds <8 x i32>, <8 x i32>* %self, i16 0, i16 3
  %__self_0_4 = getelementptr inbounds <8 x i32>, <8 x i32>* %self, i16 0, i16 4
  %__self_0_5 = getelementptr inbounds <8 x i32>, <8 x i32>* %self, i16 0, i16 5
  %__self_0_6 = getelementptr inbounds <8 x i32>, <8 x i32>* %self, i16 0, i16 6
  %__self_0_7 = getelementptr inbounds <8 x i32>, <8 x i32>* %self, i16 0, i16 7
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6579, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6579, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6579, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19276 to [0 x i8]*), i16 5), !noalias !6588
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6588, !noalias !6589
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6588, !noalias !6589
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6588, !noalias !6589
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6588, !noalias !6589
  %12 = bitcast i32** %_20 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i32* %__self_0_0, i32** %_20, align 1
  %_17.0 = bitcast i32** %_20 to {}*
; call core::fmt::builders::DebugTuple::field
  %_15 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_17.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1e to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i32** %_26 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i32* %__self_0_1, i32** %_26, align 1
  %_23.0 = bitcast i32** %_26 to {}*
; call core::fmt::builders::DebugTuple::field
  %_21 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_23.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1e to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast i32** %_32 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store i32* %__self_0_2, i32** %_32, align 1
  %_29.0 = bitcast i32** %_32 to {}*
; call core::fmt::builders::DebugTuple::field
  %_27 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_29.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1e to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast i32** %_38 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15)
  store i32* %__self_0_3, i32** %_38, align 1
  %_35.0 = bitcast i32** %_38 to {}*
; call core::fmt::builders::DebugTuple::field
  %_33 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_35.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1e to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15)
  %16 = bitcast i32** %_44 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %16)
  store i32* %__self_0_4, i32** %_44, align 1
  %_41.0 = bitcast i32** %_44 to {}*
; call core::fmt::builders::DebugTuple::field
  %_39 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_41.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1e to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %16)
  %17 = bitcast i32** %_50 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %17)
  store i32* %__self_0_5, i32** %_50, align 1
  %_47.0 = bitcast i32** %_50 to {}*
; call core::fmt::builders::DebugTuple::field
  %_45 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_47.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1e to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %17)
  %18 = bitcast i32** %_56 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %18)
  store i32* %__self_0_6, i32** %_56, align 1
  %_53.0 = bitcast i32** %_56 to {}*
; call core::fmt::builders::DebugTuple::field
  %_51 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_53.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1e to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %18)
  %19 = bitcast i32** %_62 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %19)
  store i32* %__self_0_7, i32** %_62, align 1
  %_59.0 = bitcast i32** %_62 to {}*
; call core::fmt::builders::DebugTuple::field
  %_57 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_59.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1e to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %19)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %20 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %20, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %21 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %21, align 1, !alias.scope !6590, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6593, !noalias !6590
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %22 = icmp eq i32 %_2.i.i.i.i.i, 0
  %23 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %22, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %23, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %24, align 1, !noalias !6596, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %23, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %26, align 1, !noalias !6596, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %28 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !6596, !nonnull !568
  %29 = call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %29, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %30 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %30, align 1, !noalias !6599, !nonnull !568
  %31 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %32 = bitcast [3 x i16]** %31 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %32, align 1, !noalias !6599, !nonnull !568
  %33 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %34 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %33, align 1, !invariant.load !568, !noalias !6599, !nonnull !568
  %35 = call zeroext addrspace(1) i1 %34({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %35 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %36 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %37 = icmp ne i8 %36, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %37
}

; <core::core_arch::simd::u64x4 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..core_arch..simd..u64x4$u20$as$u20$core..fmt..Debug$GT$3fmt17h449423b002829969E"(<4 x i64>* noalias readonly align 32 dereferenceable(32) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_34 = alloca i64*, align 1
  %_28 = alloca i64*, align 1
  %_22 = alloca i64*, align 1
  %_16 = alloca i64*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <4 x i64>, <4 x i64>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <4 x i64>, <4 x i64>* %self, i16 0, i16 1
  %__self_0_2 = getelementptr inbounds <4 x i64>, <4 x i64>* %self, i16 0, i16 2
  %__self_0_3 = getelementptr inbounds <4 x i64>, <4 x i64>* %self, i16 0, i16 3
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6602, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6602, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6602, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19277 to [0 x i8]*), i16 5), !noalias !6611
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6611, !noalias !6612
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6611, !noalias !6612
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6611, !noalias !6612
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6611, !noalias !6612
  %12 = bitcast i64** %_16 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i64* %__self_0_0, i64** %_16, align 1
  %_13.0 = bitcast i64** %_16 to {}*
; call core::fmt::builders::DebugTuple::field
  %_11 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_13.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.w to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i64** %_22 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i64* %__self_0_1, i64** %_22, align 1
  %_19.0 = bitcast i64** %_22 to {}*
; call core::fmt::builders::DebugTuple::field
  %_17 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_19.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.w to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast i64** %_28 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store i64* %__self_0_2, i64** %_28, align 1
  %_25.0 = bitcast i64** %_28 to {}*
; call core::fmt::builders::DebugTuple::field
  %_23 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_25.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.w to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast i64** %_34 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15)
  store i64* %__self_0_3, i64** %_34, align 1
  %_31.0 = bitcast i64** %_34 to {}*
; call core::fmt::builders::DebugTuple::field
  %_29 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_31.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.w to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %16 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %16, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %17 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %17, align 1, !alias.scope !6613, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6616, !noalias !6613
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %18 = icmp eq i32 %_2.i.i.i.i.i, 0
  %19 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %18, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %19, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %20, align 1, !noalias !6619, !nonnull !568
  %21 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %19, i16 0, i32 11, i32 1
  %22 = bitcast [3 x i16]** %21 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %22, align 1, !noalias !6619, !nonnull !568
  %23 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %24 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %23, align 1, !invariant.load !568, !noalias !6619, !nonnull !568
  %25 = call zeroext addrspace(1) i1 %24({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %25, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %26 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %26, align 1, !noalias !6622, !nonnull !568
  %27 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %28 = bitcast [3 x i16]** %27 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %28, align 1, !noalias !6622, !nonnull !568
  %29 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %30 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %29, align 1, !invariant.load !568, !noalias !6622, !nonnull !568
  %31 = call zeroext addrspace(1) i1 %30({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %31 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %32 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %33 = icmp ne i8 %32, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %33
}

; <core::core_arch::simd::i8x32 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..core_arch..simd..i8x32$u20$as$u20$core..fmt..Debug$GT$3fmt17h25ccd0bf4e53c2bfE"(<32 x i8>* noalias readonly align 32 dereferenceable(32) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_230 = alloca i8*, align 1
  %_224 = alloca i8*, align 1
  %_218 = alloca i8*, align 1
  %_212 = alloca i8*, align 1
  %_206 = alloca i8*, align 1
  %_200 = alloca i8*, align 1
  %_194 = alloca i8*, align 1
  %_188 = alloca i8*, align 1
  %_182 = alloca i8*, align 1
  %_176 = alloca i8*, align 1
  %_170 = alloca i8*, align 1
  %_164 = alloca i8*, align 1
  %_158 = alloca i8*, align 1
  %_152 = alloca i8*, align 1
  %_146 = alloca i8*, align 1
  %_140 = alloca i8*, align 1
  %_134 = alloca i8*, align 1
  %_128 = alloca i8*, align 1
  %_122 = alloca i8*, align 1
  %_116 = alloca i8*, align 1
  %_110 = alloca i8*, align 1
  %_104 = alloca i8*, align 1
  %_98 = alloca i8*, align 1
  %_92 = alloca i8*, align 1
  %_86 = alloca i8*, align 1
  %_80 = alloca i8*, align 1
  %_74 = alloca i8*, align 1
  %_68 = alloca i8*, align 1
  %_62 = alloca i8*, align 1
  %_56 = alloca i8*, align 1
  %_50 = alloca i8*, align 1
  %_44 = alloca i8*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 1
  %__self_0_2 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 2
  %__self_0_3 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 3
  %__self_0_4 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 4
  %__self_0_5 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 5
  %__self_0_6 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 6
  %__self_0_7 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 7
  %__self_0_8 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 8
  %__self_0_9 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 9
  %__self_0_10 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 10
  %__self_0_11 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 11
  %__self_0_12 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 12
  %__self_0_13 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 13
  %__self_0_14 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 14
  %__self_0_15 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 15
  %__self_0_16 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 16
  %__self_0_17 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 17
  %__self_0_18 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 18
  %__self_0_19 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 19
  %__self_0_20 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 20
  %__self_0_21 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 21
  %__self_0_22 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 22
  %__self_0_23 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 23
  %__self_0_24 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 24
  %__self_0_25 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 25
  %__self_0_26 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 26
  %__self_0_27 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 27
  %__self_0_28 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 28
  %__self_0_29 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 29
  %__self_0_30 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 30
  %__self_0_31 = getelementptr inbounds <32 x i8>, <32 x i8>* %self, i16 0, i16 31
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6625, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6625, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6625, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19278 to [0 x i8]*), i16 5), !noalias !6634
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6634, !noalias !6635
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6634, !noalias !6635
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6634, !noalias !6635
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6634, !noalias !6635
  %12 = bitcast i8** %_44 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i8* %__self_0_0, i8** %_44, align 1
  %_41.0 = bitcast i8** %_44 to {}*
; call core::fmt::builders::DebugTuple::field
  %_39 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_41.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i8** %_50 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i8* %__self_0_1, i8** %_50, align 1
  %_47.0 = bitcast i8** %_50 to {}*
; call core::fmt::builders::DebugTuple::field
  %_45 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_47.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast i8** %_56 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store i8* %__self_0_2, i8** %_56, align 1
  %_53.0 = bitcast i8** %_56 to {}*
; call core::fmt::builders::DebugTuple::field
  %_51 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_53.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast i8** %_62 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15)
  store i8* %__self_0_3, i8** %_62, align 1
  %_59.0 = bitcast i8** %_62 to {}*
; call core::fmt::builders::DebugTuple::field
  %_57 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_59.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15)
  %16 = bitcast i8** %_68 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %16)
  store i8* %__self_0_4, i8** %_68, align 1
  %_65.0 = bitcast i8** %_68 to {}*
; call core::fmt::builders::DebugTuple::field
  %_63 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_65.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %16)
  %17 = bitcast i8** %_74 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %17)
  store i8* %__self_0_5, i8** %_74, align 1
  %_71.0 = bitcast i8** %_74 to {}*
; call core::fmt::builders::DebugTuple::field
  %_69 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_71.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %17)
  %18 = bitcast i8** %_80 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %18)
  store i8* %__self_0_6, i8** %_80, align 1
  %_77.0 = bitcast i8** %_80 to {}*
; call core::fmt::builders::DebugTuple::field
  %_75 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_77.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %18)
  %19 = bitcast i8** %_86 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %19)
  store i8* %__self_0_7, i8** %_86, align 1
  %_83.0 = bitcast i8** %_86 to {}*
; call core::fmt::builders::DebugTuple::field
  %_81 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_83.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %19)
  %20 = bitcast i8** %_92 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %20)
  store i8* %__self_0_8, i8** %_92, align 1
  %_89.0 = bitcast i8** %_92 to {}*
; call core::fmt::builders::DebugTuple::field
  %_87 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_89.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %20)
  %21 = bitcast i8** %_98 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %21)
  store i8* %__self_0_9, i8** %_98, align 1
  %_95.0 = bitcast i8** %_98 to {}*
; call core::fmt::builders::DebugTuple::field
  %_93 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_95.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %21)
  %22 = bitcast i8** %_104 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %22)
  store i8* %__self_0_10, i8** %_104, align 1
  %_101.0 = bitcast i8** %_104 to {}*
; call core::fmt::builders::DebugTuple::field
  %_99 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_101.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %22)
  %23 = bitcast i8** %_110 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %23)
  store i8* %__self_0_11, i8** %_110, align 1
  %_107.0 = bitcast i8** %_110 to {}*
; call core::fmt::builders::DebugTuple::field
  %_105 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_107.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %23)
  %24 = bitcast i8** %_116 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %24)
  store i8* %__self_0_12, i8** %_116, align 1
  %_113.0 = bitcast i8** %_116 to {}*
; call core::fmt::builders::DebugTuple::field
  %_111 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_113.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %24)
  %25 = bitcast i8** %_122 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %25)
  store i8* %__self_0_13, i8** %_122, align 1
  %_119.0 = bitcast i8** %_122 to {}*
; call core::fmt::builders::DebugTuple::field
  %_117 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_119.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %25)
  %26 = bitcast i8** %_128 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %26)
  store i8* %__self_0_14, i8** %_128, align 1
  %_125.0 = bitcast i8** %_128 to {}*
; call core::fmt::builders::DebugTuple::field
  %_123 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_125.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %26)
  %27 = bitcast i8** %_134 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %27)
  store i8* %__self_0_15, i8** %_134, align 1
  %_131.0 = bitcast i8** %_134 to {}*
; call core::fmt::builders::DebugTuple::field
  %_129 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_131.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %27)
  %28 = bitcast i8** %_140 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %28)
  store i8* %__self_0_16, i8** %_140, align 1
  %_137.0 = bitcast i8** %_140 to {}*
; call core::fmt::builders::DebugTuple::field
  %_135 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_137.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %28)
  %29 = bitcast i8** %_146 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %29)
  store i8* %__self_0_17, i8** %_146, align 1
  %_143.0 = bitcast i8** %_146 to {}*
; call core::fmt::builders::DebugTuple::field
  %_141 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_143.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %29)
  %30 = bitcast i8** %_152 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %30)
  store i8* %__self_0_18, i8** %_152, align 1
  %_149.0 = bitcast i8** %_152 to {}*
; call core::fmt::builders::DebugTuple::field
  %_147 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_149.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %30)
  %31 = bitcast i8** %_158 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %31)
  store i8* %__self_0_19, i8** %_158, align 1
  %_155.0 = bitcast i8** %_158 to {}*
; call core::fmt::builders::DebugTuple::field
  %_153 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_155.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %31)
  %32 = bitcast i8** %_164 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %32)
  store i8* %__self_0_20, i8** %_164, align 1
  %_161.0 = bitcast i8** %_164 to {}*
; call core::fmt::builders::DebugTuple::field
  %_159 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_161.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %32)
  %33 = bitcast i8** %_170 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %33)
  store i8* %__self_0_21, i8** %_170, align 1
  %_167.0 = bitcast i8** %_170 to {}*
; call core::fmt::builders::DebugTuple::field
  %_165 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_167.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %33)
  %34 = bitcast i8** %_176 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %34)
  store i8* %__self_0_22, i8** %_176, align 1
  %_173.0 = bitcast i8** %_176 to {}*
; call core::fmt::builders::DebugTuple::field
  %_171 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_173.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %34)
  %35 = bitcast i8** %_182 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %35)
  store i8* %__self_0_23, i8** %_182, align 1
  %_179.0 = bitcast i8** %_182 to {}*
; call core::fmt::builders::DebugTuple::field
  %_177 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_179.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %35)
  %36 = bitcast i8** %_188 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %36)
  store i8* %__self_0_24, i8** %_188, align 1
  %_185.0 = bitcast i8** %_188 to {}*
; call core::fmt::builders::DebugTuple::field
  %_183 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_185.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %36)
  %37 = bitcast i8** %_194 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %37)
  store i8* %__self_0_25, i8** %_194, align 1
  %_191.0 = bitcast i8** %_194 to {}*
; call core::fmt::builders::DebugTuple::field
  %_189 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_191.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %37)
  %38 = bitcast i8** %_200 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %38)
  store i8* %__self_0_26, i8** %_200, align 1
  %_197.0 = bitcast i8** %_200 to {}*
; call core::fmt::builders::DebugTuple::field
  %_195 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_197.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %38)
  %39 = bitcast i8** %_206 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %39)
  store i8* %__self_0_27, i8** %_206, align 1
  %_203.0 = bitcast i8** %_206 to {}*
; call core::fmt::builders::DebugTuple::field
  %_201 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_203.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %39)
  %40 = bitcast i8** %_212 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %40)
  store i8* %__self_0_28, i8** %_212, align 1
  %_209.0 = bitcast i8** %_212 to {}*
; call core::fmt::builders::DebugTuple::field
  %_207 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_209.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %40)
  %41 = bitcast i8** %_218 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %41)
  store i8* %__self_0_29, i8** %_218, align 1
  %_215.0 = bitcast i8** %_218 to {}*
; call core::fmt::builders::DebugTuple::field
  %_213 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_215.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %41)
  %42 = bitcast i8** %_224 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %42)
  store i8* %__self_0_30, i8** %_224, align 1
  %_221.0 = bitcast i8** %_224 to {}*
; call core::fmt::builders::DebugTuple::field
  %_219 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_221.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %42)
  %43 = bitcast i8** %_230 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %43)
  store i8* %__self_0_31, i8** %_230, align 1
  %_227.0 = bitcast i8** %_230 to {}*
; call core::fmt::builders::DebugTuple::field
  %_225 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_227.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i8**) addrspace(1)*, i16, i16, i1 (i8**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1M to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %43)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %44 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %44, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %45 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %45, align 1, !alias.scope !6636, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6639, !noalias !6636
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %46 = icmp eq i32 %_2.i.i.i.i.i, 0
  %47 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %46, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %48 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %47, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %48, align 1, !noalias !6642, !nonnull !568
  %49 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %47, i16 0, i32 11, i32 1
  %50 = bitcast [3 x i16]** %49 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %50, align 1, !noalias !6642, !nonnull !568
  %51 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %52 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %51, align 1, !invariant.load !568, !noalias !6642, !nonnull !568
  %53 = call zeroext addrspace(1) i1 %52({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %53, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %54 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %54, align 1, !noalias !6645, !nonnull !568
  %55 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %56 = bitcast [3 x i16]** %55 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %56, align 1, !noalias !6645, !nonnull !568
  %57 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %58 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %57, align 1, !invariant.load !568, !noalias !6645, !nonnull !568
  %59 = call zeroext addrspace(1) i1 %58({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %59 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %60 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %61 = icmp ne i8 %60, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %61
}

; <core::core_arch::simd::i16x16 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN66_$LT$core..core_arch..simd..i16x16$u20$as$u20$core..fmt..Debug$GT$3fmt17he9d1c4998fc02e92E"(<16 x i16>* noalias readonly align 32 dereferenceable(32) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_118 = alloca i16*, align 1
  %_112 = alloca i16*, align 1
  %_106 = alloca i16*, align 1
  %_100 = alloca i16*, align 1
  %_94 = alloca i16*, align 1
  %_88 = alloca i16*, align 1
  %_82 = alloca i16*, align 1
  %_76 = alloca i16*, align 1
  %_70 = alloca i16*, align 1
  %_64 = alloca i16*, align 1
  %_58 = alloca i16*, align 1
  %_52 = alloca i16*, align 1
  %_46 = alloca i16*, align 1
  %_40 = alloca i16*, align 1
  %_34 = alloca i16*, align 1
  %_28 = alloca i16*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <16 x i16>, <16 x i16>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <16 x i16>, <16 x i16>* %self, i16 0, i16 1
  %__self_0_2 = getelementptr inbounds <16 x i16>, <16 x i16>* %self, i16 0, i16 2
  %__self_0_3 = getelementptr inbounds <16 x i16>, <16 x i16>* %self, i16 0, i16 3
  %__self_0_4 = getelementptr inbounds <16 x i16>, <16 x i16>* %self, i16 0, i16 4
  %__self_0_5 = getelementptr inbounds <16 x i16>, <16 x i16>* %self, i16 0, i16 5
  %__self_0_6 = getelementptr inbounds <16 x i16>, <16 x i16>* %self, i16 0, i16 6
  %__self_0_7 = getelementptr inbounds <16 x i16>, <16 x i16>* %self, i16 0, i16 7
  %__self_0_8 = getelementptr inbounds <16 x i16>, <16 x i16>* %self, i16 0, i16 8
  %__self_0_9 = getelementptr inbounds <16 x i16>, <16 x i16>* %self, i16 0, i16 9
  %__self_0_10 = getelementptr inbounds <16 x i16>, <16 x i16>* %self, i16 0, i16 10
  %__self_0_11 = getelementptr inbounds <16 x i16>, <16 x i16>* %self, i16 0, i16 11
  %__self_0_12 = getelementptr inbounds <16 x i16>, <16 x i16>* %self, i16 0, i16 12
  %__self_0_13 = getelementptr inbounds <16 x i16>, <16 x i16>* %self, i16 0, i16 13
  %__self_0_14 = getelementptr inbounds <16 x i16>, <16 x i16>* %self, i16 0, i16 14
  %__self_0_15 = getelementptr inbounds <16 x i16>, <16 x i16>* %self, i16 0, i16 15
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6648, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6648, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6648, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc19279 to [0 x i8]*), i16 6), !noalias !6657
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6657, !noalias !6658
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6657, !noalias !6658
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6657, !noalias !6658
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6657, !noalias !6658
  %12 = bitcast i16** %_28 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i16* %__self_0_0, i16** %_28, align 1
  %_25.0 = bitcast i16** %_28 to {}*
; call core::fmt::builders::DebugTuple::field
  %_23 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_25.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i16** %_34 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i16* %__self_0_1, i16** %_34, align 1
  %_31.0 = bitcast i16** %_34 to {}*
; call core::fmt::builders::DebugTuple::field
  %_29 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_31.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast i16** %_40 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store i16* %__self_0_2, i16** %_40, align 1
  %_37.0 = bitcast i16** %_40 to {}*
; call core::fmt::builders::DebugTuple::field
  %_35 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_37.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast i16** %_46 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15)
  store i16* %__self_0_3, i16** %_46, align 1
  %_43.0 = bitcast i16** %_46 to {}*
; call core::fmt::builders::DebugTuple::field
  %_41 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_43.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15)
  %16 = bitcast i16** %_52 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %16)
  store i16* %__self_0_4, i16** %_52, align 1
  %_49.0 = bitcast i16** %_52 to {}*
; call core::fmt::builders::DebugTuple::field
  %_47 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_49.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %16)
  %17 = bitcast i16** %_58 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %17)
  store i16* %__self_0_5, i16** %_58, align 1
  %_55.0 = bitcast i16** %_58 to {}*
; call core::fmt::builders::DebugTuple::field
  %_53 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_55.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %17)
  %18 = bitcast i16** %_64 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %18)
  store i16* %__self_0_6, i16** %_64, align 1
  %_61.0 = bitcast i16** %_64 to {}*
; call core::fmt::builders::DebugTuple::field
  %_59 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_61.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %18)
  %19 = bitcast i16** %_70 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %19)
  store i16* %__self_0_7, i16** %_70, align 1
  %_67.0 = bitcast i16** %_70 to {}*
; call core::fmt::builders::DebugTuple::field
  %_65 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_67.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %19)
  %20 = bitcast i16** %_76 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %20)
  store i16* %__self_0_8, i16** %_76, align 1
  %_73.0 = bitcast i16** %_76 to {}*
; call core::fmt::builders::DebugTuple::field
  %_71 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_73.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %20)
  %21 = bitcast i16** %_82 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %21)
  store i16* %__self_0_9, i16** %_82, align 1
  %_79.0 = bitcast i16** %_82 to {}*
; call core::fmt::builders::DebugTuple::field
  %_77 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_79.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %21)
  %22 = bitcast i16** %_88 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %22)
  store i16* %__self_0_10, i16** %_88, align 1
  %_85.0 = bitcast i16** %_88 to {}*
; call core::fmt::builders::DebugTuple::field
  %_83 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_85.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %22)
  %23 = bitcast i16** %_94 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %23)
  store i16* %__self_0_11, i16** %_94, align 1
  %_91.0 = bitcast i16** %_94 to {}*
; call core::fmt::builders::DebugTuple::field
  %_89 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_91.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %23)
  %24 = bitcast i16** %_100 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %24)
  store i16* %__self_0_12, i16** %_100, align 1
  %_97.0 = bitcast i16** %_100 to {}*
; call core::fmt::builders::DebugTuple::field
  %_95 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_97.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %24)
  %25 = bitcast i16** %_106 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %25)
  store i16* %__self_0_13, i16** %_106, align 1
  %_103.0 = bitcast i16** %_106 to {}*
; call core::fmt::builders::DebugTuple::field
  %_101 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_103.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %25)
  %26 = bitcast i16** %_112 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %26)
  store i16* %__self_0_14, i16** %_112, align 1
  %_109.0 = bitcast i16** %_112 to {}*
; call core::fmt::builders::DebugTuple::field
  %_107 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_109.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %26)
  %27 = bitcast i16** %_118 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %27)
  store i16* %__self_0_15, i16** %_118, align 1
  %_115.0 = bitcast i16** %_118 to {}*
; call core::fmt::builders::DebugTuple::field
  %_113 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_115.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i16**) addrspace(1)*, i16, i16, i1 (i16**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.x to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %27)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %28 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %28, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %29 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %29, align 1, !alias.scope !6659, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6662, !noalias !6659
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %30 = icmp eq i32 %_2.i.i.i.i.i, 0
  %31 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %30, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %32 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %31, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %32, align 1, !noalias !6665, !nonnull !568
  %33 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %31, i16 0, i32 11, i32 1
  %34 = bitcast [3 x i16]** %33 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %34, align 1, !noalias !6665, !nonnull !568
  %35 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %36 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %35, align 1, !invariant.load !568, !noalias !6665, !nonnull !568
  %37 = call zeroext addrspace(1) i1 %36({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %37, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %38 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %38, align 1, !noalias !6668, !nonnull !568
  %39 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %40 = bitcast [3 x i16]** %39 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %40, align 1, !noalias !6668, !nonnull !568
  %41 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %42 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %41, align 1, !invariant.load !568, !noalias !6668, !nonnull !568
  %43 = call zeroext addrspace(1) i1 %42({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %43 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %44 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %45 = icmp ne i8 %44, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %45
}

; <core::core_arch::simd::i32x8 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..core_arch..simd..i32x8$u20$as$u20$core..fmt..Debug$GT$3fmt17hb4f43ccf8d2e9a23E"(<8 x i32>* noalias readonly align 32 dereferenceable(32) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_62 = alloca i32*, align 1
  %_56 = alloca i32*, align 1
  %_50 = alloca i32*, align 1
  %_44 = alloca i32*, align 1
  %_38 = alloca i32*, align 1
  %_32 = alloca i32*, align 1
  %_26 = alloca i32*, align 1
  %_20 = alloca i32*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <8 x i32>, <8 x i32>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <8 x i32>, <8 x i32>* %self, i16 0, i16 1
  %__self_0_2 = getelementptr inbounds <8 x i32>, <8 x i32>* %self, i16 0, i16 2
  %__self_0_3 = getelementptr inbounds <8 x i32>, <8 x i32>* %self, i16 0, i16 3
  %__self_0_4 = getelementptr inbounds <8 x i32>, <8 x i32>* %self, i16 0, i16 4
  %__self_0_5 = getelementptr inbounds <8 x i32>, <8 x i32>* %self, i16 0, i16 5
  %__self_0_6 = getelementptr inbounds <8 x i32>, <8 x i32>* %self, i16 0, i16 6
  %__self_0_7 = getelementptr inbounds <8 x i32>, <8 x i32>* %self, i16 0, i16 7
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6671, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6671, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6671, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19280 to [0 x i8]*), i16 5), !noalias !6680
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6680, !noalias !6681
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6680, !noalias !6681
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6680, !noalias !6681
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6680, !noalias !6681
  %12 = bitcast i32** %_20 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i32* %__self_0_0, i32** %_20, align 1
  %_17.0 = bitcast i32** %_20 to {}*
; call core::fmt::builders::DebugTuple::field
  %_15 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_17.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i32** %_26 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i32* %__self_0_1, i32** %_26, align 1
  %_23.0 = bitcast i32** %_26 to {}*
; call core::fmt::builders::DebugTuple::field
  %_21 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_23.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast i32** %_32 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store i32* %__self_0_2, i32** %_32, align 1
  %_29.0 = bitcast i32** %_32 to {}*
; call core::fmt::builders::DebugTuple::field
  %_27 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_29.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast i32** %_38 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15)
  store i32* %__self_0_3, i32** %_38, align 1
  %_35.0 = bitcast i32** %_38 to {}*
; call core::fmt::builders::DebugTuple::field
  %_33 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_35.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15)
  %16 = bitcast i32** %_44 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %16)
  store i32* %__self_0_4, i32** %_44, align 1
  %_41.0 = bitcast i32** %_44 to {}*
; call core::fmt::builders::DebugTuple::field
  %_39 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_41.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %16)
  %17 = bitcast i32** %_50 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %17)
  store i32* %__self_0_5, i32** %_50, align 1
  %_47.0 = bitcast i32** %_50 to {}*
; call core::fmt::builders::DebugTuple::field
  %_45 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_47.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %17)
  %18 = bitcast i32** %_56 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %18)
  store i32* %__self_0_6, i32** %_56, align 1
  %_53.0 = bitcast i32** %_56 to {}*
; call core::fmt::builders::DebugTuple::field
  %_51 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_53.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %18)
  %19 = bitcast i32** %_62 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %19)
  store i32* %__self_0_7, i32** %_62, align 1
  %_59.0 = bitcast i32** %_62 to {}*
; call core::fmt::builders::DebugTuple::field
  %_57 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_59.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %19)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %20 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %20, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %21 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %21, align 1, !alias.scope !6682, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6685, !noalias !6682
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %22 = icmp eq i32 %_2.i.i.i.i.i, 0
  %23 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %22, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %23, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %24, align 1, !noalias !6688, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %23, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %26, align 1, !noalias !6688, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %28 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !6688, !nonnull !568
  %29 = call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %29, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %30 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %30, align 1, !noalias !6691, !nonnull !568
  %31 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %32 = bitcast [3 x i16]** %31 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %32, align 1, !noalias !6691, !nonnull !568
  %33 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %34 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %33, align 1, !invariant.load !568, !noalias !6691, !nonnull !568
  %35 = call zeroext addrspace(1) i1 %34({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %35 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %36 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %37 = icmp ne i8 %36, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %37
}

; <core::core_arch::simd::i64x4 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..core_arch..simd..i64x4$u20$as$u20$core..fmt..Debug$GT$3fmt17h6618be358d981675E"(<4 x i64>* noalias readonly align 32 dereferenceable(32) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_34 = alloca i64*, align 1
  %_28 = alloca i64*, align 1
  %_22 = alloca i64*, align 1
  %_16 = alloca i64*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <4 x i64>, <4 x i64>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <4 x i64>, <4 x i64>* %self, i16 0, i16 1
  %__self_0_2 = getelementptr inbounds <4 x i64>, <4 x i64>* %self, i16 0, i16 2
  %__self_0_3 = getelementptr inbounds <4 x i64>, <4 x i64>* %self, i16 0, i16 3
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6694, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6694, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6694, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19281 to [0 x i8]*), i16 5), !noalias !6703
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6703, !noalias !6704
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6703, !noalias !6704
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6703, !noalias !6704
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6703, !noalias !6704
  %12 = bitcast i64** %_16 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i64* %__self_0_0, i64** %_16, align 1
  %_13.0 = bitcast i64** %_16 to {}*
; call core::fmt::builders::DebugTuple::field
  %_11 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_13.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.u to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i64** %_22 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i64* %__self_0_1, i64** %_22, align 1
  %_19.0 = bitcast i64** %_22 to {}*
; call core::fmt::builders::DebugTuple::field
  %_17 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_19.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.u to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast i64** %_28 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store i64* %__self_0_2, i64** %_28, align 1
  %_25.0 = bitcast i64** %_28 to {}*
; call core::fmt::builders::DebugTuple::field
  %_23 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_25.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.u to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast i64** %_34 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15)
  store i64* %__self_0_3, i64** %_34, align 1
  %_31.0 = bitcast i64** %_34 to {}*
; call core::fmt::builders::DebugTuple::field
  %_29 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_31.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.u to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %16 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %16, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %17 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %17, align 1, !alias.scope !6705, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6708, !noalias !6705
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %18 = icmp eq i32 %_2.i.i.i.i.i, 0
  %19 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %18, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %20 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %19, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %20, align 1, !noalias !6711, !nonnull !568
  %21 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %19, i16 0, i32 11, i32 1
  %22 = bitcast [3 x i16]** %21 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %22, align 1, !noalias !6711, !nonnull !568
  %23 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %24 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %23, align 1, !invariant.load !568, !noalias !6711, !nonnull !568
  %25 = call zeroext addrspace(1) i1 %24({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %25, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %26 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %26, align 1, !noalias !6714, !nonnull !568
  %27 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %28 = bitcast [3 x i16]** %27 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %28, align 1, !noalias !6714, !nonnull !568
  %29 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %30 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %29, align 1, !invariant.load !568, !noalias !6714, !nonnull !568
  %31 = call zeroext addrspace(1) i1 %30({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %31 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %32 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %33 = icmp ne i8 %32, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %33
}

; <core::core_arch::simd::f32x8 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..core_arch..simd..f32x8$u20$as$u20$core..fmt..Debug$GT$3fmt17he5ec5371dde4fccbE"(<8 x float>* noalias readonly align 32 dereferenceable(32) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_62 = alloca float*, align 1
  %_56 = alloca float*, align 1
  %_50 = alloca float*, align 1
  %_44 = alloca float*, align 1
  %_38 = alloca float*, align 1
  %_32 = alloca float*, align 1
  %_26 = alloca float*, align 1
  %_20 = alloca float*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <8 x float>, <8 x float>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <8 x float>, <8 x float>* %self, i16 0, i16 1
  %__self_0_2 = getelementptr inbounds <8 x float>, <8 x float>* %self, i16 0, i16 2
  %__self_0_3 = getelementptr inbounds <8 x float>, <8 x float>* %self, i16 0, i16 3
  %__self_0_4 = getelementptr inbounds <8 x float>, <8 x float>* %self, i16 0, i16 4
  %__self_0_5 = getelementptr inbounds <8 x float>, <8 x float>* %self, i16 0, i16 5
  %__self_0_6 = getelementptr inbounds <8 x float>, <8 x float>* %self, i16 0, i16 6
  %__self_0_7 = getelementptr inbounds <8 x float>, <8 x float>* %self, i16 0, i16 7
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6717, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6717, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6717, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19282 to [0 x i8]*), i16 5), !noalias !6726
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6726, !noalias !6727
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6726, !noalias !6727
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6726, !noalias !6727
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6726, !noalias !6727
  %12 = bitcast float** %_20 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store float* %__self_0_0, float** %_20, align 1
  %_17.0 = bitcast float** %_20 to {}*
; call core::fmt::builders::DebugTuple::field
  %_15 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_17.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (float**) addrspace(1)*, i16, i16, i1 (float**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1O to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast float** %_26 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store float* %__self_0_1, float** %_26, align 1
  %_23.0 = bitcast float** %_26 to {}*
; call core::fmt::builders::DebugTuple::field
  %_21 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_23.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (float**) addrspace(1)*, i16, i16, i1 (float**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1O to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast float** %_32 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store float* %__self_0_2, float** %_32, align 1
  %_29.0 = bitcast float** %_32 to {}*
; call core::fmt::builders::DebugTuple::field
  %_27 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_29.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (float**) addrspace(1)*, i16, i16, i1 (float**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1O to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast float** %_38 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15)
  store float* %__self_0_3, float** %_38, align 1
  %_35.0 = bitcast float** %_38 to {}*
; call core::fmt::builders::DebugTuple::field
  %_33 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_35.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (float**) addrspace(1)*, i16, i16, i1 (float**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1O to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15)
  %16 = bitcast float** %_44 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %16)
  store float* %__self_0_4, float** %_44, align 1
  %_41.0 = bitcast float** %_44 to {}*
; call core::fmt::builders::DebugTuple::field
  %_39 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_41.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (float**) addrspace(1)*, i16, i16, i1 (float**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1O to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %16)
  %17 = bitcast float** %_50 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %17)
  store float* %__self_0_5, float** %_50, align 1
  %_47.0 = bitcast float** %_50 to {}*
; call core::fmt::builders::DebugTuple::field
  %_45 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_47.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (float**) addrspace(1)*, i16, i16, i1 (float**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1O to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %17)
  %18 = bitcast float** %_56 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %18)
  store float* %__self_0_6, float** %_56, align 1
  %_53.0 = bitcast float** %_56 to {}*
; call core::fmt::builders::DebugTuple::field
  %_51 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_53.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (float**) addrspace(1)*, i16, i16, i1 (float**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1O to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %18)
  %19 = bitcast float** %_62 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %19)
  store float* %__self_0_7, float** %_62, align 1
  %_59.0 = bitcast float** %_62 to {}*
; call core::fmt::builders::DebugTuple::field
  %_57 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_59.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (float**) addrspace(1)*, i16, i16, i1 (float**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1O to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %19)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %20 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %20, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %21 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %21, align 1, !alias.scope !6728, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6731, !noalias !6728
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %22 = icmp eq i32 %_2.i.i.i.i.i, 0
  %23 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %22, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %23, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %24, align 1, !noalias !6734, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %23, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %26, align 1, !noalias !6734, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %28 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !6734, !nonnull !568
  %29 = call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %29, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %30 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %30, align 1, !noalias !6737, !nonnull !568
  %31 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %32 = bitcast [3 x i16]** %31 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %32, align 1, !noalias !6737, !nonnull !568
  %33 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %34 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %33, align 1, !invariant.load !568, !noalias !6737, !nonnull !568
  %35 = call zeroext addrspace(1) i1 %34({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %35 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %36 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %37 = icmp ne i8 %36, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %37
}

; <core::core_arch::simd::i32x16 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN66_$LT$core..core_arch..simd..i32x16$u20$as$u20$core..fmt..Debug$GT$3fmt17h9078c79396884f72E"(<16 x i32>* noalias readonly align 64 dereferenceable(64) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_118 = alloca i32*, align 1
  %_112 = alloca i32*, align 1
  %_106 = alloca i32*, align 1
  %_100 = alloca i32*, align 1
  %_94 = alloca i32*, align 1
  %_88 = alloca i32*, align 1
  %_82 = alloca i32*, align 1
  %_76 = alloca i32*, align 1
  %_70 = alloca i32*, align 1
  %_64 = alloca i32*, align 1
  %_58 = alloca i32*, align 1
  %_52 = alloca i32*, align 1
  %_46 = alloca i32*, align 1
  %_40 = alloca i32*, align 1
  %_34 = alloca i32*, align 1
  %_28 = alloca i32*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <16 x i32>, <16 x i32>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <16 x i32>, <16 x i32>* %self, i16 0, i16 1
  %__self_0_2 = getelementptr inbounds <16 x i32>, <16 x i32>* %self, i16 0, i16 2
  %__self_0_3 = getelementptr inbounds <16 x i32>, <16 x i32>* %self, i16 0, i16 3
  %__self_0_4 = getelementptr inbounds <16 x i32>, <16 x i32>* %self, i16 0, i16 4
  %__self_0_5 = getelementptr inbounds <16 x i32>, <16 x i32>* %self, i16 0, i16 5
  %__self_0_6 = getelementptr inbounds <16 x i32>, <16 x i32>* %self, i16 0, i16 6
  %__self_0_7 = getelementptr inbounds <16 x i32>, <16 x i32>* %self, i16 0, i16 7
  %__self_0_8 = getelementptr inbounds <16 x i32>, <16 x i32>* %self, i16 0, i16 8
  %__self_0_9 = getelementptr inbounds <16 x i32>, <16 x i32>* %self, i16 0, i16 9
  %__self_0_10 = getelementptr inbounds <16 x i32>, <16 x i32>* %self, i16 0, i16 10
  %__self_0_11 = getelementptr inbounds <16 x i32>, <16 x i32>* %self, i16 0, i16 11
  %__self_0_12 = getelementptr inbounds <16 x i32>, <16 x i32>* %self, i16 0, i16 12
  %__self_0_13 = getelementptr inbounds <16 x i32>, <16 x i32>* %self, i16 0, i16 13
  %__self_0_14 = getelementptr inbounds <16 x i32>, <16 x i32>* %self, i16 0, i16 14
  %__self_0_15 = getelementptr inbounds <16 x i32>, <16 x i32>* %self, i16 0, i16 15
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6740, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6740, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6740, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [6 x i8] }>* @alloc19283 to [0 x i8]*), i16 6), !noalias !6749
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6749, !noalias !6750
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6749, !noalias !6750
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6749, !noalias !6750
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6749, !noalias !6750
  %12 = bitcast i32** %_28 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i32* %__self_0_0, i32** %_28, align 1
  %_25.0 = bitcast i32** %_28 to {}*
; call core::fmt::builders::DebugTuple::field
  %_23 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_25.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i32** %_34 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i32* %__self_0_1, i32** %_34, align 1
  %_31.0 = bitcast i32** %_34 to {}*
; call core::fmt::builders::DebugTuple::field
  %_29 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_31.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast i32** %_40 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store i32* %__self_0_2, i32** %_40, align 1
  %_37.0 = bitcast i32** %_40 to {}*
; call core::fmt::builders::DebugTuple::field
  %_35 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_37.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast i32** %_46 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15)
  store i32* %__self_0_3, i32** %_46, align 1
  %_43.0 = bitcast i32** %_46 to {}*
; call core::fmt::builders::DebugTuple::field
  %_41 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_43.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15)
  %16 = bitcast i32** %_52 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %16)
  store i32* %__self_0_4, i32** %_52, align 1
  %_49.0 = bitcast i32** %_52 to {}*
; call core::fmt::builders::DebugTuple::field
  %_47 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_49.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %16)
  %17 = bitcast i32** %_58 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %17)
  store i32* %__self_0_5, i32** %_58, align 1
  %_55.0 = bitcast i32** %_58 to {}*
; call core::fmt::builders::DebugTuple::field
  %_53 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_55.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %17)
  %18 = bitcast i32** %_64 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %18)
  store i32* %__self_0_6, i32** %_64, align 1
  %_61.0 = bitcast i32** %_64 to {}*
; call core::fmt::builders::DebugTuple::field
  %_59 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_61.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %18)
  %19 = bitcast i32** %_70 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %19)
  store i32* %__self_0_7, i32** %_70, align 1
  %_67.0 = bitcast i32** %_70 to {}*
; call core::fmt::builders::DebugTuple::field
  %_65 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_67.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %19)
  %20 = bitcast i32** %_76 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %20)
  store i32* %__self_0_8, i32** %_76, align 1
  %_73.0 = bitcast i32** %_76 to {}*
; call core::fmt::builders::DebugTuple::field
  %_71 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_73.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %20)
  %21 = bitcast i32** %_82 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %21)
  store i32* %__self_0_9, i32** %_82, align 1
  %_79.0 = bitcast i32** %_82 to {}*
; call core::fmt::builders::DebugTuple::field
  %_77 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_79.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %21)
  %22 = bitcast i32** %_88 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %22)
  store i32* %__self_0_10, i32** %_88, align 1
  %_85.0 = bitcast i32** %_88 to {}*
; call core::fmt::builders::DebugTuple::field
  %_83 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_85.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %22)
  %23 = bitcast i32** %_94 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %23)
  store i32* %__self_0_11, i32** %_94, align 1
  %_91.0 = bitcast i32** %_94 to {}*
; call core::fmt::builders::DebugTuple::field
  %_89 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_91.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %23)
  %24 = bitcast i32** %_100 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %24)
  store i32* %__self_0_12, i32** %_100, align 1
  %_97.0 = bitcast i32** %_100 to {}*
; call core::fmt::builders::DebugTuple::field
  %_95 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_97.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %24)
  %25 = bitcast i32** %_106 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %25)
  store i32* %__self_0_13, i32** %_106, align 1
  %_103.0 = bitcast i32** %_106 to {}*
; call core::fmt::builders::DebugTuple::field
  %_101 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_103.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %25)
  %26 = bitcast i32** %_112 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %26)
  store i32* %__self_0_14, i32** %_112, align 1
  %_109.0 = bitcast i32** %_112 to {}*
; call core::fmt::builders::DebugTuple::field
  %_107 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_109.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %26)
  %27 = bitcast i32** %_118 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %27)
  store i32* %__self_0_15, i32** %_118, align 1
  %_115.0 = bitcast i32** %_118 to {}*
; call core::fmt::builders::DebugTuple::field
  %_113 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_115.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i32**) addrspace(1)*, i16, i16, i1 (i32**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.1N to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %27)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %28 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %28, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %29 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %29, align 1, !alias.scope !6751, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6754, !noalias !6751
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %30 = icmp eq i32 %_2.i.i.i.i.i, 0
  %31 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %30, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %32 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %31, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %32, align 1, !noalias !6757, !nonnull !568
  %33 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %31, i16 0, i32 11, i32 1
  %34 = bitcast [3 x i16]** %33 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %34, align 1, !noalias !6757, !nonnull !568
  %35 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %36 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %35, align 1, !invariant.load !568, !noalias !6757, !nonnull !568
  %37 = call zeroext addrspace(1) i1 %36({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %37, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %38 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %38, align 1, !noalias !6760, !nonnull !568
  %39 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %40 = bitcast [3 x i16]** %39 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %40, align 1, !noalias !6760, !nonnull !568
  %41 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %42 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %41, align 1, !invariant.load !568, !noalias !6760, !nonnull !568
  %43 = call zeroext addrspace(1) i1 %42({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %43 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %44 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %45 = icmp ne i8 %44, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %45
}

; <core::core_arch::simd::i64x8 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..core_arch..simd..i64x8$u20$as$u20$core..fmt..Debug$GT$3fmt17hd3d432401b576f28E"(<8 x i64>* noalias readonly align 64 dereferenceable(64) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_62 = alloca i64*, align 1
  %_56 = alloca i64*, align 1
  %_50 = alloca i64*, align 1
  %_44 = alloca i64*, align 1
  %_38 = alloca i64*, align 1
  %_32 = alloca i64*, align 1
  %_26 = alloca i64*, align 1
  %_20 = alloca i64*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <8 x i64>, <8 x i64>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <8 x i64>, <8 x i64>* %self, i16 0, i16 1
  %__self_0_2 = getelementptr inbounds <8 x i64>, <8 x i64>* %self, i16 0, i16 2
  %__self_0_3 = getelementptr inbounds <8 x i64>, <8 x i64>* %self, i16 0, i16 3
  %__self_0_4 = getelementptr inbounds <8 x i64>, <8 x i64>* %self, i16 0, i16 4
  %__self_0_5 = getelementptr inbounds <8 x i64>, <8 x i64>* %self, i16 0, i16 5
  %__self_0_6 = getelementptr inbounds <8 x i64>, <8 x i64>* %self, i16 0, i16 6
  %__self_0_7 = getelementptr inbounds <8 x i64>, <8 x i64>* %self, i16 0, i16 7
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6763, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6763, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6763, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19284 to [0 x i8]*), i16 5), !noalias !6772
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6772, !noalias !6773
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6772, !noalias !6773
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6772, !noalias !6773
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6772, !noalias !6773
  %12 = bitcast i64** %_20 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i64* %__self_0_0, i64** %_20, align 1
  %_17.0 = bitcast i64** %_20 to {}*
; call core::fmt::builders::DebugTuple::field
  %_15 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_17.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.u to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i64** %_26 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i64* %__self_0_1, i64** %_26, align 1
  %_23.0 = bitcast i64** %_26 to {}*
; call core::fmt::builders::DebugTuple::field
  %_21 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_23.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.u to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast i64** %_32 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store i64* %__self_0_2, i64** %_32, align 1
  %_29.0 = bitcast i64** %_32 to {}*
; call core::fmt::builders::DebugTuple::field
  %_27 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_29.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.u to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast i64** %_38 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15)
  store i64* %__self_0_3, i64** %_38, align 1
  %_35.0 = bitcast i64** %_38 to {}*
; call core::fmt::builders::DebugTuple::field
  %_33 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_35.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.u to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15)
  %16 = bitcast i64** %_44 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %16)
  store i64* %__self_0_4, i64** %_44, align 1
  %_41.0 = bitcast i64** %_44 to {}*
; call core::fmt::builders::DebugTuple::field
  %_39 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_41.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.u to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %16)
  %17 = bitcast i64** %_50 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %17)
  store i64* %__self_0_5, i64** %_50, align 1
  %_47.0 = bitcast i64** %_50 to {}*
; call core::fmt::builders::DebugTuple::field
  %_45 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_47.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.u to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %17)
  %18 = bitcast i64** %_56 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %18)
  store i64* %__self_0_6, i64** %_56, align 1
  %_53.0 = bitcast i64** %_56 to {}*
; call core::fmt::builders::DebugTuple::field
  %_51 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_53.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.u to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %18)
  %19 = bitcast i64** %_62 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %19)
  store i64* %__self_0_7, i64** %_62, align 1
  %_59.0 = bitcast i64** %_62 to {}*
; call core::fmt::builders::DebugTuple::field
  %_57 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_59.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.u to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %19)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %20 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %20, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %21 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %21, align 1, !alias.scope !6774, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6777, !noalias !6774
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %22 = icmp eq i32 %_2.i.i.i.i.i, 0
  %23 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %22, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %23, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %24, align 1, !noalias !6780, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %23, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %26, align 1, !noalias !6780, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %28 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !6780, !nonnull !568
  %29 = call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %29, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %30 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %30, align 1, !noalias !6783, !nonnull !568
  %31 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %32 = bitcast [3 x i16]** %31 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %32, align 1, !noalias !6783, !nonnull !568
  %33 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %34 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %33, align 1, !invariant.load !568, !noalias !6783, !nonnull !568
  %35 = call zeroext addrspace(1) i1 %34({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %35 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %36 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %37 = icmp ne i8 %36, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %37
}

; <core::core_arch::simd::u64x8 as core::fmt::Debug>::fmt
; Function Attrs: uwtable
define zeroext i1 @"_ZN65_$LT$core..core_arch..simd..u64x8$u20$as$u20$core..fmt..Debug$GT$3fmt17h6872a51393a6bfb6E"(<8 x i64>* noalias readonly align 64 dereferenceable(64) %self, %"fmt::Formatter"* align 1 dereferenceable(19) %f) unnamed_addr addrspace(1) #2 personality i32 (...) addrspace(1)* @rust_eh_personality {
start:
  %_62 = alloca i64*, align 1
  %_56 = alloca i64*, align 1
  %_50 = alloca i64*, align 1
  %_44 = alloca i64*, align 1
  %_38 = alloca i64*, align 1
  %_32 = alloca i64*, align 1
  %_26 = alloca i64*, align 1
  %_20 = alloca i64*, align 1
  %debug_trait_builder = alloca %"fmt::builders::DebugTuple", align 1
  %__self_0_0 = getelementptr inbounds <8 x i64>, <8 x i64>* %self, i16 0, i16 0
  %__self_0_1 = getelementptr inbounds <8 x i64>, <8 x i64>* %self, i16 0, i16 1
  %__self_0_2 = getelementptr inbounds <8 x i64>, <8 x i64>* %self, i16 0, i16 2
  %__self_0_3 = getelementptr inbounds <8 x i64>, <8 x i64>* %self, i16 0, i16 3
  %__self_0_4 = getelementptr inbounds <8 x i64>, <8 x i64>* %self, i16 0, i16 4
  %__self_0_5 = getelementptr inbounds <8 x i64>, <8 x i64>* %self, i16 0, i16 5
  %__self_0_6 = getelementptr inbounds <8 x i64>, <8 x i64>* %self, i16 0, i16 6
  %__self_0_7 = getelementptr inbounds <8 x i64>, <8 x i64>* %self, i16 0, i16 7
  %0 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 0, i16 0
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 6, i8* nonnull %0)
  %1 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 0
  %_3.0.i.i.i = load {}*, {}** %1, align 1, !noalias !6786, !nonnull !568
  %2 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %f, i16 0, i32 11, i32 1
  %3 = bitcast [3 x i16]** %2 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %3, align 1, !noalias !6786, !nonnull !568
  %4 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i, i16 3
  %5 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %4, align 1, !invariant.load !568, !noalias !6786, !nonnull !568
  %6 = tail call zeroext addrspace(1) i1 %5({}* nonnull align 1 %_3.0.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [5 x i8] }>* @alloc19285 to [0 x i8]*), i16 5), !noalias !6795
  %7 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to %"fmt::Formatter"**
  store %"fmt::Formatter"* %f, %"fmt::Formatter"** %7, align 1, !alias.scope !6795, !noalias !6796
  %8 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 3
  %9 = zext i1 %6 to i8
  store i8 %9, i8* %8, align 1, !alias.scope !6795, !noalias !6796
  %10 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 5
  store i16 0, i16* %10, align 1, !alias.scope !6795, !noalias !6796
  %11 = getelementptr inbounds %"fmt::builders::DebugTuple", %"fmt::builders::DebugTuple"* %debug_trait_builder, i16 0, i32 7
  store i8 0, i8* %11, align 1, !alias.scope !6795, !noalias !6796
  %12 = bitcast i64** %_20 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %12)
  store i64* %__self_0_0, i64** %_20, align 1
  %_17.0 = bitcast i64** %_20 to {}*
; call core::fmt::builders::DebugTuple::field
  %_15 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_17.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.w to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %12)
  %13 = bitcast i64** %_26 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %13)
  store i64* %__self_0_1, i64** %_26, align 1
  %_23.0 = bitcast i64** %_26 to {}*
; call core::fmt::builders::DebugTuple::field
  %_21 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_23.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.w to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %13)
  %14 = bitcast i64** %_32 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %14)
  store i64* %__self_0_2, i64** %_32, align 1
  %_29.0 = bitcast i64** %_32 to {}*
; call core::fmt::builders::DebugTuple::field
  %_27 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_29.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.w to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %14)
  %15 = bitcast i64** %_38 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %15)
  store i64* %__self_0_3, i64** %_38, align 1
  %_35.0 = bitcast i64** %_38 to {}*
; call core::fmt::builders::DebugTuple::field
  %_33 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_35.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.w to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %15)
  %16 = bitcast i64** %_44 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %16)
  store i64* %__self_0_4, i64** %_44, align 1
  %_41.0 = bitcast i64** %_44 to {}*
; call core::fmt::builders::DebugTuple::field
  %_39 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_41.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.w to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %16)
  %17 = bitcast i64** %_50 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %17)
  store i64* %__self_0_5, i64** %_50, align 1
  %_47.0 = bitcast i64** %_50 to {}*
; call core::fmt::builders::DebugTuple::field
  %_45 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_47.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.w to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %17)
  %18 = bitcast i64** %_56 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %18)
  store i64* %__self_0_6, i64** %_56, align 1
  %_53.0 = bitcast i64** %_56 to {}*
; call core::fmt::builders::DebugTuple::field
  %_51 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_53.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.w to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %18)
  %19 = bitcast i64** %_62 to i8*
  call addrspace(1) void @llvm.lifetime.start.p0i8(i64 2, i8* nonnull %19)
  store i64* %__self_0_7, i64** %_62, align 1
  %_59.0 = bitcast i64** %_62 to {}*
; call core::fmt::builders::DebugTuple::field
  %_57 = call align 1 dereferenceable(6) addrspace(1) %"fmt::builders::DebugTuple"* @_ZN4core3fmt8builders10DebugTuple5field17hff548c420b21a250E(%"fmt::builders::DebugTuple"* nonnull align 1 dereferenceable(6) %debug_trait_builder, {}* nonnull align 1 %_59.0, [3 x i16]* noalias readonly align 1 dereferenceable(6) bitcast ({ void (i64**) addrspace(1)*, i16, i16, i1 (i64**, %"fmt::Formatter"*) addrspace(1)* }* @vtable.w to [3 x i16]*))
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 2, i8* nonnull %19)
  %_3.i = load i16, i16* %10, align 1
  %_2.i = icmp eq i16 %_3.i, 0
  %.pre.i = load i8, i8* %8, align 1, !range !87
  br i1 %_2.i, label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit, label %bb2.i

bb2.i:                                            ; preds = %start
  %_5.i = icmp eq i8 %.pre.i, 0
  br i1 %_5.i, label %bb3.i.i, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

bb3.i.i:                                          ; preds = %bb2.i
  %_5.i.i.i = icmp ne i16 %_3.i, 1
  %20 = load i8, i8* %11, align 1
  %_7.i.i.i = icmp eq i8 %20, 0
  %or.cond = or i1 %_5.i.i.i, %_7.i.i.i
  br i1 %or.cond, label %bb20.i.i.i, label %bb3.i.i.i

bb3.i.i.i:                                        ; preds = %bb3.i.i
  %21 = bitcast %"fmt::builders::DebugTuple"* %debug_trait_builder to i32**
  %_21.i.i.i.i = load i32*, i32** %21, align 1, !alias.scope !6797, !nonnull !568
  %_3.i.i.i.i.i = load i32, i32* %_21.i.i.i.i, align 1, !alias.scope !6800, !noalias !6797
  %_2.i.i.i.i.i = and i32 %_3.i.i.i.i.i, 4
  %22 = icmp eq i32 %_2.i.i.i.i.i, 0
  %23 = bitcast i32* %_21.i.i.i.i to %"fmt::Formatter"*
  br i1 %22, label %bb11.i.i.i, label %bb20.i.i.i

bb11.i.i.i:                                       ; preds = %bb3.i.i.i
  %24 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %23, i16 0, i32 11, i32 0
  %_3.0.i2.i.i.i = load {}*, {}** %24, align 1, !noalias !6803, !nonnull !568
  %25 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %23, i16 0, i32 11, i32 1
  %26 = bitcast [3 x i16]** %25 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i3.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %26, align 1, !noalias !6803, !nonnull !568
  %27 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i3.i.i.i, i16 3
  %28 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %27, align 1, !invariant.load !568, !noalias !6803, !nonnull !568
  %29 = call zeroext addrspace(1) i1 %28({}* nonnull align 1 %_3.0.i2.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc18657 to [0 x i8]*), i16 1)
  br i1 %29, label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i", label %bb20.i.i.i

bb20.i.i.i:                                       ; preds = %bb3.i.i, %bb11.i.i.i, %bb3.i.i.i
  %_21.i.i.i = load %"fmt::Formatter"*, %"fmt::Formatter"** %7, align 1, !nonnull !568
  %30 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 0
  %_3.0.i.i.i.i = load {}*, {}** %30, align 1, !noalias !6806, !nonnull !568
  %31 = getelementptr inbounds %"fmt::Formatter", %"fmt::Formatter"* %_21.i.i.i, i16 0, i32 11, i32 1
  %32 = bitcast [3 x i16]** %31 to i1 ({}*, [0 x i8]*, i16) addrspace(1)***
  %_3.11.i.i.i.i = load i1 ({}*, [0 x i8]*, i16) addrspace(1)**, i1 ({}*, [0 x i8]*, i16) addrspace(1)*** %32, align 1, !noalias !6806, !nonnull !568
  %33 = getelementptr inbounds i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %_3.11.i.i.i.i, i16 3
  %34 = load i1 ({}*, [0 x i8]*, i16) addrspace(1)*, i1 ({}*, [0 x i8]*, i16) addrspace(1)** %33, align 1, !invariant.load !568, !noalias !6806, !nonnull !568
  %35 = call zeroext addrspace(1) i1 %34({}* nonnull align 1 %_3.0.i.i.i.i, [0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [1 x i8] }>* @alloc16754 to [0 x i8]*), i16 1)
  %phitmp.i = zext i1 %35 to i8
  br label %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"

"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i": ; preds = %bb20.i.i.i, %bb11.i.i.i, %bb2.i
  %.0.i.i = phi i8 [ 1, %bb2.i ], [ %phitmp.i, %bb20.i.i.i ], [ 1, %bb11.i.i.i ]
  store i8 %.0.i.i, i8* %8, align 1
  br label %_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit

_ZN4core3fmt8builders10DebugTuple6finish17hc6a89770d0a9f4c7E.exit: ; preds = %start, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i"
  %36 = phi i8 [ %.0.i.i, %"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hbb56c1bf6cd84877E.exit.i" ], [ %.pre.i, %start ]
  %37 = icmp ne i8 %36, 0
  call addrspace(1) void @llvm.lifetime.end.p0i8(i64 6, i8* nonnull %0)
  ret i1 %37
}

declare i32 @rust_eh_personality(...) unnamed_addr addrspace(1) #15

; Function Attrs: argmemonly nounwind willreturn
declare void @llvm.lifetime.start.p0i8(i64 immarg, i8* nocapture) addrspace(1) #16

; Function Attrs: argmemonly nounwind willreturn
declare void @llvm.lifetime.end.p0i8(i64 immarg, i8* nocapture) addrspace(1) #16

; Function Attrs: argmemonly nounwind willreturn
declare void @llvm.memcpy.p0i8.p0i8.i16(i8* noalias nocapture writeonly, i8* noalias nocapture readonly, i16, i1 immarg) addrspace(1) #16

; Function Attrs: nounwind willreturn
declare void @llvm.assume(i1) addrspace(1) #17

; Function Attrs: noreturn uwtable
declare void @rust_begin_unwind(%"panic::PanicInfo"* noalias readonly align 1 dereferenceable(8)) unnamed_addr addrspace(1) #13

; Function Attrs: argmemonly nounwind willreturn
declare void @llvm.memset.p0i8.i16(i8* nocapture writeonly, i8, i16, i1 immarg) addrspace(1) #16

; Function Attrs: nofree nounwind readonly uwtable
declare i32 @memcmp(i8* nocapture, i8* nocapture, i16) unnamed_addr addrspace(1) #18

; Function Attrs: nounwind readnone speculatable willreturn
declare { i8, i1 } @llvm.uadd.with.overflow.i8(i8, i8) addrspace(1) #19

; Function Attrs: nounwind readnone speculatable willreturn
declare { i16, i1 } @llvm.uadd.with.overflow.i16(i16, i16) addrspace(1) #19

; Function Attrs: nounwind readnone speculatable willreturn
declare { i32, i1 } @llvm.uadd.with.overflow.i32(i32, i32) addrspace(1) #19

; Function Attrs: nounwind readnone speculatable willreturn
declare { i8, i1 } @llvm.sadd.with.overflow.i8(i8, i8) addrspace(1) #19

; Function Attrs: nounwind readnone speculatable willreturn
declare { i8, i1 } @llvm.ssub.with.overflow.i8(i8, i8) addrspace(1) #19

; Function Attrs: nounwind readnone speculatable willreturn
declare { i8, i1 } @llvm.smul.with.overflow.i8(i8, i8) addrspace(1) #19

; Function Attrs: nounwind readnone speculatable willreturn
declare { i16, i1 } @llvm.sadd.with.overflow.i16(i16, i16) addrspace(1) #19

; Function Attrs: nounwind readnone speculatable willreturn
declare { i16, i1 } @llvm.ssub.with.overflow.i16(i16, i16) addrspace(1) #19

; Function Attrs: nounwind readnone speculatable willreturn
declare { i16, i1 } @llvm.smul.with.overflow.i16(i16, i16) addrspace(1) #19

; Function Attrs: nounwind readnone speculatable willreturn
declare { i32, i1 } @llvm.sadd.with.overflow.i32(i32, i32) addrspace(1) #19

; Function Attrs: nounwind readnone speculatable willreturn
declare { i32, i1 } @llvm.ssub.with.overflow.i32(i32, i32) addrspace(1) #19

; Function Attrs: nounwind readnone speculatable willreturn
declare { i32, i1 } @llvm.smul.with.overflow.i32(i32, i32) addrspace(1) #19

; Function Attrs: nounwind readnone speculatable willreturn
declare { i64, i1 } @llvm.sadd.with.overflow.i64(i64, i64) addrspace(1) #19

; Function Attrs: nounwind readnone speculatable willreturn
declare { i64, i1 } @llvm.ssub.with.overflow.i64(i64, i64) addrspace(1) #19

; Function Attrs: nounwind readnone speculatable willreturn
declare { i64, i1 } @llvm.smul.with.overflow.i64(i64, i64) addrspace(1) #19

; Function Attrs: nounwind readnone speculatable willreturn
declare { i128, i1 } @llvm.sadd.with.overflow.i128(i128, i128) addrspace(1) #19

; Function Attrs: nounwind readnone speculatable willreturn
declare { i128, i1 } @llvm.ssub.with.overflow.i128(i128, i128) addrspace(1) #19

; Function Attrs: nounwind readnone speculatable willreturn
declare { i128, i1 } @llvm.smul.with.overflow.i128(i128, i128) addrspace(1) #19

; Function Attrs: nounwind readnone speculatable willreturn
declare { i8, i1 } @llvm.umul.with.overflow.i8(i8, i8) addrspace(1) #19

; Function Attrs: nounwind readnone speculatable willreturn
declare i8 @llvm.ctlz.i8(i8, i1 immarg) addrspace(1) #19

; Function Attrs: nounwind readnone speculatable willreturn
declare { i16, i1 } @llvm.umul.with.overflow.i16(i16, i16) addrspace(1) #19

; Function Attrs: nounwind readnone speculatable willreturn
declare i16 @llvm.ctlz.i16(i16, i1 immarg) addrspace(1) #19

; Function Attrs: nounwind readnone speculatable willreturn
declare { i16, i1 } @llvm.usub.with.overflow.i16(i16, i16) addrspace(1) #19

; Function Attrs: nounwind readnone speculatable willreturn
declare { i32, i1 } @llvm.umul.with.overflow.i32(i32, i32) addrspace(1) #19

; Function Attrs: nounwind readnone speculatable willreturn
declare i32 @llvm.ctlz.i32(i32, i1 immarg) addrspace(1) #19

; Function Attrs: nounwind readnone speculatable willreturn
declare { i64, i1 } @llvm.umul.with.overflow.i64(i64, i64) addrspace(1) #19

; Function Attrs: nounwind readnone speculatable willreturn
declare i64 @llvm.ctlz.i64(i64, i1 immarg) addrspace(1) #19

; Function Attrs: nounwind readnone speculatable willreturn
declare i64 @llvm.fshl.i64(i64, i64, i64) addrspace(1) #19

; Function Attrs: nounwind readnone speculatable willreturn
declare { i64, i1 } @llvm.uadd.with.overflow.i64(i64, i64) addrspace(1) #19

; Function Attrs: nounwind readnone speculatable willreturn
declare { i64, i1 } @llvm.usub.with.overflow.i64(i64, i64) addrspace(1) #19

; Function Attrs: nounwind readnone speculatable willreturn
declare { i128, i1 } @llvm.umul.with.overflow.i128(i128, i128) addrspace(1) #19

; Function Attrs: nounwind readnone speculatable willreturn
declare i128 @llvm.ctlz.i128(i128, i1 immarg) addrspace(1) #19

; Function Attrs: nounwind readnone speculatable willreturn
declare { i128, i1 } @llvm.uadd.with.overflow.i128(i128, i128) addrspace(1) #19

; Function Attrs: nounwind readnone speculatable willreturn
declare i16 @llvm.usub.sat.i16(i16, i16) addrspace(1) #19

; Function Attrs: argmemonly nounwind willreturn
declare void @llvm.memset.p0i8.i64(i8* nocapture writeonly, i8, i64, i1 immarg) addrspace(1) #16

attributes #0 = { nofree norecurse noreturn nounwind uwtable "target-cpu"="atmega328p" }
attributes #1 = { norecurse nounwind readnone uwtable "target-cpu"="atmega328p" }
attributes #2 = { uwtable "target-cpu"="atmega328p" }
attributes #3 = { nofree norecurse nounwind uwtable writeonly "target-cpu"="atmega328p" }
attributes #4 = { nounwind readnone uwtable "target-cpu"="atmega328p" }
attributes #5 = { norecurse nounwind readonly uwtable "target-cpu"="atmega328p" }
attributes #6 = { nounwind readonly uwtable "target-cpu"="atmega328p" }
attributes #7 = { norecurse noreturn nounwind readnone uwtable "target-cpu"="atmega328p" }
attributes #8 = { nofree norecurse nounwind uwtable "target-cpu"="atmega328p" }
attributes #9 = { nounwind uwtable "target-cpu"="atmega328p" }
attributes #10 = { cold noinline noreturn uwtable "target-cpu"="atmega328p" }
attributes #11 = { noinline uwtable "target-cpu"="atmega328p" }
attributes #12 = { inlinehint uwtable "target-cpu"="atmega328p" }
attributes #13 = { noreturn uwtable "target-cpu"="atmega328p" }
attributes #14 = { nounwind uwtable writeonly "target-cpu"="atmega328p" }
attributes #15 = { "target-cpu"="atmega328p" }
attributes #16 = { argmemonly nounwind willreturn }
attributes #17 = { nounwind willreturn }
attributes #18 = { nofree nounwind readonly uwtable "target-cpu"="atmega328p" }
attributes #19 = { nounwind readnone speculatable willreturn }
attributes #20 = { nounwind }

!llvm.module.flags = !{!0}

!0 = !{i32 7, !"PIC Level", i32 2}
!1 = !{!2}
!2 = distinct !{!2, !3, !"_ZN4core3fmt12USIZE_MARKER28_$u7b$$u7b$closure$u7d$$u7d$17h8ca0efdca87f35ddE: %ptr"}
!3 = distinct !{!3, !"_ZN4core3fmt12USIZE_MARKER28_$u7b$$u7b$closure$u7d$$u7d$17h8ca0efdca87f35ddE"}
!4 = !{!"branch_weights", i32 2000, i32 1}
!5 = !{!"misexpect", i64 0, i64 2000, i64 1}
!6 = !{!7}
!7 = distinct !{!7, !8, !"_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E: %self"}
!8 = distinct !{!8, !"_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E"}
!9 = !{!10}
!10 = distinct !{!10, !11, !"_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E: %self"}
!11 = distinct !{!11, !"_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E"}
!12 = !{!13}
!13 = distinct !{!13, !14, !"_ZN4core3num6bignum8Big32x4010from_small17h94c71c94acb91a97E: argument 0"}
!14 = distinct !{!14, !"_ZN4core3num6bignum8Big32x4010from_small17h94c71c94acb91a97E"}
!15 = !{!16, !18}
!16 = distinct !{!16, !17, !"_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E: %self"}
!17 = distinct !{!17, !"_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E"}
!18 = distinct !{!18, !19, !"_ZN4core3num6bignum8Big32x4010bit_length17he5a5e93bd40911c1E: %self"}
!19 = distinct !{!19, !"_ZN4core3num6bignum8Big32x4010bit_length17he5a5e93bd40911c1E"}
!20 = !{!21, !18}
!21 = distinct !{!21, !22, !"_ZN103_$LT$core..iter..adapters..TakeWhile$LT$I$C$P$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$8try_fold5check28_$u7b$$u7b$closure$u7d$$u7d$17hfaf89f2e710be57cE: argument 0"}
!22 = distinct !{!22, !"_ZN103_$LT$core..iter..adapters..TakeWhile$LT$I$C$P$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$8try_fold5check28_$u7b$$u7b$closure$u7d$$u7d$17hfaf89f2e710be57cE"}
!23 = !{!24, !26}
!24 = distinct !{!24, !25, !"_ZN103_$LT$core..iter..adapters..TakeWhile$LT$I$C$P$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4fold17hb3fe199838c8ed41E: %self"}
!25 = distinct !{!25, !"_ZN103_$LT$core..iter..adapters..TakeWhile$LT$I$C$P$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4fold17hb3fe199838c8ed41E"}
!26 = distinct !{!26, !27, !"_ZN4core4iter6traits8iterator8Iterator5count17h833b2edda10f8956E: %self"}
!27 = distinct !{!27, !"_ZN4core4iter6traits8iterator8Iterator5count17h833b2edda10f8956E"}
!28 = !{!29}
!29 = distinct !{!29, !30, !"_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E: %self"}
!30 = distinct !{!30, !"_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E"}
!31 = !{!29, !18}
!32 = !{!33}
!33 = distinct !{!33, !34, !"_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E: %self"}
!34 = distinct !{!34, !"_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E"}
!35 = !{!36}
!36 = distinct !{!36, !37, !"_ZN4core3num7dec2flt5parse10eat_digits17hcb077e3af2594a76E: argument 0"}
!37 = distinct !{!37, !"_ZN4core3num7dec2flt5parse10eat_digits17hcb077e3af2594a76E"}
!38 = !{!39}
!39 = distinct !{!39, !37, !"_ZN4core3num7dec2flt5parse10eat_digits17hcb077e3af2594a76E: %s.0"}
!40 = !{!41}
!41 = distinct !{!41, !42, !"_ZN4core3num7dec2flt5parse10eat_digits17hcb077e3af2594a76E: argument 0"}
!42 = distinct !{!42, !"_ZN4core3num7dec2flt5parse10eat_digits17hcb077e3af2594a76E"}
!43 = !{!44}
!44 = distinct !{!44, !42, !"_ZN4core3num7dec2flt5parse10eat_digits17hcb077e3af2594a76E: %s.0"}
!45 = !{!46}
!46 = distinct !{!46, !47, !"_ZN4core3num7dec2flt5parse10eat_digits17hcb077e3af2594a76E: argument 0"}
!47 = distinct !{!47, !"_ZN4core3num7dec2flt5parse10eat_digits17hcb077e3af2594a76E"}
!48 = !{!49}
!49 = distinct !{!49, !47, !"_ZN4core3num7dec2flt5parse10eat_digits17hcb077e3af2594a76E: %s.0"}
!50 = !{!51}
!51 = distinct !{!51, !52, !"_ZN70_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..cmp..PartialEq$GT$2eq17h8fc1261f3e06ac1cE: %self"}
!52 = distinct !{!52, !"_ZN70_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..cmp..PartialEq$GT$2eq17h8fc1261f3e06ac1cE"}
!53 = !{!54}
!54 = distinct !{!54, !55, !"_ZN4core3num7dec2flt3num18from_str_unchecked17hee47d75fd5efa3f4E: %bytes.0"}
!55 = distinct !{!55, !"_ZN4core3num7dec2flt3num18from_str_unchecked17hee47d75fd5efa3f4E"}
!56 = !{!57, !59}
!57 = distinct !{!57, !58, !"_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E: %self"}
!58 = distinct !{!58, !"_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E"}
!59 = distinct !{!59, !60, !"_ZN4core3num6bignum8Big32x4010bit_length17he5a5e93bd40911c1E: %self"}
!60 = distinct !{!60, !"_ZN4core3num6bignum8Big32x4010bit_length17he5a5e93bd40911c1E"}
!61 = !{!62, !59}
!62 = distinct !{!62, !63, !"_ZN103_$LT$core..iter..adapters..TakeWhile$LT$I$C$P$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$8try_fold5check28_$u7b$$u7b$closure$u7d$$u7d$17hfaf89f2e710be57cE: argument 0"}
!63 = distinct !{!63, !"_ZN103_$LT$core..iter..adapters..TakeWhile$LT$I$C$P$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$8try_fold5check28_$u7b$$u7b$closure$u7d$$u7d$17hfaf89f2e710be57cE"}
!64 = !{!65, !67}
!65 = distinct !{!65, !66, !"_ZN103_$LT$core..iter..adapters..TakeWhile$LT$I$C$P$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4fold17hb3fe199838c8ed41E: %self"}
!66 = distinct !{!66, !"_ZN103_$LT$core..iter..adapters..TakeWhile$LT$I$C$P$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4fold17hb3fe199838c8ed41E"}
!67 = distinct !{!67, !68, !"_ZN4core4iter6traits8iterator8Iterator5count17h833b2edda10f8956E: %self"}
!68 = distinct !{!68, !"_ZN4core4iter6traits8iterator8Iterator5count17h833b2edda10f8956E"}
!69 = !{!70}
!70 = distinct !{!70, !71, !"_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E: %self"}
!71 = distinct !{!71, !"_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E"}
!72 = !{!70, !59}
!73 = !{!74}
!74 = distinct !{!74, !75, !"_ZN4core3num7dec2flt3num8get_bits17h63dbbac52a9956dfE: %x"}
!75 = distinct !{!75, !"_ZN4core3num7dec2flt3num8get_bits17h63dbbac52a9956dfE"}
!76 = !{!77, !74}
!77 = distinct !{!77, !78, !"_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E: %self"}
!78 = distinct !{!78, !"_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E"}
!79 = !{!80, !82}
!80 = distinct !{!80, !81, !"_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E: %self"}
!81 = distinct !{!81, !"_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E"}
!82 = distinct !{!82, !83, !"_ZN4core3num7dec2flt3num21compare_with_half_ulp17h681c619de51d1debE: %f"}
!83 = distinct !{!83, !"_ZN4core3num7dec2flt3num21compare_with_half_ulp17h681c619de51d1debE"}
!84 = !{!85, !82}
!85 = distinct !{!85, !86, !"_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E: %self"}
!86 = distinct !{!86, !"_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E"}
!87 = !{i8 0, i8 2}
!88 = !{!89}
!89 = distinct !{!89, !90, !"_ZN4core3num7dec2flt15ParseFloatError13__description17h041b6c9eccbc2702E: %self"}
!90 = distinct !{!90, !"_ZN4core3num7dec2flt15ParseFloatError13__description17h041b6c9eccbc2702E"}
!91 = !{!"branch_weights", i32 1, i32 2000}
!92 = !{!93, !95, !97}
!93 = distinct !{!93, !94, !"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E: %self.0"}
!94 = distinct !{!94, !"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E"}
!95 = distinct !{!95, !96, !"_ZN4core3str6traits105_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeFrom$LT$usize$GT$$GT$3get17hba6b301332fabfc0E: %slice.0"}
!96 = distinct !{!96, !"_ZN4core3str6traits105_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeFrom$LT$usize$GT$$GT$3get17hba6b301332fabfc0E"}
!97 = distinct !{!97, !98, !"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E: %self.0"}
!98 = distinct !{!98, !"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E"}
!99 = !{!100, !102}
!100 = distinct !{!100, !101, !"_ZN4core3str6traits105_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeFrom$LT$usize$GT$$GT$5index28_$u7b$$u7b$closure$u7d$$u7d$17h277f2c6e8ba2e0a0E: %_1"}
!101 = distinct !{!101, !"_ZN4core3str6traits105_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeFrom$LT$usize$GT$$GT$5index28_$u7b$$u7b$closure$u7d$$u7d$17h277f2c6e8ba2e0a0E"}
!102 = distinct !{!102, !103, !"_ZN4core6option15Option$LT$T$GT$14unwrap_or_else17h0062a1a0c3b34d3aE: %f"}
!103 = distinct !{!103, !"_ZN4core6option15Option$LT$T$GT$14unwrap_or_else17h0062a1a0c3b34d3aE"}
!104 = !{!105, !107, !109}
!105 = distinct !{!105, !106, !"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E: %self.0"}
!106 = distinct !{!106, !"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E"}
!107 = distinct !{!107, !108, !"_ZN4core3str6traits105_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeFrom$LT$usize$GT$$GT$3get17hba6b301332fabfc0E: %slice.0"}
!108 = distinct !{!108, !"_ZN4core3str6traits105_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeFrom$LT$usize$GT$$GT$3get17hba6b301332fabfc0E"}
!109 = distinct !{!109, !110, !"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E: %self.0"}
!110 = distinct !{!110, !"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E"}
!111 = !{!112, !114}
!112 = distinct !{!112, !113, !"_ZN4core3str6traits105_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeFrom$LT$usize$GT$$GT$5index28_$u7b$$u7b$closure$u7d$$u7d$17h277f2c6e8ba2e0a0E: %_1"}
!113 = distinct !{!113, !"_ZN4core3str6traits105_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeFrom$LT$usize$GT$$GT$5index28_$u7b$$u7b$closure$u7d$$u7d$17h277f2c6e8ba2e0a0E"}
!114 = distinct !{!114, !115, !"_ZN4core6option15Option$LT$T$GT$14unwrap_or_else17h0062a1a0c3b34d3aE: %f"}
!115 = distinct !{!115, !"_ZN4core6option15Option$LT$T$GT$14unwrap_or_else17h0062a1a0c3b34d3aE"}
!116 = !{!117}
!117 = distinct !{!117, !118, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: argument 0"}
!118 = distinct !{!118, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E"}
!119 = !{!120, !121}
!120 = distinct !{!120, !118, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %pieces.0"}
!121 = distinct !{!121, !118, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %args.0"}
!122 = !{i64 0, i64 65}
!123 = !{!124}
!124 = distinct !{!124, !125, !"_ZN4core3num6bignum8Big32x408from_u6417ha925c6f2f34e00d9E: argument 0"}
!125 = distinct !{!125, !"_ZN4core3num6bignum8Big32x408from_u6417ha925c6f2f34e00d9E"}
!126 = !{!127}
!127 = distinct !{!127, !128, !"_ZN4core3num6bignum8Big32x408from_u6417ha925c6f2f34e00d9E: argument 0"}
!128 = distinct !{!128, !"_ZN4core3num6bignum8Big32x408from_u6417ha925c6f2f34e00d9E"}
!129 = !{!130}
!130 = distinct !{!130, !131, !"_ZN4core3num6bignum8Big32x408from_u6417ha925c6f2f34e00d9E: argument 0"}
!131 = distinct !{!131, !"_ZN4core3num6bignum8Big32x408from_u6417ha925c6f2f34e00d9E"}
!132 = !{!133}
!133 = distinct !{!133, !134, !"_ZN4core3num6bignum8Big32x4010from_small17h94c71c94acb91a97E: argument 0"}
!134 = distinct !{!134, !"_ZN4core3num6bignum8Big32x4010from_small17h94c71c94acb91a97E"}
!135 = !{!136}
!136 = distinct !{!136, !137, !"_ZN66_$LT$core..num..bignum..Big32x40$u20$as$u20$core..clone..Clone$GT$5clone17h22a7a672ed589f21E: %self"}
!137 = distinct !{!137, !"_ZN66_$LT$core..num..bignum..Big32x40$u20$as$u20$core..clone..Clone$GT$5clone17h22a7a672ed589f21E"}
!138 = !{!139}
!139 = distinct !{!139, !137, !"_ZN66_$LT$core..num..bignum..Big32x40$u20$as$u20$core..clone..Clone$GT$5clone17h22a7a672ed589f21E: argument 0"}
!140 = !{!139, !136}
!141 = !{!142}
!142 = distinct !{!142, !143, !"_ZN4core3num6bignum8Big32x403add17hc5fc99826d0d9f42E: %other"}
!143 = distinct !{!143, !"_ZN4core3num6bignum8Big32x403add17hc5fc99826d0d9f42E"}
!144 = !{!145}
!145 = distinct !{!145, !146, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE: %self"}
!146 = distinct !{!146, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE"}
!147 = !{!148}
!148 = distinct !{!148, !146, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE: %other"}
!149 = !{!150, !152, !145}
!150 = distinct !{!150, !151, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE: argument 0"}
!151 = distinct !{!151, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE"}
!152 = distinct !{!152, !153, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE: %self"}
!153 = distinct !{!153, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE"}
!154 = !{!155, !157, !148}
!155 = distinct !{!155, !156, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE: argument 0"}
!156 = distinct !{!156, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE"}
!157 = distinct !{!157, !158, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE: %self"}
!158 = distinct !{!158, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE"}
!159 = !{!160}
!160 = distinct !{!160, !161, !"_ZN66_$LT$core..num..bignum..Big32x40$u20$as$u20$core..clone..Clone$GT$5clone17h22a7a672ed589f21E: argument 0"}
!161 = distinct !{!161, !"_ZN66_$LT$core..num..bignum..Big32x40$u20$as$u20$core..clone..Clone$GT$5clone17h22a7a672ed589f21E"}
!162 = !{!163}
!163 = distinct !{!163, !161, !"_ZN66_$LT$core..num..bignum..Big32x40$u20$as$u20$core..clone..Clone$GT$5clone17h22a7a672ed589f21E: %self"}
!164 = !{!160, !163}
!165 = !{!166}
!166 = distinct !{!166, !167, !"_ZN66_$LT$core..num..bignum..Big32x40$u20$as$u20$core..clone..Clone$GT$5clone17h22a7a672ed589f21E: %self"}
!167 = distinct !{!167, !"_ZN66_$LT$core..num..bignum..Big32x40$u20$as$u20$core..clone..Clone$GT$5clone17h22a7a672ed589f21E"}
!168 = !{!169}
!169 = distinct !{!169, !167, !"_ZN66_$LT$core..num..bignum..Big32x40$u20$as$u20$core..clone..Clone$GT$5clone17h22a7a672ed589f21E: argument 0"}
!170 = !{!169, !166}
!171 = !{!172}
!172 = distinct !{!172, !173, !"_ZN66_$LT$core..num..bignum..Big32x40$u20$as$u20$core..clone..Clone$GT$5clone17h22a7a672ed589f21E: %self"}
!173 = distinct !{!173, !"_ZN66_$LT$core..num..bignum..Big32x40$u20$as$u20$core..clone..Clone$GT$5clone17h22a7a672ed589f21E"}
!174 = !{!175}
!175 = distinct !{!175, !173, !"_ZN66_$LT$core..num..bignum..Big32x40$u20$as$u20$core..clone..Clone$GT$5clone17h22a7a672ed589f21E: argument 0"}
!176 = !{!175, !172}
!177 = !{!178, !180, !182}
!178 = distinct !{!178, !179, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE: %self"}
!179 = distinct !{!179, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE"}
!180 = distinct !{!180, !181, !"_ZN69_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17h4c44a10cf557a94aE: %self"}
!181 = distinct !{!181, !"_ZN69_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17h4c44a10cf557a94aE"}
!182 = distinct !{!182, !183, !"_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E: %self"}
!183 = distinct !{!183, !"_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E"}
!184 = !{!185, !186, !187, !188, !190, !191, !192}
!185 = distinct !{!185, !179, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE: %other"}
!186 = distinct !{!186, !181, !"_ZN69_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17h4c44a10cf557a94aE: %other"}
!187 = distinct !{!187, !183, !"_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E: %other"}
!188 = distinct !{!188, !189, !"_ZN4core3num7flt2dec8strategy6dragon15div_rem_upto_1617haf525d19dbb221baE: %scale"}
!189 = distinct !{!189, !"_ZN4core3num7flt2dec8strategy6dragon15div_rem_upto_1617haf525d19dbb221baE"}
!190 = distinct !{!190, !189, !"_ZN4core3num7flt2dec8strategy6dragon15div_rem_upto_1617haf525d19dbb221baE: %scale2"}
!191 = distinct !{!191, !189, !"_ZN4core3num7flt2dec8strategy6dragon15div_rem_upto_1617haf525d19dbb221baE: %scale4"}
!192 = distinct !{!192, !189, !"_ZN4core3num7flt2dec8strategy6dragon15div_rem_upto_1617haf525d19dbb221baE: %scale8"}
!193 = !{!185, !186, !187, !192}
!194 = !{!178, !180, !182, !188, !190, !191}
!195 = !{!196, !198, !178, !180, !182}
!196 = distinct !{!196, !197, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE: argument 0"}
!197 = distinct !{!197, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE"}
!198 = distinct !{!198, !199, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE: %self"}
!199 = distinct !{!199, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE"}
!200 = !{!201, !203, !185, !186, !187, !192}
!201 = distinct !{!201, !202, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE: argument 0"}
!202 = distinct !{!202, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE"}
!203 = distinct !{!203, !204, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE: %self"}
!204 = distinct !{!204, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE"}
!205 = !{!206, !188, !190, !191, !192}
!206 = distinct !{!206, !207, !"_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE: %other"}
!207 = distinct !{!207, !"_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE"}
!208 = !{!206, !192}
!209 = !{!188, !190, !191}
!210 = !{!206}
!211 = !{!212, !214, !216, !218, !220}
!212 = distinct !{!212, !213, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE: argument 0"}
!213 = distinct !{!213, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE"}
!214 = distinct !{!214, !215, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE: %self"}
!215 = distinct !{!215, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE"}
!216 = distinct !{!216, !217, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE: %self"}
!217 = distinct !{!217, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE"}
!218 = distinct !{!218, !219, !"_ZN69_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17h4c44a10cf557a94aE: %self"}
!219 = distinct !{!219, !"_ZN69_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17h4c44a10cf557a94aE"}
!220 = distinct !{!220, !221, !"_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E: %self"}
!221 = distinct !{!221, !"_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E"}
!222 = !{!223, !224, !225, !188, !190, !191, !192}
!223 = distinct !{!223, !217, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE: %other"}
!224 = distinct !{!224, !219, !"_ZN69_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17h4c44a10cf557a94aE: %other"}
!225 = distinct !{!225, !221, !"_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E: %other"}
!226 = !{!227, !229, !223, !224, !225, !191}
!227 = distinct !{!227, !228, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE: argument 0"}
!228 = distinct !{!228, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE"}
!229 = distinct !{!229, !230, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE: %self"}
!230 = distinct !{!230, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE"}
!231 = !{!216, !218, !220, !188, !190, !192}
!232 = !{!233, !188, !190, !191, !192}
!233 = distinct !{!233, !234, !"_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE: %other"}
!234 = distinct !{!234, !"_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE"}
!235 = !{!233, !191}
!236 = !{!188, !190, !192}
!237 = !{!233}
!238 = !{!239, !241, !243, !245, !247}
!239 = distinct !{!239, !240, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE: argument 0"}
!240 = distinct !{!240, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE"}
!241 = distinct !{!241, !242, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE: %self"}
!242 = distinct !{!242, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE"}
!243 = distinct !{!243, !244, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE: %self"}
!244 = distinct !{!244, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE"}
!245 = distinct !{!245, !246, !"_ZN69_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17h4c44a10cf557a94aE: %self"}
!246 = distinct !{!246, !"_ZN69_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17h4c44a10cf557a94aE"}
!247 = distinct !{!247, !248, !"_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E: %self"}
!248 = distinct !{!248, !"_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E"}
!249 = !{!250, !251, !252, !188, !190, !191, !192}
!250 = distinct !{!250, !244, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE: %other"}
!251 = distinct !{!251, !246, !"_ZN69_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17h4c44a10cf557a94aE: %other"}
!252 = distinct !{!252, !248, !"_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E: %other"}
!253 = !{!254, !256, !250, !251, !252, !190}
!254 = distinct !{!254, !255, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE: argument 0"}
!255 = distinct !{!255, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE"}
!256 = distinct !{!256, !257, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE: %self"}
!257 = distinct !{!257, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE"}
!258 = !{!243, !245, !247, !188, !191, !192}
!259 = !{!260, !188, !190, !191, !192}
!260 = distinct !{!260, !261, !"_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE: %other"}
!261 = distinct !{!261, !"_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE"}
!262 = !{!260, !190}
!263 = !{!188, !191, !192}
!264 = !{!260}
!265 = !{!266, !268, !270, !272, !274}
!266 = distinct !{!266, !267, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE: argument 0"}
!267 = distinct !{!267, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE"}
!268 = distinct !{!268, !269, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE: %self"}
!269 = distinct !{!269, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE"}
!270 = distinct !{!270, !271, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE: %self"}
!271 = distinct !{!271, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE"}
!272 = distinct !{!272, !273, !"_ZN69_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17h4c44a10cf557a94aE: %self"}
!273 = distinct !{!273, !"_ZN69_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17h4c44a10cf557a94aE"}
!274 = distinct !{!274, !275, !"_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E: %self"}
!275 = distinct !{!275, !"_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E"}
!276 = !{!277, !278, !279, !188, !190, !191, !192}
!277 = distinct !{!277, !271, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE: %other"}
!278 = distinct !{!278, !273, !"_ZN69_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17h4c44a10cf557a94aE: %other"}
!279 = distinct !{!279, !275, !"_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E: %other"}
!280 = !{!281, !283, !277, !278, !279, !188}
!281 = distinct !{!281, !282, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE: argument 0"}
!282 = distinct !{!282, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE"}
!283 = distinct !{!283, !284, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE: %self"}
!284 = distinct !{!284, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE"}
!285 = !{!270, !272, !274, !190, !191, !192}
!286 = !{!287, !188, !190, !191, !192}
!287 = distinct !{!287, !288, !"_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE: %other"}
!288 = distinct !{!288, !"_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE"}
!289 = !{!287, !188}
!290 = !{!190, !191, !192}
!291 = !{!287}
!292 = !{!293}
!293 = distinct !{!293, !294, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE: %other"}
!294 = distinct !{!294, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE"}
!295 = !{!296}
!296 = distinct !{!296, !294, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE: %self"}
!297 = !{!298, !300, !296}
!298 = distinct !{!298, !299, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE: argument 0"}
!299 = distinct !{!299, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE"}
!300 = distinct !{!300, !301, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE: %self"}
!301 = distinct !{!301, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE"}
!302 = !{!303, !305, !293}
!303 = distinct !{!303, !304, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE: argument 0"}
!304 = distinct !{!304, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE"}
!305 = distinct !{!305, !306, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE: %self"}
!306 = distinct !{!306, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE"}
!307 = !{!308}
!308 = distinct !{!308, !309, !"_ZN66_$LT$core..num..bignum..Big32x40$u20$as$u20$core..clone..Clone$GT$5clone17h22a7a672ed589f21E: argument 0"}
!309 = distinct !{!309, !"_ZN66_$LT$core..num..bignum..Big32x40$u20$as$u20$core..clone..Clone$GT$5clone17h22a7a672ed589f21E"}
!310 = !{!311}
!311 = distinct !{!311, !309, !"_ZN66_$LT$core..num..bignum..Big32x40$u20$as$u20$core..clone..Clone$GT$5clone17h22a7a672ed589f21E: %self"}
!312 = !{!308, !311}
!313 = !{!314}
!314 = distinct !{!314, !315, !"_ZN4core3num6bignum8Big32x403add17hc5fc99826d0d9f42E: %other"}
!315 = distinct !{!315, !"_ZN4core3num6bignum8Big32x403add17hc5fc99826d0d9f42E"}
!316 = !{!317, !319, !321}
!317 = distinct !{!317, !318, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE: argument 0"}
!318 = distinct !{!318, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE"}
!319 = distinct !{!319, !320, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE: %self"}
!320 = distinct !{!320, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE"}
!321 = distinct !{!321, !322, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE: %self"}
!322 = distinct !{!322, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE"}
!323 = !{!324}
!324 = distinct !{!324, !322, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE: %other"}
!325 = !{!326, !328, !324}
!326 = distinct !{!326, !327, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE: argument 0"}
!327 = distinct !{!327, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE"}
!328 = distinct !{!328, !329, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE: %self"}
!329 = distinct !{!329, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE"}
!330 = !{!321}
!331 = !{!332, !334, !336}
!332 = distinct !{!332, !333, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE: %self"}
!333 = distinct !{!333, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE"}
!334 = distinct !{!334, !335, !"_ZN69_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17h4c44a10cf557a94aE: %self"}
!335 = distinct !{!335, !"_ZN69_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17h4c44a10cf557a94aE"}
!336 = distinct !{!336, !337, !"_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E: %self"}
!337 = distinct !{!337, !"_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E"}
!338 = !{!339, !340, !341}
!339 = distinct !{!339, !333, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE: %other"}
!340 = distinct !{!340, !335, !"_ZN69_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17h4c44a10cf557a94aE: %other"}
!341 = distinct !{!341, !337, !"_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E: %other"}
!342 = !{!343, !345, !332, !334, !336}
!343 = distinct !{!343, !344, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE: argument 0"}
!344 = distinct !{!344, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE"}
!345 = distinct !{!345, !346, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE: %self"}
!346 = distinct !{!346, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE"}
!347 = !{!348, !350, !339, !340, !341}
!348 = distinct !{!348, !349, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE: argument 0"}
!349 = distinct !{!349, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE"}
!350 = distinct !{!350, !351, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE: %self"}
!351 = distinct !{!351, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE"}
!352 = !{!353}
!353 = distinct !{!353, !354, !"_ZN4core3num6bignum8Big32x408from_u6417ha925c6f2f34e00d9E: argument 0"}
!354 = distinct !{!354, !"_ZN4core3num6bignum8Big32x408from_u6417ha925c6f2f34e00d9E"}
!355 = !{!356}
!356 = distinct !{!356, !357, !"_ZN4core3num6bignum8Big32x4010from_small17h94c71c94acb91a97E: argument 0"}
!357 = distinct !{!357, !"_ZN4core3num6bignum8Big32x4010from_small17h94c71c94acb91a97E"}
!358 = !{!359}
!359 = distinct !{!359, !360, !"_ZN66_$LT$core..num..bignum..Big32x40$u20$as$u20$core..clone..Clone$GT$5clone17h22a7a672ed589f21E: %self"}
!360 = distinct !{!360, !"_ZN66_$LT$core..num..bignum..Big32x40$u20$as$u20$core..clone..Clone$GT$5clone17h22a7a672ed589f21E"}
!361 = !{!362}
!362 = distinct !{!362, !360, !"_ZN66_$LT$core..num..bignum..Big32x40$u20$as$u20$core..clone..Clone$GT$5clone17h22a7a672ed589f21E: argument 0"}
!363 = !{!362, !359}
!364 = !{!365}
!365 = distinct !{!365, !366, !"_ZN4core3num6bignum8Big32x403add17hc5fc99826d0d9f42E: %other"}
!366 = distinct !{!366, !"_ZN4core3num6bignum8Big32x403add17hc5fc99826d0d9f42E"}
!367 = !{!368, !370, !372}
!368 = distinct !{!368, !369, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE: %other"}
!369 = distinct !{!369, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE"}
!370 = distinct !{!370, !371, !"_ZN69_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17h4c44a10cf557a94aE: %other"}
!371 = distinct !{!371, !"_ZN69_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17h4c44a10cf557a94aE"}
!372 = distinct !{!372, !373, !"_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E: %other"}
!373 = distinct !{!373, !"_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E"}
!374 = !{!375, !376, !377}
!375 = distinct !{!375, !369, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE: %self"}
!376 = distinct !{!376, !371, !"_ZN69_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17h4c44a10cf557a94aE: %self"}
!377 = distinct !{!377, !373, !"_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E: %self"}
!378 = !{!379, !381, !375, !376, !377}
!379 = distinct !{!379, !380, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE: argument 0"}
!380 = distinct !{!380, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE"}
!381 = distinct !{!381, !382, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE: %self"}
!382 = distinct !{!382, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE"}
!383 = !{!384, !386, !368, !370, !372}
!384 = distinct !{!384, !385, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE: argument 0"}
!385 = distinct !{!385, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE"}
!386 = distinct !{!386, !387, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE: %self"}
!387 = distinct !{!387, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE"}
!388 = !{!389}
!389 = distinct !{!389, !390, !"_ZN66_$LT$core..num..bignum..Big32x40$u20$as$u20$core..clone..Clone$GT$5clone17h22a7a672ed589f21E: argument 0"}
!390 = distinct !{!390, !"_ZN66_$LT$core..num..bignum..Big32x40$u20$as$u20$core..clone..Clone$GT$5clone17h22a7a672ed589f21E"}
!391 = !{!392}
!392 = distinct !{!392, !390, !"_ZN66_$LT$core..num..bignum..Big32x40$u20$as$u20$core..clone..Clone$GT$5clone17h22a7a672ed589f21E: %self"}
!393 = !{!389, !392}
!394 = !{!395}
!395 = distinct !{!395, !396, !"_ZN66_$LT$core..num..bignum..Big32x40$u20$as$u20$core..clone..Clone$GT$5clone17h22a7a672ed589f21E: %self"}
!396 = distinct !{!396, !"_ZN66_$LT$core..num..bignum..Big32x40$u20$as$u20$core..clone..Clone$GT$5clone17h22a7a672ed589f21E"}
!397 = !{!398}
!398 = distinct !{!398, !396, !"_ZN66_$LT$core..num..bignum..Big32x40$u20$as$u20$core..clone..Clone$GT$5clone17h22a7a672ed589f21E: argument 0"}
!399 = !{!398, !395}
!400 = !{!401}
!401 = distinct !{!401, !402, !"_ZN66_$LT$core..num..bignum..Big32x40$u20$as$u20$core..clone..Clone$GT$5clone17h22a7a672ed589f21E: %self"}
!402 = distinct !{!402, !"_ZN66_$LT$core..num..bignum..Big32x40$u20$as$u20$core..clone..Clone$GT$5clone17h22a7a672ed589f21E"}
!403 = !{!404}
!404 = distinct !{!404, !402, !"_ZN66_$LT$core..num..bignum..Big32x40$u20$as$u20$core..clone..Clone$GT$5clone17h22a7a672ed589f21E: argument 0"}
!405 = !{!404, !401}
!406 = !{!407, !409}
!407 = distinct !{!407, !408, !"_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E: %self"}
!408 = distinct !{!408, !"_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E"}
!409 = distinct !{!409, !410, !"_ZN4core3num6bignum8Big32x407is_zero17hfecd2d706fe71641E: %self"}
!410 = distinct !{!410, !"_ZN4core3num6bignum8Big32x407is_zero17hfecd2d706fe71641E"}
!411 = !{!409}
!412 = !{!413, !415, !417, !419, !421}
!413 = distinct !{!413, !414, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE: argument 0"}
!414 = distinct !{!414, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE"}
!415 = distinct !{!415, !416, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE: %self"}
!416 = distinct !{!416, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE"}
!417 = distinct !{!417, !418, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE: %self"}
!418 = distinct !{!418, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE"}
!419 = distinct !{!419, !420, !"_ZN69_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17h4c44a10cf557a94aE: %self"}
!420 = distinct !{!420, !"_ZN69_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17h4c44a10cf557a94aE"}
!421 = distinct !{!421, !422, !"_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E: %self"}
!422 = distinct !{!422, !"_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E"}
!423 = !{!424, !425, !426}
!424 = distinct !{!424, !418, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE: %other"}
!425 = distinct !{!425, !420, !"_ZN69_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17h4c44a10cf557a94aE: %other"}
!426 = distinct !{!426, !422, !"_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E: %other"}
!427 = !{!428, !430, !424, !425, !426}
!428 = distinct !{!428, !429, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE: argument 0"}
!429 = distinct !{!429, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE"}
!430 = distinct !{!430, !431, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE: %self"}
!431 = distinct !{!431, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE"}
!432 = !{!417, !419, !421}
!433 = !{!434}
!434 = distinct !{!434, !435, !"_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE: %other"}
!435 = distinct !{!435, !"_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE"}
!436 = !{!437, !439, !441, !443, !445}
!437 = distinct !{!437, !438, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE: argument 0"}
!438 = distinct !{!438, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE"}
!439 = distinct !{!439, !440, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE: %self"}
!440 = distinct !{!440, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE"}
!441 = distinct !{!441, !442, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE: %self"}
!442 = distinct !{!442, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE"}
!443 = distinct !{!443, !444, !"_ZN69_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17h4c44a10cf557a94aE: %self"}
!444 = distinct !{!444, !"_ZN69_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17h4c44a10cf557a94aE"}
!445 = distinct !{!445, !446, !"_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E: %self"}
!446 = distinct !{!446, !"_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E"}
!447 = !{!448, !449, !450}
!448 = distinct !{!448, !442, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE: %other"}
!449 = distinct !{!449, !444, !"_ZN69_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17h4c44a10cf557a94aE: %other"}
!450 = distinct !{!450, !446, !"_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E: %other"}
!451 = !{!452, !454, !448, !449, !450}
!452 = distinct !{!452, !453, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE: argument 0"}
!453 = distinct !{!453, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE"}
!454 = distinct !{!454, !455, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE: %self"}
!455 = distinct !{!455, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE"}
!456 = !{!441, !443, !445}
!457 = !{!458}
!458 = distinct !{!458, !459, !"_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE: %other"}
!459 = distinct !{!459, !"_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE"}
!460 = !{!461, !463, !465, !467, !469}
!461 = distinct !{!461, !462, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE: argument 0"}
!462 = distinct !{!462, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE"}
!463 = distinct !{!463, !464, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE: %self"}
!464 = distinct !{!464, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE"}
!465 = distinct !{!465, !466, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE: %self"}
!466 = distinct !{!466, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE"}
!467 = distinct !{!467, !468, !"_ZN69_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17h4c44a10cf557a94aE: %self"}
!468 = distinct !{!468, !"_ZN69_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17h4c44a10cf557a94aE"}
!469 = distinct !{!469, !470, !"_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E: %self"}
!470 = distinct !{!470, !"_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E"}
!471 = !{!472, !473, !474}
!472 = distinct !{!472, !466, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE: %other"}
!473 = distinct !{!473, !468, !"_ZN69_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17h4c44a10cf557a94aE: %other"}
!474 = distinct !{!474, !470, !"_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E: %other"}
!475 = !{!476, !478, !472, !473, !474}
!476 = distinct !{!476, !477, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE: argument 0"}
!477 = distinct !{!477, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE"}
!478 = distinct !{!478, !479, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE: %self"}
!479 = distinct !{!479, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE"}
!480 = !{!465, !467, !469}
!481 = !{!482}
!482 = distinct !{!482, !483, !"_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE: %other"}
!483 = distinct !{!483, !"_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE"}
!484 = !{!485, !487, !489, !491, !493}
!485 = distinct !{!485, !486, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE: argument 0"}
!486 = distinct !{!486, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE"}
!487 = distinct !{!487, !488, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE: %self"}
!488 = distinct !{!488, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE"}
!489 = distinct !{!489, !490, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE: %self"}
!490 = distinct !{!490, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE"}
!491 = distinct !{!491, !492, !"_ZN69_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17h4c44a10cf557a94aE: %self"}
!492 = distinct !{!492, !"_ZN69_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17h4c44a10cf557a94aE"}
!493 = distinct !{!493, !494, !"_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E: %self"}
!494 = distinct !{!494, !"_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E"}
!495 = !{!496, !497, !498}
!496 = distinct !{!496, !490, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE: %other"}
!497 = distinct !{!497, !492, !"_ZN69_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17h4c44a10cf557a94aE: %other"}
!498 = distinct !{!498, !494, !"_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E: %other"}
!499 = !{!500, !502, !496, !497, !498}
!500 = distinct !{!500, !501, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE: argument 0"}
!501 = distinct !{!501, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE"}
!502 = distinct !{!502, !503, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE: %self"}
!503 = distinct !{!503, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE"}
!504 = !{!489, !491, !493}
!505 = !{!506}
!506 = distinct !{!506, !507, !"_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE: %other"}
!507 = distinct !{!507, !"_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE"}
!508 = !{!509}
!509 = distinct !{!509, !510, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE: %self"}
!510 = distinct !{!510, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE"}
!511 = !{!512}
!512 = distinct !{!512, !510, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE: %other"}
!513 = !{!514, !516, !509}
!514 = distinct !{!514, !515, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE: argument 0"}
!515 = distinct !{!515, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE"}
!516 = distinct !{!516, !517, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE: %self"}
!517 = distinct !{!517, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE"}
!518 = !{!519, !521, !512}
!519 = distinct !{!519, !520, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE: argument 0"}
!520 = distinct !{!520, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE"}
!521 = distinct !{!521, !522, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE: %self"}
!522 = distinct !{!522, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE"}
!523 = !{!524}
!524 = distinct !{!524, !525, !"_ZN4core3num9diy_float2Fp12normalize_to17hce0993befe2b6f77E: %self"}
!525 = distinct !{!525, !"_ZN4core3num9diy_float2Fp12normalize_to17hce0993befe2b6f77E"}
!526 = !{!527}
!527 = distinct !{!527, !528, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: argument 0"}
!528 = distinct !{!528, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E"}
!529 = !{!530, !531, !524}
!530 = distinct !{!530, !528, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %pieces.0"}
!531 = distinct !{!531, !528, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %args.0"}
!532 = !{!533}
!533 = distinct !{!533, !534, !"_ZN4core3num9diy_float2Fp12normalize_to17hce0993befe2b6f77E: %self"}
!534 = distinct !{!534, !"_ZN4core3num9diy_float2Fp12normalize_to17hce0993befe2b6f77E"}
!535 = !{!536}
!536 = distinct !{!536, !537, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: argument 0"}
!537 = distinct !{!537, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E"}
!538 = !{!539, !540, !533}
!539 = distinct !{!539, !537, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %pieces.0"}
!540 = distinct !{!540, !537, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %args.0"}
!541 = !{!542}
!542 = distinct !{!542, !543, !"_ZN4core3num7flt2dec8strategy5grisu12cached_power17ha181dc46c2aec330E: argument 0"}
!543 = distinct !{!543, !"_ZN4core3num7flt2dec8strategy5grisu12cached_power17ha181dc46c2aec330E"}
!544 = !{!545}
!545 = distinct !{!545, !546, !"_ZN4core3num7flt2dec8strategy5grisu19format_shortest_opt14round_and_weed17h02b183f23cd56b60E: argument 0"}
!546 = distinct !{!546, !"_ZN4core3num7flt2dec8strategy5grisu19format_shortest_opt14round_and_weed17h02b183f23cd56b60E"}
!547 = !{!545, !548}
!548 = distinct !{!548, !549, !"_ZN4core3num7flt2dec8strategy5grisu19format_shortest_opt14round_and_weed17h02b183f23cd56b60E: argument 0"}
!549 = distinct !{!549, !"_ZN4core3num7flt2dec8strategy5grisu19format_shortest_opt14round_and_weed17h02b183f23cd56b60E"}
!550 = !{!"misexpect", i64 1, i64 2000, i64 1}
!551 = !{!548}
!552 = !{!553}
!553 = distinct !{!553, !554, !"_ZN4core3num7flt2dec8strategy5grisu12cached_power17ha181dc46c2aec330E: argument 0"}
!554 = distinct !{!554, !"_ZN4core3num7flt2dec8strategy5grisu12cached_power17ha181dc46c2aec330E"}
!555 = !{!556}
!556 = distinct !{!556, !557, !"_ZN4core3num7flt2dec8strategy5grisu16format_exact_opt14possibly_round17h08d2900de1747388E: argument 0"}
!557 = distinct !{!557, !"_ZN4core3num7flt2dec8strategy5grisu16format_exact_opt14possibly_round17h08d2900de1747388E"}
!558 = !{!559}
!559 = distinct !{!559, !560, !"_ZN4core3num7flt2dec8strategy5grisu16format_exact_opt14possibly_round17h08d2900de1747388E: argument 0"}
!560 = distinct !{!560, !"_ZN4core3num7flt2dec8strategy5grisu16format_exact_opt14possibly_round17h08d2900de1747388E"}
!561 = !{!562}
!562 = distinct !{!562, !563, !"_ZN4core3num7flt2dec8strategy5grisu16format_exact_opt14possibly_round17h08d2900de1747388E: argument 0"}
!563 = distinct !{!563, !"_ZN4core3num7flt2dec8strategy5grisu16format_exact_opt14possibly_round17h08d2900de1747388E"}
!564 = !{i8 0, i8 3}
!565 = !{!566}
!566 = distinct !{!566, !567, !"_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E: %self"}
!567 = distinct !{!567, !"_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E"}
!568 = !{}
!569 = !{!570}
!570 = distinct !{!570, !571, !"_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E: %self"}
!571 = distinct !{!571, !"_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E"}
!572 = !{!573}
!573 = distinct !{!573, !574, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: argument 0"}
!574 = distinct !{!574, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E"}
!575 = !{!576, !577}
!576 = distinct !{!576, !574, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %pieces.0"}
!577 = distinct !{!577, !574, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %args.0"}
!578 = !{!579}
!579 = distinct !{!579, !580, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: argument 0"}
!580 = distinct !{!580, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E"}
!581 = !{!582, !583}
!582 = distinct !{!582, !580, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %pieces.0"}
!583 = distinct !{!583, !580, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %args.0"}
!584 = !{!585}
!585 = distinct !{!585, !586, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: argument 0"}
!586 = distinct !{!586, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E"}
!587 = !{!588, !589}
!588 = distinct !{!588, !586, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %pieces.0"}
!589 = distinct !{!589, !586, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %args.0"}
!590 = !{!591}
!591 = distinct !{!591, !592, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: argument 0"}
!592 = distinct !{!592, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E"}
!593 = !{!594, !595}
!594 = distinct !{!594, !592, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %pieces.0"}
!595 = distinct !{!595, !592, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %args.0"}
!596 = !{!597}
!597 = distinct !{!597, !598, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: argument 0"}
!598 = distinct !{!598, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E"}
!599 = !{!600, !601}
!600 = distinct !{!600, !598, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %pieces.0"}
!601 = distinct !{!601, !598, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %args.0"}
!602 = !{!603}
!603 = distinct !{!603, !604, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: argument 0"}
!604 = distinct !{!604, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E"}
!605 = !{!606, !607}
!606 = distinct !{!606, !604, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %pieces.0"}
!607 = distinct !{!607, !604, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %args.0"}
!608 = !{!609}
!609 = distinct !{!609, !610, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: argument 0"}
!610 = distinct !{!610, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E"}
!611 = !{!612, !613}
!612 = distinct !{!612, !610, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %pieces.0"}
!613 = distinct !{!613, !610, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %args.0"}
!614 = !{!615}
!615 = distinct !{!615, !616, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: argument 0"}
!616 = distinct !{!616, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E"}
!617 = !{!618, !619}
!618 = distinct !{!618, !616, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %pieces.0"}
!619 = distinct !{!619, !616, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %args.0"}
!620 = !{!621}
!621 = distinct !{!621, !622, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: argument 0"}
!622 = distinct !{!622, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E"}
!623 = !{!624, !625}
!624 = distinct !{!624, !622, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %pieces.0"}
!625 = distinct !{!625, !622, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %args.0"}
!626 = !{!627}
!627 = distinct !{!627, !628, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: argument 0"}
!628 = distinct !{!628, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E"}
!629 = !{!630, !631}
!630 = distinct !{!630, !628, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %pieces.0"}
!631 = distinct !{!631, !628, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %args.0"}
!632 = !{i8 0, i8 5}
!633 = !{!634}
!634 = distinct !{!634, !635, !"_ZN4core3num13ParseIntError13__description17h2442979957c72692E: %self"}
!635 = distinct !{!635, !"_ZN4core3num13ParseIntError13__description17h2442979957c72692E"}
!636 = !{!637}
!637 = distinct !{!637, !638, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E: %fmt"}
!638 = distinct !{!638, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E"}
!639 = !{!640}
!640 = distinct !{!640, !641, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E: %fmt"}
!641 = distinct !{!641, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E"}
!642 = !{!643, !645}
!643 = distinct !{!643, !644, !"_ZN85_$LT$core..ascii..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next28_$u7b$$u7b$closure$u7d$$u7d$17hf16299d4c8800e2dE: %_1"}
!644 = distinct !{!644, !"_ZN85_$LT$core..ascii..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next28_$u7b$$u7b$closure$u7d$$u7d$17hf16299d4c8800e2dE"}
!645 = distinct !{!645, !646, !"_ZN4core6option15Option$LT$T$GT$3map17haa1431184bf6f3dfE: %f"}
!646 = distinct !{!646, !"_ZN4core6option15Option$LT$T$GT$3map17haa1431184bf6f3dfE"}
!647 = !{!648}
!648 = distinct !{!648, !649, !"_ZN4core4iter5range101_$LT$impl$u20$core..iter..traits..iterator..Iterator$u20$for$u20$core..ops..range..Range$LT$A$GT$$GT$9size_hint17h9f0de617225536bdE: argument 0"}
!649 = distinct !{!649, !"_ZN4core4iter5range101_$LT$impl$u20$core..iter..traits..iterator..Iterator$u20$for$u20$core..ops..range..Range$LT$A$GT$$GT$9size_hint17h9f0de617225536bdE"}
!650 = !{!651, !653}
!651 = distinct !{!651, !652, !"_ZN100_$LT$core..ascii..EscapeDefault$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back28_$u7b$$u7b$closure$u7d$$u7d$17h004e9f6635e99a1aE: %_1"}
!652 = distinct !{!652, !"_ZN100_$LT$core..ascii..EscapeDefault$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back28_$u7b$$u7b$closure$u7d$$u7d$17h004e9f6635e99a1aE"}
!653 = distinct !{!653, !654, !"_ZN4core6option15Option$LT$T$GT$3map17h96ae0c3786dd533cE: %f"}
!654 = distinct !{!654, !"_ZN4core6option15Option$LT$T$GT$3map17h96ae0c3786dd533cE"}
!655 = !{!656, !658}
!656 = distinct !{!656, !657, !"_ZN100_$LT$core..ascii..EscapeDefault$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back28_$u7b$$u7b$closure$u7d$$u7d$17h004e9f6635e99a1aE: %_1"}
!657 = distinct !{!657, !"_ZN100_$LT$core..ascii..EscapeDefault$u20$as$u20$core..iter..traits..double_ended..DoubleEndedIterator$GT$9next_back28_$u7b$$u7b$closure$u7d$$u7d$17h004e9f6635e99a1aE"}
!658 = distinct !{!658, !659, !"_ZN4core6option15Option$LT$T$GT$3map17h96ae0c3786dd533cE: %f"}
!659 = distinct !{!659, !"_ZN4core6option15Option$LT$T$GT$3map17h96ae0c3786dd533cE"}
!660 = !{!661}
!661 = distinct !{!661, !662, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!662 = distinct !{!662, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!663 = !{!664, !666, !668, !669, !671}
!664 = distinct !{!664, !665, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!665 = distinct !{!665, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!666 = distinct !{!666, !667, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!667 = distinct !{!667, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!668 = distinct !{!668, !667, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!669 = distinct !{!669, !670, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!670 = distinct !{!670, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!671 = distinct !{!671, !670, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!672 = !{!666, !669}
!673 = !{!674, !676, !678, !679, !681}
!674 = distinct !{!674, !675, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!675 = distinct !{!675, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!676 = distinct !{!676, !677, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!677 = distinct !{!677, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!678 = distinct !{!678, !677, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!679 = distinct !{!679, !680, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!680 = distinct !{!680, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!681 = distinct !{!681, !680, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!682 = !{!676, !679}
!683 = !{!684}
!684 = distinct !{!684, !685, !"_ZN4core4char7convert14ParseCharError13__description17h8e67a5346e1a697eE: %self"}
!685 = distinct !{!685, !"_ZN4core4char7convert14ParseCharError13__description17h8e67a5346e1a697eE"}
!686 = !{!687}
!687 = distinct !{!687, !688, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E: %fmt"}
!688 = distinct !{!688, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E"}
!689 = !{i8 0, i8 6}
!690 = !{i32 0, i32 1114112}
!691 = !{!692}
!692 = distinct !{!692, !693, !"_ZN64_$LT$core..char..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h4ba96d3e2e3228bdE: %self"}
!693 = distinct !{!693, !"_ZN64_$LT$core..char..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h4ba96d3e2e3228bdE"}
!694 = !{!695}
!695 = distinct !{!695, !693, !"_ZN64_$LT$core..char..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h4ba96d3e2e3228bdE: argument 0"}
!696 = !{i8 0, i8 4}
!697 = !{!698, !700}
!698 = distinct !{!698, !699, !"_ZN69_$LT$core..char..EscapeDefaultState$u20$as$u20$core..clone..Clone$GT$5clone17h51a3912726efa2efE: %self"}
!699 = distinct !{!699, !"_ZN69_$LT$core..char..EscapeDefaultState$u20$as$u20$core..clone..Clone$GT$5clone17h51a3912726efa2efE"}
!700 = distinct !{!700, !701, !"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE: %self"}
!701 = distinct !{!701, !"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE"}
!702 = !{!703, !704}
!703 = distinct !{!703, !699, !"_ZN69_$LT$core..char..EscapeDefaultState$u20$as$u20$core..clone..Clone$GT$5clone17h51a3912726efa2efE: argument 0"}
!704 = distinct !{!704, !701, !"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE: argument 0"}
!705 = !{!706, !698, !700}
!706 = distinct !{!706, !707, !"_ZN64_$LT$core..char..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h4ba96d3e2e3228bdE: %self"}
!707 = distinct !{!707, !"_ZN64_$LT$core..char..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h4ba96d3e2e3228bdE"}
!708 = !{!709, !703, !704}
!709 = distinct !{!709, !707, !"_ZN64_$LT$core..char..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h4ba96d3e2e3228bdE: argument 0"}
!710 = !{!711, !713}
!711 = distinct !{!711, !712, !"_ZN95_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..exact_size..ExactSizeIterator$GT$3len17h3331507d60fc9774E: %self"}
!712 = distinct !{!712, !"_ZN95_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..exact_size..ExactSizeIterator$GT$3len17h3331507d60fc9774E"}
!713 = distinct !{!713, !714, !"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$9size_hint17hc97d23e155c4bbb8E: %self"}
!714 = distinct !{!714, !"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$9size_hint17hc97d23e155c4bbb8E"}
!715 = !{!716}
!716 = distinct !{!716, !714, !"_ZN84_$LT$core..char..EscapeDefault$u20$as$u20$core..iter..traits..iterator..Iterator$GT$9size_hint17hc97d23e155c4bbb8E: argument 0"}
!717 = !{!713}
!718 = !{!719}
!719 = distinct !{!719, !720, !"_ZN86_$LT$core..char..CaseMappingIter$u20$as$u20$core..iter..traits..iterator..Iterator$GT$9size_hint17hf43ae4ae63901416E: %self"}
!720 = distinct !{!720, !"_ZN86_$LT$core..char..CaseMappingIter$u20$as$u20$core..iter..traits..iterator..Iterator$GT$9size_hint17hf43ae4ae63901416E"}
!721 = !{!722}
!722 = distinct !{!722, !720, !"_ZN86_$LT$core..char..CaseMappingIter$u20$as$u20$core..iter..traits..iterator..Iterator$GT$9size_hint17hf43ae4ae63901416E: argument 0"}
!723 = !{!724}
!724 = distinct !{!724, !725, !"_ZN66_$LT$core..char..CaseMappingIter$u20$as$u20$core..fmt..Display$GT$3fmt17hdd20f507413af705E: %self"}
!725 = distinct !{!725, !"_ZN66_$LT$core..char..CaseMappingIter$u20$as$u20$core..fmt..Display$GT$3fmt17hdd20f507413af705E"}
!726 = !{!727}
!727 = distinct !{!727, !728, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E: %fmt"}
!728 = distinct !{!728, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E"}
!729 = !{!730, !732, !734, !735, !737}
!730 = distinct !{!730, !731, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!731 = distinct !{!731, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!732 = distinct !{!732, !733, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!733 = distinct !{!733, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!734 = distinct !{!734, !733, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!735 = distinct !{!735, !736, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!736 = distinct !{!736, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!737 = distinct !{!737, !736, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!738 = !{!732, !735}
!739 = !{!734, !737}
!740 = !{!741}
!741 = distinct !{!741, !742, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!742 = distinct !{!742, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!743 = !{!744}
!744 = distinct !{!744, !745, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!745 = distinct !{!745, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!746 = !{!747}
!747 = distinct !{!747, !748, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: argument 0"}
!748 = distinct !{!748, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E"}
!749 = !{!750, !751}
!750 = distinct !{!750, !748, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %pieces.0"}
!751 = distinct !{!751, !748, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %args.0"}
!752 = !{!753}
!753 = distinct !{!753, !754, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: argument 0"}
!754 = distinct !{!754, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E"}
!755 = !{!756, !757}
!756 = distinct !{!756, !754, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %pieces.0"}
!757 = distinct !{!757, !754, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %args.0"}
!758 = !{!759}
!759 = distinct !{!759, !760, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!760 = distinct !{!760, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!761 = !{!762, !764, !766}
!762 = distinct !{!762, !763, !"_ZN31_$LT$dyn$u20$core..any..Any$GT$2is17h254573541a331db5E: %self.1"}
!763 = distinct !{!763, !"_ZN31_$LT$dyn$u20$core..any..Any$GT$2is17h254573541a331db5E"}
!764 = distinct !{!764, !765, !"_ZN31_$LT$dyn$u20$core..any..Any$GT$12downcast_ref17h631e95ac9d24e096E: %self.1"}
!765 = distinct !{!765, !"_ZN31_$LT$dyn$u20$core..any..Any$GT$12downcast_ref17h631e95ac9d24e096E"}
!766 = distinct !{!766, !767, !"_ZN54_$LT$dyn$u20$core..any..Any$u2b$core..marker..Send$GT$12downcast_ref17h103f83983d39bab2E: %self.1"}
!767 = distinct !{!767, !"_ZN54_$LT$dyn$u20$core..any..Any$u2b$core..marker..Send$GT$12downcast_ref17h103f83983d39bab2E"}
!768 = !{!769}
!769 = distinct !{!769, !770, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E: %fmt"}
!770 = distinct !{!770, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E"}
!771 = !{!772}
!772 = distinct !{!772, !773, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E: %fmt"}
!773 = distinct !{!773, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E"}
!774 = !{!775}
!775 = distinct !{!775, !776, !"_ZN60_$LT$core..panic..Location$u20$as$u20$core..fmt..Display$GT$3fmt17hf913874e0082b0f0E: %self"}
!776 = distinct !{!776, !"_ZN60_$LT$core..panic..Location$u20$as$u20$core..fmt..Display$GT$3fmt17hf913874e0082b0f0E"}
!777 = !{!778, !775}
!778 = distinct !{!778, !779, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E: %fmt"}
!779 = distinct !{!779, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E"}
!780 = !{!778}
!781 = !{!782}
!782 = distinct !{!782, !783, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E: %fmt"}
!783 = distinct !{!783, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E"}
!784 = !{!785}
!785 = distinct !{!785, !786, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: argument 0"}
!786 = distinct !{!786, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E"}
!787 = !{!788, !789}
!788 = distinct !{!788, !786, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %pieces.0"}
!789 = distinct !{!789, !786, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %args.0"}
!790 = !{!791}
!791 = distinct !{!791, !792, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: argument 0"}
!792 = distinct !{!792, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E"}
!793 = !{!794, !795}
!794 = distinct !{!794, !792, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %pieces.0"}
!795 = distinct !{!795, !792, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %args.0"}
!796 = !{!797}
!797 = distinct !{!797, !798, !"_ZN4core5panic9PanicInfo20internal_constructor17h2e6a2964caee84f6E: argument 0"}
!798 = distinct !{!798, !"_ZN4core5panic9PanicInfo20internal_constructor17h2e6a2964caee84f6E"}
!799 = !{!800, !801}
!800 = distinct !{!800, !798, !"_ZN4core5panic9PanicInfo20internal_constructor17h2e6a2964caee84f6E: %message"}
!801 = distinct !{!801, !798, !"_ZN4core5panic9PanicInfo20internal_constructor17h2e6a2964caee84f6E: %location"}
!802 = !{!803, !805}
!803 = distinct !{!803, !804, !"_ZN43_$LT$bool$u20$as$u20$core..fmt..Display$GT$3fmt17h64222129800deacdE: %self"}
!804 = distinct !{!804, !"_ZN43_$LT$bool$u20$as$u20$core..fmt..Display$GT$3fmt17h64222129800deacdE"}
!805 = distinct !{!805, !806, !"_ZN41_$LT$bool$u20$as$u20$core..fmt..Debug$GT$3fmt17hac99d466b6ddfefdE: %self"}
!806 = distinct !{!806, !"_ZN41_$LT$bool$u20$as$u20$core..fmt..Debug$GT$3fmt17hac99d466b6ddfefdE"}
!807 = !{!808}
!808 = distinct !{!808, !809, !"_ZN4core3str21_$LT$impl$u20$str$GT$4find17h97b18d3745890680E: %self.0"}
!809 = distinct !{!809, !"_ZN4core3str21_$LT$impl$u20$str$GT$4find17h97b18d3745890680E"}
!810 = !{!811}
!811 = distinct !{!811, !812, !"_ZN52_$LT$char$u20$as$u20$core..str..pattern..Pattern$GT$13into_searcher17ha8711688ee012523E: argument 0"}
!812 = distinct !{!812, !"_ZN52_$LT$char$u20$as$u20$core..str..pattern..Pattern$GT$13into_searcher17ha8711688ee012523E"}
!813 = !{!814, !808}
!814 = distinct !{!814, !812, !"_ZN52_$LT$char$u20$as$u20$core..str..pattern..Pattern$GT$13into_searcher17ha8711688ee012523E: %haystack.0"}
!815 = !{!816}
!816 = distinct !{!816, !817, !"_ZN81_$LT$core..str..pattern..CharSearcher$u20$as$u20$core..str..pattern..Searcher$GT$10next_match17h03b2844f21f1d54aE: argument 0"}
!817 = distinct !{!817, !"_ZN81_$LT$core..str..pattern..CharSearcher$u20$as$u20$core..str..pattern..Searcher$GT$10next_match17h03b2844f21f1d54aE"}
!818 = !{!816, !808}
!819 = !{!820, !822, !824, !826}
!820 = distinct !{!820, !821, !"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E: %self.0"}
!821 = distinct !{!821, !"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E"}
!822 = distinct !{!822, !823, !"_ZN4core3str6traits103_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeTo$LT$usize$GT$$GT$3get17h86ddd8a80f920669E: %slice.0"}
!823 = distinct !{!823, !"_ZN4core3str6traits103_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeTo$LT$usize$GT$$GT$3get17h86ddd8a80f920669E"}
!824 = distinct !{!824, !825, !"_ZN4core3str6traits103_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeTo$LT$usize$GT$$GT$5index17hee2376c2199ea224E: argument 0"}
!825 = distinct !{!825, !"_ZN4core3str6traits103_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeTo$LT$usize$GT$$GT$5index17hee2376c2199ea224E"}
!826 = distinct !{!826, !827, !"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17he6b928d46e35b1dfE: %self.0"}
!827 = distinct !{!827, !"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17he6b928d46e35b1dfE"}
!828 = !{!829, !831, !832, !834}
!829 = distinct !{!829, !830, !"_ZN4core3str6traits103_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeTo$LT$usize$GT$$GT$5index28_$u7b$$u7b$closure$u7d$$u7d$17hd54ce3638b57cebbE: %_1.0"}
!830 = distinct !{!830, !"_ZN4core3str6traits103_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeTo$LT$usize$GT$$GT$5index28_$u7b$$u7b$closure$u7d$$u7d$17hd54ce3638b57cebbE"}
!831 = distinct !{!831, !830, !"_ZN4core3str6traits103_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeTo$LT$usize$GT$$GT$5index28_$u7b$$u7b$closure$u7d$$u7d$17hd54ce3638b57cebbE: %_1.1"}
!832 = distinct !{!832, !833, !"_ZN4core6option15Option$LT$T$GT$14unwrap_or_else17hf4f6360afd45f40fE: %f.0"}
!833 = distinct !{!833, !"_ZN4core6option15Option$LT$T$GT$14unwrap_or_else17hf4f6360afd45f40fE"}
!834 = distinct !{!834, !833, !"_ZN4core6option15Option$LT$T$GT$14unwrap_or_else17hf4f6360afd45f40fE: %f.1"}
!835 = !{!836, !838, !840}
!836 = distinct !{!836, !837, !"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E: %self.0"}
!837 = distinct !{!837, !"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E"}
!838 = distinct !{!838, !839, !"_ZN4core3str6traits105_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeFrom$LT$usize$GT$$GT$3get17hba6b301332fabfc0E: %slice.0"}
!839 = distinct !{!839, !"_ZN4core3str6traits105_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeFrom$LT$usize$GT$$GT$3get17hba6b301332fabfc0E"}
!840 = distinct !{!840, !841, !"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E: %self.0"}
!841 = distinct !{!841, !"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E"}
!842 = !{!843, !845}
!843 = distinct !{!843, !844, !"_ZN4core3str6traits105_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeFrom$LT$usize$GT$$GT$5index28_$u7b$$u7b$closure$u7d$$u7d$17h277f2c6e8ba2e0a0E: %_1"}
!844 = distinct !{!844, !"_ZN4core3str6traits105_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeFrom$LT$usize$GT$$GT$5index28_$u7b$$u7b$closure$u7d$$u7d$17h277f2c6e8ba2e0a0E"}
!845 = distinct !{!845, !846, !"_ZN4core6option15Option$LT$T$GT$14unwrap_or_else17h0062a1a0c3b34d3aE: %f"}
!846 = distinct !{!846, !"_ZN4core6option15Option$LT$T$GT$14unwrap_or_else17h0062a1a0c3b34d3aE"}
!847 = !{!848}
!848 = distinct !{!848, !849, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!849 = distinct !{!849, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!850 = !{!851, !853}
!851 = distinct !{!851, !852, !"_ZN4core3fmt8builders11DebugStruct5field28_$u7b$$u7b$closure$u7d$$u7d$17h2fce0f608a5fb1e8E: %_1"}
!852 = distinct !{!852, !"_ZN4core3fmt8builders11DebugStruct5field28_$u7b$$u7b$closure$u7d$$u7d$17h2fce0f608a5fb1e8E"}
!853 = distinct !{!853, !854, !"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h739d3488f2119409E: %op"}
!854 = distinct !{!854, !"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h739d3488f2119409E"}
!855 = !{!856}
!856 = distinct !{!856, !857, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!857 = distinct !{!857, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!858 = !{!848, !851, !853}
!859 = !{!860, !851, !853}
!860 = distinct !{!860, !861, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!861 = distinct !{!861, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!862 = !{!863, !851, !853}
!863 = distinct !{!863, !864, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!864 = distinct !{!864, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!865 = !{!866, !868, !851, !853}
!866 = distinct !{!866, !867, !"_ZN4core3fmt9Formatter8wrap_buf17hcc80b3e8dd5b37b0E: argument 0"}
!867 = distinct !{!867, !"_ZN4core3fmt9Formatter8wrap_buf17hcc80b3e8dd5b37b0E"}
!868 = distinct !{!868, !869, !"_ZN4core3fmt8builders10PadAdapter4wrap17h04e6ec2c689987b2E: argument 0"}
!869 = distinct !{!869, !"_ZN4core3fmt8builders10PadAdapter4wrap17h04e6ec2c689987b2E"}
!870 = !{!871, !866, !868, !851, !853}
!871 = distinct !{!871, !872, !"_ZN4core3fmt8builders10PadAdapter4wrap28_$u7b$$u7b$closure$u7d$$u7d$17hda722d28e17fe8ddE: %buf.1"}
!872 = distinct !{!872, !"_ZN4core3fmt8builders10PadAdapter4wrap28_$u7b$$u7b$closure$u7d$$u7d$17hda722d28e17fe8ddE"}
!873 = !{!866, !868}
!874 = !{!875, !851, !853}
!875 = distinct !{!875, !876, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!876 = distinct !{!876, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!877 = !{!878, !851, !853}
!878 = distinct !{!878, !879, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!879 = distinct !{!879, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!880 = !{!881, !851, !853}
!881 = distinct !{!881, !882, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!882 = distinct !{!882, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!883 = !{!884}
!884 = distinct !{!884, !885, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!885 = distinct !{!885, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!886 = !{!887}
!887 = distinct !{!887, !888, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!888 = distinct !{!888, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!889 = !{!890}
!890 = distinct !{!890, !891, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!891 = distinct !{!891, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!892 = !{!893, !895}
!893 = distinct !{!893, !894, !"_ZN4core3fmt9Formatter8wrap_buf17hcc80b3e8dd5b37b0E: argument 0"}
!894 = distinct !{!894, !"_ZN4core3fmt9Formatter8wrap_buf17hcc80b3e8dd5b37b0E"}
!895 = distinct !{!895, !896, !"_ZN4core3fmt8builders10PadAdapter4wrap17h04e6ec2c689987b2E: argument 0"}
!896 = distinct !{!896, !"_ZN4core3fmt8builders10PadAdapter4wrap17h04e6ec2c689987b2E"}
!897 = !{!898, !893, !895}
!898 = distinct !{!898, !899, !"_ZN4core3fmt8builders10PadAdapter4wrap28_$u7b$$u7b$closure$u7d$$u7d$17hda722d28e17fe8ddE: %buf.1"}
!899 = distinct !{!899, !"_ZN4core3fmt8builders10PadAdapter4wrap28_$u7b$$u7b$closure$u7d$$u7d$17hda722d28e17fe8ddE"}
!900 = !{!901}
!901 = distinct !{!901, !902, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!902 = distinct !{!902, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!903 = !{!904}
!904 = distinct !{!904, !905, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!905 = distinct !{!905, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!906 = !{!907}
!907 = distinct !{!907, !908, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!908 = distinct !{!908, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!909 = !{!910}
!910 = distinct !{!910, !911, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!911 = distinct !{!911, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!912 = !{!913}
!913 = distinct !{!913, !914, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!914 = distinct !{!914, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!915 = !{!916, !918}
!916 = distinct !{!916, !917, !"_ZN4core3fmt8builders10DebugTuple5field28_$u7b$$u7b$closure$u7d$$u7d$17h90b096485b59513fE: %_1.1"}
!917 = distinct !{!917, !"_ZN4core3fmt8builders10DebugTuple5field28_$u7b$$u7b$closure$u7d$$u7d$17h90b096485b59513fE"}
!918 = distinct !{!918, !919, !"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17ha7e1752d8a6849e9E: %op.1"}
!919 = distinct !{!919, !"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17ha7e1752d8a6849e9E"}
!920 = !{!921}
!921 = distinct !{!921, !922, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!922 = distinct !{!922, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!923 = !{!913, !916, !918}
!924 = !{!925, !916, !918}
!925 = distinct !{!925, !926, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!926 = distinct !{!926, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!927 = !{!928, !916, !918}
!928 = distinct !{!928, !929, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!929 = distinct !{!929, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!930 = !{!931, !933, !916, !918}
!931 = distinct !{!931, !932, !"_ZN4core3fmt9Formatter8wrap_buf17hcc80b3e8dd5b37b0E: argument 0"}
!932 = distinct !{!932, !"_ZN4core3fmt9Formatter8wrap_buf17hcc80b3e8dd5b37b0E"}
!933 = distinct !{!933, !934, !"_ZN4core3fmt8builders10PadAdapter4wrap17h04e6ec2c689987b2E: argument 0"}
!934 = distinct !{!934, !"_ZN4core3fmt8builders10PadAdapter4wrap17h04e6ec2c689987b2E"}
!935 = !{!936, !931, !933, !916, !918}
!936 = distinct !{!936, !937, !"_ZN4core3fmt8builders10PadAdapter4wrap28_$u7b$$u7b$closure$u7d$$u7d$17hda722d28e17fe8ddE: %buf.1"}
!937 = distinct !{!937, !"_ZN4core3fmt8builders10PadAdapter4wrap28_$u7b$$u7b$closure$u7d$$u7d$17hda722d28e17fe8ddE"}
!938 = !{!931, !933}
!939 = !{!940, !916, !918}
!940 = distinct !{!940, !941, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!941 = distinct !{!941, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!942 = !{!943}
!943 = distinct !{!943, !944, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!944 = distinct !{!944, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!945 = !{!946}
!946 = distinct !{!946, !947, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!947 = distinct !{!947, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!948 = !{!949}
!949 = distinct !{!949, !950, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!950 = distinct !{!950, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!951 = !{!952}
!952 = distinct !{!952, !953, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!953 = distinct !{!953, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!954 = !{!955}
!955 = distinct !{!955, !956, !"_ZN4core3fmt8builders10DebugInner9is_pretty17h133efe48de04c964E: %self"}
!956 = distinct !{!956, !"_ZN4core3fmt8builders10DebugInner9is_pretty17h133efe48de04c964E"}
!957 = !{!958, !960}
!958 = distinct !{!958, !959, !"_ZN4core3fmt8builders10DebugInner5entry28_$u7b$$u7b$closure$u7d$$u7d$17h3da5373df85b16a3E: %_1.1"}
!959 = distinct !{!959, !"_ZN4core3fmt8builders10DebugInner5entry28_$u7b$$u7b$closure$u7d$$u7d$17h3da5373df85b16a3E"}
!960 = distinct !{!960, !961, !"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hc6467a80af52a8e3E: %op.1"}
!961 = distinct !{!961, !"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hc6467a80af52a8e3E"}
!962 = !{!963}
!963 = distinct !{!963, !964, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!964 = distinct !{!964, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!965 = !{!955, !958, !960}
!966 = !{!967, !958, !960}
!967 = distinct !{!967, !968, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!968 = distinct !{!968, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!969 = !{!970, !972, !958, !960}
!970 = distinct !{!970, !971, !"_ZN4core3fmt9Formatter8wrap_buf17hcc80b3e8dd5b37b0E: argument 0"}
!971 = distinct !{!971, !"_ZN4core3fmt9Formatter8wrap_buf17hcc80b3e8dd5b37b0E"}
!972 = distinct !{!972, !973, !"_ZN4core3fmt8builders10PadAdapter4wrap17h04e6ec2c689987b2E: argument 0"}
!973 = distinct !{!973, !"_ZN4core3fmt8builders10PadAdapter4wrap17h04e6ec2c689987b2E"}
!974 = !{!975, !970, !972, !958, !960}
!975 = distinct !{!975, !976, !"_ZN4core3fmt8builders10PadAdapter4wrap28_$u7b$$u7b$closure$u7d$$u7d$17hda722d28e17fe8ddE: %buf.1"}
!976 = distinct !{!976, !"_ZN4core3fmt8builders10PadAdapter4wrap28_$u7b$$u7b$closure$u7d$$u7d$17hda722d28e17fe8ddE"}
!977 = !{!970, !972}
!978 = !{!979, !958, !960}
!979 = distinct !{!979, !980, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!980 = distinct !{!980, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!981 = !{!982, !958, !960}
!982 = distinct !{!982, !983, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!983 = distinct !{!983, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!984 = !{!985}
!985 = distinct !{!985, !986, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!986 = distinct !{!986, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!987 = !{!988}
!988 = distinct !{!988, !989, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!989 = distinct !{!989, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!990 = !{!991, !993}
!991 = distinct !{!991, !992, !"_ZN4core3fmt8builders8DebugMap3key28_$u7b$$u7b$closure$u7d$$u7d$17ha4975e65c601b75bE: %_1.1"}
!992 = distinct !{!992, !"_ZN4core3fmt8builders8DebugMap3key28_$u7b$$u7b$closure$u7d$$u7d$17ha4975e65c601b75bE"}
!993 = distinct !{!993, !994, !"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17ha9847185357f15dbE: %op.1"}
!994 = distinct !{!994, !"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17ha9847185357f15dbE"}
!995 = !{!996}
!996 = distinct !{!996, !997, !"_ZN4core3fmt8builders8DebugMap9is_pretty17h6605fd96f4a746feE: %self"}
!997 = distinct !{!997, !"_ZN4core3fmt8builders8DebugMap9is_pretty17h6605fd96f4a746feE"}
!998 = !{!999}
!999 = distinct !{!999, !1000, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!1000 = distinct !{!1000, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!1001 = !{!996, !991, !993}
!1002 = !{!1003, !991, !993}
!1003 = distinct !{!1003, !1004, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!1004 = distinct !{!1004, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!1005 = !{!1006, !1008, !991, !993}
!1006 = distinct !{!1006, !1007, !"_ZN4core3fmt9Formatter8wrap_buf17hcc80b3e8dd5b37b0E: argument 0"}
!1007 = distinct !{!1007, !"_ZN4core3fmt9Formatter8wrap_buf17hcc80b3e8dd5b37b0E"}
!1008 = distinct !{!1008, !1009, !"_ZN4core3fmt8builders10PadAdapter4wrap17h04e6ec2c689987b2E: argument 0"}
!1009 = distinct !{!1009, !"_ZN4core3fmt8builders10PadAdapter4wrap17h04e6ec2c689987b2E"}
!1010 = !{!1011, !1006, !1008, !991, !993}
!1011 = distinct !{!1011, !1012, !"_ZN4core3fmt8builders10PadAdapter4wrap28_$u7b$$u7b$closure$u7d$$u7d$17hda722d28e17fe8ddE: %buf.1"}
!1012 = distinct !{!1012, !"_ZN4core3fmt8builders10PadAdapter4wrap28_$u7b$$u7b$closure$u7d$$u7d$17hda722d28e17fe8ddE"}
!1013 = !{!1006, !1008}
!1014 = !{!1015, !991, !993}
!1015 = distinct !{!1015, !1016, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!1016 = distinct !{!1016, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!1017 = !{!1018, !991, !993}
!1018 = distinct !{!1018, !1019, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!1019 = distinct !{!1019, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!1020 = !{!1021, !991, !993}
!1021 = distinct !{!1021, !1022, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!1022 = distinct !{!1022, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!1023 = !{!1024, !1026}
!1024 = distinct !{!1024, !1025, !"_ZN4core3fmt8builders8DebugMap5value28_$u7b$$u7b$closure$u7d$$u7d$17h52c30d2600250505E: %_1.1"}
!1025 = distinct !{!1025, !"_ZN4core3fmt8builders8DebugMap5value28_$u7b$$u7b$closure$u7d$$u7d$17h52c30d2600250505E"}
!1026 = distinct !{!1026, !1027, !"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h6c49f9488290e374E: %op.1"}
!1027 = distinct !{!1027, !"_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h6c49f9488290e374E"}
!1028 = !{!1029}
!1029 = distinct !{!1029, !1030, !"_ZN4core3fmt8builders8DebugMap9is_pretty17h6605fd96f4a746feE: %self"}
!1030 = distinct !{!1030, !"_ZN4core3fmt8builders8DebugMap9is_pretty17h6605fd96f4a746feE"}
!1031 = !{!1032}
!1032 = distinct !{!1032, !1033, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!1033 = distinct !{!1033, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!1034 = !{!1029, !1024, !1026}
!1035 = !{!1036, !1038, !1024, !1026}
!1036 = distinct !{!1036, !1037, !"_ZN4core3fmt9Formatter8wrap_buf17hcc80b3e8dd5b37b0E: argument 0"}
!1037 = distinct !{!1037, !"_ZN4core3fmt9Formatter8wrap_buf17hcc80b3e8dd5b37b0E"}
!1038 = distinct !{!1038, !1039, !"_ZN4core3fmt8builders10PadAdapter4wrap17h04e6ec2c689987b2E: argument 0"}
!1039 = distinct !{!1039, !"_ZN4core3fmt8builders10PadAdapter4wrap17h04e6ec2c689987b2E"}
!1040 = !{!1041, !1036, !1038, !1024, !1026}
!1041 = distinct !{!1041, !1042, !"_ZN4core3fmt8builders10PadAdapter4wrap28_$u7b$$u7b$closure$u7d$$u7d$17hda722d28e17fe8ddE: %buf.1"}
!1042 = distinct !{!1042, !"_ZN4core3fmt8builders10PadAdapter4wrap28_$u7b$$u7b$closure$u7d$$u7d$17hda722d28e17fe8ddE"}
!1043 = !{!1036, !1038}
!1044 = !{!1045, !1024, !1026}
!1045 = distinct !{!1045, !1046, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!1046 = distinct !{!1046, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!1047 = !{!1048}
!1048 = distinct !{!1048, !1049, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!1049 = distinct !{!1049, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!1050 = !{!1051}
!1051 = distinct !{!1051, !1052, !"_ZN4core3num7flt2dec18to_exact_fixed_str17hdda2f2d55f57491cE: argument 0"}
!1052 = distinct !{!1052, !"_ZN4core3num7flt2dec18to_exact_fixed_str17hdda2f2d55f57491cE"}
!1053 = !{!1054, !1056, !1051}
!1054 = distinct !{!1054, !1055, !"_ZN4core3num7flt2dec8strategy5grisu12format_exact17h149e87f1ffbd8795E: %d"}
!1055 = distinct !{!1055, !"_ZN4core3num7flt2dec8strategy5grisu12format_exact17h149e87f1ffbd8795E"}
!1056 = distinct !{!1056, !1057, !"_ZN4core3ops8function5FnMut8call_mut17ha8ecc7f04fdaafcaE: argument 0"}
!1057 = distinct !{!1057, !"_ZN4core3ops8function5FnMut8call_mut17ha8ecc7f04fdaafcaE"}
!1058 = !{!1059}
!1059 = distinct !{!1059, !1060, !"_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE: %buf.0"}
!1060 = distinct !{!1060, !"_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE"}
!1061 = !{!1062}
!1062 = distinct !{!1062, !1063, !"_ZN4core3num7flt2dec18to_exact_fixed_str17h3f569356746c3469E: argument 0"}
!1063 = distinct !{!1063, !"_ZN4core3num7flt2dec18to_exact_fixed_str17h3f569356746c3469E"}
!1064 = !{!1065, !1067, !1062}
!1065 = distinct !{!1065, !1066, !"_ZN4core3num7flt2dec8strategy5grisu12format_exact17h149e87f1ffbd8795E: %d"}
!1066 = distinct !{!1066, !"_ZN4core3num7flt2dec8strategy5grisu12format_exact17h149e87f1ffbd8795E"}
!1067 = distinct !{!1067, !1068, !"_ZN4core3ops8function5FnMut8call_mut17ha8ecc7f04fdaafcaE: argument 0"}
!1068 = distinct !{!1068, !"_ZN4core3ops8function5FnMut8call_mut17ha8ecc7f04fdaafcaE"}
!1069 = !{!1070}
!1070 = distinct !{!1070, !1071, !"_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE: %buf.0"}
!1071 = distinct !{!1071, !"_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE"}
!1072 = !{!1073}
!1073 = distinct !{!1073, !1074, !"_ZN4core3num7flt2dec15to_shortest_str17ha24fc92d0314f6b9E: argument 0"}
!1074 = distinct !{!1074, !"_ZN4core3num7flt2dec15to_shortest_str17ha24fc92d0314f6b9E"}
!1075 = !{!1076, !1078, !1073}
!1076 = distinct !{!1076, !1077, !"_ZN4core3num7flt2dec8strategy5grisu15format_shortest17h13fe7cab00515fedE: %d"}
!1077 = distinct !{!1077, !"_ZN4core3num7flt2dec8strategy5grisu15format_shortest17h13fe7cab00515fedE"}
!1078 = distinct !{!1078, !1079, !"_ZN4core3ops8function5FnMut8call_mut17h5efd88025d924ecbE: argument 0"}
!1079 = distinct !{!1079, !"_ZN4core3ops8function5FnMut8call_mut17h5efd88025d924ecbE"}
!1080 = !{!1081}
!1081 = distinct !{!1081, !1082, !"_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE: %buf.0"}
!1082 = distinct !{!1082, !"_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE"}
!1083 = !{!1084}
!1084 = distinct !{!1084, !1085, !"_ZN4core3num7flt2dec15to_shortest_str17h22585e7b408e1d50E: argument 0"}
!1085 = distinct !{!1085, !"_ZN4core3num7flt2dec15to_shortest_str17h22585e7b408e1d50E"}
!1086 = !{!1087, !1089, !1084}
!1087 = distinct !{!1087, !1088, !"_ZN4core3num7flt2dec8strategy5grisu15format_shortest17h13fe7cab00515fedE: %d"}
!1088 = distinct !{!1088, !"_ZN4core3num7flt2dec8strategy5grisu15format_shortest17h13fe7cab00515fedE"}
!1089 = distinct !{!1089, !1090, !"_ZN4core3ops8function5FnMut8call_mut17h5efd88025d924ecbE: argument 0"}
!1090 = distinct !{!1090, !"_ZN4core3ops8function5FnMut8call_mut17h5efd88025d924ecbE"}
!1091 = !{!1092}
!1092 = distinct !{!1092, !1093, !"_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE: %buf.0"}
!1093 = distinct !{!1093, !"_ZN4core3num7flt2dec17digits_to_dec_str17h1251690980a44d6eE"}
!1094 = !{!1095}
!1095 = distinct !{!1095, !1096, !"_ZN4core3num7flt2dec16to_exact_exp_str17h7fc80e2dde131f41E: argument 0"}
!1096 = distinct !{!1096, !"_ZN4core3num7flt2dec16to_exact_exp_str17h7fc80e2dde131f41E"}
!1097 = !{!1098, !1100, !1095}
!1098 = distinct !{!1098, !1099, !"_ZN4core3num7flt2dec8strategy5grisu12format_exact17h149e87f1ffbd8795E: %d"}
!1099 = distinct !{!1099, !"_ZN4core3num7flt2dec8strategy5grisu12format_exact17h149e87f1ffbd8795E"}
!1100 = distinct !{!1100, !1101, !"_ZN4core3ops8function5FnMut8call_mut17ha8ecc7f04fdaafcaE: argument 0"}
!1101 = distinct !{!1101, !"_ZN4core3ops8function5FnMut8call_mut17ha8ecc7f04fdaafcaE"}
!1102 = !{!1103}
!1103 = distinct !{!1103, !1104, !"_ZN4core3num7flt2dec16to_exact_exp_str17hed78bca49115c29cE: argument 0"}
!1104 = distinct !{!1104, !"_ZN4core3num7flt2dec16to_exact_exp_str17hed78bca49115c29cE"}
!1105 = !{!1106, !1108, !1103}
!1106 = distinct !{!1106, !1107, !"_ZN4core3num7flt2dec8strategy5grisu12format_exact17h149e87f1ffbd8795E: %d"}
!1107 = distinct !{!1107, !"_ZN4core3num7flt2dec8strategy5grisu12format_exact17h149e87f1ffbd8795E"}
!1108 = distinct !{!1108, !1109, !"_ZN4core3ops8function5FnMut8call_mut17ha8ecc7f04fdaafcaE: argument 0"}
!1109 = distinct !{!1109, !"_ZN4core3ops8function5FnMut8call_mut17ha8ecc7f04fdaafcaE"}
!1110 = !{!1111}
!1111 = distinct !{!1111, !1112, !"_ZN4core3num7flt2dec19to_shortest_exp_str17h289638ca9aac9289E: argument 0"}
!1112 = distinct !{!1112, !"_ZN4core3num7flt2dec19to_shortest_exp_str17h289638ca9aac9289E"}
!1113 = !{!1114, !1116, !1111}
!1114 = distinct !{!1114, !1115, !"_ZN4core3num7flt2dec8strategy5grisu15format_shortest17h13fe7cab00515fedE: %d"}
!1115 = distinct !{!1115, !"_ZN4core3num7flt2dec8strategy5grisu15format_shortest17h13fe7cab00515fedE"}
!1116 = distinct !{!1116, !1117, !"_ZN4core3ops8function5FnMut8call_mut17h5efd88025d924ecbE: argument 0"}
!1117 = distinct !{!1117, !"_ZN4core3ops8function5FnMut8call_mut17h5efd88025d924ecbE"}
!1118 = !{!1119}
!1119 = distinct !{!1119, !1120, !"_ZN4core3num7flt2dec19to_shortest_exp_str17hd5234ab58a8d3c01E: argument 0"}
!1120 = distinct !{!1120, !"_ZN4core3num7flt2dec19to_shortest_exp_str17hd5234ab58a8d3c01E"}
!1121 = !{!1122, !1124, !1119}
!1122 = distinct !{!1122, !1123, !"_ZN4core3num7flt2dec8strategy5grisu15format_shortest17h13fe7cab00515fedE: %d"}
!1123 = distinct !{!1123, !"_ZN4core3num7flt2dec8strategy5grisu15format_shortest17h13fe7cab00515fedE"}
!1124 = distinct !{!1124, !1125, !"_ZN4core3ops8function5FnMut8call_mut17h5efd88025d924ecbE: argument 0"}
!1125 = distinct !{!1125, !"_ZN4core3ops8function5FnMut8call_mut17h5efd88025d924ecbE"}
!1126 = !{!1127}
!1127 = distinct !{!1127, !1128, !"_ZN4core3fmt5Write9write_fmt17h0e0ce554ea355ac9E: %args"}
!1128 = distinct !{!1128, !"_ZN4core3fmt5Write9write_fmt17h0e0ce554ea355ac9E"}
!1129 = !{!1130}
!1130 = distinct !{!1130, !1131, !"_ZN59_$LT$core..fmt..Arguments$u20$as$u20$core..fmt..Display$GT$3fmt17h5b241885dd078dc0E: %self"}
!1131 = distinct !{!1131, !"_ZN59_$LT$core..fmt..Arguments$u20$as$u20$core..fmt..Display$GT$3fmt17h5b241885dd078dc0E"}
!1132 = !{!1133}
!1133 = distinct !{!1133, !1134, !"_ZN4core3fmt3run17h13a5a855c58b3d83E: %arg"}
!1134 = distinct !{!1134, !"_ZN4core3fmt3run17h13a5a855c58b3d83E"}
!1135 = !{!1136}
!1136 = distinct !{!1136, !1134, !"_ZN4core3fmt3run17h13a5a855c58b3d83E: %args.0"}
!1137 = !{!1133, !1136}
!1138 = !{i16 1, i16 0}
!1139 = !{!1140, !1142, !1136}
!1140 = distinct !{!1140, !1141, !"_ZN4core3fmt10ArgumentV18as_usize17h07e7106d9e1daae5E: %self"}
!1141 = distinct !{!1141, !"_ZN4core3fmt10ArgumentV18as_usize17h07e7106d9e1daae5E"}
!1142 = distinct !{!1142, !1143, !"_ZN4core3fmt8getcount17he5b94741d1e3c681E: %args.0"}
!1143 = distinct !{!1143, !"_ZN4core3fmt8getcount17he5b94741d1e3c681E"}
!1144 = !{!1140, !1142, !1133, !1136}
!1145 = !{!1142, !1133, !1136}
!1146 = !{!1147, !1149, !1136}
!1147 = distinct !{!1147, !1148, !"_ZN4core3fmt10ArgumentV18as_usize17h07e7106d9e1daae5E: %self"}
!1148 = distinct !{!1148, !"_ZN4core3fmt10ArgumentV18as_usize17h07e7106d9e1daae5E"}
!1149 = distinct !{!1149, !1150, !"_ZN4core3fmt8getcount17he5b94741d1e3c681E: %args.0"}
!1150 = distinct !{!1150, !"_ZN4core3fmt8getcount17he5b94741d1e3c681E"}
!1151 = !{!1147, !1149, !1133, !1136}
!1152 = !{!1149, !1133, !1136}
!1153 = !{!1154}
!1154 = distinct !{!1154, !1155, !"_ZN4core3fmt9Formatter9sign_plus17hea67cd042fb3b4d6E: %self"}
!1155 = distinct !{!1155, !"_ZN4core3fmt9Formatter9sign_plus17hea67cd042fb3b4d6E"}
!1156 = !{!1157}
!1157 = distinct !{!1157, !1158, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!1158 = distinct !{!1158, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!1159 = !{!1160}
!1160 = distinct !{!1160, !1161, !"_ZN4core3fmt11PostPadding5write17h63224314a6d3c208E: %buf.1"}
!1161 = distinct !{!1161, !"_ZN4core3fmt11PostPadding5write17h63224314a6d3c208E"}
!1162 = !{!1163}
!1163 = distinct !{!1163, !1164, !"_ZN4core3fmt11PostPadding5write17h63224314a6d3c208E: %buf.1"}
!1164 = distinct !{!1164, !"_ZN4core3fmt11PostPadding5write17h63224314a6d3c208E"}
!1165 = !{!1166}
!1166 = distinct !{!1166, !1167, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!1167 = distinct !{!1167, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!1168 = !{!1169}
!1169 = distinct !{!1169, !1170, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!1170 = distinct !{!1170, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!1171 = !{!1172}
!1172 = distinct !{!1172, !1173, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!1173 = distinct !{!1173, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!1174 = !{!1175, !1177, !1179}
!1175 = distinct !{!1175, !1176, !"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E: %self.0"}
!1176 = distinct !{!1176, !"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E"}
!1177 = distinct !{!1177, !1178, !"_ZN4core3str6traits103_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeTo$LT$usize$GT$$GT$3get17h86ddd8a80f920669E: %slice.0"}
!1178 = distinct !{!1178, !"_ZN4core3str6traits103_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeTo$LT$usize$GT$$GT$3get17h86ddd8a80f920669E"}
!1179 = distinct !{!1179, !1180, !"_ZN4core3str21_$LT$impl$u20$str$GT$3get17h9d351c904fa4aa9dE: %self.0"}
!1180 = distinct !{!1180, !"_ZN4core3str21_$LT$impl$u20$str$GT$3get17h9d351c904fa4aa9dE"}
!1181 = !{!1182}
!1182 = distinct !{!1182, !1183, !"_ZN4core3fmt11PostPadding5write17h63224314a6d3c208E: %buf.1"}
!1183 = distinct !{!1183, !"_ZN4core3fmt11PostPadding5write17h63224314a6d3c208E"}
!1184 = !{!1185}
!1185 = distinct !{!1185, !1186, !"_ZN68_$LT$core..num..flt2dec..Formatted$u20$as$u20$core..clone..Clone$GT$5clone17h4c9d444b70733fbbE: %self"}
!1186 = distinct !{!1186, !"_ZN68_$LT$core..num..flt2dec..Formatted$u20$as$u20$core..clone..Clone$GT$5clone17h4c9d444b70733fbbE"}
!1187 = !{!1188}
!1188 = distinct !{!1188, !1186, !"_ZN68_$LT$core..num..flt2dec..Formatted$u20$as$u20$core..clone..Clone$GT$5clone17h4c9d444b70733fbbE: argument 0"}
!1189 = !{!1190}
!1190 = distinct !{!1190, !1191, !"_ZN4core3fmt9Formatter19sign_aware_zero_pad17h3698baa2e0a3a973E: %self"}
!1191 = distinct !{!1191, !"_ZN4core3fmt9Formatter19sign_aware_zero_pad17h3698baa2e0a3a973E"}
!1192 = !{!1193}
!1193 = distinct !{!1193, !1194, !"_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E: %self"}
!1194 = distinct !{!1194, !"_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E"}
!1195 = !{!1196}
!1196 = distinct !{!1196, !1197, !"_ZN4core3num7flt2dec9Formatted3len17hc9331884bb628d22E: %self"}
!1197 = distinct !{!1197, !"_ZN4core3num7flt2dec9Formatted3len17hc9331884bb628d22E"}
!1198 = !{!1199}
!1199 = distinct !{!1199, !1200, !"_ZN4core3fmt11PostPadding5write17h63224314a6d3c208E: %buf.1"}
!1200 = distinct !{!1200, !"_ZN4core3fmt11PostPadding5write17h63224314a6d3c208E"}
!1201 = !{!1202}
!1202 = distinct !{!1202, !1203, !"_ZN4core3fmt9Formatter21write_formatted_parts11write_bytes17he504e852fed99c05E: %buf.1"}
!1203 = distinct !{!1203, !"_ZN4core3fmt9Formatter21write_formatted_parts11write_bytes17he504e852fed99c05E"}
!1204 = !{!1205}
!1205 = distinct !{!1205, !1203, !"_ZN4core3fmt9Formatter21write_formatted_parts11write_bytes17he504e852fed99c05E: %s.0"}
!1206 = !{!1207, !1209, !1211, !1213}
!1207 = distinct !{!1207, !1208, !"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E: %self.0"}
!1208 = distinct !{!1208, !"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E"}
!1209 = distinct !{!1209, !1210, !"_ZN4core3str6traits103_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeTo$LT$usize$GT$$GT$3get17h86ddd8a80f920669E: %slice.0"}
!1210 = distinct !{!1210, !"_ZN4core3str6traits103_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeTo$LT$usize$GT$$GT$3get17h86ddd8a80f920669E"}
!1211 = distinct !{!1211, !1212, !"_ZN4core3str6traits103_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeTo$LT$usize$GT$$GT$5index17hee2376c2199ea224E: argument 0"}
!1212 = distinct !{!1212, !"_ZN4core3str6traits103_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeTo$LT$usize$GT$$GT$5index17hee2376c2199ea224E"}
!1213 = distinct !{!1213, !1214, !"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17he6b928d46e35b1dfE: %self.0"}
!1214 = distinct !{!1214, !"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17he6b928d46e35b1dfE"}
!1215 = !{!1216, !1218, !1219, !1221}
!1216 = distinct !{!1216, !1217, !"_ZN4core3str6traits103_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeTo$LT$usize$GT$$GT$5index28_$u7b$$u7b$closure$u7d$$u7d$17hd54ce3638b57cebbE: %_1.0"}
!1217 = distinct !{!1217, !"_ZN4core3str6traits103_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeTo$LT$usize$GT$$GT$5index28_$u7b$$u7b$closure$u7d$$u7d$17hd54ce3638b57cebbE"}
!1218 = distinct !{!1218, !1217, !"_ZN4core3str6traits103_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeTo$LT$usize$GT$$GT$5index28_$u7b$$u7b$closure$u7d$$u7d$17hd54ce3638b57cebbE: %_1.1"}
!1219 = distinct !{!1219, !1220, !"_ZN4core6option15Option$LT$T$GT$14unwrap_or_else17hf4f6360afd45f40fE: %f.0"}
!1220 = distinct !{!1220, !"_ZN4core6option15Option$LT$T$GT$14unwrap_or_else17hf4f6360afd45f40fE"}
!1221 = distinct !{!1221, !1220, !"_ZN4core6option15Option$LT$T$GT$14unwrap_or_else17hf4f6360afd45f40fE: %f.1"}
!1222 = !{!1223}
!1223 = distinct !{!1223, !1224, !"_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E: %self"}
!1224 = distinct !{!1224, !"_ZN4core3num7flt2dec4Part3len17hcadb11051b4f3549E"}
!1225 = !{!1226}
!1226 = distinct !{!1226, !1227, !"_ZN4core3fmt9Formatter21write_formatted_parts11write_bytes17he504e852fed99c05E: %buf.1"}
!1227 = distinct !{!1227, !"_ZN4core3fmt9Formatter21write_formatted_parts11write_bytes17he504e852fed99c05E"}
!1228 = !{!1229}
!1229 = distinct !{!1229, !1227, !"_ZN4core3fmt9Formatter21write_formatted_parts11write_bytes17he504e852fed99c05E: %s.0"}
!1230 = !{!1231, !1233, !1235}
!1231 = distinct !{!1231, !1232, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!1232 = distinct !{!1232, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!1233 = distinct !{!1233, !1234, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!1234 = distinct !{!1234, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!1235 = distinct !{!1235, !1234, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!1236 = !{!1233}
!1237 = !{!1235}
!1238 = !{!1239, !1241, !1243}
!1239 = distinct !{!1239, !1240, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!1240 = distinct !{!1240, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!1241 = distinct !{!1241, !1242, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!1242 = distinct !{!1242, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!1243 = distinct !{!1243, !1242, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!1244 = !{!1241}
!1245 = !{!1243}
!1246 = !{!1247, !1249}
!1247 = distinct !{!1247, !1248, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!1248 = distinct !{!1248, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!1249 = distinct !{!1249, !1250, !"_ZN4core3fmt8builders14debug_list_new17he49aae00a72881d0E: argument 0"}
!1250 = distinct !{!1250, !"_ZN4core3fmt8builders14debug_list_new17he49aae00a72881d0E"}
!1251 = !{!1249}
!1252 = !{!1253, !1255}
!1253 = distinct !{!1253, !1254, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!1254 = distinct !{!1254, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!1255 = distinct !{!1255, !1256, !"_ZN4core3fmt8builders13debug_set_new17h422a41fe9d0a653bE: argument 0"}
!1256 = distinct !{!1256, !"_ZN4core3fmt8builders13debug_set_new17h422a41fe9d0a653bE"}
!1257 = !{!1255}
!1258 = !{!1259, !1261}
!1259 = distinct !{!1259, !1260, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!1260 = distinct !{!1260, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!1261 = distinct !{!1261, !1262, !"_ZN4core3fmt8builders13debug_map_new17h3094758c4666d76eE: argument 0"}
!1262 = distinct !{!1262, !"_ZN4core3fmt8builders13debug_map_new17h3094758c4666d76eE"}
!1263 = !{!1261}
!1264 = !{!1265}
!1265 = distinct !{!1265, !1266, !"_ZN43_$LT$bool$u20$as$u20$core..fmt..Display$GT$3fmt17h64222129800deacdE: %self"}
!1266 = distinct !{!1266, !"_ZN43_$LT$bool$u20$as$u20$core..fmt..Display$GT$3fmt17h64222129800deacdE"}
!1267 = !{!1268}
!1268 = distinct !{!1268, !1269, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!1269 = distinct !{!1269, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!1270 = !{!1271}
!1271 = distinct !{!1271, !1272, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!1272 = distinct !{!1272, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!1273 = !{!1274}
!1274 = distinct !{!1274, !1275, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!1275 = distinct !{!1275, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!1276 = !{!1277, !1279, !1281}
!1277 = distinct !{!1277, !1278, !"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E: %self.0"}
!1278 = distinct !{!1278, !"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E"}
!1279 = distinct !{!1279, !1280, !"_ZN4core3str6traits105_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeFrom$LT$usize$GT$$GT$3get17hba6b301332fabfc0E: %slice.0"}
!1280 = distinct !{!1280, !"_ZN4core3str6traits105_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeFrom$LT$usize$GT$$GT$3get17hba6b301332fabfc0E"}
!1281 = distinct !{!1281, !1282, !"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E: %self.0"}
!1282 = distinct !{!1282, !"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E"}
!1283 = !{!1284, !1286}
!1284 = distinct !{!1284, !1285, !"_ZN4core3str6traits105_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeFrom$LT$usize$GT$$GT$5index28_$u7b$$u7b$closure$u7d$$u7d$17h277f2c6e8ba2e0a0E: %_1"}
!1285 = distinct !{!1285, !"_ZN4core3str6traits105_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeFrom$LT$usize$GT$$GT$5index28_$u7b$$u7b$closure$u7d$$u7d$17h277f2c6e8ba2e0a0E"}
!1286 = distinct !{!1286, !1287, !"_ZN4core6option15Option$LT$T$GT$14unwrap_or_else17h0062a1a0c3b34d3aE: %f"}
!1287 = distinct !{!1287, !"_ZN4core6option15Option$LT$T$GT$14unwrap_or_else17h0062a1a0c3b34d3aE"}
!1288 = !{!1289}
!1289 = distinct !{!1289, !1290, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!1290 = distinct !{!1290, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!1291 = !{!1292, !1294}
!1292 = distinct !{!1292, !1293, !"_ZN4core4char7methods22_$LT$impl$u20$char$GT$16escape_debug_ext17hbae895aeca091607E: argument 0"}
!1293 = distinct !{!1293, !"_ZN4core4char7methods22_$LT$impl$u20$char$GT$16escape_debug_ext17hbae895aeca091607E"}
!1294 = distinct !{!1294, !1295, !"_ZN4core4char7methods22_$LT$impl$u20$char$GT$12escape_debug17ha5fa7da70cdabb05E: argument 0"}
!1295 = distinct !{!1295, !"_ZN4core4char7methods22_$LT$impl$u20$char$GT$12escape_debug17ha5fa7da70cdabb05E"}
!1296 = !{!1297, !1292, !1294}
!1297 = distinct !{!1297, !1298, !"_ZN4core4char7methods22_$LT$impl$u20$char$GT$14escape_unicode17h1ed3cd9d3ead861dE: argument 0"}
!1298 = distinct !{!1298, !"_ZN4core4char7methods22_$LT$impl$u20$char$GT$14escape_unicode17h1ed3cd9d3ead861dE"}
!1299 = !{i32 0, i32 33}
!1300 = !{!1301}
!1301 = distinct !{!1301, !1302, !"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h16d959e9eb68186dE: %self.0"}
!1302 = distinct !{!1302, !"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h16d959e9eb68186dE"}
!1303 = !{!1304, !1301}
!1304 = distinct !{!1304, !1305, !"_ZN4core3str6traits101_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..Range$LT$usize$GT$$GT$5index17h985abab2a1e5940fE: argument 0"}
!1305 = distinct !{!1305, !"_ZN4core3str6traits101_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..Range$LT$usize$GT$$GT$5index17h985abab2a1e5940fE"}
!1306 = !{!1307, !1309, !1304, !1301}
!1307 = distinct !{!1307, !1308, !"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E: %self.0"}
!1308 = distinct !{!1308, !"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E"}
!1309 = distinct !{!1309, !1310, !"_ZN4core3str6traits101_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..Range$LT$usize$GT$$GT$3get17hadd52bef063a6e24E: %slice.0"}
!1310 = distinct !{!1310, !"_ZN4core3str6traits101_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..Range$LT$usize$GT$$GT$3get17hadd52bef063a6e24E"}
!1311 = !{!1312, !1309, !1304, !1301}
!1312 = distinct !{!1312, !1313, !"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E: %self.0"}
!1313 = distinct !{!1313, !"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E"}
!1314 = !{!1315, !1317, !1304, !1301}
!1315 = distinct !{!1315, !1316, !"_ZN4core6option15Option$LT$T$GT$14unwrap_or_else17h0ec8b7d0f3eb2aebE: argument 0"}
!1316 = distinct !{!1316, !"_ZN4core6option15Option$LT$T$GT$14unwrap_or_else17h0ec8b7d0f3eb2aebE"}
!1317 = distinct !{!1317, !1316, !"_ZN4core6option15Option$LT$T$GT$14unwrap_or_else17h0ec8b7d0f3eb2aebE: %f"}
!1318 = !{!1315, !1304, !1301}
!1319 = !{!1317}
!1320 = !{!1321}
!1321 = distinct !{!1321, !1322, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!1322 = distinct !{!1322, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!1323 = !{!1324, !1326}
!1324 = distinct !{!1324, !1325, !"_ZN4core4char7methods22_$LT$impl$u20$char$GT$16escape_debug_ext17hbae895aeca091607E: argument 0"}
!1325 = distinct !{!1325, !"_ZN4core4char7methods22_$LT$impl$u20$char$GT$16escape_debug_ext17hbae895aeca091607E"}
!1326 = distinct !{!1326, !1327, !"_ZN4core4char7methods22_$LT$impl$u20$char$GT$12escape_debug17ha5fa7da70cdabb05E: argument 0"}
!1327 = distinct !{!1327, !"_ZN4core4char7methods22_$LT$impl$u20$char$GT$12escape_debug17ha5fa7da70cdabb05E"}
!1328 = !{!1329}
!1329 = distinct !{!1329, !1330, !"_ZN54_$LT$$BP$const$u20$T$u20$as$u20$core..fmt..Pointer$GT$3fmt17h3a7d52fe10e5b00eE: %self"}
!1330 = distinct !{!1330, !"_ZN54_$LT$$BP$const$u20$T$u20$as$u20$core..fmt..Pointer$GT$3fmt17h3a7d52fe10e5b00eE"}
!1331 = !{!1332, !1329}
!1332 = distinct !{!1332, !1333, !"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$usize$GT$3fmt17he5ed7a2681b30ea1E: %self"}
!1333 = distinct !{!1333, !"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$usize$GT$3fmt17he5ed7a2681b30ea1E"}
!1334 = !{!1335}
!1335 = distinct !{!1335, !1336, !"_ZN54_$LT$$BP$const$u20$T$u20$as$u20$core..fmt..Pointer$GT$3fmt17h4bb8307c358d88b5E: %self"}
!1336 = distinct !{!1336, !"_ZN54_$LT$$BP$const$u20$T$u20$as$u20$core..fmt..Pointer$GT$3fmt17h4bb8307c358d88b5E"}
!1337 = !{!1338, !1335}
!1338 = distinct !{!1338, !1339, !"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$usize$GT$3fmt17he5ed7a2681b30ea1E: %self"}
!1339 = distinct !{!1339, !"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$usize$GT$3fmt17he5ed7a2681b30ea1E"}
!1340 = !{!1341}
!1341 = distinct !{!1341, !1342, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!1342 = distinct !{!1342, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!1343 = !{!1344}
!1344 = distinct !{!1344, !1345, !"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$8position17hd99f7db6860e152eE: argument 0"}
!1345 = distinct !{!1345, !"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$8position17hd99f7db6860e152eE"}
!1346 = !{!1347}
!1347 = distinct !{!1347, !1348, !"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$8position17hc163c40eb14fdc5dE: argument 0"}
!1348 = distinct !{!1348, !"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$8position17hc163c40eb14fdc5dE"}
!1349 = !{!1350}
!1350 = distinct !{!1350, !1351, !"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$9rposition17h6f715d946e4ea8f3E: argument 0"}
!1351 = distinct !{!1351, !"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$9rposition17h6f715d946e4ea8f3E"}
!1352 = !{!1353}
!1353 = distinct !{!1353, !1354, !"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$9rposition17h94502ae21fed0b78E: argument 0"}
!1354 = distinct !{!1354, !"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$9rposition17h94502ae21fed0b78E"}
!1355 = !{!1356}
!1356 = distinct !{!1356, !1357, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: argument 0"}
!1357 = distinct !{!1357, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E"}
!1358 = !{!1359, !1360}
!1359 = distinct !{!1359, !1357, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %pieces.0"}
!1360 = distinct !{!1360, !1357, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %args.0"}
!1361 = !{!1362}
!1362 = distinct !{!1362, !1363, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: argument 0"}
!1363 = distinct !{!1363, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E"}
!1364 = !{!1365, !1366}
!1365 = distinct !{!1365, !1363, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %pieces.0"}
!1366 = distinct !{!1366, !1363, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %args.0"}
!1367 = !{!1368, !1370, !1372, !1373, !1375}
!1368 = distinct !{!1368, !1369, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!1369 = distinct !{!1369, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!1370 = distinct !{!1370, !1371, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!1371 = distinct !{!1371, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!1372 = distinct !{!1372, !1371, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!1373 = distinct !{!1373, !1374, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!1374 = distinct !{!1374, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!1375 = distinct !{!1375, !1374, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!1376 = !{!1370, !1373}
!1377 = !{!1372, !1375}
!1378 = !{!1379}
!1379 = distinct !{!1379, !1380, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!1380 = distinct !{!1380, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!1381 = !{!1382}
!1382 = distinct !{!1382, !1383, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!1383 = distinct !{!1383, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!1384 = !{!1385, !1387, !1389, !1390, !1392}
!1385 = distinct !{!1385, !1386, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!1386 = distinct !{!1386, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!1387 = distinct !{!1387, !1388, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!1388 = distinct !{!1388, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!1389 = distinct !{!1389, !1388, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!1390 = distinct !{!1390, !1391, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!1391 = distinct !{!1391, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!1392 = distinct !{!1392, !1391, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!1393 = !{!1387, !1390}
!1394 = !{!1389, !1392}
!1395 = !{!1396}
!1396 = distinct !{!1396, !1397, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!1397 = distinct !{!1397, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!1398 = !{!1399}
!1399 = distinct !{!1399, !1400, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!1400 = distinct !{!1400, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!1401 = !{!1402, !1404}
!1402 = distinct !{!1402, !1403, !"_ZN4core3str7pattern14TwoWaySearcher14maximal_suffix17h940471553bbb4b53E: %arr.0"}
!1403 = distinct !{!1403, !"_ZN4core3str7pattern14TwoWaySearcher14maximal_suffix17h940471553bbb4b53E"}
!1404 = distinct !{!1404, !1405, !"_ZN4core3str7pattern14TwoWaySearcher3new17h6f6ae9055342774bE: %needle.0"}
!1405 = distinct !{!1405, !"_ZN4core3str7pattern14TwoWaySearcher3new17h6f6ae9055342774bE"}
!1406 = !{!1407}
!1407 = distinct !{!1407, !1405, !"_ZN4core3str7pattern14TwoWaySearcher3new17h6f6ae9055342774bE: argument 0"}
!1408 = !{!1402, !1407}
!1409 = !{!1410, !1404}
!1410 = distinct !{!1410, !1411, !"_ZN4core3str7pattern14TwoWaySearcher14maximal_suffix17h940471553bbb4b53E: %arr.0"}
!1411 = distinct !{!1411, !"_ZN4core3str7pattern14TwoWaySearcher14maximal_suffix17h940471553bbb4b53E"}
!1412 = !{!1410, !1407}
!1413 = !{!1414, !1404}
!1414 = distinct !{!1414, !1415, !"_ZN4core3str7pattern14TwoWaySearcher14byteset_create17h40f8399c26d966e7E: %bytes.0"}
!1415 = distinct !{!1415, !"_ZN4core3str7pattern14TwoWaySearcher14byteset_create17h40f8399c26d966e7E"}
!1416 = !{!1417, !1404}
!1417 = distinct !{!1417, !1418, !"_ZN4core3str7pattern14TwoWaySearcher22reverse_maximal_suffix17h0bdf013e5b5d3481E: %arr.0"}
!1418 = distinct !{!1418, !"_ZN4core3str7pattern14TwoWaySearcher22reverse_maximal_suffix17h0bdf013e5b5d3481E"}
!1419 = !{!1417, !1407}
!1420 = !{!1421, !1404}
!1421 = distinct !{!1421, !1422, !"_ZN4core3str7pattern14TwoWaySearcher22reverse_maximal_suffix17h0bdf013e5b5d3481E: %arr.0"}
!1422 = distinct !{!1422, !"_ZN4core3str7pattern14TwoWaySearcher22reverse_maximal_suffix17h0bdf013e5b5d3481E"}
!1423 = !{!1421, !1407}
!1424 = !{!1425, !1404}
!1425 = distinct !{!1425, !1426, !"_ZN4core3str7pattern14TwoWaySearcher14byteset_create17h40f8399c26d966e7E: %bytes.0"}
!1426 = distinct !{!1426, !"_ZN4core3str7pattern14TwoWaySearcher14byteset_create17h40f8399c26d966e7E"}
!1427 = !{!1428}
!1428 = distinct !{!1428, !1429, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!1429 = distinct !{!1429, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!1430 = !{!1431}
!1431 = distinct !{!1431, !1432, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!1432 = distinct !{!1432, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!1433 = !{!1434}
!1434 = distinct !{!1434, !1435, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!1435 = distinct !{!1435, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!1436 = !{!1437}
!1437 = distinct !{!1437, !1438, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!1438 = distinct !{!1438, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!1439 = !{!1440, !1442, !1444}
!1440 = distinct !{!1440, !1441, !"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E: %self.0"}
!1441 = distinct !{!1441, !"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E"}
!1442 = distinct !{!1442, !1443, !"_ZN4core3str6traits105_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeFrom$LT$usize$GT$$GT$3get17hba6b301332fabfc0E: %slice.0"}
!1443 = distinct !{!1443, !"_ZN4core3str6traits105_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeFrom$LT$usize$GT$$GT$3get17hba6b301332fabfc0E"}
!1444 = distinct !{!1444, !1445, !"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E: %self.0"}
!1445 = distinct !{!1445, !"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h8b3ec737df930ea1E"}
!1446 = !{!1447, !1449}
!1447 = distinct !{!1447, !1448, !"_ZN4core3str6traits105_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeFrom$LT$usize$GT$$GT$5index28_$u7b$$u7b$closure$u7d$$u7d$17h277f2c6e8ba2e0a0E: %_1"}
!1448 = distinct !{!1448, !"_ZN4core3str6traits105_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeFrom$LT$usize$GT$$GT$5index28_$u7b$$u7b$closure$u7d$$u7d$17h277f2c6e8ba2e0a0E"}
!1449 = distinct !{!1449, !1450, !"_ZN4core6option15Option$LT$T$GT$14unwrap_or_else17h0062a1a0c3b34d3aE: %f"}
!1450 = distinct !{!1450, !"_ZN4core6option15Option$LT$T$GT$14unwrap_or_else17h0062a1a0c3b34d3aE"}
!1451 = !{!1452}
!1452 = distinct !{!1452, !1453, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!1453 = distinct !{!1453, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!1454 = !{!1455, !1457}
!1455 = distinct !{!1455, !1456, !"_ZN4core4char7methods22_$LT$impl$u20$char$GT$16escape_debug_ext17hbae895aeca091607E: argument 0"}
!1456 = distinct !{!1456, !"_ZN4core4char7methods22_$LT$impl$u20$char$GT$16escape_debug_ext17hbae895aeca091607E"}
!1457 = distinct !{!1457, !1458, !"_ZN4core4char7methods22_$LT$impl$u20$char$GT$12escape_debug17ha5fa7da70cdabb05E: argument 0"}
!1458 = distinct !{!1458, !"_ZN4core4char7methods22_$LT$impl$u20$char$GT$12escape_debug17ha5fa7da70cdabb05E"}
!1459 = !{!1460, !1455, !1457}
!1460 = distinct !{!1460, !1461, !"_ZN4core4char7methods22_$LT$impl$u20$char$GT$14escape_unicode17h1ed3cd9d3ead861dE: argument 0"}
!1461 = distinct !{!1461, !"_ZN4core4char7methods22_$LT$impl$u20$char$GT$14escape_unicode17h1ed3cd9d3ead861dE"}
!1462 = !{!1463}
!1463 = distinct !{!1463, !1464, !"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h16d959e9eb68186dE: %self.0"}
!1464 = distinct !{!1464, !"_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17h16d959e9eb68186dE"}
!1465 = !{!1466, !1463}
!1466 = distinct !{!1466, !1467, !"_ZN4core3str6traits101_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..Range$LT$usize$GT$$GT$5index17h985abab2a1e5940fE: argument 0"}
!1467 = distinct !{!1467, !"_ZN4core3str6traits101_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..Range$LT$usize$GT$$GT$5index17h985abab2a1e5940fE"}
!1468 = !{!1469, !1471, !1466, !1463}
!1469 = distinct !{!1469, !1470, !"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E: %self.0"}
!1470 = distinct !{!1470, !"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E"}
!1471 = distinct !{!1471, !1472, !"_ZN4core3str6traits101_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..Range$LT$usize$GT$$GT$3get17hadd52bef063a6e24E: %slice.0"}
!1472 = distinct !{!1472, !"_ZN4core3str6traits101_$LT$impl$u20$core..slice..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..Range$LT$usize$GT$$GT$3get17hadd52bef063a6e24E"}
!1473 = !{!1474, !1471, !1466, !1463}
!1474 = distinct !{!1474, !1475, !"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E: %self.0"}
!1475 = distinct !{!1475, !"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E"}
!1476 = !{!1477, !1479, !1466, !1463}
!1477 = distinct !{!1477, !1478, !"_ZN4core6option15Option$LT$T$GT$14unwrap_or_else17h0ec8b7d0f3eb2aebE: argument 0"}
!1478 = distinct !{!1478, !"_ZN4core6option15Option$LT$T$GT$14unwrap_or_else17h0ec8b7d0f3eb2aebE"}
!1479 = distinct !{!1479, !1478, !"_ZN4core6option15Option$LT$T$GT$14unwrap_or_else17h0ec8b7d0f3eb2aebE: %f"}
!1480 = !{!1477, !1466, !1463}
!1481 = !{!1479}
!1482 = !{!1483}
!1483 = distinct !{!1483, !1484, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!1484 = distinct !{!1484, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!1485 = !{!1486}
!1486 = distinct !{!1486, !1487, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E: %fmt"}
!1487 = distinct !{!1487, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E"}
!1488 = !{!1489}
!1489 = distinct !{!1489, !1490, !"_ZN4core3str19run_utf8_validation17h5edf53af95eecb2aE: %v.0"}
!1490 = distinct !{!1490, !"_ZN4core3str19run_utf8_validation17h5edf53af95eecb2aE"}
!1491 = !{!1492}
!1492 = distinct !{!1492, !1490, !"_ZN4core3str19run_utf8_validation17h5edf53af95eecb2aE: argument 0"}
!1493 = !{!1494}
!1494 = distinct !{!1494, !1495, !"_ZN73_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try..Try$GT$10from_error17h31ee547974711734E: argument 0"}
!1495 = distinct !{!1495, !"_ZN73_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try..Try$GT$10from_error17h31ee547974711734E"}
!1496 = !{!1497}
!1497 = distinct !{!1497, !1495, !"_ZN73_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try..Try$GT$10from_error17h31ee547974711734E: %v"}
!1498 = !{!1499}
!1499 = distinct !{!1499, !1500, !"_ZN4core3str19run_utf8_validation17h5edf53af95eecb2aE: %v.0"}
!1500 = distinct !{!1500, !"_ZN4core3str19run_utf8_validation17h5edf53af95eecb2aE"}
!1501 = !{!1502}
!1502 = distinct !{!1502, !1500, !"_ZN4core3str19run_utf8_validation17h5edf53af95eecb2aE: argument 0"}
!1503 = !{!1504}
!1504 = distinct !{!1504, !1505, !"_ZN73_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try..Try$GT$10from_error17h123f1f4c7a6b3b9cE: argument 0"}
!1505 = distinct !{!1505, !"_ZN73_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try..Try$GT$10from_error17h123f1f4c7a6b3b9cE"}
!1506 = !{!1507}
!1507 = distinct !{!1507, !1505, !"_ZN73_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try..Try$GT$10from_error17h123f1f4c7a6b3b9cE: %v"}
!1508 = !{!1509}
!1509 = distinct !{!1509, !1510, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E: %fmt"}
!1510 = distinct !{!1510, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E"}
!1511 = !{!1512}
!1512 = distinct !{!1512, !1513, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E: %fmt"}
!1513 = distinct !{!1513, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E"}
!1514 = !{!1515}
!1515 = distinct !{!1515, !1516, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E: %fmt"}
!1516 = distinct !{!1516, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E"}
!1517 = !{!1518, !1520, !1522}
!1518 = distinct !{!1518, !1519, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!1519 = distinct !{!1519, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!1520 = distinct !{!1520, !1521, !"_ZN4core3fmt8builders14debug_list_new17he49aae00a72881d0E: argument 0"}
!1521 = distinct !{!1521, !"_ZN4core3fmt8builders14debug_list_new17he49aae00a72881d0E"}
!1522 = distinct !{!1522, !1523, !"_ZN4core3fmt9Formatter10debug_list17h28f90f7304fd6fd5E: argument 0"}
!1523 = distinct !{!1523, !"_ZN4core3fmt9Formatter10debug_list17h28f90f7304fd6fd5E"}
!1524 = !{!1520, !1522}
!1525 = !{!1526}
!1526 = distinct !{!1526, !1527, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!1527 = distinct !{!1527, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!1528 = !{!1529}
!1529 = distinct !{!1529, !1530, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!1530 = distinct !{!1530, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!1531 = !{!1532}
!1532 = distinct !{!1532, !1533, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!1533 = distinct !{!1533, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!1534 = !{!1535}
!1535 = distinct !{!1535, !1536, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!1536 = distinct !{!1536, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!1537 = !{!1538}
!1538 = distinct !{!1538, !1539, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E: %fmt"}
!1539 = distinct !{!1539, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E"}
!1540 = !{!1541, !1543, !1545, !1546, !1548}
!1541 = distinct !{!1541, !1542, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!1542 = distinct !{!1542, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!1543 = distinct !{!1543, !1544, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!1544 = distinct !{!1544, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!1545 = distinct !{!1545, !1544, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!1546 = distinct !{!1546, !1547, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!1547 = distinct !{!1547, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!1548 = distinct !{!1548, !1547, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!1549 = !{!1543, !1546}
!1550 = !{!1545, !1548}
!1551 = !{!1552}
!1552 = distinct !{!1552, !1553, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!1553 = distinct !{!1553, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!1554 = !{!1555}
!1555 = distinct !{!1555, !1556, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!1556 = distinct !{!1556, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!1557 = !{!1558, !1560, !1562, !1563, !1565}
!1558 = distinct !{!1558, !1559, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!1559 = distinct !{!1559, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!1560 = distinct !{!1560, !1561, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!1561 = distinct !{!1561, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!1562 = distinct !{!1562, !1561, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!1563 = distinct !{!1563, !1564, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!1564 = distinct !{!1564, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!1565 = distinct !{!1565, !1564, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!1566 = !{!1560, !1563}
!1567 = !{!1562, !1565}
!1568 = !{!1569}
!1569 = distinct !{!1569, !1570, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!1570 = distinct !{!1570, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!1571 = !{!1572}
!1572 = distinct !{!1572, !1573, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!1573 = distinct !{!1573, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!1574 = !{!1575, !1577}
!1575 = distinct !{!1575, !1576, !"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E: %self.0"}
!1576 = distinct !{!1576, !"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E"}
!1577 = distinct !{!1577, !1578, !"_ZN4core3str25truncate_to_char_boundary17ha2d3bee2e3956333E: %s.0"}
!1578 = distinct !{!1578, !"_ZN4core3str25truncate_to_char_boundary17ha2d3bee2e3956333E"}
!1579 = !{!1580}
!1580 = distinct !{!1580, !1578, !"_ZN4core3str25truncate_to_char_boundary17ha2d3bee2e3956333E: argument 0"}
!1581 = !{!1582}
!1582 = distinct !{!1582, !1583, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: argument 0"}
!1583 = distinct !{!1583, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E"}
!1584 = !{!1585, !1586}
!1585 = distinct !{!1585, !1583, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %pieces.0"}
!1586 = distinct !{!1586, !1583, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %args.0"}
!1587 = !{!1588}
!1588 = distinct !{!1588, !1589, !"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E: %self.0"}
!1589 = distinct !{!1589, !"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E"}
!1590 = !{!1591}
!1591 = distinct !{!1591, !1592, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: argument 0"}
!1592 = distinct !{!1592, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E"}
!1593 = !{!1594, !1595}
!1594 = distinct !{!1594, !1592, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %pieces.0"}
!1595 = distinct !{!1595, !1592, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %args.0"}
!1596 = !{!1597}
!1597 = distinct !{!1597, !1598, !"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E: %self.0"}
!1598 = distinct !{!1598, !"_ZN4core3str21_$LT$impl$u20$str$GT$16is_char_boundary17h667d4693a2fdebc0E"}
!1599 = !{!1600}
!1600 = distinct !{!1600, !1601, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!1601 = distinct !{!1601, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!1602 = !{!1603}
!1603 = distinct !{!1603, !1604, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!1604 = distinct !{!1604, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!1605 = !{!1606}
!1606 = distinct !{!1606, !1607, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!1607 = distinct !{!1607, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!1608 = !{!1609}
!1609 = distinct !{!1609, !1610, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: argument 0"}
!1610 = distinct !{!1610, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E"}
!1611 = !{!1612, !1613}
!1612 = distinct !{!1612, !1610, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %pieces.0"}
!1613 = distinct !{!1613, !1610, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %args.0"}
!1614 = !{!1615, !1617, !1619}
!1615 = distinct !{!1615, !1616, !"_ZN97_$LT$core..str..pattern..MultiCharEqSearcher$LT$C$GT$$u20$as$u20$core..str..pattern..Searcher$GT$4next17hf443ec6e324e6246E: argument 0"}
!1616 = distinct !{!1616, !"_ZN97_$LT$core..str..pattern..MultiCharEqSearcher$LT$C$GT$$u20$as$u20$core..str..pattern..Searcher$GT$4next17hf443ec6e324e6246E"}
!1617 = distinct !{!1617, !1618, !"_ZN4core3str7pattern8Searcher11next_reject17hfa22572b5aa60966E: argument 0"}
!1618 = distinct !{!1618, !"_ZN4core3str7pattern8Searcher11next_reject17hfa22572b5aa60966E"}
!1619 = distinct !{!1619, !1620, !"_ZN99_$LT$core..str..pattern..CharPredicateSearcher$LT$F$GT$$u20$as$u20$core..str..pattern..Searcher$GT$11next_reject17hd09809038dfa30aaE: argument 0"}
!1620 = distinct !{!1620, !"_ZN99_$LT$core..str..pattern..CharPredicateSearcher$LT$F$GT$$u20$as$u20$core..str..pattern..Searcher$GT$11next_reject17hd09809038dfa30aaE"}
!1621 = !{!1622}
!1622 = distinct !{!1622, !1623, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!1623 = distinct !{!1623, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!1624 = !{!1625}
!1625 = distinct !{!1625, !1626, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!1626 = distinct !{!1626, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!1627 = !{!1628}
!1628 = distinct !{!1628, !1629, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!1629 = distinct !{!1629, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!1630 = !{!1631, !1633, !1635}
!1631 = distinct !{!1631, !1632, !"_ZN104_$LT$core..str..pattern..MultiCharEqSearcher$LT$C$GT$$u20$as$u20$core..str..pattern..ReverseSearcher$GT$9next_back17he1af025e609e422aE: argument 0"}
!1632 = distinct !{!1632, !"_ZN104_$LT$core..str..pattern..MultiCharEqSearcher$LT$C$GT$$u20$as$u20$core..str..pattern..ReverseSearcher$GT$9next_back17he1af025e609e422aE"}
!1633 = distinct !{!1633, !1634, !"_ZN4core3str7pattern15ReverseSearcher16next_reject_back17h124f4b2d8374afe9E: argument 0"}
!1634 = distinct !{!1634, !"_ZN4core3str7pattern15ReverseSearcher16next_reject_back17h124f4b2d8374afe9E"}
!1635 = distinct !{!1635, !1636, !"_ZN106_$LT$core..str..pattern..CharPredicateSearcher$LT$F$GT$$u20$as$u20$core..str..pattern..ReverseSearcher$GT$16next_reject_back17hcc41d4fe9c9b6834E: argument 0"}
!1636 = distinct !{!1636, !"_ZN106_$LT$core..str..pattern..CharPredicateSearcher$LT$F$GT$$u20$as$u20$core..str..pattern..ReverseSearcher$GT$16next_reject_back17hcc41d4fe9c9b6834E"}
!1637 = !{!1638}
!1638 = distinct !{!1638, !1639, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!1639 = distinct !{!1639, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!1640 = !{!1641}
!1641 = distinct !{!1641, !1642, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!1642 = distinct !{!1642, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!1643 = !{!1644}
!1644 = distinct !{!1644, !1645, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!1645 = distinct !{!1645, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!1646 = !{!1647, !1649, !1651}
!1647 = distinct !{!1647, !1648, !"_ZN97_$LT$core..str..pattern..MultiCharEqSearcher$LT$C$GT$$u20$as$u20$core..str..pattern..Searcher$GT$4next17h79d72b0ffdfd669aE: argument 0"}
!1648 = distinct !{!1648, !"_ZN97_$LT$core..str..pattern..MultiCharEqSearcher$LT$C$GT$$u20$as$u20$core..str..pattern..Searcher$GT$4next17h79d72b0ffdfd669aE"}
!1649 = distinct !{!1649, !1650, !"_ZN4core3str7pattern8Searcher11next_reject17hb2edd2bce8a102b7E: argument 0"}
!1650 = distinct !{!1650, !"_ZN4core3str7pattern8Searcher11next_reject17hb2edd2bce8a102b7E"}
!1651 = distinct !{!1651, !1652, !"_ZN99_$LT$core..str..pattern..CharPredicateSearcher$LT$F$GT$$u20$as$u20$core..str..pattern..Searcher$GT$11next_reject17h1d184f18690884a5E: argument 0"}
!1652 = distinct !{!1652, !"_ZN99_$LT$core..str..pattern..CharPredicateSearcher$LT$F$GT$$u20$as$u20$core..str..pattern..Searcher$GT$11next_reject17h1d184f18690884a5E"}
!1653 = !{!1654}
!1654 = distinct !{!1654, !1655, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!1655 = distinct !{!1655, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!1656 = !{!1657}
!1657 = distinct !{!1657, !1658, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!1658 = distinct !{!1658, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!1659 = !{!1660}
!1660 = distinct !{!1660, !1661, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!1661 = distinct !{!1661, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!1662 = !{!1663, !1665, !1667}
!1663 = distinct !{!1663, !1664, !"_ZN104_$LT$core..str..pattern..MultiCharEqSearcher$LT$C$GT$$u20$as$u20$core..str..pattern..ReverseSearcher$GT$9next_back17he4e3b6622fed99b6E: argument 0"}
!1664 = distinct !{!1664, !"_ZN104_$LT$core..str..pattern..MultiCharEqSearcher$LT$C$GT$$u20$as$u20$core..str..pattern..ReverseSearcher$GT$9next_back17he4e3b6622fed99b6E"}
!1665 = distinct !{!1665, !1666, !"_ZN4core3str7pattern15ReverseSearcher16next_reject_back17hd662d5dc58c7e221E: argument 0"}
!1666 = distinct !{!1666, !"_ZN4core3str7pattern15ReverseSearcher16next_reject_back17hd662d5dc58c7e221E"}
!1667 = distinct !{!1667, !1668, !"_ZN106_$LT$core..str..pattern..CharPredicateSearcher$LT$F$GT$$u20$as$u20$core..str..pattern..ReverseSearcher$GT$16next_reject_back17hb0cf512b1b9445c3E: argument 0"}
!1668 = distinct !{!1668, !"_ZN106_$LT$core..str..pattern..CharPredicateSearcher$LT$F$GT$$u20$as$u20$core..str..pattern..ReverseSearcher$GT$16next_reject_back17hb0cf512b1b9445c3E"}
!1669 = !{!1670}
!1670 = distinct !{!1670, !1671, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!1671 = distinct !{!1671, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!1672 = !{!1673}
!1673 = distinct !{!1673, !1674, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!1674 = distinct !{!1674, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!1675 = !{!1676}
!1676 = distinct !{!1676, !1677, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!1677 = distinct !{!1677, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!1678 = !{!1679}
!1679 = distinct !{!1679, !1680, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!1680 = distinct !{!1680, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!1681 = !{!1682}
!1682 = distinct !{!1682, !1683, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!1683 = distinct !{!1683, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!1684 = !{!1685}
!1685 = distinct !{!1685, !1686, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!1686 = distinct !{!1686, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!1687 = !{!1688, !1690, !1692}
!1688 = distinct !{!1688, !1689, !"_ZN4core4char7methods22_$LT$impl$u20$char$GT$16escape_debug_ext17hbae895aeca091607E: argument 0"}
!1689 = distinct !{!1689, !"_ZN4core4char7methods22_$LT$impl$u20$char$GT$16escape_debug_ext17hbae895aeca091607E"}
!1690 = distinct !{!1690, !1691, !"_ZN4core3str21_$LT$impl$u20$str$GT$12escape_debug28_$u7b$$u7b$closure$u7d$$u7d$17he276fb313764e8b1E: argument 0"}
!1691 = distinct !{!1691, !"_ZN4core3str21_$LT$impl$u20$str$GT$12escape_debug28_$u7b$$u7b$closure$u7d$$u7d$17he276fb313764e8b1E"}
!1692 = distinct !{!1692, !1693, !"_ZN4core6option15Option$LT$T$GT$3map17hbef33498478591e2E: argument 0"}
!1693 = distinct !{!1693, !"_ZN4core6option15Option$LT$T$GT$3map17hbef33498478591e2E"}
!1694 = !{!1690, !1692}
!1695 = !{!1696, !1688, !1690, !1692}
!1696 = distinct !{!1696, !1697, !"_ZN4core4char7methods22_$LT$impl$u20$char$GT$14escape_unicode17h1ed3cd9d3ead861dE: argument 0"}
!1697 = distinct !{!1697, !"_ZN4core4char7methods22_$LT$impl$u20$char$GT$14escape_unicode17h1ed3cd9d3ead861dE"}
!1698 = !{!1699, !1701}
!1699 = distinct !{!1699, !1700, !"_ZN4core4iter6traits8iterator8Iterator5chain17h4a574899631b1616E: argument 0"}
!1700 = distinct !{!1700, !"_ZN4core4iter6traits8iterator8Iterator5chain17h4a574899631b1616E"}
!1701 = distinct !{!1701, !1700, !"_ZN4core4iter6traits8iterator8Iterator5chain17h4a574899631b1616E: %self"}
!1702 = !{!1703}
!1703 = distinct !{!1703, !1700, !"_ZN4core4iter6traits8iterator8Iterator5chain17h4a574899631b1616E: %other"}
!1704 = !{!1705}
!1705 = distinct !{!1705, !1706, !"_ZN4core6option15Option$LT$T$GT$6expect17h2f170a45fa4b3ccaE: %self"}
!1706 = distinct !{!1706, !"_ZN4core6option15Option$LT$T$GT$6expect17h2f170a45fa4b3ccaE"}
!1707 = !{!1708}
!1708 = distinct !{!1708, !1709, !"_ZN4core6option15Option$LT$T$GT$6expect17h2f170a45fa4b3ccaE: %self"}
!1709 = distinct !{!1709, !"_ZN4core6option15Option$LT$T$GT$6expect17h2f170a45fa4b3ccaE"}
!1710 = !{!1711}
!1711 = distinct !{!1711, !1712, !"_ZN4core6option15Option$LT$T$GT$6expect17h2f170a45fa4b3ccaE: %self"}
!1712 = distinct !{!1712, !"_ZN4core6option15Option$LT$T$GT$6expect17h2f170a45fa4b3ccaE"}
!1713 = !{!1714}
!1714 = distinct !{!1714, !1715, !"_ZN4core6option15Option$LT$T$GT$6expect17h2f170a45fa4b3ccaE: %self"}
!1715 = distinct !{!1715, !"_ZN4core6option15Option$LT$T$GT$6expect17h2f170a45fa4b3ccaE"}
!1716 = !{!1717}
!1717 = distinct !{!1717, !1718, !"_ZN4core6option15Option$LT$T$GT$6expect17h2f170a45fa4b3ccaE: %self"}
!1718 = distinct !{!1718, !"_ZN4core6option15Option$LT$T$GT$6expect17h2f170a45fa4b3ccaE"}
!1719 = !{!1720}
!1720 = distinct !{!1720, !1721, !"_ZN4core6option15Option$LT$T$GT$6expect17h2f170a45fa4b3ccaE: %self"}
!1721 = distinct !{!1721, !"_ZN4core6option15Option$LT$T$GT$6expect17h2f170a45fa4b3ccaE"}
!1722 = !{!1723}
!1723 = distinct !{!1723, !1724, !"_ZN4core6option15Option$LT$T$GT$6expect17h2f170a45fa4b3ccaE: %self"}
!1724 = distinct !{!1724, !"_ZN4core6option15Option$LT$T$GT$6expect17h2f170a45fa4b3ccaE"}
!1725 = !{!1726}
!1726 = distinct !{!1726, !1727, !"_ZN4core6option15Option$LT$T$GT$6expect17h2f170a45fa4b3ccaE: %self"}
!1727 = distinct !{!1727, !"_ZN4core6option15Option$LT$T$GT$6expect17h2f170a45fa4b3ccaE"}
!1728 = !{!1729}
!1729 = distinct !{!1729, !1730, !"_ZN4core6option15Option$LT$T$GT$6expect17h2f170a45fa4b3ccaE: %self"}
!1730 = distinct !{!1730, !"_ZN4core6option15Option$LT$T$GT$6expect17h2f170a45fa4b3ccaE"}
!1731 = !{!1732}
!1732 = distinct !{!1732, !1733, !"_ZN4core3fmt9Formatter9sign_plus17hea67cd042fb3b4d6E: %self"}
!1733 = distinct !{!1733, !"_ZN4core3fmt9Formatter9sign_plus17hea67cd042fb3b4d6E"}
!1734 = !{!1735}
!1735 = distinct !{!1735, !1736, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E: %fmt"}
!1736 = distinct !{!1736, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E"}
!1737 = !{!1738}
!1738 = distinct !{!1738, !1739, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!1739 = distinct !{!1739, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!1740 = !{!1741}
!1741 = distinct !{!1741, !1742, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!1742 = distinct !{!1742, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!1743 = !{!1744}
!1744 = distinct !{!1744, !1745, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!1745 = distinct !{!1745, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!1746 = !{!1747}
!1747 = distinct !{!1747, !1748, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!1748 = distinct !{!1748, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!1749 = !{!1750}
!1750 = distinct !{!1750, !1751, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E: %fmt"}
!1751 = distinct !{!1751, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E"}
!1752 = !{!1753}
!1753 = distinct !{!1753, !1754, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E: %fmt"}
!1754 = distinct !{!1754, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E"}
!1755 = !{!1756, !1758}
!1756 = distinct !{!1756, !1757, !"_ZN4core6option15Option$LT$T$GT$3map17habcca4f0a50fbddbE: argument 0"}
!1757 = distinct !{!1757, !"_ZN4core6option15Option$LT$T$GT$3map17habcca4f0a50fbddbE"}
!1758 = distinct !{!1758, !1759, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h4a8ee9b881045d1dE: %self"}
!1759 = distinct !{!1759, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h4a8ee9b881045d1dE"}
!1760 = !{!1761, !1763}
!1761 = distinct !{!1761, !1762, !"_ZN4core6option15Option$LT$T$GT$3map17habcca4f0a50fbddbE: argument 0"}
!1762 = distinct !{!1762, !"_ZN4core6option15Option$LT$T$GT$3map17habcca4f0a50fbddbE"}
!1763 = distinct !{!1763, !1764, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h4a8ee9b881045d1dE: %self"}
!1764 = distinct !{!1764, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h4a8ee9b881045d1dE"}
!1765 = !{!1766, !1768, !1770, !1771, !1773}
!1766 = distinct !{!1766, !1767, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!1767 = distinct !{!1767, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!1768 = distinct !{!1768, !1769, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!1769 = distinct !{!1769, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!1770 = distinct !{!1770, !1769, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!1771 = distinct !{!1771, !1772, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!1772 = distinct !{!1772, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!1773 = distinct !{!1773, !1772, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!1774 = !{!1768, !1771}
!1775 = !{!1770, !1773}
!1776 = !{!1777}
!1777 = distinct !{!1777, !1778, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!1778 = distinct !{!1778, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!1779 = !{!1780}
!1780 = distinct !{!1780, !1781, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!1781 = distinct !{!1781, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!1782 = !{!1783, !1785, !1787, !1788, !1790}
!1783 = distinct !{!1783, !1784, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!1784 = distinct !{!1784, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!1785 = distinct !{!1785, !1786, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!1786 = distinct !{!1786, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!1787 = distinct !{!1787, !1786, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!1788 = distinct !{!1788, !1789, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!1789 = distinct !{!1789, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!1790 = distinct !{!1790, !1789, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!1791 = !{!1785, !1788}
!1792 = !{!1787, !1790}
!1793 = !{!1794}
!1794 = distinct !{!1794, !1795, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!1795 = distinct !{!1795, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!1796 = !{!1797}
!1797 = distinct !{!1797, !1798, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!1798 = distinct !{!1798, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!1799 = !{!1800}
!1800 = distinct !{!1800, !1801, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!1801 = distinct !{!1801, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!1802 = !{!1803}
!1803 = distinct !{!1803, !1804, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!1804 = distinct !{!1804, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!1805 = !{!1806}
!1806 = distinct !{!1806, !1807, !"_ZN4core3num14from_str_radix17h16198f62b04d08bbE: %src.0"}
!1807 = distinct !{!1807, !"_ZN4core3num14from_str_radix17h16198f62b04d08bbE"}
!1808 = !{!1809}
!1809 = distinct !{!1809, !1810, !"_ZN4core3num14from_str_radix17h39ab26794bfd72eaE: %src.0"}
!1810 = distinct !{!1810, !"_ZN4core3num14from_str_radix17h39ab26794bfd72eaE"}
!1811 = !{!1812}
!1812 = distinct !{!1812, !1810, !"_ZN4core3num14from_str_radix17h39ab26794bfd72eaE: argument 0"}
!1813 = !{!1814}
!1814 = distinct !{!1814, !1815, !"_ZN4core6option15Option$LT$T$GT$5ok_or17h9a1e2f67e78cc4b0E: argument 0"}
!1815 = distinct !{!1815, !"_ZN4core6option15Option$LT$T$GT$5ok_or17h9a1e2f67e78cc4b0E"}
!1816 = !{!1817}
!1817 = distinct !{!1817, !1818, !"_ZN73_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try..Try$GT$10from_error17h74554bf212ceb276E: argument 0"}
!1818 = distinct !{!1818, !"_ZN73_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try..Try$GT$10from_error17h74554bf212ceb276E"}
!1819 = !{!1817, !1814}
!1820 = !{!1821}
!1821 = distinct !{!1821, !1822, !"_ZN4core3num14from_str_radix17h46636899300cc69cE: %src.0"}
!1822 = distinct !{!1822, !"_ZN4core3num14from_str_radix17h46636899300cc69cE"}
!1823 = !{!1824}
!1824 = distinct !{!1824, !1822, !"_ZN4core3num14from_str_radix17h46636899300cc69cE: argument 0"}
!1825 = !{!1826}
!1826 = distinct !{!1826, !1827, !"_ZN4core6option15Option$LT$T$GT$5ok_or17h0fd3107559f0053cE: argument 0"}
!1827 = distinct !{!1827, !"_ZN4core6option15Option$LT$T$GT$5ok_or17h0fd3107559f0053cE"}
!1828 = !{!1829}
!1829 = distinct !{!1829, !1830, !"_ZN73_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try..Try$GT$10from_error17h1ac6405efbd21d6cE: argument 0"}
!1830 = distinct !{!1830, !"_ZN73_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try..Try$GT$10from_error17h1ac6405efbd21d6cE"}
!1831 = !{!1829, !1826}
!1832 = !{!1833}
!1833 = distinct !{!1833, !1834, !"_ZN4core3num14from_str_radix17h1ac727572120a694E: %src.0"}
!1834 = distinct !{!1834, !"_ZN4core3num14from_str_radix17h1ac727572120a694E"}
!1835 = !{!1836}
!1836 = distinct !{!1836, !1834, !"_ZN4core3num14from_str_radix17h1ac727572120a694E: argument 0"}
!1837 = !{!1838}
!1838 = distinct !{!1838, !1839, !"_ZN4core6option15Option$LT$T$GT$5ok_or17hf3c42d22f41736eeE: argument 0"}
!1839 = distinct !{!1839, !"_ZN4core6option15Option$LT$T$GT$5ok_or17hf3c42d22f41736eeE"}
!1840 = !{!1841}
!1841 = distinct !{!1841, !1842, !"_ZN73_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try..Try$GT$10from_error17hbe0c0127c7eebd6fE: argument 0"}
!1842 = distinct !{!1842, !"_ZN73_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try..Try$GT$10from_error17hbe0c0127c7eebd6fE"}
!1843 = !{!1841, !1838}
!1844 = !{!1845}
!1845 = distinct !{!1845, !1846, !"_ZN4core3num14from_str_radix17hf78483ff9501fe84E: %src.0"}
!1846 = distinct !{!1846, !"_ZN4core3num14from_str_radix17hf78483ff9501fe84E"}
!1847 = !{!1848}
!1848 = distinct !{!1848, !1846, !"_ZN4core3num14from_str_radix17hf78483ff9501fe84E: argument 0"}
!1849 = !{!1850}
!1850 = distinct !{!1850, !1851, !"_ZN4core6option15Option$LT$T$GT$5ok_or17hcdec0ffb85980595E: argument 0"}
!1851 = distinct !{!1851, !"_ZN4core6option15Option$LT$T$GT$5ok_or17hcdec0ffb85980595E"}
!1852 = !{!1853}
!1853 = distinct !{!1853, !1854, !"_ZN73_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try..Try$GT$10from_error17h2076423fb88bfadbE: argument 0"}
!1854 = distinct !{!1854, !"_ZN73_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try..Try$GT$10from_error17h2076423fb88bfadbE"}
!1855 = !{!1853, !1850}
!1856 = !{!1857}
!1857 = distinct !{!1857, !1858, !"_ZN4core3num14from_str_radix17hb5e96faa7057ae66E: %src.0"}
!1858 = distinct !{!1858, !"_ZN4core3num14from_str_radix17hb5e96faa7057ae66E"}
!1859 = !{!1860}
!1860 = distinct !{!1860, !1861, !"_ZN4core3num14from_str_radix17h24a850c5437e4172E: %src.0"}
!1861 = distinct !{!1861, !"_ZN4core3num14from_str_radix17h24a850c5437e4172E"}
!1862 = !{!1863}
!1863 = distinct !{!1863, !1861, !"_ZN4core3num14from_str_radix17h24a850c5437e4172E: argument 0"}
!1864 = !{!1865}
!1865 = distinct !{!1865, !1866, !"_ZN4core6option15Option$LT$T$GT$5ok_or17h686f90241f099738E: argument 0"}
!1866 = distinct !{!1866, !"_ZN4core6option15Option$LT$T$GT$5ok_or17h686f90241f099738E"}
!1867 = !{!1868}
!1868 = distinct !{!1868, !1869, !"_ZN73_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try..Try$GT$10from_error17h6af0168446cab9c0E: argument 0"}
!1869 = distinct !{!1869, !"_ZN73_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try..Try$GT$10from_error17h6af0168446cab9c0E"}
!1870 = !{!1868, !1865}
!1871 = !{!1872}
!1872 = distinct !{!1872, !1873, !"_ZN4core3num14from_str_radix17h6c2fc9a7c8d51d38E: %src.0"}
!1873 = distinct !{!1873, !"_ZN4core3num14from_str_radix17h6c2fc9a7c8d51d38E"}
!1874 = !{!1875}
!1875 = distinct !{!1875, !1873, !"_ZN4core3num14from_str_radix17h6c2fc9a7c8d51d38E: argument 0"}
!1876 = !{!1877}
!1877 = distinct !{!1877, !1878, !"_ZN4core6option15Option$LT$T$GT$5ok_or17hf679fdfb4eca0712E: argument 0"}
!1878 = distinct !{!1878, !"_ZN4core6option15Option$LT$T$GT$5ok_or17hf679fdfb4eca0712E"}
!1879 = !{!1880}
!1880 = distinct !{!1880, !1881, !"_ZN73_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try..Try$GT$10from_error17he1eca862150e5e5eE: argument 0"}
!1881 = distinct !{!1881, !"_ZN73_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try..Try$GT$10from_error17he1eca862150e5e5eE"}
!1882 = !{!1880, !1877}
!1883 = !{!1884}
!1884 = distinct !{!1884, !1885, !"_ZN4core3num14from_str_radix17h6aa373bc7c329928E: %src.0"}
!1885 = distinct !{!1885, !"_ZN4core3num14from_str_radix17h6aa373bc7c329928E"}
!1886 = !{!1887}
!1887 = distinct !{!1887, !1885, !"_ZN4core3num14from_str_radix17h6aa373bc7c329928E: argument 0"}
!1888 = !{!1889}
!1889 = distinct !{!1889, !1890, !"_ZN4core6option15Option$LT$T$GT$5ok_or17h6bbc7738545b6f4aE: argument 0"}
!1890 = distinct !{!1890, !"_ZN4core6option15Option$LT$T$GT$5ok_or17h6bbc7738545b6f4aE"}
!1891 = !{!1892}
!1892 = distinct !{!1892, !1893, !"_ZN73_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try..Try$GT$10from_error17hed63b503c557b003E: argument 0"}
!1893 = distinct !{!1893, !"_ZN73_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try..Try$GT$10from_error17hed63b503c557b003E"}
!1894 = !{!1892, !1889}
!1895 = !{!1896}
!1896 = distinct !{!1896, !1897, !"_ZN4core3num14from_str_radix17h2e787a9060537f03E: %src.0"}
!1897 = distinct !{!1897, !"_ZN4core3num14from_str_radix17h2e787a9060537f03E"}
!1898 = !{!1899}
!1899 = distinct !{!1899, !1897, !"_ZN4core3num14from_str_radix17h2e787a9060537f03E: argument 0"}
!1900 = !{!1901}
!1901 = distinct !{!1901, !1902, !"_ZN4core6option15Option$LT$T$GT$5ok_or17hd3828cd7eeea6d43E: argument 0"}
!1902 = distinct !{!1902, !"_ZN4core6option15Option$LT$T$GT$5ok_or17hd3828cd7eeea6d43E"}
!1903 = !{!1904}
!1904 = distinct !{!1904, !1905, !"_ZN73_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try..Try$GT$10from_error17hab79dc506a7fbfb4E: argument 0"}
!1905 = distinct !{!1905, !"_ZN73_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try..Try$GT$10from_error17hab79dc506a7fbfb4E"}
!1906 = !{!1904, !1901}
!1907 = !{!1908}
!1908 = distinct !{!1908, !1909, !"_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E: %self"}
!1909 = distinct !{!1909, !"_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E"}
!1910 = !{!1911}
!1911 = distinct !{!1911, !1912, !"_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E: %self"}
!1912 = distinct !{!1912, !"_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E"}
!1913 = !{!1914}
!1914 = distinct !{!1914, !1915, !"_ZN103_$LT$core..iter..adapters..TakeWhile$LT$I$C$P$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$8try_fold5check28_$u7b$$u7b$closure$u7d$$u7d$17hfaf89f2e710be57cE: argument 0"}
!1915 = distinct !{!1915, !"_ZN103_$LT$core..iter..adapters..TakeWhile$LT$I$C$P$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$8try_fold5check28_$u7b$$u7b$closure$u7d$$u7d$17hfaf89f2e710be57cE"}
!1916 = !{!1917, !1919}
!1917 = distinct !{!1917, !1918, !"_ZN103_$LT$core..iter..adapters..TakeWhile$LT$I$C$P$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4fold17hb3fe199838c8ed41E: %self"}
!1918 = distinct !{!1918, !"_ZN103_$LT$core..iter..adapters..TakeWhile$LT$I$C$P$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4fold17hb3fe199838c8ed41E"}
!1919 = distinct !{!1919, !1920, !"_ZN4core4iter6traits8iterator8Iterator5count17h833b2edda10f8956E: %self"}
!1920 = distinct !{!1920, !"_ZN4core4iter6traits8iterator8Iterator5count17h833b2edda10f8956E"}
!1921 = !{!1922}
!1922 = distinct !{!1922, !1923, !"_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E: %self"}
!1923 = distinct !{!1923, !"_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E"}
!1924 = !{!1925}
!1925 = distinct !{!1925, !1926, !"_ZN4core3num6bignum8Big32x4010mul_digits9mul_inner17hbd621189fb903327E: %aa.0"}
!1926 = distinct !{!1926, !"_ZN4core3num6bignum8Big32x4010mul_digits9mul_inner17hbd621189fb903327E"}
!1927 = !{!1928}
!1928 = distinct !{!1928, !1926, !"_ZN4core3num6bignum8Big32x4010mul_digits9mul_inner17hbd621189fb903327E: %bb.0"}
!1929 = !{!1925, !1928}
!1930 = !{!1931}
!1931 = distinct !{!1931, !1932, !"_ZN4core3num6bignum8Big32x4010mul_digits9mul_inner17hbd621189fb903327E: %aa.0"}
!1932 = distinct !{!1932, !"_ZN4core3num6bignum8Big32x4010mul_digits9mul_inner17hbd621189fb903327E"}
!1933 = !{!1934}
!1934 = distinct !{!1934, !1932, !"_ZN4core3num6bignum8Big32x4010mul_digits9mul_inner17hbd621189fb903327E: %bb.0"}
!1935 = !{!1931, !1934}
!1936 = !{!1937, !1939}
!1937 = distinct !{!1937, !1938, !"_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E: %self"}
!1938 = distinct !{!1938, !"_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E"}
!1939 = distinct !{!1939, !1940, !"_ZN4core3num6bignum8Big32x407is_zero17hfecd2d706fe71641E: %self"}
!1940 = distinct !{!1940, !"_ZN4core3num6bignum8Big32x407is_zero17hfecd2d706fe71641E"}
!1941 = !{!1939}
!1942 = !{!1943, !1945}
!1943 = distinct !{!1943, !1944, !"_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E: %self"}
!1944 = distinct !{!1944, !"_ZN4core3num6bignum8Big32x406digits17h49fe7ba3dc854039E"}
!1945 = distinct !{!1945, !1946, !"_ZN4core3num6bignum8Big32x4010bit_length17he5a5e93bd40911c1E: %self"}
!1946 = distinct !{!1946, !"_ZN4core3num6bignum8Big32x4010bit_length17he5a5e93bd40911c1E"}
!1947 = !{!1948, !1945}
!1948 = distinct !{!1948, !1949, !"_ZN103_$LT$core..iter..adapters..TakeWhile$LT$I$C$P$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$8try_fold5check28_$u7b$$u7b$closure$u7d$$u7d$17hfaf89f2e710be57cE: argument 0"}
!1949 = distinct !{!1949, !"_ZN103_$LT$core..iter..adapters..TakeWhile$LT$I$C$P$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$8try_fold5check28_$u7b$$u7b$closure$u7d$$u7d$17hfaf89f2e710be57cE"}
!1950 = !{!1951, !1953}
!1951 = distinct !{!1951, !1952, !"_ZN103_$LT$core..iter..adapters..TakeWhile$LT$I$C$P$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4fold17hb3fe199838c8ed41E: %self"}
!1952 = distinct !{!1952, !"_ZN103_$LT$core..iter..adapters..TakeWhile$LT$I$C$P$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4fold17hb3fe199838c8ed41E"}
!1953 = distinct !{!1953, !1954, !"_ZN4core4iter6traits8iterator8Iterator5count17h833b2edda10f8956E: %self"}
!1954 = distinct !{!1954, !"_ZN4core4iter6traits8iterator8Iterator5count17h833b2edda10f8956E"}
!1955 = !{!1956}
!1956 = distinct !{!1956, !1957, !"_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E: %self"}
!1957 = distinct !{!1957, !"_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E"}
!1958 = !{!1956, !1945}
!1959 = !{!1960}
!1960 = distinct !{!1960, !1961, !"_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E: %self"}
!1961 = distinct !{!1961, !"_ZN4core3num6bignum8Big32x407get_bit17he7f2439843387318E"}
!1962 = !{!1963, !1965, !1967}
!1963 = distinct !{!1963, !1964, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE: %self"}
!1964 = distinct !{!1964, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE"}
!1965 = distinct !{!1965, !1966, !"_ZN69_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17h4c44a10cf557a94aE: %self"}
!1966 = distinct !{!1966, !"_ZN69_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17h4c44a10cf557a94aE"}
!1967 = distinct !{!1967, !1968, !"_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E: %self"}
!1968 = distinct !{!1968, !"_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E"}
!1969 = !{!1970, !1971, !1972}
!1970 = distinct !{!1970, !1964, !"_ZN62_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..Ord$GT$3cmp17hc09291aba5863d2dE: %other"}
!1971 = distinct !{!1971, !1966, !"_ZN69_$LT$core..num..bignum..Big32x40$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17h4c44a10cf557a94aE: %other"}
!1972 = distinct !{!1972, !1968, !"_ZN4core3cmp10PartialOrd2ge17hd7f058da611d8228E: %other"}
!1973 = !{!1974, !1976, !1963, !1965, !1967}
!1974 = distinct !{!1974, !1975, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE: argument 0"}
!1975 = distinct !{!1975, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE"}
!1976 = distinct !{!1976, !1977, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE: %self"}
!1977 = distinct !{!1977, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE"}
!1978 = !{!1979, !1981, !1970, !1971, !1972}
!1979 = distinct !{!1979, !1980, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE: argument 0"}
!1980 = distinct !{!1980, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE"}
!1981 = distinct !{!1981, !1982, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE: %self"}
!1982 = distinct !{!1982, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE"}
!1983 = !{!1984}
!1984 = distinct !{!1984, !1985, !"_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE: %other"}
!1985 = distinct !{!1985, !"_ZN4core3num6bignum8Big32x403sub17hd9d0c6452061c20dE"}
!1986 = !{!1987, !1989}
!1987 = distinct !{!1987, !1988, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE: argument 0"}
!1988 = distinct !{!1988, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE"}
!1989 = distinct !{!1989, !1990, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE: %self"}
!1990 = distinct !{!1990, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE"}
!1991 = !{!1992, !1994}
!1992 = distinct !{!1992, !1993, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE: argument 0"}
!1993 = distinct !{!1993, !"_ZN4core6option15Option$LT$T$GT$3map17hc7691f3233256c4cE"}
!1994 = distinct !{!1994, !1995, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE: %self"}
!1995 = distinct !{!1995, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h52bdd7038dcf142dE"}
!1996 = !{!1997}
!1997 = distinct !{!1997, !1998, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E: %fmt"}
!1998 = distinct !{!1998, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E"}
!1999 = !{!2000}
!2000 = distinct !{!2000, !2001, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E: %fmt"}
!2001 = distinct !{!2001, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E"}
!2002 = !{!2003}
!2003 = distinct !{!2003, !2004, !"_ZN4core3num6bignum5tests6Big8x36digits17hf059edc297a7e462E: %self"}
!2004 = distinct !{!2004, !"_ZN4core3num6bignum5tests6Big8x36digits17hf059edc297a7e462E"}
!2005 = !{!2006}
!2006 = distinct !{!2006, !2007, !"_ZN4core3num6bignum5tests6Big8x36digits17hf059edc297a7e462E: %self"}
!2007 = distinct !{!2007, !"_ZN4core3num6bignum5tests6Big8x36digits17hf059edc297a7e462E"}
!2008 = !{!2009}
!2009 = distinct !{!2009, !2010, !"_ZN103_$LT$core..iter..adapters..TakeWhile$LT$I$C$P$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$8try_fold5check28_$u7b$$u7b$closure$u7d$$u7d$17ha28f6be428c54064E: argument 0"}
!2010 = distinct !{!2010, !"_ZN103_$LT$core..iter..adapters..TakeWhile$LT$I$C$P$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$8try_fold5check28_$u7b$$u7b$closure$u7d$$u7d$17ha28f6be428c54064E"}
!2011 = !{!2012, !2014}
!2012 = distinct !{!2012, !2013, !"_ZN103_$LT$core..iter..adapters..TakeWhile$LT$I$C$P$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4fold17hc48307a81804009eE: %self"}
!2013 = distinct !{!2013, !"_ZN103_$LT$core..iter..adapters..TakeWhile$LT$I$C$P$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4fold17hc48307a81804009eE"}
!2014 = distinct !{!2014, !2015, !"_ZN4core4iter6traits8iterator8Iterator5count17hbe4c10b6321b8a5eE: %self"}
!2015 = distinct !{!2015, !"_ZN4core4iter6traits8iterator8Iterator5count17hbe4c10b6321b8a5eE"}
!2016 = !{!2017}
!2017 = distinct !{!2017, !2018, !"_ZN4core3num6bignum5tests6Big8x37get_bit17h2e00b268ce9988f9E: %self"}
!2018 = distinct !{!2018, !"_ZN4core3num6bignum5tests6Big8x37get_bit17h2e00b268ce9988f9E"}
!2019 = !{!2020, !2022}
!2020 = distinct !{!2020, !2021, !"_ZN4core3num6bignum5tests6Big8x36digits17hf059edc297a7e462E: %self"}
!2021 = distinct !{!2021, !"_ZN4core3num6bignum5tests6Big8x36digits17hf059edc297a7e462E"}
!2022 = distinct !{!2022, !2023, !"_ZN4core3num6bignum5tests6Big8x37is_zero17h4659b0be0788ac3aE: %self"}
!2023 = distinct !{!2023, !"_ZN4core3num6bignum5tests6Big8x37is_zero17h4659b0be0788ac3aE"}
!2024 = !{!2022}
!2025 = !{!2026, !2028}
!2026 = distinct !{!2026, !2027, !"_ZN4core3num6bignum5tests6Big8x36digits17hf059edc297a7e462E: %self"}
!2027 = distinct !{!2027, !"_ZN4core3num6bignum5tests6Big8x36digits17hf059edc297a7e462E"}
!2028 = distinct !{!2028, !2029, !"_ZN4core3num6bignum5tests6Big8x310bit_length17h8566b9784529920aE: %self"}
!2029 = distinct !{!2029, !"_ZN4core3num6bignum5tests6Big8x310bit_length17h8566b9784529920aE"}
!2030 = !{!2031, !2028}
!2031 = distinct !{!2031, !2032, !"_ZN103_$LT$core..iter..adapters..TakeWhile$LT$I$C$P$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$8try_fold5check28_$u7b$$u7b$closure$u7d$$u7d$17ha28f6be428c54064E: argument 0"}
!2032 = distinct !{!2032, !"_ZN103_$LT$core..iter..adapters..TakeWhile$LT$I$C$P$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$8try_fold5check28_$u7b$$u7b$closure$u7d$$u7d$17ha28f6be428c54064E"}
!2033 = !{!2034, !2036}
!2034 = distinct !{!2034, !2035, !"_ZN103_$LT$core..iter..adapters..TakeWhile$LT$I$C$P$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4fold17hc48307a81804009eE: %self"}
!2035 = distinct !{!2035, !"_ZN103_$LT$core..iter..adapters..TakeWhile$LT$I$C$P$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4fold17hc48307a81804009eE"}
!2036 = distinct !{!2036, !2037, !"_ZN4core4iter6traits8iterator8Iterator5count17hbe4c10b6321b8a5eE: %self"}
!2037 = distinct !{!2037, !"_ZN4core4iter6traits8iterator8Iterator5count17hbe4c10b6321b8a5eE"}
!2038 = !{!2039}
!2039 = distinct !{!2039, !2040, !"_ZN4core3num6bignum5tests6Big8x37get_bit17h2e00b268ce9988f9E: %self"}
!2040 = distinct !{!2040, !"_ZN4core3num6bignum5tests6Big8x37get_bit17h2e00b268ce9988f9E"}
!2041 = !{!2039, !2028}
!2042 = !{!2043}
!2043 = distinct !{!2043, !2044, !"_ZN4core3num6bignum5tests6Big8x37get_bit17h2e00b268ce9988f9E: %self"}
!2044 = distinct !{!2044, !"_ZN4core3num6bignum5tests6Big8x37get_bit17h2e00b268ce9988f9E"}
!2045 = !{!2046, !2048, !2050}
!2046 = distinct !{!2046, !2047, !"_ZN67_$LT$core..num..bignum..tests..Big8x3$u20$as$u20$core..cmp..Ord$GT$3cmp17hb55b08de2a426abeE: %self"}
!2047 = distinct !{!2047, !"_ZN67_$LT$core..num..bignum..tests..Big8x3$u20$as$u20$core..cmp..Ord$GT$3cmp17hb55b08de2a426abeE"}
!2048 = distinct !{!2048, !2049, !"_ZN74_$LT$core..num..bignum..tests..Big8x3$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17hc621e24fce2f9a28E: %self"}
!2049 = distinct !{!2049, !"_ZN74_$LT$core..num..bignum..tests..Big8x3$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17hc621e24fce2f9a28E"}
!2050 = distinct !{!2050, !2051, !"_ZN4core3cmp10PartialOrd2ge17hf46e9f6e0a2f337aE: %self"}
!2051 = distinct !{!2051, !"_ZN4core3cmp10PartialOrd2ge17hf46e9f6e0a2f337aE"}
!2052 = !{!2053, !2054, !2055}
!2053 = distinct !{!2053, !2047, !"_ZN67_$LT$core..num..bignum..tests..Big8x3$u20$as$u20$core..cmp..Ord$GT$3cmp17hb55b08de2a426abeE: %other"}
!2054 = distinct !{!2054, !2049, !"_ZN74_$LT$core..num..bignum..tests..Big8x3$u20$as$u20$core..cmp..PartialOrd$GT$11partial_cmp17hc621e24fce2f9a28E: %other"}
!2055 = distinct !{!2055, !2051, !"_ZN4core3cmp10PartialOrd2ge17hf46e9f6e0a2f337aE: %other"}
!2056 = !{!2057, !2059, !2046, !2048, !2050}
!2057 = distinct !{!2057, !2058, !"_ZN4core6option15Option$LT$T$GT$3map17habcca4f0a50fbddbE: argument 0"}
!2058 = distinct !{!2058, !"_ZN4core6option15Option$LT$T$GT$3map17habcca4f0a50fbddbE"}
!2059 = distinct !{!2059, !2060, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h4a8ee9b881045d1dE: %self"}
!2060 = distinct !{!2060, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h4a8ee9b881045d1dE"}
!2061 = !{!2062, !2064, !2053, !2054, !2055}
!2062 = distinct !{!2062, !2063, !"_ZN4core6option15Option$LT$T$GT$3map17habcca4f0a50fbddbE: argument 0"}
!2063 = distinct !{!2063, !"_ZN4core6option15Option$LT$T$GT$3map17habcca4f0a50fbddbE"}
!2064 = distinct !{!2064, !2065, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h4a8ee9b881045d1dE: %self"}
!2065 = distinct !{!2065, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h4a8ee9b881045d1dE"}
!2066 = !{!2067}
!2067 = distinct !{!2067, !2068, !"_ZN4core3num6bignum5tests6Big8x33sub17h4cca5ea2fa89a353E: %other"}
!2068 = distinct !{!2068, !"_ZN4core3num6bignum5tests6Big8x33sub17h4cca5ea2fa89a353E"}
!2069 = !{!2070}
!2070 = distinct !{!2070, !2071, !"_ZN67_$LT$core..num..bignum..tests..Big8x3$u20$as$u20$core..cmp..Ord$GT$3cmp17hb55b08de2a426abeE: %self"}
!2071 = distinct !{!2071, !"_ZN67_$LT$core..num..bignum..tests..Big8x3$u20$as$u20$core..cmp..Ord$GT$3cmp17hb55b08de2a426abeE"}
!2072 = !{!2073}
!2073 = distinct !{!2073, !2071, !"_ZN67_$LT$core..num..bignum..tests..Big8x3$u20$as$u20$core..cmp..Ord$GT$3cmp17hb55b08de2a426abeE: %other"}
!2074 = !{!2075, !2077, !2070}
!2075 = distinct !{!2075, !2076, !"_ZN4core6option15Option$LT$T$GT$3map17habcca4f0a50fbddbE: argument 0"}
!2076 = distinct !{!2076, !"_ZN4core6option15Option$LT$T$GT$3map17habcca4f0a50fbddbE"}
!2077 = distinct !{!2077, !2078, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h4a8ee9b881045d1dE: %self"}
!2078 = distinct !{!2078, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h4a8ee9b881045d1dE"}
!2079 = !{!2080, !2082, !2073}
!2080 = distinct !{!2080, !2081, !"_ZN4core6option15Option$LT$T$GT$3map17habcca4f0a50fbddbE: argument 0"}
!2081 = distinct !{!2081, !"_ZN4core6option15Option$LT$T$GT$3map17habcca4f0a50fbddbE"}
!2082 = distinct !{!2082, !2083, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h4a8ee9b881045d1dE: %self"}
!2083 = distinct !{!2083, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h4a8ee9b881045d1dE"}
!2084 = !{!2085, !2087}
!2085 = distinct !{!2085, !2086, !"_ZN4core6option15Option$LT$T$GT$3map17habcca4f0a50fbddbE: argument 0"}
!2086 = distinct !{!2086, !"_ZN4core6option15Option$LT$T$GT$3map17habcca4f0a50fbddbE"}
!2087 = distinct !{!2087, !2088, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h4a8ee9b881045d1dE: %self"}
!2088 = distinct !{!2088, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h4a8ee9b881045d1dE"}
!2089 = !{!2090, !2092}
!2090 = distinct !{!2090, !2091, !"_ZN4core6option15Option$LT$T$GT$3map17habcca4f0a50fbddbE: argument 0"}
!2091 = distinct !{!2091, !"_ZN4core6option15Option$LT$T$GT$3map17habcca4f0a50fbddbE"}
!2092 = distinct !{!2092, !2093, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h4a8ee9b881045d1dE: %self"}
!2093 = distinct !{!2093, !"_ZN4core6option19Option$LT$$RF$T$GT$6cloned17h4a8ee9b881045d1dE"}
!2094 = !{!2095}
!2095 = distinct !{!2095, !2096, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E: %fmt"}
!2096 = distinct !{!2096, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E"}
!2097 = !{!2098}
!2098 = distinct !{!2098, !2099, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E: %fmt"}
!2099 = distinct !{!2099, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E"}
!2100 = !{!2101, !2103, !2105, !2106, !2108}
!2101 = distinct !{!2101, !2102, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2102 = distinct !{!2102, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2103 = distinct !{!2103, !2104, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!2104 = distinct !{!2104, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!2105 = distinct !{!2105, !2104, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!2106 = distinct !{!2106, !2107, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!2107 = distinct !{!2107, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!2108 = distinct !{!2108, !2107, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!2109 = !{!2103, !2106}
!2110 = !{!2105, !2108}
!2111 = !{!2112}
!2112 = distinct !{!2112, !2113, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!2113 = distinct !{!2113, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!2114 = !{!2115}
!2115 = distinct !{!2115, !2116, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!2116 = distinct !{!2116, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!2117 = !{!2118, !2120, !2122, !2123, !2125}
!2118 = distinct !{!2118, !2119, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2119 = distinct !{!2119, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2120 = distinct !{!2120, !2121, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2121 = distinct !{!2121, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2122 = distinct !{!2122, !2121, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2123 = distinct !{!2123, !2124, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2124 = distinct !{!2124, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2125 = distinct !{!2125, !2124, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2126 = !{!2120, !2123}
!2127 = !{!2128, !2130, !2132, !2133, !2135}
!2128 = distinct !{!2128, !2129, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2129 = distinct !{!2129, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2130 = distinct !{!2130, !2131, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2131 = distinct !{!2131, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2132 = distinct !{!2132, !2131, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2133 = distinct !{!2133, !2134, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2134 = distinct !{!2134, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2135 = distinct !{!2135, !2134, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2136 = !{!2130, !2133}
!2137 = !{!2132, !2135}
!2138 = !{!2139}
!2139 = distinct !{!2139, !2140, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!2140 = distinct !{!2140, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!2141 = !{!2142}
!2142 = distinct !{!2142, !2143, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!2143 = distinct !{!2143, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!2144 = !{!2145}
!2145 = distinct !{!2145, !2146, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2146 = distinct !{!2146, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2147 = !{!2148}
!2148 = distinct !{!2148, !2149, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2149 = distinct !{!2149, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2150 = !{!2151, !2153, !2155, !2156, !2158}
!2151 = distinct !{!2151, !2152, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2152 = distinct !{!2152, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2153 = distinct !{!2153, !2154, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2154 = distinct !{!2154, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2155 = distinct !{!2155, !2154, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2156 = distinct !{!2156, !2157, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2157 = distinct !{!2157, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2158 = distinct !{!2158, !2157, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2159 = !{!2153, !2156}
!2160 = !{!2161, !2163, !2165, !2166, !2168}
!2161 = distinct !{!2161, !2162, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2162 = distinct !{!2162, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2163 = distinct !{!2163, !2164, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2164 = distinct !{!2164, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2165 = distinct !{!2165, !2164, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2166 = distinct !{!2166, !2167, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2167 = distinct !{!2167, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2168 = distinct !{!2168, !2167, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2169 = !{!2163, !2166}
!2170 = !{!2171, !2173, !2175, !2176, !2178}
!2171 = distinct !{!2171, !2172, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2172 = distinct !{!2172, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2173 = distinct !{!2173, !2174, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!2174 = distinct !{!2174, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!2175 = distinct !{!2175, !2174, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!2176 = distinct !{!2176, !2177, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!2177 = distinct !{!2177, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!2178 = distinct !{!2178, !2177, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!2179 = !{!2173, !2176}
!2180 = !{!2175, !2178}
!2181 = !{!2182}
!2182 = distinct !{!2182, !2183, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!2183 = distinct !{!2183, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!2184 = !{!2185}
!2185 = distinct !{!2185, !2186, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!2186 = distinct !{!2186, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!2187 = !{!2188, !2190, !2192, !2193, !2195}
!2188 = distinct !{!2188, !2189, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2189 = distinct !{!2189, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2190 = distinct !{!2190, !2191, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!2191 = distinct !{!2191, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!2192 = distinct !{!2192, !2191, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!2193 = distinct !{!2193, !2194, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!2194 = distinct !{!2194, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!2195 = distinct !{!2195, !2194, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!2196 = !{!2190, !2193}
!2197 = !{!2192, !2195}
!2198 = !{!2199}
!2199 = distinct !{!2199, !2200, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!2200 = distinct !{!2200, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!2201 = !{!2202}
!2202 = distinct !{!2202, !2203, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!2203 = distinct !{!2203, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!2204 = !{!2205, !2207}
!2205 = distinct !{!2205, !2206, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2206 = distinct !{!2206, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2207 = distinct !{!2207, !2208, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2208 = distinct !{!2208, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2209 = !{!2210, !2212}
!2210 = distinct !{!2210, !2211, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2211 = distinct !{!2211, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2212 = distinct !{!2212, !2213, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2213 = distinct !{!2213, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2214 = !{!2215, !2217, !2219, !2220, !2222}
!2215 = distinct !{!2215, !2216, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2216 = distinct !{!2216, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2217 = distinct !{!2217, !2218, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!2218 = distinct !{!2218, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!2219 = distinct !{!2219, !2218, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!2220 = distinct !{!2220, !2221, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!2221 = distinct !{!2221, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!2222 = distinct !{!2222, !2221, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!2223 = !{!2217, !2220}
!2224 = !{!2219, !2222}
!2225 = !{!2226}
!2226 = distinct !{!2226, !2227, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!2227 = distinct !{!2227, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!2228 = !{!2229}
!2229 = distinct !{!2229, !2230, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!2230 = distinct !{!2230, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!2231 = !{!2232, !2234, !2236, !2237, !2239}
!2232 = distinct !{!2232, !2233, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2233 = distinct !{!2233, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2234 = distinct !{!2234, !2235, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!2235 = distinct !{!2235, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!2236 = distinct !{!2236, !2235, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!2237 = distinct !{!2237, !2238, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!2238 = distinct !{!2238, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!2239 = distinct !{!2239, !2238, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!2240 = !{!2234, !2237}
!2241 = !{!2236, !2239}
!2242 = !{!2243}
!2243 = distinct !{!2243, !2244, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!2244 = distinct !{!2244, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!2245 = !{!2246}
!2246 = distinct !{!2246, !2247, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!2247 = distinct !{!2247, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!2248 = !{!2249, !2251, !2253, !2254, !2256}
!2249 = distinct !{!2249, !2250, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2250 = distinct !{!2250, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2251 = distinct !{!2251, !2252, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2252 = distinct !{!2252, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2253 = distinct !{!2253, !2252, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2254 = distinct !{!2254, !2255, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2255 = distinct !{!2255, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2256 = distinct !{!2256, !2255, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2257 = !{!2251, !2254}
!2258 = !{!2253, !2256}
!2259 = !{!2260}
!2260 = distinct !{!2260, !2261, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!2261 = distinct !{!2261, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!2262 = !{!2263}
!2263 = distinct !{!2263, !2264, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!2264 = distinct !{!2264, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!2265 = !{!2266}
!2266 = distinct !{!2266, !2267, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2267 = distinct !{!2267, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2268 = !{!2269}
!2269 = distinct !{!2269, !2270, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2270 = distinct !{!2270, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2271 = !{!2272, !2274, !2276, !2277, !2279}
!2272 = distinct !{!2272, !2273, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2273 = distinct !{!2273, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2274 = distinct !{!2274, !2275, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2275 = distinct !{!2275, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2276 = distinct !{!2276, !2275, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2277 = distinct !{!2277, !2278, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2278 = distinct !{!2278, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2279 = distinct !{!2279, !2278, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2280 = !{!2274, !2277}
!2281 = !{!2282, !2284, !2286, !2287, !2289}
!2282 = distinct !{!2282, !2283, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2283 = distinct !{!2283, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2284 = distinct !{!2284, !2285, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2285 = distinct !{!2285, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2286 = distinct !{!2286, !2285, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2287 = distinct !{!2287, !2288, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2288 = distinct !{!2288, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2289 = distinct !{!2289, !2288, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2290 = !{!2284, !2287}
!2291 = !{!2292, !2294, !2296, !2297, !2299}
!2292 = distinct !{!2292, !2293, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2293 = distinct !{!2293, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2294 = distinct !{!2294, !2295, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2295 = distinct !{!2295, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2296 = distinct !{!2296, !2295, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2297 = distinct !{!2297, !2298, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2298 = distinct !{!2298, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2299 = distinct !{!2299, !2298, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2300 = !{!2294, !2297}
!2301 = !{!2302, !2304, !2306, !2307, !2309}
!2302 = distinct !{!2302, !2303, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2303 = distinct !{!2303, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2304 = distinct !{!2304, !2305, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2305 = distinct !{!2305, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2306 = distinct !{!2306, !2305, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2307 = distinct !{!2307, !2308, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2308 = distinct !{!2308, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2309 = distinct !{!2309, !2308, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2310 = !{!2304, !2307}
!2311 = !{!2306, !2309}
!2312 = !{!2313}
!2313 = distinct !{!2313, !2314, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!2314 = distinct !{!2314, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!2315 = !{!2316}
!2316 = distinct !{!2316, !2317, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!2317 = distinct !{!2317, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!2318 = !{!2319}
!2319 = distinct !{!2319, !2320, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2320 = distinct !{!2320, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2321 = !{!2322}
!2322 = distinct !{!2322, !2323, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2323 = distinct !{!2323, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2324 = !{!2325, !2327, !2329, !2330, !2332}
!2325 = distinct !{!2325, !2326, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2326 = distinct !{!2326, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2327 = distinct !{!2327, !2328, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2328 = distinct !{!2328, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2329 = distinct !{!2329, !2328, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2330 = distinct !{!2330, !2331, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2331 = distinct !{!2331, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2332 = distinct !{!2332, !2331, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2333 = !{!2327, !2330}
!2334 = !{!2329, !2332}
!2335 = !{!2336}
!2336 = distinct !{!2336, !2337, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!2337 = distinct !{!2337, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!2338 = !{!2339}
!2339 = distinct !{!2339, !2340, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!2340 = distinct !{!2340, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!2341 = !{!2342}
!2342 = distinct !{!2342, !2343, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2343 = distinct !{!2343, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2344 = !{!2345}
!2345 = distinct !{!2345, !2346, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2346 = distinct !{!2346, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2347 = !{!2348, !2350, !2352, !2353, !2355}
!2348 = distinct !{!2348, !2349, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2349 = distinct !{!2349, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2350 = distinct !{!2350, !2351, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2351 = distinct !{!2351, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2352 = distinct !{!2352, !2351, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2353 = distinct !{!2353, !2354, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2354 = distinct !{!2354, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2355 = distinct !{!2355, !2354, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2356 = !{!2350, !2353}
!2357 = !{!2352, !2355}
!2358 = !{!2359}
!2359 = distinct !{!2359, !2360, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!2360 = distinct !{!2360, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!2361 = !{!2362}
!2362 = distinct !{!2362, !2363, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!2363 = distinct !{!2363, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!2364 = !{!2365}
!2365 = distinct !{!2365, !2366, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2366 = distinct !{!2366, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2367 = !{!2368}
!2368 = distinct !{!2368, !2369, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2369 = distinct !{!2369, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2370 = !{!2371, !2373, !2375, !2376, !2378}
!2371 = distinct !{!2371, !2372, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2372 = distinct !{!2372, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2373 = distinct !{!2373, !2374, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2374 = distinct !{!2374, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2375 = distinct !{!2375, !2374, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2376 = distinct !{!2376, !2377, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2377 = distinct !{!2377, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2378 = distinct !{!2378, !2377, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2379 = !{!2373, !2376}
!2380 = !{!2381, !2383, !2385, !2386, !2388}
!2381 = distinct !{!2381, !2382, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2382 = distinct !{!2382, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2383 = distinct !{!2383, !2384, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2384 = distinct !{!2384, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2385 = distinct !{!2385, !2384, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2386 = distinct !{!2386, !2387, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2387 = distinct !{!2387, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2388 = distinct !{!2388, !2387, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2389 = !{!2383, !2386}
!2390 = !{!2391, !2393, !2395, !2396, !2398}
!2391 = distinct !{!2391, !2392, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2392 = distinct !{!2392, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2393 = distinct !{!2393, !2394, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2394 = distinct !{!2394, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2395 = distinct !{!2395, !2394, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2396 = distinct !{!2396, !2397, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2397 = distinct !{!2397, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2398 = distinct !{!2398, !2397, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2399 = !{!2393, !2396}
!2400 = !{!2401, !2403, !2405, !2406, !2408}
!2401 = distinct !{!2401, !2402, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2402 = distinct !{!2402, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2403 = distinct !{!2403, !2404, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2404 = distinct !{!2404, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2405 = distinct !{!2405, !2404, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2406 = distinct !{!2406, !2407, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2407 = distinct !{!2407, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2408 = distinct !{!2408, !2407, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2409 = !{!2403, !2406}
!2410 = !{i8 0, i8 9}
!2411 = !{i16 0, i16 17}
!2412 = !{i128 0, i128 129}
!2413 = !{!2414, !2416, !2418, !2419, !2421}
!2414 = distinct !{!2414, !2415, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2415 = distinct !{!2415, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2416 = distinct !{!2416, !2417, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2417 = distinct !{!2417, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2418 = distinct !{!2418, !2417, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2419 = distinct !{!2419, !2420, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2420 = distinct !{!2420, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2421 = distinct !{!2421, !2420, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2422 = !{!2416, !2419}
!2423 = !{!2424, !2426, !2428, !2429, !2431}
!2424 = distinct !{!2424, !2425, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2425 = distinct !{!2425, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2426 = distinct !{!2426, !2427, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2427 = distinct !{!2427, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2428 = distinct !{!2428, !2427, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2429 = distinct !{!2429, !2430, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2430 = distinct !{!2430, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2431 = distinct !{!2431, !2430, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2432 = !{!2426, !2429}
!2433 = !{!2434, !2436, !2438, !2439, !2441}
!2434 = distinct !{!2434, !2435, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2435 = distinct !{!2435, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2436 = distinct !{!2436, !2437, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2437 = distinct !{!2437, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2438 = distinct !{!2438, !2437, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2439 = distinct !{!2439, !2440, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2440 = distinct !{!2440, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2441 = distinct !{!2441, !2440, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2442 = !{!2436, !2439}
!2443 = !{!2444, !2446, !2448, !2449, !2451}
!2444 = distinct !{!2444, !2445, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2445 = distinct !{!2445, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2446 = distinct !{!2446, !2447, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2447 = distinct !{!2447, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2448 = distinct !{!2448, !2447, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2449 = distinct !{!2449, !2450, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2450 = distinct !{!2450, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2451 = distinct !{!2451, !2450, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2452 = !{!2446, !2449}
!2453 = !{!2454, !2456, !2458, !2459, !2461}
!2454 = distinct !{!2454, !2455, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2455 = distinct !{!2455, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2456 = distinct !{!2456, !2457, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2457 = distinct !{!2457, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2458 = distinct !{!2458, !2457, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2459 = distinct !{!2459, !2460, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2460 = distinct !{!2460, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2461 = distinct !{!2461, !2460, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2462 = !{!2456, !2459}
!2463 = !{!2464}
!2464 = distinct !{!2464, !2465, !"_ZN4core3num14from_str_radix17hb5e96faa7057ae66E: %src.0"}
!2465 = distinct !{!2465, !"_ZN4core3num14from_str_radix17hb5e96faa7057ae66E"}
!2466 = !{!2467}
!2467 = distinct !{!2467, !2468, !"_ZN4core3num14from_str_radix17h16198f62b04d08bbE: %src.0"}
!2468 = distinct !{!2468, !"_ZN4core3num14from_str_radix17h16198f62b04d08bbE"}
!2469 = !{!2470}
!2470 = distinct !{!2470, !2471, !"_ZN4core3num14from_str_radix17h39ab26794bfd72eaE: argument 0"}
!2471 = distinct !{!2471, !"_ZN4core3num14from_str_radix17h39ab26794bfd72eaE"}
!2472 = !{!2473}
!2473 = distinct !{!2473, !2471, !"_ZN4core3num14from_str_radix17h39ab26794bfd72eaE: %src.0"}
!2474 = !{!2475}
!2475 = distinct !{!2475, !2476, !"_ZN4core3num14from_str_radix17h46636899300cc69cE: argument 0"}
!2476 = distinct !{!2476, !"_ZN4core3num14from_str_radix17h46636899300cc69cE"}
!2477 = !{!2478}
!2478 = distinct !{!2478, !2476, !"_ZN4core3num14from_str_radix17h46636899300cc69cE: %src.0"}
!2479 = !{!2480}
!2480 = distinct !{!2480, !2481, !"_ZN4core3num14from_str_radix17h1ac727572120a694E: argument 0"}
!2481 = distinct !{!2481, !"_ZN4core3num14from_str_radix17h1ac727572120a694E"}
!2482 = !{!2483}
!2483 = distinct !{!2483, !2481, !"_ZN4core3num14from_str_radix17h1ac727572120a694E: %src.0"}
!2484 = !{!2485}
!2485 = distinct !{!2485, !2486, !"_ZN4core3num14from_str_radix17hf78483ff9501fe84E: argument 0"}
!2486 = distinct !{!2486, !"_ZN4core3num14from_str_radix17hf78483ff9501fe84E"}
!2487 = !{!2488}
!2488 = distinct !{!2488, !2486, !"_ZN4core3num14from_str_radix17hf78483ff9501fe84E: %src.0"}
!2489 = !{!2490, !2492, !2494, !2495, !2497}
!2490 = distinct !{!2490, !2491, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2491 = distinct !{!2491, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2492 = distinct !{!2492, !2493, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2493 = distinct !{!2493, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2494 = distinct !{!2494, !2493, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2495 = distinct !{!2495, !2496, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2496 = distinct !{!2496, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2497 = distinct !{!2497, !2496, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2498 = !{!2492, !2495}
!2499 = !{!2494, !2497}
!2500 = !{!2501}
!2501 = distinct !{!2501, !2502, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!2502 = distinct !{!2502, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!2503 = !{!2504}
!2504 = distinct !{!2504, !2505, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!2505 = distinct !{!2505, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!2506 = !{!2507}
!2507 = distinct !{!2507, !2508, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2508 = distinct !{!2508, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2509 = !{!2510}
!2510 = distinct !{!2510, !2511, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2511 = distinct !{!2511, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2512 = !{!2513, !2515, !2517, !2518, !2520}
!2513 = distinct !{!2513, !2514, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2514 = distinct !{!2514, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2515 = distinct !{!2515, !2516, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!2516 = distinct !{!2516, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!2517 = distinct !{!2517, !2516, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!2518 = distinct !{!2518, !2519, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!2519 = distinct !{!2519, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!2520 = distinct !{!2520, !2519, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!2521 = !{!2515, !2518}
!2522 = !{!2517, !2520}
!2523 = !{!2524}
!2524 = distinct !{!2524, !2525, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!2525 = distinct !{!2525, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!2526 = !{!2527}
!2527 = distinct !{!2527, !2528, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!2528 = distinct !{!2528, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!2529 = !{!2530, !2532, !2534, !2535, !2537}
!2530 = distinct !{!2530, !2531, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2531 = distinct !{!2531, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2532 = distinct !{!2532, !2533, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2533 = distinct !{!2533, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2534 = distinct !{!2534, !2533, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2535 = distinct !{!2535, !2536, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2536 = distinct !{!2536, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2537 = distinct !{!2537, !2536, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2538 = !{!2532, !2535}
!2539 = !{!2540, !2542, !2544, !2545, !2547}
!2540 = distinct !{!2540, !2541, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2541 = distinct !{!2541, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2542 = distinct !{!2542, !2543, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2543 = distinct !{!2543, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2544 = distinct !{!2544, !2543, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2545 = distinct !{!2545, !2546, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2546 = distinct !{!2546, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2547 = distinct !{!2547, !2546, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2548 = !{!2542, !2545}
!2549 = !{!2550, !2552, !2554, !2555, !2557}
!2550 = distinct !{!2550, !2551, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2551 = distinct !{!2551, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2552 = distinct !{!2552, !2553, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2553 = distinct !{!2553, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2554 = distinct !{!2554, !2553, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2555 = distinct !{!2555, !2556, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2556 = distinct !{!2556, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2557 = distinct !{!2557, !2556, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2558 = !{!2552, !2555}
!2559 = !{!2560, !2562, !2564, !2565, !2567}
!2560 = distinct !{!2560, !2561, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2561 = distinct !{!2561, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2562 = distinct !{!2562, !2563, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2563 = distinct !{!2563, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2564 = distinct !{!2564, !2563, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2565 = distinct !{!2565, !2566, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2566 = distinct !{!2566, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2567 = distinct !{!2567, !2566, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2568 = !{!2562, !2565}
!2569 = !{!2570, !2572, !2574, !2575, !2577}
!2570 = distinct !{!2570, !2571, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2571 = distinct !{!2571, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2572 = distinct !{!2572, !2573, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2573 = distinct !{!2573, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2574 = distinct !{!2574, !2573, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2575 = distinct !{!2575, !2576, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2576 = distinct !{!2576, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2577 = distinct !{!2577, !2576, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2578 = !{!2572, !2575}
!2579 = !{i8 -1, i8 2}
!2580 = !{!2581, !2583, !2585, !2586, !2588}
!2581 = distinct !{!2581, !2582, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2582 = distinct !{!2582, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2583 = distinct !{!2583, !2584, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2584 = distinct !{!2584, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2585 = distinct !{!2585, !2584, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2586 = distinct !{!2586, !2587, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2587 = distinct !{!2587, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2588 = distinct !{!2588, !2587, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2589 = !{!2583, !2586}
!2590 = !{!2591, !2593, !2595, !2596, !2598}
!2591 = distinct !{!2591, !2592, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2592 = distinct !{!2592, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2593 = distinct !{!2593, !2594, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2594 = distinct !{!2594, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2595 = distinct !{!2595, !2594, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2596 = distinct !{!2596, !2597, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2597 = distinct !{!2597, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2598 = distinct !{!2598, !2597, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2599 = !{!2593, !2596}
!2600 = !{!2601, !2603, !2605, !2606, !2608}
!2601 = distinct !{!2601, !2602, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2602 = distinct !{!2602, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2603 = distinct !{!2603, !2604, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2604 = distinct !{!2604, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2605 = distinct !{!2605, !2604, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2606 = distinct !{!2606, !2607, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2607 = distinct !{!2607, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2608 = distinct !{!2608, !2607, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2609 = !{!2603, !2606}
!2610 = !{!2611, !2613, !2615, !2616, !2618}
!2611 = distinct !{!2611, !2612, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2612 = distinct !{!2612, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2613 = distinct !{!2613, !2614, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2614 = distinct !{!2614, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2615 = distinct !{!2615, !2614, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2616 = distinct !{!2616, !2617, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2617 = distinct !{!2617, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2618 = distinct !{!2618, !2617, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2619 = !{!2613, !2616}
!2620 = !{!2621, !2623, !2625, !2626, !2628}
!2621 = distinct !{!2621, !2622, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2622 = distinct !{!2622, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2623 = distinct !{!2623, !2624, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!2624 = distinct !{!2624, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!2625 = distinct !{!2625, !2624, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!2626 = distinct !{!2626, !2627, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!2627 = distinct !{!2627, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!2628 = distinct !{!2628, !2627, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!2629 = !{!2623, !2626}
!2630 = !{!2625, !2628}
!2631 = !{!2632}
!2632 = distinct !{!2632, !2633, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!2633 = distinct !{!2633, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!2634 = !{!2635}
!2635 = distinct !{!2635, !2636, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!2636 = distinct !{!2636, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!2637 = !{!2638, !2640, !2642, !2643, !2645}
!2638 = distinct !{!2638, !2639, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2639 = distinct !{!2639, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2640 = distinct !{!2640, !2641, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2641 = distinct !{!2641, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2642 = distinct !{!2642, !2641, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2643 = distinct !{!2643, !2644, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2644 = distinct !{!2644, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2645 = distinct !{!2645, !2644, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2646 = !{!2640, !2643}
!2647 = !{!2642, !2645}
!2648 = !{!2649}
!2649 = distinct !{!2649, !2650, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!2650 = distinct !{!2650, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!2651 = !{!2652}
!2652 = distinct !{!2652, !2653, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!2653 = distinct !{!2653, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!2654 = !{!2655}
!2655 = distinct !{!2655, !2656, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2656 = distinct !{!2656, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2657 = !{!2658}
!2658 = distinct !{!2658, !2659, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2659 = distinct !{!2659, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2660 = !{!2661, !2663, !2665, !2666, !2668}
!2661 = distinct !{!2661, !2662, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2662 = distinct !{!2662, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2663 = distinct !{!2663, !2664, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!2664 = distinct !{!2664, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!2665 = distinct !{!2665, !2664, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!2666 = distinct !{!2666, !2667, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!2667 = distinct !{!2667, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!2668 = distinct !{!2668, !2667, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!2669 = !{!2663, !2666}
!2670 = !{!2665, !2668}
!2671 = !{!2672}
!2672 = distinct !{!2672, !2673, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!2673 = distinct !{!2673, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!2674 = !{!2675}
!2675 = distinct !{!2675, !2676, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!2676 = distinct !{!2676, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!2677 = !{!2678, !2680}
!2678 = distinct !{!2678, !2679, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2679 = distinct !{!2679, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2680 = distinct !{!2680, !2681, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2681 = distinct !{!2681, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2682 = !{!2683, !2685}
!2683 = distinct !{!2683, !2684, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2684 = distinct !{!2684, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2685 = distinct !{!2685, !2686, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2686 = distinct !{!2686, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2687 = !{!2688, !2690, !2692, !2693, !2695}
!2688 = distinct !{!2688, !2689, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2689 = distinct !{!2689, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2690 = distinct !{!2690, !2691, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2691 = distinct !{!2691, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2692 = distinct !{!2692, !2691, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2693 = distinct !{!2693, !2694, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2694 = distinct !{!2694, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2695 = distinct !{!2695, !2694, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2696 = !{!2690, !2693}
!2697 = !{!2692, !2695}
!2698 = !{!2699}
!2699 = distinct !{!2699, !2700, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!2700 = distinct !{!2700, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!2701 = !{!2702}
!2702 = distinct !{!2702, !2703, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!2703 = distinct !{!2703, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!2704 = !{!2705}
!2705 = distinct !{!2705, !2706, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2706 = distinct !{!2706, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2707 = !{!2708}
!2708 = distinct !{!2708, !2709, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2709 = distinct !{!2709, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2710 = !{!2711, !2713, !2715, !2716, !2718}
!2711 = distinct !{!2711, !2712, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2712 = distinct !{!2712, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2713 = distinct !{!2713, !2714, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!2714 = distinct !{!2714, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!2715 = distinct !{!2715, !2714, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!2716 = distinct !{!2716, !2717, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!2717 = distinct !{!2717, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!2718 = distinct !{!2718, !2717, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!2719 = !{!2713, !2716}
!2720 = !{!2715, !2718}
!2721 = !{!2722}
!2722 = distinct !{!2722, !2723, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!2723 = distinct !{!2723, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!2724 = !{!2725}
!2725 = distinct !{!2725, !2726, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!2726 = distinct !{!2726, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!2727 = !{!2728, !2730, !2732, !2733, !2735}
!2728 = distinct !{!2728, !2729, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2729 = distinct !{!2729, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2730 = distinct !{!2730, !2731, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!2731 = distinct !{!2731, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!2732 = distinct !{!2732, !2731, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!2733 = distinct !{!2733, !2734, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!2734 = distinct !{!2734, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!2735 = distinct !{!2735, !2734, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!2736 = !{!2730, !2733}
!2737 = !{!2732, !2735}
!2738 = !{!2739}
!2739 = distinct !{!2739, !2740, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!2740 = distinct !{!2740, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!2741 = !{!2742}
!2742 = distinct !{!2742, !2743, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!2743 = distinct !{!2743, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!2744 = !{!2745, !2747, !2749, !2750, !2752}
!2745 = distinct !{!2745, !2746, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2746 = distinct !{!2746, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2747 = distinct !{!2747, !2748, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2748 = distinct !{!2748, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2749 = distinct !{!2749, !2748, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2750 = distinct !{!2750, !2751, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2751 = distinct !{!2751, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2752 = distinct !{!2752, !2751, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2753 = !{!2747, !2750}
!2754 = !{!2755, !2757, !2759, !2760, !2762}
!2755 = distinct !{!2755, !2756, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2756 = distinct !{!2756, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2757 = distinct !{!2757, !2758, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2758 = distinct !{!2758, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2759 = distinct !{!2759, !2758, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2760 = distinct !{!2760, !2761, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2761 = distinct !{!2761, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2762 = distinct !{!2762, !2761, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2763 = !{!2757, !2760}
!2764 = !{!2765, !2767, !2769, !2770, !2772}
!2765 = distinct !{!2765, !2766, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2766 = distinct !{!2766, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2767 = distinct !{!2767, !2768, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2768 = distinct !{!2768, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2769 = distinct !{!2769, !2768, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2770 = distinct !{!2770, !2771, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2771 = distinct !{!2771, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2772 = distinct !{!2772, !2771, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2773 = !{!2767, !2770}
!2774 = !{!2775, !2777, !2779, !2780, !2782}
!2775 = distinct !{!2775, !2776, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2776 = distinct !{!2776, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2777 = distinct !{!2777, !2778, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2778 = distinct !{!2778, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2779 = distinct !{!2779, !2778, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2780 = distinct !{!2780, !2781, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2781 = distinct !{!2781, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2782 = distinct !{!2782, !2781, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2783 = !{!2777, !2780}
!2784 = !{!2785, !2787, !2789, !2790, !2792}
!2785 = distinct !{!2785, !2786, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2786 = distinct !{!2786, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2787 = distinct !{!2787, !2788, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2788 = distinct !{!2788, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2789 = distinct !{!2789, !2788, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2790 = distinct !{!2790, !2791, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2791 = distinct !{!2791, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2792 = distinct !{!2792, !2791, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2793 = !{!2787, !2790}
!2794 = !{!2795, !2797, !2799, !2800, !2802}
!2795 = distinct !{!2795, !2796, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2796 = distinct !{!2796, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2797 = distinct !{!2797, !2798, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2798 = distinct !{!2798, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2799 = distinct !{!2799, !2798, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2800 = distinct !{!2800, !2801, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2801 = distinct !{!2801, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2802 = distinct !{!2802, !2801, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2803 = !{!2797, !2800}
!2804 = !{!2805, !2807, !2809, !2810, !2812}
!2805 = distinct !{!2805, !2806, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2806 = distinct !{!2806, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2807 = distinct !{!2807, !2808, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!2808 = distinct !{!2808, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!2809 = distinct !{!2809, !2808, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!2810 = distinct !{!2810, !2811, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!2811 = distinct !{!2811, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!2812 = distinct !{!2812, !2811, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!2813 = !{!2807, !2810}
!2814 = !{!2809, !2812}
!2815 = !{!2816}
!2816 = distinct !{!2816, !2817, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!2817 = distinct !{!2817, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!2818 = !{!2819}
!2819 = distinct !{!2819, !2820, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!2820 = distinct !{!2820, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!2821 = !{!2822, !2824, !2826, !2827, !2829}
!2822 = distinct !{!2822, !2823, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2823 = distinct !{!2823, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2824 = distinct !{!2824, !2825, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2825 = distinct !{!2825, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2826 = distinct !{!2826, !2825, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2827 = distinct !{!2827, !2828, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2828 = distinct !{!2828, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2829 = distinct !{!2829, !2828, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2830 = !{!2824, !2827}
!2831 = !{!2826, !2829}
!2832 = !{!2833}
!2833 = distinct !{!2833, !2834, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!2834 = distinct !{!2834, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!2835 = !{!2836}
!2836 = distinct !{!2836, !2837, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!2837 = distinct !{!2837, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!2838 = !{!2839}
!2839 = distinct !{!2839, !2840, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2840 = distinct !{!2840, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2841 = !{!2842}
!2842 = distinct !{!2842, !2843, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2843 = distinct !{!2843, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2844 = !{!2845, !2847, !2849, !2850, !2852}
!2845 = distinct !{!2845, !2846, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2846 = distinct !{!2846, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2847 = distinct !{!2847, !2848, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2848 = distinct !{!2848, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2849 = distinct !{!2849, !2848, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2850 = distinct !{!2850, !2851, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2851 = distinct !{!2851, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2852 = distinct !{!2852, !2851, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2853 = !{!2847, !2850}
!2854 = !{!2855, !2857, !2859, !2860, !2862}
!2855 = distinct !{!2855, !2856, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2856 = distinct !{!2856, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2857 = distinct !{!2857, !2858, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2858 = distinct !{!2858, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2859 = distinct !{!2859, !2858, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2860 = distinct !{!2860, !2861, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2861 = distinct !{!2861, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2862 = distinct !{!2862, !2861, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2863 = !{!2857, !2860}
!2864 = !{!2859, !2862}
!2865 = !{!2866}
!2866 = distinct !{!2866, !2867, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!2867 = distinct !{!2867, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!2868 = !{!2869}
!2869 = distinct !{!2869, !2870, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!2870 = distinct !{!2870, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!2871 = !{!2872}
!2872 = distinct !{!2872, !2873, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2873 = distinct !{!2873, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2874 = !{!2875}
!2875 = distinct !{!2875, !2876, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2876 = distinct !{!2876, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2877 = !{!2878, !2880, !2882, !2883, !2885}
!2878 = distinct !{!2878, !2879, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2879 = distinct !{!2879, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2880 = distinct !{!2880, !2881, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2881 = distinct !{!2881, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2882 = distinct !{!2882, !2881, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2883 = distinct !{!2883, !2884, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2884 = distinct !{!2884, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2885 = distinct !{!2885, !2884, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2886 = !{!2880, !2883}
!2887 = !{!2882, !2885}
!2888 = !{!2889}
!2889 = distinct !{!2889, !2890, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!2890 = distinct !{!2890, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!2891 = !{!2892}
!2892 = distinct !{!2892, !2893, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!2893 = distinct !{!2893, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!2894 = !{!2895}
!2895 = distinct !{!2895, !2896, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2896 = distinct !{!2896, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2897 = !{!2898}
!2898 = distinct !{!2898, !2899, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2899 = distinct !{!2899, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2900 = !{!2901, !2903, !2905, !2906, !2908}
!2901 = distinct !{!2901, !2902, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2902 = distinct !{!2902, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2903 = distinct !{!2903, !2904, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2904 = distinct !{!2904, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2905 = distinct !{!2905, !2904, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2906 = distinct !{!2906, !2907, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2907 = distinct !{!2907, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2908 = distinct !{!2908, !2907, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2909 = !{!2903, !2906}
!2910 = !{!2905, !2908}
!2911 = !{!2912}
!2912 = distinct !{!2912, !2913, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!2913 = distinct !{!2913, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!2914 = !{!2915}
!2915 = distinct !{!2915, !2916, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!2916 = distinct !{!2916, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!2917 = !{!2918}
!2918 = distinct !{!2918, !2919, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2919 = distinct !{!2919, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2920 = !{!2921}
!2921 = distinct !{!2921, !2922, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2922 = distinct !{!2922, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2923 = !{!2924, !2926, !2928, !2929, !2931}
!2924 = distinct !{!2924, !2925, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2925 = distinct !{!2925, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2926 = distinct !{!2926, !2927, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2927 = distinct !{!2927, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2928 = distinct !{!2928, !2927, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2929 = distinct !{!2929, !2930, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2930 = distinct !{!2930, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2931 = distinct !{!2931, !2930, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2932 = !{!2926, !2929}
!2933 = !{!2928, !2931}
!2934 = !{!2935}
!2935 = distinct !{!2935, !2936, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!2936 = distinct !{!2936, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!2937 = !{!2938}
!2938 = distinct !{!2938, !2939, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!2939 = distinct !{!2939, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!2940 = !{!2941}
!2941 = distinct !{!2941, !2942, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2942 = distinct !{!2942, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2943 = !{!2944}
!2944 = distinct !{!2944, !2945, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2945 = distinct !{!2945, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2946 = !{!2947, !2949, !2951, !2952, !2954}
!2947 = distinct !{!2947, !2948, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2948 = distinct !{!2948, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2949 = distinct !{!2949, !2950, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2950 = distinct !{!2950, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2951 = distinct !{!2951, !2950, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2952 = distinct !{!2952, !2953, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2953 = distinct !{!2953, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2954 = distinct !{!2954, !2953, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2955 = !{!2949, !2952}
!2956 = !{!2951, !2954}
!2957 = !{!2958}
!2958 = distinct !{!2958, !2959, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!2959 = distinct !{!2959, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!2960 = !{!2961}
!2961 = distinct !{!2961, !2962, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!2962 = distinct !{!2962, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!2963 = !{!2964}
!2964 = distinct !{!2964, !2965, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2965 = distinct !{!2965, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2966 = !{!2967}
!2967 = distinct !{!2967, !2968, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2968 = distinct !{!2968, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2969 = !{!2970, !2972, !2974, !2975, !2977}
!2970 = distinct !{!2970, !2971, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2971 = distinct !{!2971, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2972 = distinct !{!2972, !2973, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2973 = distinct !{!2973, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2974 = distinct !{!2974, !2973, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2975 = distinct !{!2975, !2976, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2976 = distinct !{!2976, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2977 = distinct !{!2977, !2976, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2978 = !{!2972, !2975}
!2979 = !{!2980, !2982, !2984, !2985, !2987}
!2980 = distinct !{!2980, !2981, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2981 = distinct !{!2981, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2982 = distinct !{!2982, !2983, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!2983 = distinct !{!2983, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!2984 = distinct !{!2984, !2983, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!2985 = distinct !{!2985, !2986, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!2986 = distinct !{!2986, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!2987 = distinct !{!2987, !2986, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!2988 = !{!2982, !2985}
!2989 = !{!2984, !2987}
!2990 = !{!2991}
!2991 = distinct !{!2991, !2992, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!2992 = distinct !{!2992, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!2993 = !{!2994}
!2994 = distinct !{!2994, !2995, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!2995 = distinct !{!2995, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!2996 = !{!2997}
!2997 = distinct !{!2997, !2998, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!2998 = distinct !{!2998, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!2999 = !{!3000}
!3000 = distinct !{!3000, !3001, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3001 = distinct !{!3001, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3002 = !{!3003, !3005, !3007, !3008, !3010}
!3003 = distinct !{!3003, !3004, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3004 = distinct !{!3004, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3005 = distinct !{!3005, !3006, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!3006 = distinct !{!3006, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!3007 = distinct !{!3007, !3006, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!3008 = distinct !{!3008, !3009, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!3009 = distinct !{!3009, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!3010 = distinct !{!3010, !3009, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!3011 = !{!3005, !3008}
!3012 = !{!3007, !3010}
!3013 = !{!3014}
!3014 = distinct !{!3014, !3015, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!3015 = distinct !{!3015, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!3016 = !{!3017}
!3017 = distinct !{!3017, !3018, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!3018 = distinct !{!3018, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!3019 = !{!3020}
!3020 = distinct !{!3020, !3021, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3021 = distinct !{!3021, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3022 = !{!3023}
!3023 = distinct !{!3023, !3024, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3024 = distinct !{!3024, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3025 = !{!3026, !3028, !3030, !3031, !3033}
!3026 = distinct !{!3026, !3027, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3027 = distinct !{!3027, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3028 = distinct !{!3028, !3029, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!3029 = distinct !{!3029, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!3030 = distinct !{!3030, !3029, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!3031 = distinct !{!3031, !3032, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!3032 = distinct !{!3032, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!3033 = distinct !{!3033, !3032, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!3034 = !{!3028, !3031}
!3035 = !{!3030, !3033}
!3036 = !{!3037}
!3037 = distinct !{!3037, !3038, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!3038 = distinct !{!3038, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!3039 = !{!3040}
!3040 = distinct !{!3040, !3041, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!3041 = distinct !{!3041, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!3042 = !{!3043}
!3043 = distinct !{!3043, !3044, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3044 = distinct !{!3044, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3045 = !{!3046}
!3046 = distinct !{!3046, !3047, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3047 = distinct !{!3047, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3048 = !{!3049, !3051, !3053, !3054, !3056}
!3049 = distinct !{!3049, !3050, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3050 = distinct !{!3050, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3051 = distinct !{!3051, !3052, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!3052 = distinct !{!3052, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!3053 = distinct !{!3053, !3052, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!3054 = distinct !{!3054, !3055, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!3055 = distinct !{!3055, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!3056 = distinct !{!3056, !3055, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!3057 = !{!3051, !3054}
!3058 = !{!3053, !3056}
!3059 = !{!3060}
!3060 = distinct !{!3060, !3061, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!3061 = distinct !{!3061, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!3062 = !{!3063}
!3063 = distinct !{!3063, !3064, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!3064 = distinct !{!3064, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!3065 = !{!3066, !3068, !3070, !3071, !3073}
!3066 = distinct !{!3066, !3067, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3067 = distinct !{!3067, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3068 = distinct !{!3068, !3069, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!3069 = distinct !{!3069, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!3070 = distinct !{!3070, !3069, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!3071 = distinct !{!3071, !3072, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!3072 = distinct !{!3072, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!3073 = distinct !{!3073, !3072, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!3074 = !{!3068, !3071}
!3075 = !{!3070, !3073}
!3076 = !{!3077}
!3077 = distinct !{!3077, !3078, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!3078 = distinct !{!3078, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!3079 = !{!3080}
!3080 = distinct !{!3080, !3081, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!3081 = distinct !{!3081, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!3082 = !{!3083, !3085, !3087, !3088, !3090}
!3083 = distinct !{!3083, !3084, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3084 = distinct !{!3084, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3085 = distinct !{!3085, !3086, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!3086 = distinct !{!3086, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!3087 = distinct !{!3087, !3086, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!3088 = distinct !{!3088, !3089, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!3089 = distinct !{!3089, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!3090 = distinct !{!3090, !3089, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!3091 = !{!3085, !3088}
!3092 = !{!3087, !3090}
!3093 = !{!3094}
!3094 = distinct !{!3094, !3095, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!3095 = distinct !{!3095, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!3096 = !{!3097}
!3097 = distinct !{!3097, !3098, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!3098 = distinct !{!3098, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!3099 = !{!3100, !3102, !3104, !3105, !3107}
!3100 = distinct !{!3100, !3101, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3101 = distinct !{!3101, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3102 = distinct !{!3102, !3103, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!3103 = distinct !{!3103, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!3104 = distinct !{!3104, !3103, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!3105 = distinct !{!3105, !3106, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!3106 = distinct !{!3106, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!3107 = distinct !{!3107, !3106, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!3108 = !{!3102, !3105}
!3109 = !{!3104, !3107}
!3110 = !{!3111}
!3111 = distinct !{!3111, !3112, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!3112 = distinct !{!3112, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!3113 = !{!3114}
!3114 = distinct !{!3114, !3115, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!3115 = distinct !{!3115, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!3116 = !{!3117, !3119, !3121, !3122, !3124}
!3117 = distinct !{!3117, !3118, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3118 = distinct !{!3118, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3119 = distinct !{!3119, !3120, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!3120 = distinct !{!3120, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!3121 = distinct !{!3121, !3120, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!3122 = distinct !{!3122, !3123, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!3123 = distinct !{!3123, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!3124 = distinct !{!3124, !3123, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!3125 = !{!3119, !3122}
!3126 = !{!3121, !3124}
!3127 = !{!3128}
!3128 = distinct !{!3128, !3129, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!3129 = distinct !{!3129, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!3130 = !{!3131}
!3131 = distinct !{!3131, !3132, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!3132 = distinct !{!3132, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!3133 = !{!3134, !3136, !3138, !3139, !3141}
!3134 = distinct !{!3134, !3135, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3135 = distinct !{!3135, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3136 = distinct !{!3136, !3137, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!3137 = distinct !{!3137, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!3138 = distinct !{!3138, !3137, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!3139 = distinct !{!3139, !3140, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!3140 = distinct !{!3140, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!3141 = distinct !{!3141, !3140, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!3142 = !{!3136, !3139}
!3143 = !{!3144, !3146, !3148, !3149, !3151}
!3144 = distinct !{!3144, !3145, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3145 = distinct !{!3145, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3146 = distinct !{!3146, !3147, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!3147 = distinct !{!3147, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!3148 = distinct !{!3148, !3147, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!3149 = distinct !{!3149, !3150, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!3150 = distinct !{!3150, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!3151 = distinct !{!3151, !3150, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!3152 = !{!3146, !3149}
!3153 = !{!3148, !3151}
!3154 = !{!3155}
!3155 = distinct !{!3155, !3156, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!3156 = distinct !{!3156, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!3157 = !{!3158}
!3158 = distinct !{!3158, !3159, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!3159 = distinct !{!3159, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!3160 = !{!3161, !3163, !3165, !3166, !3168}
!3161 = distinct !{!3161, !3162, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3162 = distinct !{!3162, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3163 = distinct !{!3163, !3164, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!3164 = distinct !{!3164, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!3165 = distinct !{!3165, !3164, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!3166 = distinct !{!3166, !3167, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!3167 = distinct !{!3167, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!3168 = distinct !{!3168, !3167, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!3169 = !{!3163, !3166}
!3170 = !{!3165, !3168}
!3171 = !{!3172}
!3172 = distinct !{!3172, !3173, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!3173 = distinct !{!3173, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!3174 = !{!3175}
!3175 = distinct !{!3175, !3176, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!3176 = distinct !{!3176, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!3177 = !{!3178, !3180, !3182, !3183, !3185}
!3178 = distinct !{!3178, !3179, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3179 = distinct !{!3179, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3180 = distinct !{!3180, !3181, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!3181 = distinct !{!3181, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!3182 = distinct !{!3182, !3181, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!3183 = distinct !{!3183, !3184, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!3184 = distinct !{!3184, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!3185 = distinct !{!3185, !3184, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!3186 = !{!3180, !3183}
!3187 = !{!3188, !3190, !3192, !3193, !3195}
!3188 = distinct !{!3188, !3189, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3189 = distinct !{!3189, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3190 = distinct !{!3190, !3191, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!3191 = distinct !{!3191, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!3192 = distinct !{!3192, !3191, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!3193 = distinct !{!3193, !3194, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!3194 = distinct !{!3194, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!3195 = distinct !{!3195, !3194, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!3196 = !{!3190, !3193}
!3197 = !{!3198, !3200, !3202, !3203, !3205}
!3198 = distinct !{!3198, !3199, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3199 = distinct !{!3199, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3200 = distinct !{!3200, !3201, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!3201 = distinct !{!3201, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!3202 = distinct !{!3202, !3201, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!3203 = distinct !{!3203, !3204, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!3204 = distinct !{!3204, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!3205 = distinct !{!3205, !3204, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!3206 = !{!3200, !3203}
!3207 = !{!3208, !3210, !3212, !3213, !3215}
!3208 = distinct !{!3208, !3209, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3209 = distinct !{!3209, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3210 = distinct !{!3210, !3211, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!3211 = distinct !{!3211, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!3212 = distinct !{!3212, !3211, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!3213 = distinct !{!3213, !3214, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!3214 = distinct !{!3214, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!3215 = distinct !{!3215, !3214, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!3216 = !{!3210, !3213}
!3217 = !{!3218, !3220, !3222, !3223, !3225}
!3218 = distinct !{!3218, !3219, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3219 = distinct !{!3219, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3220 = distinct !{!3220, !3221, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!3221 = distinct !{!3221, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!3222 = distinct !{!3222, !3221, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!3223 = distinct !{!3223, !3224, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!3224 = distinct !{!3224, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!3225 = distinct !{!3225, !3224, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!3226 = !{!3220, !3223}
!3227 = !{!3228}
!3228 = distinct !{!3228, !3229, !"_ZN4core3fmt9Formatter15debug_lower_hex17h9cdd4be3848b7ad4E: %self"}
!3229 = distinct !{!3229, !"_ZN4core3fmt9Formatter15debug_lower_hex17h9cdd4be3848b7ad4E"}
!3230 = !{!3231}
!3231 = distinct !{!3231, !3232, !"_ZN4core3fmt3num49_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i8$GT$3fmt17h2579ec9bdf765595E: %self"}
!3232 = distinct !{!3232, !"_ZN4core3fmt3num49_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i8$GT$3fmt17h2579ec9bdf765595E"}
!3233 = !{!3234}
!3234 = distinct !{!3234, !3235, !"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i8$GT$3fmt17h7943257fc24ac32eE: %self"}
!3235 = distinct !{!3235, !"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i8$GT$3fmt17h7943257fc24ac32eE"}
!3236 = !{!3237, !3231}
!3237 = distinct !{!3237, !3238, !"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i8$GT$3fmt17h405967de1e4d6acaE: %self"}
!3238 = distinct !{!3238, !"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i8$GT$3fmt17h405967de1e4d6acaE"}
!3239 = !{!3240}
!3240 = distinct !{!3240, !3241, !"_ZN4core3fmt9Formatter15debug_lower_hex17h9cdd4be3848b7ad4E: %self"}
!3241 = distinct !{!3241, !"_ZN4core3fmt9Formatter15debug_lower_hex17h9cdd4be3848b7ad4E"}
!3242 = !{!3243}
!3243 = distinct !{!3243, !3244, !"_ZN4core3fmt3num49_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u8$GT$3fmt17h3a40db8b381f1ef4E: %self"}
!3244 = distinct !{!3244, !"_ZN4core3fmt3num49_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u8$GT$3fmt17h3a40db8b381f1ef4E"}
!3245 = !{!3246}
!3246 = distinct !{!3246, !3247, !"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u8$GT$3fmt17h60e0f1f08fe98d54E: %self"}
!3247 = distinct !{!3247, !"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u8$GT$3fmt17h60e0f1f08fe98d54E"}
!3248 = !{!3249}
!3249 = distinct !{!3249, !3250, !"_ZN4core3fmt3num3imp51_$LT$impl$u20$core..fmt..Display$u20$for$u20$u8$GT$3fmt17h15a9d9444c491f95E: %self"}
!3250 = distinct !{!3250, !"_ZN4core3fmt3num3imp51_$LT$impl$u20$core..fmt..Display$u20$for$u20$u8$GT$3fmt17h15a9d9444c491f95E"}
!3251 = !{!3252, !3243}
!3252 = distinct !{!3252, !3253, !"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u8$GT$3fmt17he584874f14cc0ebbE: %self"}
!3253 = distinct !{!3253, !"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u8$GT$3fmt17he584874f14cc0ebbE"}
!3254 = !{!3255}
!3255 = distinct !{!3255, !3256, !"_ZN4core3fmt9Formatter15debug_lower_hex17h9cdd4be3848b7ad4E: %self"}
!3256 = distinct !{!3256, !"_ZN4core3fmt9Formatter15debug_lower_hex17h9cdd4be3848b7ad4E"}
!3257 = !{!3258}
!3258 = distinct !{!3258, !3259, !"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i16$GT$3fmt17h7c43688ffe45cdf8E: %self"}
!3259 = distinct !{!3259, !"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i16$GT$3fmt17h7c43688ffe45cdf8E"}
!3260 = !{!3261}
!3261 = distinct !{!3261, !3262, !"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i16$GT$3fmt17hbe4318a26c58a6ceE: %self"}
!3262 = distinct !{!3262, !"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i16$GT$3fmt17hbe4318a26c58a6ceE"}
!3263 = !{!3264}
!3264 = distinct !{!3264, !3265, !"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$i16$GT$3fmt17hb97f6f3d4d1ad318E: %self"}
!3265 = distinct !{!3265, !"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$i16$GT$3fmt17hb97f6f3d4d1ad318E"}
!3266 = !{!3267, !3258}
!3267 = distinct !{!3267, !3268, !"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i16$GT$3fmt17hbf7433b6c707aeabE: %self"}
!3268 = distinct !{!3268, !"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i16$GT$3fmt17hbf7433b6c707aeabE"}
!3269 = !{!3270}
!3270 = distinct !{!3270, !3271, !"_ZN4core3fmt9Formatter15debug_lower_hex17h9cdd4be3848b7ad4E: %self"}
!3271 = distinct !{!3271, !"_ZN4core3fmt9Formatter15debug_lower_hex17h9cdd4be3848b7ad4E"}
!3272 = !{!3273}
!3273 = distinct !{!3273, !3274, !"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u16$GT$3fmt17hb117ac7ccab46262E: %self"}
!3274 = distinct !{!3274, !"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u16$GT$3fmt17hb117ac7ccab46262E"}
!3275 = !{!3276}
!3276 = distinct !{!3276, !3277, !"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u16$GT$3fmt17h8250f7f13a1439d7E: %self"}
!3277 = distinct !{!3277, !"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u16$GT$3fmt17h8250f7f13a1439d7E"}
!3278 = !{!3279}
!3279 = distinct !{!3279, !3280, !"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u16$GT$3fmt17ha65397985f1509e1E: %self"}
!3280 = distinct !{!3280, !"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u16$GT$3fmt17ha65397985f1509e1E"}
!3281 = !{!3282, !3273}
!3282 = distinct !{!3282, !3283, !"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u16$GT$3fmt17h736ee6d5f84359d0E: %self"}
!3283 = distinct !{!3283, !"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u16$GT$3fmt17h736ee6d5f84359d0E"}
!3284 = !{!3285}
!3285 = distinct !{!3285, !3286, !"_ZN4core3fmt9Formatter15debug_lower_hex17h9cdd4be3848b7ad4E: %self"}
!3286 = distinct !{!3286, !"_ZN4core3fmt9Formatter15debug_lower_hex17h9cdd4be3848b7ad4E"}
!3287 = !{!3288}
!3288 = distinct !{!3288, !3289, !"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$isize$GT$3fmt17h0fbfe5d4f03302b6E: %self"}
!3289 = distinct !{!3289, !"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$isize$GT$3fmt17h0fbfe5d4f03302b6E"}
!3290 = !{!3291}
!3291 = distinct !{!3291, !3292, !"_ZN4core3fmt3num3imp54_$LT$impl$u20$core..fmt..Display$u20$for$u20$isize$GT$3fmt17h5448284b084ed489E: %self"}
!3292 = distinct !{!3292, !"_ZN4core3fmt3num3imp54_$LT$impl$u20$core..fmt..Display$u20$for$u20$isize$GT$3fmt17h5448284b084ed489E"}
!3293 = !{!3294}
!3294 = distinct !{!3294, !3295, !"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$isize$GT$3fmt17h4a747279ae650ea3E: %self"}
!3295 = distinct !{!3295, !"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$isize$GT$3fmt17h4a747279ae650ea3E"}
!3296 = !{!3297}
!3297 = distinct !{!3297, !3298, !"_ZN4core3fmt9Formatter9sign_plus17hea67cd042fb3b4d6E: %self"}
!3298 = distinct !{!3298, !"_ZN4core3fmt9Formatter9sign_plus17hea67cd042fb3b4d6E"}
!3299 = !{!3300}
!3300 = distinct !{!3300, !3301, !"_ZN4core3fmt9Formatter9sign_plus17hea67cd042fb3b4d6E: %self"}
!3301 = distinct !{!3301, !"_ZN4core3fmt9Formatter9sign_plus17hea67cd042fb3b4d6E"}
!3302 = !{!3303}
!3303 = distinct !{!3303, !3304, !"_ZN4core3fmt9Formatter9sign_plus17hea67cd042fb3b4d6E: %self"}
!3304 = distinct !{!3304, !"_ZN4core3fmt9Formatter9sign_plus17hea67cd042fb3b4d6E"}
!3305 = !{!3306}
!3306 = distinct !{!3306, !3307, !"_ZN4core3fmt9Formatter9sign_plus17hea67cd042fb3b4d6E: %self"}
!3307 = distinct !{!3307, !"_ZN4core3fmt9Formatter9sign_plus17hea67cd042fb3b4d6E"}
!3308 = !{!3309}
!3309 = distinct !{!3309, !3310, !"_ZN4core3fmt9Formatter9sign_plus17hea67cd042fb3b4d6E: %self"}
!3310 = distinct !{!3310, !"_ZN4core3fmt9Formatter9sign_plus17hea67cd042fb3b4d6E"}
!3311 = !{!3312}
!3312 = distinct !{!3312, !3313, !"_ZN4core3fmt9Formatter9sign_plus17hea67cd042fb3b4d6E: %self"}
!3313 = distinct !{!3313, !"_ZN4core3fmt9Formatter9sign_plus17hea67cd042fb3b4d6E"}
!3314 = !{!3315}
!3315 = distinct !{!3315, !3316, !"_ZN4core3fmt9Formatter9sign_plus17hea67cd042fb3b4d6E: %self"}
!3316 = distinct !{!3316, !"_ZN4core3fmt9Formatter9sign_plus17hea67cd042fb3b4d6E"}
!3317 = !{!3318}
!3318 = distinct !{!3318, !3319, !"_ZN4core3fmt9Formatter9sign_plus17hea67cd042fb3b4d6E: %self"}
!3319 = distinct !{!3319, !"_ZN4core3fmt9Formatter9sign_plus17hea67cd042fb3b4d6E"}
!3320 = !{!3321}
!3321 = distinct !{!3321, !3322, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: argument 0"}
!3322 = distinct !{!3322, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E"}
!3323 = !{!3324, !3325}
!3324 = distinct !{!3324, !3322, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %pieces.0"}
!3325 = distinct !{!3325, !3322, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %args.0"}
!3326 = !{!3327}
!3327 = distinct !{!3327, !3328, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: argument 0"}
!3328 = distinct !{!3328, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E"}
!3329 = !{!3330, !3331}
!3330 = distinct !{!3330, !3328, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %pieces.0"}
!3331 = distinct !{!3331, !3328, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %args.0"}
!3332 = !{!3333}
!3333 = distinct !{!3333, !3334, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: argument 0"}
!3334 = distinct !{!3334, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E"}
!3335 = !{!3336, !3337}
!3336 = distinct !{!3336, !3334, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %pieces.0"}
!3337 = distinct !{!3337, !3334, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %args.0"}
!3338 = !{!3339}
!3339 = distinct !{!3339, !3340, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: argument 0"}
!3340 = distinct !{!3340, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E"}
!3341 = !{!3342, !3343}
!3342 = distinct !{!3342, !3340, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %pieces.0"}
!3343 = distinct !{!3343, !3340, !"_ZN4core3fmt9Arguments6new_v117h9be87f8bab7d9ff0E: %args.0"}
!3344 = !{!3345}
!3345 = distinct !{!3345, !3346, !"_ZN4core3fmt9Formatter15debug_lower_hex17h9cdd4be3848b7ad4E: %self"}
!3346 = distinct !{!3346, !"_ZN4core3fmt9Formatter15debug_lower_hex17h9cdd4be3848b7ad4E"}
!3347 = !{!3348}
!3348 = distinct !{!3348, !3349, !"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$usize$GT$3fmt17he5ed7a2681b30ea1E: %self"}
!3349 = distinct !{!3349, !"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$usize$GT$3fmt17he5ed7a2681b30ea1E"}
!3350 = !{!3351}
!3351 = distinct !{!3351, !3352, !"_ZN4core3fmt3num3imp54_$LT$impl$u20$core..fmt..Display$u20$for$u20$usize$GT$3fmt17h322c7240ebdab40eE: %self"}
!3352 = distinct !{!3352, !"_ZN4core3fmt3num3imp54_$LT$impl$u20$core..fmt..Display$u20$for$u20$usize$GT$3fmt17h322c7240ebdab40eE"}
!3353 = !{!3354}
!3354 = distinct !{!3354, !3355, !"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$usize$GT$3fmt17h4b84f8ccc51f0806E: %self"}
!3355 = distinct !{!3355, !"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$usize$GT$3fmt17h4b84f8ccc51f0806E"}
!3356 = !{!3357}
!3357 = distinct !{!3357, !3358, !"_ZN42_$LT$u8$u20$as$u20$core..fmt..num..Int$GT$6to_u3217h7b012e1cb4b1d8bbE: %self"}
!3358 = distinct !{!3358, !"_ZN42_$LT$u8$u20$as$u20$core..fmt..num..Int$GT$6to_u3217h7b012e1cb4b1d8bbE"}
!3359 = !{!3360}
!3360 = distinct !{!3360, !3361, !"_ZN43_$LT$u16$u20$as$u20$core..fmt..num..Int$GT$6to_u3217hd607d5d46d82e016E: %self"}
!3361 = distinct !{!3361, !"_ZN43_$LT$u16$u20$as$u20$core..fmt..num..Int$GT$6to_u3217hd607d5d46d82e016E"}
!3362 = !{!3363}
!3363 = distinct !{!3363, !3364, !"_ZN43_$LT$u32$u20$as$u20$core..fmt..num..Int$GT$6to_u3217h00873bd4b3652ce2E: %self"}
!3364 = distinct !{!3364, !"_ZN43_$LT$u32$u20$as$u20$core..fmt..num..Int$GT$6to_u3217h00873bd4b3652ce2E"}
!3365 = !{!3366}
!3366 = distinct !{!3366, !3367, !"_ZN43_$LT$u64$u20$as$u20$core..fmt..num..Int$GT$6to_u6417h7ef01d77e0d9571eE: %self"}
!3367 = distinct !{!3367, !"_ZN43_$LT$u64$u20$as$u20$core..fmt..num..Int$GT$6to_u6417h7ef01d77e0d9571eE"}
!3368 = !{!3369}
!3369 = distinct !{!3369, !3370, !"_ZN4core3fmt9Formatter9precision17hc85cb7827872dbe8E: %self"}
!3370 = distinct !{!3370, !"_ZN4core3fmt9Formatter9precision17hc85cb7827872dbe8E"}
!3371 = !{!3372}
!3372 = distinct !{!3372, !3373, !"_ZN4core3fmt9Formatter9sign_plus17hea67cd042fb3b4d6E: %self"}
!3373 = distinct !{!3373, !"_ZN4core3fmt9Formatter9sign_plus17hea67cd042fb3b4d6E"}
!3374 = !{!3375}
!3375 = distinct !{!3375, !3376, !"_ZN42_$LT$u8$u20$as$u20$core..fmt..num..Int$GT$6to_u3217h7b012e1cb4b1d8bbE: %self"}
!3376 = distinct !{!3376, !"_ZN42_$LT$u8$u20$as$u20$core..fmt..num..Int$GT$6to_u3217h7b012e1cb4b1d8bbE"}
!3377 = !{!3378}
!3378 = distinct !{!3378, !3379, !"_ZN43_$LT$u16$u20$as$u20$core..fmt..num..Int$GT$6to_u3217hd607d5d46d82e016E: %self"}
!3379 = distinct !{!3379, !"_ZN43_$LT$u16$u20$as$u20$core..fmt..num..Int$GT$6to_u3217hd607d5d46d82e016E"}
!3380 = !{!3381}
!3381 = distinct !{!3381, !3382, !"_ZN43_$LT$u32$u20$as$u20$core..fmt..num..Int$GT$6to_u3217h00873bd4b3652ce2E: %self"}
!3382 = distinct !{!3382, !"_ZN43_$LT$u32$u20$as$u20$core..fmt..num..Int$GT$6to_u3217h00873bd4b3652ce2E"}
!3383 = !{!3384}
!3384 = distinct !{!3384, !3385, !"_ZN42_$LT$u8$u20$as$u20$core..fmt..num..Int$GT$6to_u3217h7b012e1cb4b1d8bbE: %self"}
!3385 = distinct !{!3385, !"_ZN42_$LT$u8$u20$as$u20$core..fmt..num..Int$GT$6to_u3217h7b012e1cb4b1d8bbE"}
!3386 = !{!3387}
!3387 = distinct !{!3387, !3388, !"_ZN43_$LT$u16$u20$as$u20$core..fmt..num..Int$GT$6to_u3217hd607d5d46d82e016E: %self"}
!3388 = distinct !{!3388, !"_ZN43_$LT$u16$u20$as$u20$core..fmt..num..Int$GT$6to_u3217hd607d5d46d82e016E"}
!3389 = !{!3390}
!3390 = distinct !{!3390, !3391, !"_ZN43_$LT$u32$u20$as$u20$core..fmt..num..Int$GT$6to_u3217h00873bd4b3652ce2E: %self"}
!3391 = distinct !{!3391, !"_ZN43_$LT$u32$u20$as$u20$core..fmt..num..Int$GT$6to_u3217h00873bd4b3652ce2E"}
!3392 = !{!3393}
!3393 = distinct !{!3393, !3394, !"_ZN4core3fmt9Formatter9precision17hc85cb7827872dbe8E: %self"}
!3394 = distinct !{!3394, !"_ZN4core3fmt9Formatter9precision17hc85cb7827872dbe8E"}
!3395 = !{!3396}
!3396 = distinct !{!3396, !3397, !"_ZN4core3fmt9Formatter9sign_plus17hea67cd042fb3b4d6E: %self"}
!3397 = distinct !{!3397, !"_ZN4core3fmt9Formatter9sign_plus17hea67cd042fb3b4d6E"}
!3398 = !{!3399}
!3399 = distinct !{!3399, !3400, !"_ZN43_$LT$u64$u20$as$u20$core..fmt..num..Int$GT$6to_u6417h7ef01d77e0d9571eE: %self"}
!3400 = distinct !{!3400, !"_ZN43_$LT$u64$u20$as$u20$core..fmt..num..Int$GT$6to_u6417h7ef01d77e0d9571eE"}
!3401 = !{!3402}
!3402 = distinct !{!3402, !3403, !"_ZN43_$LT$u64$u20$as$u20$core..fmt..num..Int$GT$6to_u6417h7ef01d77e0d9571eE: %self"}
!3403 = distinct !{!3403, !"_ZN43_$LT$u64$u20$as$u20$core..fmt..num..Int$GT$6to_u6417h7ef01d77e0d9571eE"}
!3404 = !{!3405}
!3405 = distinct !{!3405, !3406, !"_ZN44_$LT$u128$u20$as$u20$core..fmt..num..Int$GT$7to_u12817h3e683c9310df84f0E: %self"}
!3406 = distinct !{!3406, !"_ZN44_$LT$u128$u20$as$u20$core..fmt..num..Int$GT$7to_u12817h3e683c9310df84f0E"}
!3407 = !{!3408}
!3408 = distinct !{!3408, !3409, !"_ZN4core3fmt9Formatter9precision17hc85cb7827872dbe8E: %self"}
!3409 = distinct !{!3409, !"_ZN4core3fmt9Formatter9precision17hc85cb7827872dbe8E"}
!3410 = !{!3411}
!3411 = distinct !{!3411, !3412, !"_ZN4core3fmt9Formatter9sign_plus17hea67cd042fb3b4d6E: %self"}
!3412 = distinct !{!3412, !"_ZN4core3fmt9Formatter9sign_plus17hea67cd042fb3b4d6E"}
!3413 = !{!3414}
!3414 = distinct !{!3414, !3415, !"_ZN44_$LT$u128$u20$as$u20$core..fmt..num..Int$GT$7to_u12817h3e683c9310df84f0E: %self"}
!3415 = distinct !{!3415, !"_ZN44_$LT$u128$u20$as$u20$core..fmt..num..Int$GT$7to_u12817h3e683c9310df84f0E"}
!3416 = !{!3417}
!3417 = distinct !{!3417, !3418, !"_ZN44_$LT$u128$u20$as$u20$core..fmt..num..Int$GT$7to_u12817h3e683c9310df84f0E: %self"}
!3418 = distinct !{!3418, !"_ZN44_$LT$u128$u20$as$u20$core..fmt..num..Int$GT$7to_u12817h3e683c9310df84f0E"}
!3419 = !{!3420, !3422, !3424, !3425, !3427}
!3420 = distinct !{!3420, !3421, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3421 = distinct !{!3421, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3422 = distinct !{!3422, !3423, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!3423 = distinct !{!3423, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!3424 = distinct !{!3424, !3423, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!3425 = distinct !{!3425, !3426, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!3426 = distinct !{!3426, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!3427 = distinct !{!3427, !3426, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!3428 = !{!3422, !3425}
!3429 = !{!3430, !3432, !3434, !3435, !3437}
!3430 = distinct !{!3430, !3431, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3431 = distinct !{!3431, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3432 = distinct !{!3432, !3433, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!3433 = distinct !{!3433, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!3434 = distinct !{!3434, !3433, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!3435 = distinct !{!3435, !3436, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!3436 = distinct !{!3436, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!3437 = distinct !{!3437, !3436, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!3438 = !{!3432, !3435}
!3439 = !{!3440, !3442, !3444, !3445, !3447}
!3440 = distinct !{!3440, !3441, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3441 = distinct !{!3441, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3442 = distinct !{!3442, !3443, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!3443 = distinct !{!3443, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!3444 = distinct !{!3444, !3443, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!3445 = distinct !{!3445, !3446, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!3446 = distinct !{!3446, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!3447 = distinct !{!3447, !3446, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!3448 = !{!3442, !3445}
!3449 = !{!3450, !3452, !3454, !3455, !3457}
!3450 = distinct !{!3450, !3451, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3451 = distinct !{!3451, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3452 = distinct !{!3452, !3453, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!3453 = distinct !{!3453, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!3454 = distinct !{!3454, !3453, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!3455 = distinct !{!3455, !3456, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!3456 = distinct !{!3456, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!3457 = distinct !{!3457, !3456, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!3458 = !{!3452, !3455}
!3459 = !{!3460}
!3460 = distinct !{!3460, !3461, !"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h24e2be19e2f9ea86E: %self"}
!3461 = distinct !{!3461, !"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h24e2be19e2f9ea86E"}
!3462 = !{!3463, !3465, !3467, !3468, !3470, !3460}
!3463 = distinct !{!3463, !3464, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3464 = distinct !{!3464, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3465 = distinct !{!3465, !3466, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!3466 = distinct !{!3466, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!3467 = distinct !{!3467, !3466, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!3468 = distinct !{!3468, !3469, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!3469 = distinct !{!3469, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!3470 = distinct !{!3470, !3469, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!3471 = !{!3465, !3468, !3460}
!3472 = !{!3465, !3468}
!3473 = !{!3467, !3470, !3460}
!3474 = !{!3475}
!3475 = distinct !{!3475, !3476, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!3476 = distinct !{!3476, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!3477 = !{!3478}
!3478 = distinct !{!3478, !3479, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!3479 = distinct !{!3479, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!3480 = !{!3481}
!3481 = distinct !{!3481, !3482, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3482 = distinct !{!3482, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3483 = !{!3484}
!3484 = distinct !{!3484, !3485, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3485 = distinct !{!3485, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3486 = !{!3487, !3489, !3491, !3492, !3494, !3460}
!3487 = distinct !{!3487, !3488, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3488 = distinct !{!3488, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3489 = distinct !{!3489, !3490, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!3490 = distinct !{!3490, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!3491 = distinct !{!3491, !3490, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!3492 = distinct !{!3492, !3493, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!3493 = distinct !{!3493, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!3494 = distinct !{!3494, !3493, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!3495 = !{!3487, !3489, !3491, !3492, !3494}
!3496 = !{!3489, !3492}
!3497 = !{!3498}
!3498 = distinct !{!3498, !3499, !"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h43af4211205e4bc8E: %self"}
!3499 = distinct !{!3499, !"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h43af4211205e4bc8E"}
!3500 = !{!3501, !3503, !3505, !3506, !3508, !3498}
!3501 = distinct !{!3501, !3502, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3502 = distinct !{!3502, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3503 = distinct !{!3503, !3504, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!3504 = distinct !{!3504, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!3505 = distinct !{!3505, !3504, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!3506 = distinct !{!3506, !3507, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!3507 = distinct !{!3507, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!3508 = distinct !{!3508, !3507, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!3509 = !{!3503, !3506, !3498}
!3510 = !{!3503, !3506}
!3511 = !{!3505, !3508, !3498}
!3512 = !{!3513}
!3513 = distinct !{!3513, !3514, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!3514 = distinct !{!3514, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!3515 = !{!3516}
!3516 = distinct !{!3516, !3517, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!3517 = distinct !{!3517, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!3518 = !{!3519}
!3519 = distinct !{!3519, !3520, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3520 = distinct !{!3520, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3521 = !{!3522}
!3522 = distinct !{!3522, !3523, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3523 = distinct !{!3523, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3524 = !{!3525, !3527, !3529, !3530, !3532, !3498}
!3525 = distinct !{!3525, !3526, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3526 = distinct !{!3526, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3527 = distinct !{!3527, !3528, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!3528 = distinct !{!3528, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!3529 = distinct !{!3529, !3528, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!3530 = distinct !{!3530, !3531, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!3531 = distinct !{!3531, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!3532 = distinct !{!3532, !3531, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!3533 = !{!3525, !3527, !3529, !3530, !3532}
!3534 = !{!3527, !3530}
!3535 = !{!3536}
!3536 = distinct !{!3536, !3537, !"_ZN4core3fmt9Formatter15debug_lower_hex17h9cdd4be3848b7ad4E: %self"}
!3537 = distinct !{!3537, !"_ZN4core3fmt9Formatter15debug_lower_hex17h9cdd4be3848b7ad4E"}
!3538 = !{!3539}
!3539 = distinct !{!3539, !3540, !"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i64$GT$3fmt17h2eed73db067b8bfdE: %self"}
!3540 = distinct !{!3540, !"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i64$GT$3fmt17h2eed73db067b8bfdE"}
!3541 = !{!3542, !3539}
!3542 = distinct !{!3542, !3543, !"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i64$GT$3fmt17he773bf19e2d9299eE: %self"}
!3543 = distinct !{!3543, !"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i64$GT$3fmt17he773bf19e2d9299eE"}
!3544 = !{!3545, !3539}
!3545 = distinct !{!3545, !3546, !"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i64$GT$3fmt17hd747966a00df068dE: %self"}
!3546 = distinct !{!3546, !"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i64$GT$3fmt17hd747966a00df068dE"}
!3547 = !{!3548}
!3548 = distinct !{!3548, !3549, !"_ZN71_$LT$core..num..dec2flt..FloatErrorKind$u20$as$u20$core..fmt..Debug$GT$3fmt17hec307482de6e6a8cE: %self"}
!3549 = distinct !{!3549, !"_ZN71_$LT$core..num..dec2flt..FloatErrorKind$u20$as$u20$core..fmt..Debug$GT$3fmt17hec307482de6e6a8cE"}
!3550 = !{!3551, !3553, !3548}
!3551 = distinct !{!3551, !3552, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!3552 = distinct !{!3552, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!3553 = distinct !{!3553, !3554, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!3554 = distinct !{!3554, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!3555 = !{!3556, !3558, !3548}
!3556 = distinct !{!3556, !3557, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!3557 = distinct !{!3557, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!3558 = distinct !{!3558, !3559, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!3559 = distinct !{!3559, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!3560 = !{!3561}
!3561 = distinct !{!3561, !3562, !"_ZN75_$LT$core..iter..adapters..Map$LT$I$C$F$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h97978796004150b5E: %self"}
!3562 = distinct !{!3562, !"_ZN75_$LT$core..iter..adapters..Map$LT$I$C$F$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h97978796004150b5E"}
!3563 = !{!3564, !3566, !3568, !3569, !3571, !3561}
!3564 = distinct !{!3564, !3565, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3565 = distinct !{!3565, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3566 = distinct !{!3566, !3567, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!3567 = distinct !{!3567, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!3568 = distinct !{!3568, !3567, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!3569 = distinct !{!3569, !3570, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!3570 = distinct !{!3570, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!3571 = distinct !{!3571, !3570, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!3572 = !{!3566, !3569, !3561}
!3573 = !{!3566, !3569}
!3574 = !{!3568, !3571, !3561}
!3575 = !{!3576}
!3576 = distinct !{!3576, !3577, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!3577 = distinct !{!3577, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!3578 = !{!3579}
!3579 = distinct !{!3579, !3580, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!3580 = distinct !{!3580, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!3581 = !{!3582}
!3582 = distinct !{!3582, !3583, !"_ZN4core3fmt5float50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$f64$GT$3fmt17h4fb123d93cfd2ed3E: %self"}
!3583 = distinct !{!3583, !"_ZN4core3fmt5float50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$f64$GT$3fmt17h4fb123d93cfd2ed3E"}
!3584 = !{!3585}
!3585 = distinct !{!3585, !3586, !"_ZN4core3fmt9Formatter9sign_plus17hea67cd042fb3b4d6E: %self"}
!3586 = distinct !{!3586, !"_ZN4core3fmt9Formatter9sign_plus17hea67cd042fb3b4d6E"}
!3587 = !{!3588}
!3588 = distinct !{!3588, !3589, !"_ZN92_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hf0fb616880a8dfc9E: %self"}
!3589 = distinct !{!3589, !"_ZN92_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hf0fb616880a8dfc9E"}
!3590 = !{!3591, !3593, !3595, !3596, !3598, !3588}
!3591 = distinct !{!3591, !3592, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3592 = distinct !{!3592, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3593 = distinct !{!3593, !3594, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!3594 = distinct !{!3594, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!3595 = distinct !{!3595, !3594, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!3596 = distinct !{!3596, !3597, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!3597 = distinct !{!3597, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!3598 = distinct !{!3598, !3597, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!3599 = !{!3593, !3596, !3588}
!3600 = !{!3593, !3596}
!3601 = !{!3595, !3598, !3588}
!3602 = !{!3603}
!3603 = distinct !{!3603, !3604, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!3604 = distinct !{!3604, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!3605 = !{!3606}
!3606 = distinct !{!3606, !3607, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!3607 = distinct !{!3607, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!3608 = !{!3609, !3611, !3613}
!3609 = distinct !{!3609, !3610, !"_ZN48_$LT$$u5b$T$u5d$$u20$as$u20$core..fmt..Debug$GT$3fmt17h1e286a4a3cc906c2E: %self.0"}
!3610 = distinct !{!3610, !"_ZN48_$LT$$u5b$T$u5d$$u20$as$u20$core..fmt..Debug$GT$3fmt17h1e286a4a3cc906c2E"}
!3611 = distinct !{!3611, !3612, !"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h49144c1eebc06d07E: %self"}
!3612 = distinct !{!3612, !"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h49144c1eebc06d07E"}
!3613 = distinct !{!3613, !3614, !"_ZN4core5array153_$LT$impl$u20$core..fmt..Debug$u20$for$u20$$u5b$T$u3b$$u20$Const$u20$$u7b$$u20$ty.$u20$usize$C$$u20$val.$u20$Param$LP$N$u2f$$u23$1$RP$$u20$$u7d$$u5d$$GT$3fmt17h5e389f4e3aa597e0E: %self"}
!3614 = distinct !{!3614, !"_ZN4core5array153_$LT$impl$u20$core..fmt..Debug$u20$for$u20$$u5b$T$u3b$$u20$Const$u20$$u7b$$u20$ty.$u20$usize$C$$u20$val.$u20$Param$LP$N$u2f$$u23$1$RP$$u20$$u7d$$u5d$$GT$3fmt17h5e389f4e3aa597e0E"}
!3615 = !{!3616, !3618, !3620, !3609, !3611, !3613}
!3616 = distinct !{!3616, !3617, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3617 = distinct !{!3617, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3618 = distinct !{!3618, !3619, !"_ZN4core3fmt8builders14debug_list_new17he49aae00a72881d0E: argument 0"}
!3619 = distinct !{!3619, !"_ZN4core3fmt8builders14debug_list_new17he49aae00a72881d0E"}
!3620 = distinct !{!3620, !3621, !"_ZN4core3fmt9Formatter10debug_list17h28f90f7304fd6fd5E: argument 0"}
!3621 = distinct !{!3621, !"_ZN4core3fmt9Formatter10debug_list17h28f90f7304fd6fd5E"}
!3622 = !{!3618, !3620, !3609, !3611, !3613}
!3623 = !{!3618, !3620}
!3624 = !{!3611}
!3625 = !{!3626, !3611}
!3626 = distinct !{!3626, !3627, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3627 = distinct !{!3627, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3628 = !{!3629}
!3629 = distinct !{!3629, !3630, !"_ZN71_$LT$core..char..convert..CharErrorKind$u20$as$u20$core..fmt..Debug$GT$3fmt17h05b29b1774f4b3c6E: %self"}
!3630 = distinct !{!3630, !"_ZN71_$LT$core..char..convert..CharErrorKind$u20$as$u20$core..fmt..Debug$GT$3fmt17h05b29b1774f4b3c6E"}
!3631 = !{!3632, !3634, !3629}
!3632 = distinct !{!3632, !3633, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!3633 = distinct !{!3633, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!3634 = distinct !{!3634, !3635, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!3635 = distinct !{!3635, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!3636 = !{!3637, !3639, !3629}
!3637 = distinct !{!3637, !3638, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!3638 = distinct !{!3638, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!3639 = distinct !{!3639, !3640, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!3640 = distinct !{!3640, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!3641 = !{!3642}
!3642 = distinct !{!3642, !3643, !"_ZN58_$LT$core..ffi..VaListImpl$u20$as$u20$core..fmt..Debug$GT$3fmt17heeed607070847e12E: %self"}
!3643 = distinct !{!3643, !"_ZN58_$LT$core..ffi..VaListImpl$u20$as$u20$core..fmt..Debug$GT$3fmt17heeed607070847e12E"}
!3644 = !{!3645, !3642}
!3645 = distinct !{!3645, !3646, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E: %fmt"}
!3646 = distinct !{!3646, !"_ZN4core3fmt9Formatter9write_fmt17h9eba42d9191e87f9E"}
!3647 = !{!3645}
!3648 = !{!3649}
!3649 = distinct !{!3649, !3650, !"_ZN62_$LT$core..char..EscapeDefault$u20$as$u20$core..fmt..Debug$GT$3fmt17h5468203a1e644711E: %self"}
!3650 = distinct !{!3650, !"_ZN62_$LT$core..char..EscapeDefault$u20$as$u20$core..fmt..Debug$GT$3fmt17h5468203a1e644711E"}
!3651 = !{!3652, !3654, !3656, !3657, !3659, !3649}
!3652 = distinct !{!3652, !3653, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3653 = distinct !{!3653, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3654 = distinct !{!3654, !3655, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!3655 = distinct !{!3655, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!3656 = distinct !{!3656, !3655, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!3657 = distinct !{!3657, !3658, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!3658 = distinct !{!3658, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!3659 = distinct !{!3659, !3658, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!3660 = !{!3654, !3657, !3649}
!3661 = !{!3654, !3657}
!3662 = !{!3656, !3659, !3649}
!3663 = !{!3664}
!3664 = distinct !{!3664, !3665, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!3665 = distinct !{!3665, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!3666 = !{!3667}
!3667 = distinct !{!3667, !3668, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!3668 = distinct !{!3668, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!3669 = !{!3670}
!3670 = distinct !{!3670, !3671, !"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hadde3dd2cd957aa6E: %self"}
!3671 = distinct !{!3671, !"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hadde3dd2cd957aa6E"}
!3672 = !{!3673, !3675, !3677, !3678, !3680, !3670}
!3673 = distinct !{!3673, !3674, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3674 = distinct !{!3674, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3675 = distinct !{!3675, !3676, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!3676 = distinct !{!3676, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!3677 = distinct !{!3677, !3676, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!3678 = distinct !{!3678, !3679, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!3679 = distinct !{!3679, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!3680 = distinct !{!3680, !3679, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!3681 = !{!3675, !3678, !3670}
!3682 = !{!3675, !3678}
!3683 = !{!3677, !3680, !3670}
!3684 = !{!3685}
!3685 = distinct !{!3685, !3686, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!3686 = distinct !{!3686, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!3687 = !{!3688}
!3688 = distinct !{!3688, !3689, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!3689 = distinct !{!3689, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!3690 = !{!3691}
!3691 = distinct !{!3691, !3692, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3692 = distinct !{!3692, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3693 = !{!3694}
!3694 = distinct !{!3694, !3695, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3695 = distinct !{!3695, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3696 = !{!3697, !3699, !3701, !3702, !3704, !3670}
!3697 = distinct !{!3697, !3698, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3698 = distinct !{!3698, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3699 = distinct !{!3699, !3700, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!3700 = distinct !{!3700, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!3701 = distinct !{!3701, !3700, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!3702 = distinct !{!3702, !3703, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!3703 = distinct !{!3703, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!3704 = distinct !{!3704, !3703, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!3705 = !{!3697, !3699, !3701, !3702, !3704}
!3706 = !{!3699, !3702}
!3707 = !{!3708}
!3708 = distinct !{!3708, !3709, !"_ZN75_$LT$core..iter..adapters..Map$LT$I$C$F$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h395c4c043c94051cE: %self"}
!3709 = distinct !{!3709, !"_ZN75_$LT$core..iter..adapters..Map$LT$I$C$F$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h395c4c043c94051cE"}
!3710 = !{!3711, !3713, !3715, !3716, !3718, !3708}
!3711 = distinct !{!3711, !3712, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3712 = distinct !{!3712, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3713 = distinct !{!3713, !3714, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!3714 = distinct !{!3714, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!3715 = distinct !{!3715, !3714, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!3716 = distinct !{!3716, !3717, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!3717 = distinct !{!3717, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!3718 = distinct !{!3718, !3717, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!3719 = !{!3713, !3716, !3708}
!3720 = !{!3713, !3716}
!3721 = !{!3715, !3718, !3708}
!3722 = !{!3723}
!3723 = distinct !{!3723, !3724, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!3724 = distinct !{!3724, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!3725 = !{!3726}
!3726 = distinct !{!3726, !3727, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!3727 = distinct !{!3727, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!3728 = !{!3729}
!3729 = distinct !{!3729, !3730, !"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h38fcb1865327813dE: %self"}
!3730 = distinct !{!3730, !"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h38fcb1865327813dE"}
!3731 = !{!3732, !3734, !3736, !3737, !3739, !3729}
!3732 = distinct !{!3732, !3733, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3733 = distinct !{!3733, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3734 = distinct !{!3734, !3735, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!3735 = distinct !{!3735, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!3736 = distinct !{!3736, !3735, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!3737 = distinct !{!3737, !3738, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!3738 = distinct !{!3738, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!3739 = distinct !{!3739, !3738, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!3740 = !{!3734, !3737, !3729}
!3741 = !{!3734, !3737}
!3742 = !{!3736, !3739, !3729}
!3743 = !{!3744}
!3744 = distinct !{!3744, !3745, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!3745 = distinct !{!3745, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!3746 = !{!3747}
!3747 = distinct !{!3747, !3748, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!3748 = distinct !{!3748, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!3749 = !{!3750}
!3750 = distinct !{!3750, !3751, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3751 = distinct !{!3751, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3752 = !{!3753}
!3753 = distinct !{!3753, !3754, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3754 = distinct !{!3754, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3755 = !{!3756, !3758, !3760, !3761, !3763, !3729}
!3756 = distinct !{!3756, !3757, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3757 = distinct !{!3757, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3758 = distinct !{!3758, !3759, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!3759 = distinct !{!3759, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!3760 = distinct !{!3760, !3759, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!3761 = distinct !{!3761, !3762, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!3762 = distinct !{!3762, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!3763 = distinct !{!3763, !3762, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!3764 = !{!3756, !3758, !3760, !3761, !3763}
!3765 = !{!3758, !3761}
!3766 = !{!3767}
!3767 = distinct !{!3767, !3768, !"_ZN4core3ptr87_$LT$impl$u20$core..fmt..Debug$u20$for$u20$unsafe$u20$fn$LP$A$RP$$u20$.$GT$$u20$Ret$GT$3fmt17h8037b98962b3d368E: %self"}
!3768 = distinct !{!3768, !"_ZN4core3ptr87_$LT$impl$u20$core..fmt..Debug$u20$for$u20$unsafe$u20$fn$LP$A$RP$$u20$.$GT$$u20$Ret$GT$3fmt17h8037b98962b3d368E"}
!3769 = !{!3770, !3767}
!3770 = distinct !{!3770, !3771, !"_ZN54_$LT$$BP$const$u20$T$u20$as$u20$core..fmt..Pointer$GT$3fmt17hbccdc97a3b8f5a71E: %self"}
!3771 = distinct !{!3771, !"_ZN54_$LT$$BP$const$u20$T$u20$as$u20$core..fmt..Pointer$GT$3fmt17hbccdc97a3b8f5a71E"}
!3772 = !{!3773, !3770, !3767}
!3773 = distinct !{!3773, !3774, !"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$usize$GT$3fmt17he5ed7a2681b30ea1E: %self"}
!3774 = distinct !{!3774, !"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$usize$GT$3fmt17he5ed7a2681b30ea1E"}
!3775 = !{!3776}
!3776 = distinct !{!3776, !3777, !"_ZN85_$LT$core..str..pattern..MultiCharEqSearcher$LT$C$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hee952db822c61fd2E: %self"}
!3777 = distinct !{!3777, !"_ZN85_$LT$core..str..pattern..MultiCharEqSearcher$LT$C$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hee952db822c61fd2E"}
!3778 = !{!3779, !3781, !3783, !3784, !3786, !3776}
!3779 = distinct !{!3779, !3780, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3780 = distinct !{!3780, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3781 = distinct !{!3781, !3782, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!3782 = distinct !{!3782, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!3783 = distinct !{!3783, !3782, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!3784 = distinct !{!3784, !3785, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!3785 = distinct !{!3785, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!3786 = distinct !{!3786, !3785, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!3787 = !{!3781, !3784, !3776}
!3788 = !{!3781, !3784}
!3789 = !{!3783, !3786, !3776}
!3790 = !{!3791}
!3791 = distinct !{!3791, !3792, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!3792 = distinct !{!3792, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!3793 = !{!3794}
!3794 = distinct !{!3794, !3795, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!3795 = distinct !{!3795, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!3796 = !{!3797, !3799}
!3797 = distinct !{!3797, !3798, !"_ZN43_$LT$bool$u20$as$u20$core..fmt..Display$GT$3fmt17h64222129800deacdE: %self"}
!3798 = distinct !{!3798, !"_ZN43_$LT$bool$u20$as$u20$core..fmt..Display$GT$3fmt17h64222129800deacdE"}
!3799 = distinct !{!3799, !3800, !"_ZN41_$LT$bool$u20$as$u20$core..fmt..Debug$GT$3fmt17hac99d466b6ddfefdE: %self"}
!3800 = distinct !{!3800, !"_ZN41_$LT$bool$u20$as$u20$core..fmt..Debug$GT$3fmt17hac99d466b6ddfefdE"}
!3801 = !{!3802}
!3802 = distinct !{!3802, !3803, !"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h3399c4ae4c62a484E: %self"}
!3803 = distinct !{!3803, !"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h3399c4ae4c62a484E"}
!3804 = !{!3805, !3807, !3809, !3810, !3812, !3802}
!3805 = distinct !{!3805, !3806, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3806 = distinct !{!3806, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3807 = distinct !{!3807, !3808, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!3808 = distinct !{!3808, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!3809 = distinct !{!3809, !3808, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!3810 = distinct !{!3810, !3811, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!3811 = distinct !{!3811, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!3812 = distinct !{!3812, !3811, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!3813 = !{!3807, !3810, !3802}
!3814 = !{!3807, !3810}
!3815 = !{!3809, !3812, !3802}
!3816 = !{!3817}
!3817 = distinct !{!3817, !3818, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!3818 = distinct !{!3818, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!3819 = !{!3820}
!3820 = distinct !{!3820, !3821, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!3821 = distinct !{!3821, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!3822 = !{!3823}
!3823 = distinct !{!3823, !3824, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3824 = distinct !{!3824, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3825 = !{!3826}
!3826 = distinct !{!3826, !3827, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3827 = distinct !{!3827, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3828 = !{!3829, !3831, !3833, !3834, !3836, !3802}
!3829 = distinct !{!3829, !3830, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3830 = distinct !{!3830, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3831 = distinct !{!3831, !3832, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!3832 = distinct !{!3832, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!3833 = distinct !{!3833, !3832, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!3834 = distinct !{!3834, !3835, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!3835 = distinct !{!3835, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!3836 = distinct !{!3836, !3835, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!3837 = !{!3829, !3831, !3833, !3834, !3836}
!3838 = !{!3831, !3834}
!3839 = !{!3840}
!3840 = distinct !{!3840, !3841, !"_ZN78_$LT$core..iter..adapters..fuse..Fuse$LT$I$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hfb968a9605b1f748E: %self"}
!3841 = distinct !{!3841, !"_ZN78_$LT$core..iter..adapters..fuse..Fuse$LT$I$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hfb968a9605b1f748E"}
!3842 = !{!3843, !3845, !3847, !3848, !3850, !3840}
!3843 = distinct !{!3843, !3844, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3844 = distinct !{!3844, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3845 = distinct !{!3845, !3846, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!3846 = distinct !{!3846, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!3847 = distinct !{!3847, !3846, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!3848 = distinct !{!3848, !3849, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!3849 = distinct !{!3849, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!3850 = distinct !{!3850, !3849, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!3851 = !{!3845, !3848, !3840}
!3852 = !{!3845, !3848}
!3853 = !{!3847, !3850, !3840}
!3854 = !{!3855}
!3855 = distinct !{!3855, !3856, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!3856 = distinct !{!3856, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!3857 = !{!3858}
!3858 = distinct !{!3858, !3859, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!3859 = distinct !{!3859, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!3860 = !{!3861}
!3861 = distinct !{!3861, !3862, !"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h93a3617dbe1edcb4E: %self"}
!3862 = distinct !{!3862, !"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h93a3617dbe1edcb4E"}
!3863 = !{!3864}
!3864 = distinct !{!3864, !3865, !"_ZN4core3fmt9Formatter15debug_lower_hex17h9cdd4be3848b7ad4E: %self"}
!3865 = distinct !{!3865, !"_ZN4core3fmt9Formatter15debug_lower_hex17h9cdd4be3848b7ad4E"}
!3866 = !{!3867}
!3867 = distinct !{!3867, !3868, !"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i32$GT$3fmt17h4ef1128abbb77ca8E: %self"}
!3868 = distinct !{!3868, !"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i32$GT$3fmt17h4ef1128abbb77ca8E"}
!3869 = !{!3870, !3867}
!3870 = distinct !{!3870, !3871, !"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i32$GT$3fmt17h980e7dc46f13d3abE: %self"}
!3871 = distinct !{!3871, !"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i32$GT$3fmt17h980e7dc46f13d3abE"}
!3872 = !{!3873, !3867}
!3873 = distinct !{!3873, !3874, !"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i32$GT$3fmt17h9869bb78d76c2b48E: %self"}
!3874 = distinct !{!3874, !"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i32$GT$3fmt17h9869bb78d76c2b48E"}
!3875 = !{!3876}
!3876 = distinct !{!3876, !3877, !"_ZN78_$LT$core..iter..adapters..fuse..Fuse$LT$I$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h72543660c7a9e950E: %self"}
!3877 = distinct !{!3877, !"_ZN78_$LT$core..iter..adapters..fuse..Fuse$LT$I$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h72543660c7a9e950E"}
!3878 = !{!3879, !3881, !3883, !3884, !3886, !3876}
!3879 = distinct !{!3879, !3880, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3880 = distinct !{!3880, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3881 = distinct !{!3881, !3882, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!3882 = distinct !{!3882, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!3883 = distinct !{!3883, !3882, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!3884 = distinct !{!3884, !3885, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!3885 = distinct !{!3885, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!3886 = distinct !{!3886, !3885, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!3887 = !{!3881, !3884, !3876}
!3888 = !{!3881, !3884}
!3889 = !{!3883, !3886, !3876}
!3890 = !{!3891}
!3891 = distinct !{!3891, !3892, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!3892 = distinct !{!3892, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!3893 = !{!3894}
!3894 = distinct !{!3894, !3895, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!3895 = distinct !{!3895, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!3896 = !{!3897}
!3897 = distinct !{!3897, !3898, !"_ZN78_$LT$core..iter..adapters..fuse..Fuse$LT$I$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h27d3a20036229f9fE: %self"}
!3898 = distinct !{!3898, !"_ZN78_$LT$core..iter..adapters..fuse..Fuse$LT$I$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h27d3a20036229f9fE"}
!3899 = !{!3900, !3902, !3904, !3905, !3907, !3897}
!3900 = distinct !{!3900, !3901, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3901 = distinct !{!3901, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3902 = distinct !{!3902, !3903, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!3903 = distinct !{!3903, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!3904 = distinct !{!3904, !3903, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!3905 = distinct !{!3905, !3906, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!3906 = distinct !{!3906, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!3907 = distinct !{!3907, !3906, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!3908 = !{!3902, !3905, !3897}
!3909 = !{!3902, !3905}
!3910 = !{!3904, !3907, !3897}
!3911 = !{!3912}
!3912 = distinct !{!3912, !3913, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!3913 = distinct !{!3913, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!3914 = !{!3915}
!3915 = distinct !{!3915, !3916, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!3916 = distinct !{!3916, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!3917 = !{!3918}
!3918 = distinct !{!3918, !3919, !"_ZN48_$LT$$u5b$T$u5d$$u20$as$u20$core..fmt..Debug$GT$3fmt17h1e286a4a3cc906c2E: %self.0"}
!3919 = distinct !{!3919, !"_ZN48_$LT$$u5b$T$u5d$$u20$as$u20$core..fmt..Debug$GT$3fmt17h1e286a4a3cc906c2E"}
!3920 = !{!3921, !3923, !3925, !3918}
!3921 = distinct !{!3921, !3922, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3922 = distinct !{!3922, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3923 = distinct !{!3923, !3924, !"_ZN4core3fmt8builders14debug_list_new17he49aae00a72881d0E: argument 0"}
!3924 = distinct !{!3924, !"_ZN4core3fmt8builders14debug_list_new17he49aae00a72881d0E"}
!3925 = distinct !{!3925, !3926, !"_ZN4core3fmt9Formatter10debug_list17h28f90f7304fd6fd5E: argument 0"}
!3926 = distinct !{!3926, !"_ZN4core3fmt9Formatter10debug_list17h28f90f7304fd6fd5E"}
!3927 = !{!3923, !3925, !3918}
!3928 = !{!3923, !3925}
!3929 = !{!3930}
!3930 = distinct !{!3930, !3931, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3931 = distinct !{!3931, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3932 = !{!3933}
!3933 = distinct !{!3933, !3934, !"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hce651a56c12ef7bfE: %self"}
!3934 = distinct !{!3934, !"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hce651a56c12ef7bfE"}
!3935 = !{!3936, !3938, !3940, !3941, !3943, !3933}
!3936 = distinct !{!3936, !3937, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3937 = distinct !{!3937, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3938 = distinct !{!3938, !3939, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!3939 = distinct !{!3939, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!3940 = distinct !{!3940, !3939, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!3941 = distinct !{!3941, !3942, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!3942 = distinct !{!3942, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!3943 = distinct !{!3943, !3942, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!3944 = !{!3938, !3941, !3933}
!3945 = !{!3938, !3941}
!3946 = !{!3940, !3943, !3933}
!3947 = !{!3948}
!3948 = distinct !{!3948, !3949, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!3949 = distinct !{!3949, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!3950 = !{!3951}
!3951 = distinct !{!3951, !3952, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!3952 = distinct !{!3952, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!3953 = !{!3954}
!3954 = distinct !{!3954, !3955, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3955 = distinct !{!3955, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3956 = !{!3957}
!3957 = distinct !{!3957, !3958, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3958 = distinct !{!3958, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3959 = !{!3960, !3962, !3964, !3965, !3967, !3933}
!3960 = distinct !{!3960, !3961, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3961 = distinct !{!3961, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3962 = distinct !{!3962, !3963, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!3963 = distinct !{!3963, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!3964 = distinct !{!3964, !3963, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!3965 = distinct !{!3965, !3966, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!3966 = distinct !{!3966, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!3967 = distinct !{!3967, !3966, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!3968 = !{!3960, !3962, !3964, !3965, !3967}
!3969 = !{!3962, !3965}
!3970 = !{!3971}
!3971 = distinct !{!3971, !3972, !"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h7f90a3dc3099f4bcE: %self"}
!3972 = distinct !{!3972, !"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h7f90a3dc3099f4bcE"}
!3973 = !{!3974, !3976, !3978, !3979, !3981, !3971}
!3974 = distinct !{!3974, !3975, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3975 = distinct !{!3975, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3976 = distinct !{!3976, !3977, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!3977 = distinct !{!3977, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!3978 = distinct !{!3978, !3977, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!3979 = distinct !{!3979, !3980, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!3980 = distinct !{!3980, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!3981 = distinct !{!3981, !3980, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!3982 = !{!3976, !3979, !3971}
!3983 = !{!3976, !3979}
!3984 = !{!3978, !3981, !3971}
!3985 = !{!3986}
!3986 = distinct !{!3986, !3987, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!3987 = distinct !{!3987, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!3988 = !{!3989}
!3989 = distinct !{!3989, !3990, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!3990 = distinct !{!3990, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!3991 = !{!3992}
!3992 = distinct !{!3992, !3993, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3993 = distinct !{!3993, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3994 = !{!3995}
!3995 = distinct !{!3995, !3996, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3996 = distinct !{!3996, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!3997 = !{!3998, !4000, !4002, !4003, !4005, !3971}
!3998 = distinct !{!3998, !3999, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!3999 = distinct !{!3999, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4000 = distinct !{!4000, !4001, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!4001 = distinct !{!4001, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!4002 = distinct !{!4002, !4001, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!4003 = distinct !{!4003, !4004, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!4004 = distinct !{!4004, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!4005 = distinct !{!4005, !4004, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!4006 = !{!3998, !4000, !4002, !4003, !4005}
!4007 = !{!4000, !4003}
!4008 = !{!4009}
!4009 = distinct !{!4009, !4010, !"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hf5a74168530107b9E: %self"}
!4010 = distinct !{!4010, !"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hf5a74168530107b9E"}
!4011 = !{!4012, !4014, !4016, !4017, !4019, !4009}
!4012 = distinct !{!4012, !4013, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4013 = distinct !{!4013, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4014 = distinct !{!4014, !4015, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!4015 = distinct !{!4015, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!4016 = distinct !{!4016, !4015, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!4017 = distinct !{!4017, !4018, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!4018 = distinct !{!4018, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!4019 = distinct !{!4019, !4018, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!4020 = !{!4014, !4017, !4009}
!4021 = !{!4014, !4017}
!4022 = !{!4016, !4019, !4009}
!4023 = !{!4024}
!4024 = distinct !{!4024, !4025, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!4025 = distinct !{!4025, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!4026 = !{!4027}
!4027 = distinct !{!4027, !4028, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!4028 = distinct !{!4028, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!4029 = !{!4030}
!4030 = distinct !{!4030, !4031, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4031 = distinct !{!4031, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4032 = !{!4033}
!4033 = distinct !{!4033, !4034, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4034 = distinct !{!4034, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4035 = !{!4036, !4038, !4040, !4041, !4043, !4009}
!4036 = distinct !{!4036, !4037, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4037 = distinct !{!4037, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4038 = distinct !{!4038, !4039, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!4039 = distinct !{!4039, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!4040 = distinct !{!4040, !4039, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!4041 = distinct !{!4041, !4042, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!4042 = distinct !{!4042, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!4043 = distinct !{!4043, !4042, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!4044 = !{!4036, !4038, !4040, !4041, !4043}
!4045 = !{!4038, !4041}
!4046 = !{!4047}
!4047 = distinct !{!4047, !4048, !"_ZN92_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h60bbe78e6df3a539E: %self"}
!4048 = distinct !{!4048, !"_ZN92_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h60bbe78e6df3a539E"}
!4049 = !{!4050, !4052, !4054, !4055, !4057, !4047}
!4050 = distinct !{!4050, !4051, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4051 = distinct !{!4051, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4052 = distinct !{!4052, !4053, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!4053 = distinct !{!4053, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!4054 = distinct !{!4054, !4053, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!4055 = distinct !{!4055, !4056, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!4056 = distinct !{!4056, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!4057 = distinct !{!4057, !4056, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!4058 = !{!4052, !4055, !4047}
!4059 = !{!4052, !4055}
!4060 = !{!4054, !4057, !4047}
!4061 = !{!4062}
!4062 = distinct !{!4062, !4063, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!4063 = distinct !{!4063, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!4064 = !{!4065}
!4065 = distinct !{!4065, !4066, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!4066 = distinct !{!4066, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!4067 = !{!4068}
!4068 = distinct !{!4068, !4069, !"_ZN68_$LT$core..option..IntoIter$LT$A$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hd66db158de3821e2E: %self"}
!4069 = distinct !{!4069, !"_ZN68_$LT$core..option..IntoIter$LT$A$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hd66db158de3821e2E"}
!4070 = !{!4071, !4073, !4075, !4076, !4078, !4068}
!4071 = distinct !{!4071, !4072, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4072 = distinct !{!4072, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4073 = distinct !{!4073, !4074, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!4074 = distinct !{!4074, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!4075 = distinct !{!4075, !4074, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!4076 = distinct !{!4076, !4077, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!4077 = distinct !{!4077, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!4078 = distinct !{!4078, !4077, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!4079 = !{!4073, !4076, !4068}
!4080 = !{!4073, !4076}
!4081 = !{!4075, !4078, !4068}
!4082 = !{!4083}
!4083 = distinct !{!4083, !4084, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!4084 = distinct !{!4084, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!4085 = !{!4086}
!4086 = distinct !{!4086, !4087, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!4087 = distinct !{!4087, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!4088 = !{!4089}
!4089 = distinct !{!4089, !4090, !"_ZN54_$LT$$BP$const$u20$T$u20$as$u20$core..fmt..Pointer$GT$3fmt17hf51a507e027da0efE: %self"}
!4090 = distinct !{!4090, !"_ZN54_$LT$$BP$const$u20$T$u20$as$u20$core..fmt..Pointer$GT$3fmt17hf51a507e027da0efE"}
!4091 = !{!4092, !4089}
!4092 = distinct !{!4092, !4093, !"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$usize$GT$3fmt17he5ed7a2681b30ea1E: %self"}
!4093 = distinct !{!4093, !"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$usize$GT$3fmt17he5ed7a2681b30ea1E"}
!4094 = !{!4095}
!4095 = distinct !{!4095, !4096, !"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hf4cc3640200a9c39E: %self"}
!4096 = distinct !{!4096, !"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hf4cc3640200a9c39E"}
!4097 = !{!4098, !4100, !4102, !4103, !4105, !4095}
!4098 = distinct !{!4098, !4099, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4099 = distinct !{!4099, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4100 = distinct !{!4100, !4101, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!4101 = distinct !{!4101, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!4102 = distinct !{!4102, !4101, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!4103 = distinct !{!4103, !4104, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!4104 = distinct !{!4104, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!4105 = distinct !{!4105, !4104, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!4106 = !{!4100, !4103, !4095}
!4107 = !{!4100, !4103}
!4108 = !{!4102, !4105, !4095}
!4109 = !{!4110}
!4110 = distinct !{!4110, !4111, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!4111 = distinct !{!4111, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!4112 = !{!4113}
!4113 = distinct !{!4113, !4114, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!4114 = distinct !{!4114, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!4115 = !{!4116}
!4116 = distinct !{!4116, !4117, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4117 = distinct !{!4117, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4118 = !{!4119}
!4119 = distinct !{!4119, !4120, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4120 = distinct !{!4120, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4121 = !{!4122, !4124, !4126, !4127, !4129, !4095}
!4122 = distinct !{!4122, !4123, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4123 = distinct !{!4123, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4124 = distinct !{!4124, !4125, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!4125 = distinct !{!4125, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!4126 = distinct !{!4126, !4125, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!4127 = distinct !{!4127, !4128, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!4128 = distinct !{!4128, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!4129 = distinct !{!4129, !4128, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!4130 = !{!4122, !4124, !4126, !4127, !4129}
!4131 = !{!4124, !4127}
!4132 = !{i32 0, i32 1114113}
!4133 = !{!4134}
!4134 = distinct !{!4134, !4135, !"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h085a39e8ba8cab83E: %self"}
!4135 = distinct !{!4135, !"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h085a39e8ba8cab83E"}
!4136 = !{!4137, !4139, !4141, !4142, !4144, !4134}
!4137 = distinct !{!4137, !4138, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4138 = distinct !{!4138, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4139 = distinct !{!4139, !4140, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!4140 = distinct !{!4140, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!4141 = distinct !{!4141, !4140, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!4142 = distinct !{!4142, !4143, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!4143 = distinct !{!4143, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!4144 = distinct !{!4144, !4143, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!4145 = !{!4139, !4142, !4134}
!4146 = !{!4139, !4142}
!4147 = !{!4141, !4144, !4134}
!4148 = !{!4149}
!4149 = distinct !{!4149, !4150, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!4150 = distinct !{!4150, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!4151 = !{!4152}
!4152 = distinct !{!4152, !4153, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!4153 = distinct !{!4153, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!4154 = !{!4155}
!4155 = distinct !{!4155, !4156, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4156 = distinct !{!4156, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4157 = !{!4158}
!4158 = distinct !{!4158, !4159, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4159 = distinct !{!4159, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4160 = !{!4161, !4163, !4165, !4166, !4168, !4134}
!4161 = distinct !{!4161, !4162, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4162 = distinct !{!4162, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4163 = distinct !{!4163, !4164, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!4164 = distinct !{!4164, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!4165 = distinct !{!4165, !4164, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!4166 = distinct !{!4166, !4167, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!4167 = distinct !{!4167, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!4168 = distinct !{!4168, !4167, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!4169 = !{!4161, !4163, !4165, !4166, !4168}
!4170 = !{!4163, !4166}
!4171 = !{!4172}
!4172 = distinct !{!4172, !4173, !"_ZN4core3fmt5float50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$f32$GT$3fmt17h1cbb009d29fe630cE: %self"}
!4173 = distinct !{!4173, !"_ZN4core3fmt5float50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$f32$GT$3fmt17h1cbb009d29fe630cE"}
!4174 = !{!4175}
!4175 = distinct !{!4175, !4176, !"_ZN4core3fmt9Formatter9sign_plus17hea67cd042fb3b4d6E: %self"}
!4176 = distinct !{!4176, !"_ZN4core3fmt9Formatter9sign_plus17hea67cd042fb3b4d6E"}
!4177 = !{!4178}
!4178 = distinct !{!4178, !4179, !"_ZN64_$LT$core..option..Item$LT$A$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h46bbcee402de1f7dE: %self"}
!4179 = distinct !{!4179, !"_ZN64_$LT$core..option..Item$LT$A$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h46bbcee402de1f7dE"}
!4180 = !{!4181, !4183, !4185, !4186, !4188, !4178}
!4181 = distinct !{!4181, !4182, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4182 = distinct !{!4182, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4183 = distinct !{!4183, !4184, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!4184 = distinct !{!4184, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!4185 = distinct !{!4185, !4184, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!4186 = distinct !{!4186, !4187, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!4187 = distinct !{!4187, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!4188 = distinct !{!4188, !4187, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!4189 = !{!4183, !4186, !4178}
!4190 = !{!4183, !4186}
!4191 = !{!4185, !4188, !4178}
!4192 = !{!4193}
!4193 = distinct !{!4193, !4194, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!4194 = distinct !{!4194, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!4195 = !{!4196}
!4196 = distinct !{!4196, !4197, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!4197 = distinct !{!4197, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!4198 = !{!4199}
!4199 = distinct !{!4199, !4200, !"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h49144c1eebc06d07E: %self"}
!4200 = distinct !{!4200, !"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h49144c1eebc06d07E"}
!4201 = !{!4202, !4199}
!4202 = distinct !{!4202, !4203, !"_ZN48_$LT$$u5b$T$u5d$$u20$as$u20$core..fmt..Debug$GT$3fmt17h1e286a4a3cc906c2E: %self.0"}
!4203 = distinct !{!4203, !"_ZN48_$LT$$u5b$T$u5d$$u20$as$u20$core..fmt..Debug$GT$3fmt17h1e286a4a3cc906c2E"}
!4204 = !{!4205, !4207, !4209, !4202, !4199}
!4205 = distinct !{!4205, !4206, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4206 = distinct !{!4206, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4207 = distinct !{!4207, !4208, !"_ZN4core3fmt8builders14debug_list_new17he49aae00a72881d0E: argument 0"}
!4208 = distinct !{!4208, !"_ZN4core3fmt8builders14debug_list_new17he49aae00a72881d0E"}
!4209 = distinct !{!4209, !4210, !"_ZN4core3fmt9Formatter10debug_list17h28f90f7304fd6fd5E: argument 0"}
!4210 = distinct !{!4210, !"_ZN4core3fmt9Formatter10debug_list17h28f90f7304fd6fd5E"}
!4211 = !{!4207, !4209, !4202, !4199}
!4212 = !{!4207, !4209}
!4213 = !{!4214, !4199}
!4214 = distinct !{!4214, !4215, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4215 = distinct !{!4215, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4216 = !{!4217}
!4217 = distinct !{!4217, !4218, !"_ZN4core3fmt9Formatter15debug_lower_hex17h9cdd4be3848b7ad4E: %self"}
!4218 = distinct !{!4218, !"_ZN4core3fmt9Formatter15debug_lower_hex17h9cdd4be3848b7ad4E"}
!4219 = !{!4220}
!4220 = distinct !{!4220, !4221, !"_ZN4core3fmt3num49_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u8$GT$3fmt17h3a40db8b381f1ef4E: %self"}
!4221 = distinct !{!4221, !"_ZN4core3fmt3num49_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u8$GT$3fmt17h3a40db8b381f1ef4E"}
!4222 = !{!4223}
!4223 = distinct !{!4223, !4224, !"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u8$GT$3fmt17h60e0f1f08fe98d54E: %self"}
!4224 = distinct !{!4224, !"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u8$GT$3fmt17h60e0f1f08fe98d54E"}
!4225 = !{!4226}
!4226 = distinct !{!4226, !4227, !"_ZN4core3fmt3num3imp51_$LT$impl$u20$core..fmt..Display$u20$for$u20$u8$GT$3fmt17h15a9d9444c491f95E: %self"}
!4227 = distinct !{!4227, !"_ZN4core3fmt3num3imp51_$LT$impl$u20$core..fmt..Display$u20$for$u20$u8$GT$3fmt17h15a9d9444c491f95E"}
!4228 = !{!4229, !4220}
!4229 = distinct !{!4229, !4230, !"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u8$GT$3fmt17he584874f14cc0ebbE: %self"}
!4230 = distinct !{!4230, !"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u8$GT$3fmt17he584874f14cc0ebbE"}
!4231 = !{!4232}
!4232 = distinct !{!4232, !4233, !"_ZN4core3fmt9Formatter15debug_lower_hex17h9cdd4be3848b7ad4E: %self"}
!4233 = distinct !{!4233, !"_ZN4core3fmt9Formatter15debug_lower_hex17h9cdd4be3848b7ad4E"}
!4234 = !{!4235}
!4235 = distinct !{!4235, !4236, !"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u32$GT$3fmt17h13995ade3b0e0b73E: %self"}
!4236 = distinct !{!4236, !"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u32$GT$3fmt17h13995ade3b0e0b73E"}
!4237 = !{!4238, !4235}
!4238 = distinct !{!4238, !4239, !"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u32$GT$3fmt17h4ca75baaf8eb9a05E: %self"}
!4239 = distinct !{!4239, !"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u32$GT$3fmt17h4ca75baaf8eb9a05E"}
!4240 = !{!4241, !4235}
!4241 = distinct !{!4241, !4242, !"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u32$GT$3fmt17h0202965dcf7330deE: %self"}
!4242 = distinct !{!4242, !"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u32$GT$3fmt17h0202965dcf7330deE"}
!4243 = !{!4244}
!4244 = distinct !{!4244, !4245, !"_ZN78_$LT$core..iter..adapters..Filter$LT$I$C$P$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h8989bd2226e41720E: %self"}
!4245 = distinct !{!4245, !"_ZN78_$LT$core..iter..adapters..Filter$LT$I$C$P$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h8989bd2226e41720E"}
!4246 = !{!4247, !4249, !4251, !4252, !4254, !4244}
!4247 = distinct !{!4247, !4248, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4248 = distinct !{!4248, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4249 = distinct !{!4249, !4250, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!4250 = distinct !{!4250, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!4251 = distinct !{!4251, !4250, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!4252 = distinct !{!4252, !4253, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!4253 = distinct !{!4253, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!4254 = distinct !{!4254, !4253, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!4255 = !{!4249, !4252, !4244}
!4256 = !{!4249, !4252}
!4257 = !{!4251, !4254, !4244}
!4258 = !{!4259}
!4259 = distinct !{!4259, !4260, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!4260 = distinct !{!4260, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!4261 = !{!4262}
!4262 = distinct !{!4262, !4263, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!4263 = distinct !{!4263, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!4264 = !{!4265}
!4265 = distinct !{!4265, !4266, !"_ZN75_$LT$core..iter..adapters..Map$LT$I$C$F$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h8bb650306b5e057eE: %self"}
!4266 = distinct !{!4266, !"_ZN75_$LT$core..iter..adapters..Map$LT$I$C$F$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h8bb650306b5e057eE"}
!4267 = !{!4268, !4270, !4272, !4273, !4275, !4265}
!4268 = distinct !{!4268, !4269, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4269 = distinct !{!4269, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4270 = distinct !{!4270, !4271, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!4271 = distinct !{!4271, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!4272 = distinct !{!4272, !4271, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!4273 = distinct !{!4273, !4274, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!4274 = distinct !{!4274, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!4275 = distinct !{!4275, !4274, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!4276 = !{!4270, !4273, !4265}
!4277 = !{!4270, !4273}
!4278 = !{!4272, !4275, !4265}
!4279 = !{!4280}
!4280 = distinct !{!4280, !4281, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!4281 = distinct !{!4281, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!4282 = !{!4283}
!4283 = distinct !{!4283, !4284, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!4284 = distinct !{!4284, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!4285 = !{!4286}
!4286 = distinct !{!4286, !4287, !"_ZN65_$LT$core..hash..sip..SipHasher24$u20$as$u20$core..fmt..Debug$GT$3fmt17h01470f04afaa0bd6E: %self"}
!4287 = distinct !{!4287, !"_ZN65_$LT$core..hash..sip..SipHasher24$u20$as$u20$core..fmt..Debug$GT$3fmt17h01470f04afaa0bd6E"}
!4288 = !{!4289, !4291, !4293, !4294, !4296, !4286}
!4289 = distinct !{!4289, !4290, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4290 = distinct !{!4290, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4291 = distinct !{!4291, !4292, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!4292 = distinct !{!4292, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!4293 = distinct !{!4293, !4292, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!4294 = distinct !{!4294, !4295, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!4295 = distinct !{!4295, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!4296 = distinct !{!4296, !4295, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!4297 = !{!4291, !4294, !4286}
!4298 = !{!4291, !4294}
!4299 = !{!4293, !4296, !4286}
!4300 = !{!4301}
!4301 = distinct !{!4301, !4302, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!4302 = distinct !{!4302, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!4303 = !{!4304}
!4304 = distinct !{!4304, !4305, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!4305 = distinct !{!4305, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!4306 = !{!4307}
!4307 = distinct !{!4307, !4308, !"_ZN4core3fmt9Formatter15debug_lower_hex17h9cdd4be3848b7ad4E: %self"}
!4308 = distinct !{!4308, !"_ZN4core3fmt9Formatter15debug_lower_hex17h9cdd4be3848b7ad4E"}
!4309 = !{!4310}
!4310 = distinct !{!4310, !4311, !"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u64$GT$3fmt17hc57a3fb18a0eda47E: %self"}
!4311 = distinct !{!4311, !"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u64$GT$3fmt17hc57a3fb18a0eda47E"}
!4312 = !{!4313, !4310}
!4313 = distinct !{!4313, !4314, !"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u64$GT$3fmt17hbd45bfb477ec6170E: %self"}
!4314 = distinct !{!4314, !"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u64$GT$3fmt17hbd45bfb477ec6170E"}
!4315 = !{!4316, !4310}
!4316 = distinct !{!4316, !4317, !"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u64$GT$3fmt17h3d4cc53cb3cf6b58E: %self"}
!4317 = distinct !{!4317, !"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u64$GT$3fmt17h3d4cc53cb3cf6b58E"}
!4318 = !{!4319, !4321}
!4319 = distinct !{!4319, !4320, !"_ZN54_$LT$$BP$const$u20$T$u20$as$u20$core..fmt..Pointer$GT$3fmt17hbccdc97a3b8f5a71E: %self"}
!4320 = distinct !{!4320, !"_ZN54_$LT$$BP$const$u20$T$u20$as$u20$core..fmt..Pointer$GT$3fmt17hbccdc97a3b8f5a71E"}
!4321 = distinct !{!4321, !4322, !"_ZN52_$LT$$BP$const$u20$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hf50441e4728102f5E: %self"}
!4322 = distinct !{!4322, !"_ZN52_$LT$$BP$const$u20$T$u20$as$u20$core..fmt..Debug$GT$3fmt17hf50441e4728102f5E"}
!4323 = !{!4324, !4319, !4321}
!4324 = distinct !{!4324, !4325, !"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$usize$GT$3fmt17he5ed7a2681b30ea1E: %self"}
!4325 = distinct !{!4325, !"_ZN4core3fmt3num55_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$usize$GT$3fmt17he5ed7a2681b30ea1E"}
!4326 = !{!4327}
!4327 = distinct !{!4327, !4328, !"_ZN78_$LT$core..iter..adapters..fuse..Fuse$LT$I$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hcdfb4f9381a3c3a2E: %self"}
!4328 = distinct !{!4328, !"_ZN78_$LT$core..iter..adapters..fuse..Fuse$LT$I$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hcdfb4f9381a3c3a2E"}
!4329 = !{!4330, !4332, !4334, !4335, !4337, !4327}
!4330 = distinct !{!4330, !4331, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4331 = distinct !{!4331, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4332 = distinct !{!4332, !4333, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!4333 = distinct !{!4333, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!4334 = distinct !{!4334, !4333, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!4335 = distinct !{!4335, !4336, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!4336 = distinct !{!4336, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!4337 = distinct !{!4337, !4336, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!4338 = !{!4332, !4335, !4327}
!4339 = !{!4332, !4335}
!4340 = !{!4334, !4337, !4327}
!4341 = !{!4342}
!4342 = distinct !{!4342, !4343, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!4343 = distinct !{!4343, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!4344 = !{!4345}
!4345 = distinct !{!4345, !4346, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!4346 = distinct !{!4346, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!4347 = !{!4348}
!4348 = distinct !{!4348, !4349, !"_ZN84_$LT$core..iter..adapters..chain..Chain$LT$A$C$B$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h7dba32918e576ae4E: %self"}
!4349 = distinct !{!4349, !"_ZN84_$LT$core..iter..adapters..chain..Chain$LT$A$C$B$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h7dba32918e576ae4E"}
!4350 = !{!4351, !4353, !4355, !4356, !4358, !4348}
!4351 = distinct !{!4351, !4352, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4352 = distinct !{!4352, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4353 = distinct !{!4353, !4354, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!4354 = distinct !{!4354, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!4355 = distinct !{!4355, !4354, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!4356 = distinct !{!4356, !4357, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!4357 = distinct !{!4357, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!4358 = distinct !{!4358, !4357, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!4359 = !{!4353, !4356, !4348}
!4360 = !{!4353, !4356}
!4361 = !{!4355, !4358, !4348}
!4362 = !{!4363}
!4363 = distinct !{!4363, !4364, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!4364 = distinct !{!4364, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!4365 = !{!4366}
!4366 = distinct !{!4366, !4367, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!4367 = distinct !{!4367, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!4368 = !{!4369}
!4369 = distinct !{!4369, !4370, !"_ZN4core3fmt9Formatter15debug_lower_hex17h9cdd4be3848b7ad4E: %self"}
!4370 = distinct !{!4370, !"_ZN4core3fmt9Formatter15debug_lower_hex17h9cdd4be3848b7ad4E"}
!4371 = !{!4372}
!4372 = distinct !{!4372, !4373, !"_ZN4core3fmt3num49_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i8$GT$3fmt17h2579ec9bdf765595E: %self"}
!4373 = distinct !{!4373, !"_ZN4core3fmt3num49_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i8$GT$3fmt17h2579ec9bdf765595E"}
!4374 = !{!4375}
!4375 = distinct !{!4375, !4376, !"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i8$GT$3fmt17h7943257fc24ac32eE: %self"}
!4376 = distinct !{!4376, !"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i8$GT$3fmt17h7943257fc24ac32eE"}
!4377 = !{!4378, !4372}
!4378 = distinct !{!4378, !4379, !"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i8$GT$3fmt17h405967de1e4d6acaE: %self"}
!4379 = distinct !{!4379, !"_ZN4core3fmt3num52_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i8$GT$3fmt17h405967de1e4d6acaE"}
!4380 = !{!4381}
!4381 = distinct !{!4381, !4382, !"_ZN60_$LT$core..task..wake..Waker$u20$as$u20$core..fmt..Debug$GT$3fmt17ha7ccb9d6177dd3a0E: %self"}
!4382 = distinct !{!4382, !"_ZN60_$LT$core..task..wake..Waker$u20$as$u20$core..fmt..Debug$GT$3fmt17ha7ccb9d6177dd3a0E"}
!4383 = !{!4384, !4386, !4388, !4389, !4391, !4381}
!4384 = distinct !{!4384, !4385, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4385 = distinct !{!4385, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4386 = distinct !{!4386, !4387, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!4387 = distinct !{!4387, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!4388 = distinct !{!4388, !4387, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!4389 = distinct !{!4389, !4390, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!4390 = distinct !{!4390, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!4391 = distinct !{!4391, !4390, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!4392 = !{!4386, !4389, !4381}
!4393 = !{!4386, !4389}
!4394 = !{!4388, !4391, !4381}
!4395 = !{!4396}
!4396 = distinct !{!4396, !4397, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!4397 = distinct !{!4397, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!4398 = !{!4399}
!4399 = distinct !{!4399, !4400, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!4400 = distinct !{!4400, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!4401 = !{!4402}
!4402 = distinct !{!4402, !4403, !"_ZN53_$LT$core..str..Lines$u20$as$u20$core..fmt..Debug$GT$3fmt17h4275b8cc23cfd8d9E: %self"}
!4403 = distinct !{!4403, !"_ZN53_$LT$core..str..Lines$u20$as$u20$core..fmt..Debug$GT$3fmt17h4275b8cc23cfd8d9E"}
!4404 = !{!4405, !4407, !4409, !4410, !4412, !4402}
!4405 = distinct !{!4405, !4406, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4406 = distinct !{!4406, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4407 = distinct !{!4407, !4408, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!4408 = distinct !{!4408, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!4409 = distinct !{!4409, !4408, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!4410 = distinct !{!4410, !4411, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!4411 = distinct !{!4411, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!4412 = distinct !{!4412, !4411, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!4413 = !{!4407, !4410, !4402}
!4414 = !{!4407, !4410}
!4415 = !{!4409, !4412, !4402}
!4416 = !{!4417}
!4417 = distinct !{!4417, !4418, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!4418 = distinct !{!4418, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!4419 = !{!4420}
!4420 = distinct !{!4420, !4421, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!4421 = distinct !{!4421, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!4422 = !{!4423}
!4423 = distinct !{!4423, !4424, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4424 = distinct !{!4424, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4425 = !{!4426}
!4426 = distinct !{!4426, !4427, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4427 = distinct !{!4427, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4428 = !{!4429}
!4429 = distinct !{!4429, !4430, !"_ZN4core3fmt9Formatter15debug_lower_hex17h9cdd4be3848b7ad4E: %self"}
!4430 = distinct !{!4430, !"_ZN4core3fmt9Formatter15debug_lower_hex17h9cdd4be3848b7ad4E"}
!4431 = !{!4432}
!4432 = distinct !{!4432, !4433, !"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u16$GT$3fmt17hb117ac7ccab46262E: %self"}
!4433 = distinct !{!4433, !"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u16$GT$3fmt17hb117ac7ccab46262E"}
!4434 = !{!4435}
!4435 = distinct !{!4435, !4436, !"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u16$GT$3fmt17h8250f7f13a1439d7E: %self"}
!4436 = distinct !{!4436, !"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u16$GT$3fmt17h8250f7f13a1439d7E"}
!4437 = !{!4438}
!4438 = distinct !{!4438, !4439, !"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u16$GT$3fmt17ha65397985f1509e1E: %self"}
!4439 = distinct !{!4439, !"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u16$GT$3fmt17ha65397985f1509e1E"}
!4440 = !{!4441, !4432}
!4441 = distinct !{!4441, !4442, !"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u16$GT$3fmt17h736ee6d5f84359d0E: %self"}
!4442 = distinct !{!4442, !"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u16$GT$3fmt17h736ee6d5f84359d0E"}
!4443 = !{!4444}
!4444 = distinct !{!4444, !4445, !"_ZN69_$LT$core..hash..sip..Hasher$LT$S$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hfc1975d84f4aa659E: %self"}
!4445 = distinct !{!4445, !"_ZN69_$LT$core..hash..sip..Hasher$LT$S$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hfc1975d84f4aa659E"}
!4446 = !{!4447, !4449, !4451, !4452, !4454, !4444}
!4447 = distinct !{!4447, !4448, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4448 = distinct !{!4448, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4449 = distinct !{!4449, !4450, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!4450 = distinct !{!4450, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!4451 = distinct !{!4451, !4450, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!4452 = distinct !{!4452, !4453, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!4453 = distinct !{!4453, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!4454 = distinct !{!4454, !4453, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!4455 = !{!4449, !4452, !4444}
!4456 = !{!4449, !4452}
!4457 = !{!4451, !4454, !4444}
!4458 = !{!4459}
!4459 = distinct !{!4459, !4460, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!4460 = distinct !{!4460, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!4461 = !{!4462}
!4462 = distinct !{!4462, !4463, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!4463 = distinct !{!4463, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!4464 = !{!4465}
!4465 = distinct !{!4465, !4466, !"_ZN48_$LT$$u5b$T$u5d$$u20$as$u20$core..fmt..Debug$GT$3fmt17h8af054120866c73dE: %self.0"}
!4466 = distinct !{!4466, !"_ZN48_$LT$$u5b$T$u5d$$u20$as$u20$core..fmt..Debug$GT$3fmt17h8af054120866c73dE"}
!4467 = !{!4468, !4470, !4472, !4465}
!4468 = distinct !{!4468, !4469, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4469 = distinct !{!4469, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4470 = distinct !{!4470, !4471, !"_ZN4core3fmt8builders14debug_list_new17he49aae00a72881d0E: argument 0"}
!4471 = distinct !{!4471, !"_ZN4core3fmt8builders14debug_list_new17he49aae00a72881d0E"}
!4472 = distinct !{!4472, !4473, !"_ZN4core3fmt9Formatter10debug_list17h28f90f7304fd6fd5E: argument 0"}
!4473 = distinct !{!4473, !"_ZN4core3fmt9Formatter10debug_list17h28f90f7304fd6fd5E"}
!4474 = !{!4470, !4472, !4465}
!4475 = !{!4470, !4472}
!4476 = !{!4477}
!4477 = distinct !{!4477, !4478, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4478 = distinct !{!4478, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4479 = !{!4480}
!4480 = distinct !{!4480, !4481, !"_ZN84_$LT$core..iter..adapters..flatten..Flatten$LT$I$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h9642c6ffca28783eE: %self"}
!4481 = distinct !{!4481, !"_ZN84_$LT$core..iter..adapters..flatten..Flatten$LT$I$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h9642c6ffca28783eE"}
!4482 = !{!4483, !4485, !4487, !4488, !4490, !4480}
!4483 = distinct !{!4483, !4484, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4484 = distinct !{!4484, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4485 = distinct !{!4485, !4486, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!4486 = distinct !{!4486, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!4487 = distinct !{!4487, !4486, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!4488 = distinct !{!4488, !4489, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!4489 = distinct !{!4489, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!4490 = distinct !{!4490, !4489, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!4491 = !{!4485, !4488, !4480}
!4492 = !{!4485, !4488}
!4493 = !{!4487, !4490, !4480}
!4494 = !{!4495}
!4495 = distinct !{!4495, !4496, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!4496 = distinct !{!4496, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!4497 = !{!4498}
!4498 = distinct !{!4498, !4499, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!4499 = distinct !{!4499, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!4500 = !{!4501}
!4501 = distinct !{!4501, !4502, !"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17he9c8f9679c696eeeE: %self"}
!4502 = distinct !{!4502, !"_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17he9c8f9679c696eeeE"}
!4503 = !{!4504, !4506, !4508, !4509, !4511, !4501}
!4504 = distinct !{!4504, !4505, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4505 = distinct !{!4505, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4506 = distinct !{!4506, !4507, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!4507 = distinct !{!4507, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!4508 = distinct !{!4508, !4507, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!4509 = distinct !{!4509, !4510, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!4510 = distinct !{!4510, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!4511 = distinct !{!4511, !4510, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!4512 = !{!4506, !4509, !4501}
!4513 = !{!4506, !4509}
!4514 = !{!4508, !4511, !4501}
!4515 = !{!4516}
!4516 = distinct !{!4516, !4517, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!4517 = distinct !{!4517, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!4518 = !{!4519}
!4519 = distinct !{!4519, !4520, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!4520 = distinct !{!4520, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!4521 = !{!4522}
!4522 = distinct !{!4522, !4523, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4523 = distinct !{!4523, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4524 = !{!4525}
!4525 = distinct !{!4525, !4526, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4526 = distinct !{!4526, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4527 = !{!4528, !4530, !4532, !4533, !4535, !4501}
!4528 = distinct !{!4528, !4529, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4529 = distinct !{!4529, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4530 = distinct !{!4530, !4531, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!4531 = distinct !{!4531, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!4532 = distinct !{!4532, !4531, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!4533 = distinct !{!4533, !4534, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!4534 = distinct !{!4534, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!4535 = distinct !{!4535, !4534, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!4536 = !{!4528, !4530, !4532, !4533, !4535}
!4537 = !{!4530, !4533}
!4538 = !{!4539}
!4539 = distinct !{!4539, !4540, !"_ZN92_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hc72a2f4146b40353E: %self"}
!4540 = distinct !{!4540, !"_ZN92_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hc72a2f4146b40353E"}
!4541 = !{!4542, !4544, !4546, !4547, !4549, !4539}
!4542 = distinct !{!4542, !4543, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4543 = distinct !{!4543, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4544 = distinct !{!4544, !4545, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!4545 = distinct !{!4545, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!4546 = distinct !{!4546, !4545, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!4547 = distinct !{!4547, !4548, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!4548 = distinct !{!4548, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!4549 = distinct !{!4549, !4548, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!4550 = !{!4544, !4547, !4539}
!4551 = !{!4544, !4547}
!4552 = !{!4546, !4549, !4539}
!4553 = !{!4554}
!4554 = distinct !{!4554, !4555, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!4555 = distinct !{!4555, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!4556 = !{!4557}
!4557 = distinct !{!4557, !4558, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!4558 = distinct !{!4558, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!4559 = !{!4560}
!4560 = distinct !{!4560, !4561, !"_ZN60_$LT$core..num..IntErrorKind$u20$as$u20$core..fmt..Debug$GT$3fmt17hcfe7ed7dc176de45E: %self"}
!4561 = distinct !{!4561, !"_ZN60_$LT$core..num..IntErrorKind$u20$as$u20$core..fmt..Debug$GT$3fmt17hcfe7ed7dc176de45E"}
!4562 = !{!4563, !4565, !4567, !4568, !4570, !4560}
!4563 = distinct !{!4563, !4564, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4564 = distinct !{!4564, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4565 = distinct !{!4565, !4566, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!4566 = distinct !{!4566, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!4567 = distinct !{!4567, !4566, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!4568 = distinct !{!4568, !4569, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!4569 = distinct !{!4569, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!4570 = distinct !{!4570, !4569, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!4571 = !{!4565, !4568, !4560}
!4572 = !{!4573, !4575, !4577, !4578, !4580, !4560}
!4573 = distinct !{!4573, !4574, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4574 = distinct !{!4574, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4575 = distinct !{!4575, !4576, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!4576 = distinct !{!4576, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!4577 = distinct !{!4577, !4576, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!4578 = distinct !{!4578, !4579, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!4579 = distinct !{!4579, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!4580 = distinct !{!4580, !4579, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!4581 = !{!4575, !4578, !4560}
!4582 = !{!4583, !4585, !4587, !4588, !4590, !4560}
!4583 = distinct !{!4583, !4584, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4584 = distinct !{!4584, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4585 = distinct !{!4585, !4586, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!4586 = distinct !{!4586, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!4587 = distinct !{!4587, !4586, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!4588 = distinct !{!4588, !4589, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!4589 = distinct !{!4589, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!4590 = distinct !{!4590, !4589, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!4591 = !{!4585, !4588, !4560}
!4592 = !{!4593, !4595, !4597, !4598, !4600, !4560}
!4593 = distinct !{!4593, !4594, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4594 = distinct !{!4594, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4595 = distinct !{!4595, !4596, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!4596 = distinct !{!4596, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!4597 = distinct !{!4597, !4596, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!4598 = distinct !{!4598, !4599, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!4599 = distinct !{!4599, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!4600 = distinct !{!4600, !4599, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!4601 = !{!4595, !4598, !4560}
!4602 = !{!4603, !4605, !4607, !4608, !4610, !4560}
!4603 = distinct !{!4603, !4604, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4604 = distinct !{!4604, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4605 = distinct !{!4605, !4606, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!4606 = distinct !{!4606, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!4607 = distinct !{!4607, !4606, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!4608 = distinct !{!4608, !4609, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!4609 = distinct !{!4609, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!4610 = distinct !{!4610, !4609, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!4611 = !{!4605, !4608, !4560}
!4612 = !{!4613}
!4613 = distinct !{!4613, !4614, !"_ZN63_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h52964ee8d46511eaE: %self"}
!4614 = distinct !{!4614, !"_ZN63_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h52964ee8d46511eaE"}
!4615 = !{!4616, !4618, !4620, !4621, !4623, !4613}
!4616 = distinct !{!4616, !4617, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4617 = distinct !{!4617, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4618 = distinct !{!4618, !4619, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!4619 = distinct !{!4619, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!4620 = distinct !{!4620, !4619, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!4621 = distinct !{!4621, !4622, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!4622 = distinct !{!4622, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!4623 = distinct !{!4623, !4622, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!4624 = !{!4618, !4621, !4613}
!4625 = !{!4618, !4621}
!4626 = !{!4620, !4623, !4613}
!4627 = !{!4628, !4630, !4613}
!4628 = distinct !{!4628, !4629, !"_ZN4core5slice13Iter$LT$T$GT$10make_slice17hec591f6989a98230E: %self"}
!4629 = distinct !{!4629, !"_ZN4core5slice13Iter$LT$T$GT$10make_slice17hec591f6989a98230E"}
!4630 = distinct !{!4630, !4631, !"_ZN4core5slice13Iter$LT$T$GT$8as_slice17h965d1dd7a0168248E: %self"}
!4631 = distinct !{!4631, !"_ZN4core5slice13Iter$LT$T$GT$8as_slice17h965d1dd7a0168248E"}
!4632 = !{!4633}
!4633 = distinct !{!4633, !4634, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!4634 = distinct !{!4634, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!4635 = !{!4636}
!4636 = distinct !{!4636, !4637, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!4637 = distinct !{!4637, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!4638 = !{!4633, !4613}
!4639 = !{!4640, !4613}
!4640 = distinct !{!4640, !4641, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4641 = distinct !{!4641, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4642 = !{!4643, !4613}
!4643 = distinct !{!4643, !4644, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4644 = distinct !{!4644, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4645 = !{!4646}
!4646 = distinct !{!4646, !4647, !"_ZN60_$LT$core..char..EscapeDebug$u20$as$u20$core..fmt..Debug$GT$3fmt17hcb254c5bcef266c4E: %self"}
!4647 = distinct !{!4647, !"_ZN60_$LT$core..char..EscapeDebug$u20$as$u20$core..fmt..Debug$GT$3fmt17hcb254c5bcef266c4E"}
!4648 = !{!4649, !4651, !4653, !4654, !4656, !4646}
!4649 = distinct !{!4649, !4650, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4650 = distinct !{!4650, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4651 = distinct !{!4651, !4652, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!4652 = distinct !{!4652, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!4653 = distinct !{!4653, !4652, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!4654 = distinct !{!4654, !4655, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!4655 = distinct !{!4655, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!4656 = distinct !{!4656, !4655, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!4657 = !{!4651, !4654, !4646}
!4658 = !{!4651, !4654}
!4659 = !{!4653, !4656, !4646}
!4660 = !{!4661}
!4661 = distinct !{!4661, !4662, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!4662 = distinct !{!4662, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!4663 = !{!4664}
!4664 = distinct !{!4664, !4665, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!4665 = distinct !{!4665, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!4666 = !{!4667}
!4667 = distinct !{!4667, !4668, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4668 = distinct !{!4668, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4669 = !{!4670}
!4670 = distinct !{!4670, !4671, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4671 = distinct !{!4671, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4672 = !{!4673}
!4673 = distinct !{!4673, !4674, !"_ZN74_$LT$core..iter..adapters..Copied$LT$I$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hb0f357e69c7e9980E: %self"}
!4674 = distinct !{!4674, !"_ZN74_$LT$core..iter..adapters..Copied$LT$I$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hb0f357e69c7e9980E"}
!4675 = !{!4676, !4678, !4680, !4681, !4683, !4673}
!4676 = distinct !{!4676, !4677, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4677 = distinct !{!4677, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4678 = distinct !{!4678, !4679, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!4679 = distinct !{!4679, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!4680 = distinct !{!4680, !4679, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!4681 = distinct !{!4681, !4682, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!4682 = distinct !{!4682, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!4683 = distinct !{!4683, !4682, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!4684 = !{!4678, !4681, !4673}
!4685 = !{!4678, !4681}
!4686 = !{!4680, !4683, !4673}
!4687 = !{!4688}
!4688 = distinct !{!4688, !4689, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!4689 = distinct !{!4689, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!4690 = !{!4691}
!4691 = distinct !{!4691, !4692, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!4692 = distinct !{!4692, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!4693 = !{!4694}
!4694 = distinct !{!4694, !4695, !"_ZN69_$LT$core..hash..sip..Hasher$LT$S$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h7069d3e4cd14b9feE: %self"}
!4695 = distinct !{!4695, !"_ZN69_$LT$core..hash..sip..Hasher$LT$S$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h7069d3e4cd14b9feE"}
!4696 = !{!4697, !4699, !4701, !4702, !4704, !4694}
!4697 = distinct !{!4697, !4698, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4698 = distinct !{!4698, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4699 = distinct !{!4699, !4700, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!4700 = distinct !{!4700, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!4701 = distinct !{!4701, !4700, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!4702 = distinct !{!4702, !4703, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!4703 = distinct !{!4703, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!4704 = distinct !{!4704, !4703, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!4705 = !{!4699, !4702, !4694}
!4706 = !{!4699, !4702}
!4707 = !{!4701, !4704, !4694}
!4708 = !{!4709}
!4709 = distinct !{!4709, !4710, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!4710 = distinct !{!4710, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!4711 = !{!4712}
!4712 = distinct !{!4712, !4713, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!4713 = distinct !{!4713, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!4714 = !{!4715}
!4715 = distinct !{!4715, !4716, !"_ZN4core3fmt9Formatter15debug_lower_hex17h9cdd4be3848b7ad4E: %self"}
!4716 = distinct !{!4716, !"_ZN4core3fmt9Formatter15debug_lower_hex17h9cdd4be3848b7ad4E"}
!4717 = !{!4718}
!4718 = distinct !{!4718, !4719, !"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i16$GT$3fmt17h7c43688ffe45cdf8E: %self"}
!4719 = distinct !{!4719, !"_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i16$GT$3fmt17h7c43688ffe45cdf8E"}
!4720 = !{!4721}
!4721 = distinct !{!4721, !4722, !"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i16$GT$3fmt17hbe4318a26c58a6ceE: %self"}
!4722 = distinct !{!4722, !"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i16$GT$3fmt17hbe4318a26c58a6ceE"}
!4723 = !{!4724}
!4724 = distinct !{!4724, !4725, !"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$i16$GT$3fmt17hb97f6f3d4d1ad318E: %self"}
!4725 = distinct !{!4725, !"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$i16$GT$3fmt17hb97f6f3d4d1ad318E"}
!4726 = !{!4727, !4718}
!4727 = distinct !{!4727, !4728, !"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i16$GT$3fmt17hbf7433b6c707aeabE: %self"}
!4728 = distinct !{!4728, !"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i16$GT$3fmt17hbf7433b6c707aeabE"}
!4729 = !{!4730, !4732}
!4730 = distinct !{!4730, !4731, !"_ZN59_$LT$core..fmt..Arguments$u20$as$u20$core..fmt..Display$GT$3fmt17h5b241885dd078dc0E: %self"}
!4731 = distinct !{!4731, !"_ZN59_$LT$core..fmt..Arguments$u20$as$u20$core..fmt..Display$GT$3fmt17h5b241885dd078dc0E"}
!4732 = distinct !{!4732, !4733, !"_ZN57_$LT$core..fmt..Arguments$u20$as$u20$core..fmt..Debug$GT$3fmt17h372d321edf14a66aE: %self"}
!4733 = distinct !{!4733, !"_ZN57_$LT$core..fmt..Arguments$u20$as$u20$core..fmt..Debug$GT$3fmt17h372d321edf14a66aE"}
!4734 = !{!4735}
!4735 = distinct !{!4735, !4736, !"_ZN67_$LT$core..char..EscapeUnicodeState$u20$as$u20$core..fmt..Debug$GT$3fmt17haea556edb29d0dc1E: %self"}
!4736 = distinct !{!4736, !"_ZN67_$LT$core..char..EscapeUnicodeState$u20$as$u20$core..fmt..Debug$GT$3fmt17haea556edb29d0dc1E"}
!4737 = !{!4738, !4740, !4742, !4743, !4745, !4735}
!4738 = distinct !{!4738, !4739, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4739 = distinct !{!4739, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4740 = distinct !{!4740, !4741, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!4741 = distinct !{!4741, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!4742 = distinct !{!4742, !4741, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!4743 = distinct !{!4743, !4744, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!4744 = distinct !{!4744, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!4745 = distinct !{!4745, !4744, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!4746 = !{!4740, !4743, !4735}
!4747 = !{!4748, !4750, !4752, !4753, !4755, !4735}
!4748 = distinct !{!4748, !4749, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4749 = distinct !{!4749, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4750 = distinct !{!4750, !4751, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!4751 = distinct !{!4751, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!4752 = distinct !{!4752, !4751, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!4753 = distinct !{!4753, !4754, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!4754 = distinct !{!4754, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!4755 = distinct !{!4755, !4754, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!4756 = !{!4750, !4753, !4735}
!4757 = !{!4758, !4760, !4762, !4763, !4765, !4735}
!4758 = distinct !{!4758, !4759, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4759 = distinct !{!4759, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4760 = distinct !{!4760, !4761, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!4761 = distinct !{!4761, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!4762 = distinct !{!4762, !4761, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!4763 = distinct !{!4763, !4764, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!4764 = distinct !{!4764, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!4765 = distinct !{!4765, !4764, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!4766 = !{!4760, !4763, !4735}
!4767 = !{!4768, !4770, !4772, !4773, !4775, !4735}
!4768 = distinct !{!4768, !4769, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4769 = distinct !{!4769, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4770 = distinct !{!4770, !4771, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!4771 = distinct !{!4771, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!4772 = distinct !{!4772, !4771, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!4773 = distinct !{!4773, !4774, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!4774 = distinct !{!4774, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!4775 = distinct !{!4775, !4774, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!4776 = !{!4770, !4773, !4735}
!4777 = !{!4778, !4780, !4782, !4783, !4785, !4735}
!4778 = distinct !{!4778, !4779, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4779 = distinct !{!4779, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4780 = distinct !{!4780, !4781, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!4781 = distinct !{!4781, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!4782 = distinct !{!4782, !4781, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!4783 = distinct !{!4783, !4784, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!4784 = distinct !{!4784, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!4785 = distinct !{!4785, !4784, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!4786 = !{!4780, !4783, !4735}
!4787 = !{!4788, !4790, !4792, !4793, !4795, !4735}
!4788 = distinct !{!4788, !4789, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4789 = distinct !{!4789, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4790 = distinct !{!4790, !4791, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!4791 = distinct !{!4791, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!4792 = distinct !{!4792, !4791, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!4793 = distinct !{!4793, !4794, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!4794 = distinct !{!4794, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!4795 = distinct !{!4795, !4794, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!4796 = !{!4790, !4793, !4735}
!4797 = !{!4798}
!4798 = distinct !{!4798, !4799, !"_ZN59_$LT$core..fmt..Arguments$u20$as$u20$core..fmt..Display$GT$3fmt17h5b241885dd078dc0E: %self"}
!4799 = distinct !{!4799, !"_ZN59_$LT$core..fmt..Arguments$u20$as$u20$core..fmt..Display$GT$3fmt17h5b241885dd078dc0E"}
!4800 = !{!4801}
!4801 = distinct !{!4801, !4802, !"_ZN44_$LT$$RF$T$u20$as$u20$core..fmt..Display$GT$3fmt17h4c33253c245fb34cE: %self"}
!4802 = distinct !{!4802, !"_ZN44_$LT$$RF$T$u20$as$u20$core..fmt..Display$GT$3fmt17h4c33253c245fb34cE"}
!4803 = !{!4804, !4806, !4808, !4809, !4811}
!4804 = distinct !{!4804, !4805, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4805 = distinct !{!4805, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4806 = distinct !{!4806, !4807, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!4807 = distinct !{!4807, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!4808 = distinct !{!4808, !4807, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!4809 = distinct !{!4809, !4810, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!4810 = distinct !{!4810, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!4811 = distinct !{!4811, !4810, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!4812 = !{!4806, !4809}
!4813 = !{!4808, !4811}
!4814 = !{!4815}
!4815 = distinct !{!4815, !4816, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!4816 = distinct !{!4816, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!4817 = !{!4818}
!4818 = distinct !{!4818, !4819, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!4819 = distinct !{!4819, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!4820 = !{!4821, !4823, !4825, !4826, !4828}
!4821 = distinct !{!4821, !4822, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4822 = distinct !{!4822, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4823 = distinct !{!4823, !4824, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!4824 = distinct !{!4824, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!4825 = distinct !{!4825, !4824, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!4826 = distinct !{!4826, !4827, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!4827 = distinct !{!4827, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!4828 = distinct !{!4828, !4827, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!4829 = !{!4823, !4826}
!4830 = !{!4825, !4828}
!4831 = !{!4832}
!4832 = distinct !{!4832, !4833, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!4833 = distinct !{!4833, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!4834 = !{!4835}
!4835 = distinct !{!4835, !4836, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!4836 = distinct !{!4836, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!4837 = !{!4838, !4840, !4842, !4843, !4845}
!4838 = distinct !{!4838, !4839, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4839 = distinct !{!4839, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4840 = distinct !{!4840, !4841, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!4841 = distinct !{!4841, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!4842 = distinct !{!4842, !4841, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!4843 = distinct !{!4843, !4844, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!4844 = distinct !{!4844, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!4845 = distinct !{!4845, !4844, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!4846 = !{!4840, !4843}
!4847 = !{!4842, !4845}
!4848 = !{!4849}
!4849 = distinct !{!4849, !4850, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!4850 = distinct !{!4850, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!4851 = !{!4852}
!4852 = distinct !{!4852, !4853, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!4853 = distinct !{!4853, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!4854 = !{!4855}
!4855 = distinct !{!4855, !4856, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4856 = distinct !{!4856, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4857 = !{!4858}
!4858 = distinct !{!4858, !4859, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4859 = distinct !{!4859, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4860 = !{!4861, !4863, !4865, !4866, !4868}
!4861 = distinct !{!4861, !4862, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4862 = distinct !{!4862, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4863 = distinct !{!4863, !4864, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!4864 = distinct !{!4864, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!4865 = distinct !{!4865, !4864, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!4866 = distinct !{!4866, !4867, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!4867 = distinct !{!4867, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!4868 = distinct !{!4868, !4867, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!4869 = !{!4863, !4866}
!4870 = !{!4865, !4868}
!4871 = !{!4872}
!4872 = distinct !{!4872, !4873, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!4873 = distinct !{!4873, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!4874 = !{!4875}
!4875 = distinct !{!4875, !4876, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!4876 = distinct !{!4876, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!4877 = !{!4878, !4880, !4882, !4883, !4885}
!4878 = distinct !{!4878, !4879, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4879 = distinct !{!4879, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4880 = distinct !{!4880, !4881, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!4881 = distinct !{!4881, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!4882 = distinct !{!4882, !4881, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!4883 = distinct !{!4883, !4884, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!4884 = distinct !{!4884, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!4885 = distinct !{!4885, !4884, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!4886 = !{!4880, !4883}
!4887 = !{!4888, !4890, !4892, !4893, !4895}
!4888 = distinct !{!4888, !4889, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4889 = distinct !{!4889, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4890 = distinct !{!4890, !4891, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!4891 = distinct !{!4891, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!4892 = distinct !{!4892, !4891, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!4893 = distinct !{!4893, !4894, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!4894 = distinct !{!4894, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!4895 = distinct !{!4895, !4894, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!4896 = !{!4890, !4893}
!4897 = !{!4898, !4900, !4902, !4903, !4905}
!4898 = distinct !{!4898, !4899, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4899 = distinct !{!4899, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4900 = distinct !{!4900, !4901, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!4901 = distinct !{!4901, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!4902 = distinct !{!4902, !4901, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!4903 = distinct !{!4903, !4904, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!4904 = distinct !{!4904, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!4905 = distinct !{!4905, !4904, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!4906 = !{!4900, !4903}
!4907 = !{!4908, !4910, !4912, !4913, !4915}
!4908 = distinct !{!4908, !4909, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4909 = distinct !{!4909, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4910 = distinct !{!4910, !4911, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!4911 = distinct !{!4911, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!4912 = distinct !{!4912, !4911, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!4913 = distinct !{!4913, !4914, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!4914 = distinct !{!4914, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!4915 = distinct !{!4915, !4914, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!4916 = !{!4910, !4913}
!4917 = !{!4912, !4915}
!4918 = !{!4919}
!4919 = distinct !{!4919, !4920, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!4920 = distinct !{!4920, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!4921 = !{!4922}
!4922 = distinct !{!4922, !4923, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!4923 = distinct !{!4923, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!4924 = !{!4925}
!4925 = distinct !{!4925, !4926, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4926 = distinct !{!4926, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4927 = !{!4928}
!4928 = distinct !{!4928, !4929, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4929 = distinct !{!4929, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4930 = !{!4931, !4933, !4935, !4936, !4938}
!4931 = distinct !{!4931, !4932, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4932 = distinct !{!4932, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4933 = distinct !{!4933, !4934, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!4934 = distinct !{!4934, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!4935 = distinct !{!4935, !4934, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!4936 = distinct !{!4936, !4937, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!4937 = distinct !{!4937, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!4938 = distinct !{!4938, !4937, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!4939 = !{!4933, !4936}
!4940 = !{!4935, !4938}
!4941 = !{!4942}
!4942 = distinct !{!4942, !4943, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!4943 = distinct !{!4943, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!4944 = !{!4945}
!4945 = distinct !{!4945, !4946, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!4946 = distinct !{!4946, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!4947 = !{!4948}
!4948 = distinct !{!4948, !4949, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4949 = distinct !{!4949, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4950 = !{!4951}
!4951 = distinct !{!4951, !4952, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4952 = distinct !{!4952, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4953 = !{!4954, !4956, !4958, !4959, !4961}
!4954 = distinct !{!4954, !4955, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4955 = distinct !{!4955, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4956 = distinct !{!4956, !4957, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!4957 = distinct !{!4957, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!4958 = distinct !{!4958, !4957, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!4959 = distinct !{!4959, !4960, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!4960 = distinct !{!4960, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!4961 = distinct !{!4961, !4960, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!4962 = !{!4956, !4959}
!4963 = !{!4958, !4961}
!4964 = !{!4965}
!4965 = distinct !{!4965, !4966, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!4966 = distinct !{!4966, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!4967 = !{!4968}
!4968 = distinct !{!4968, !4969, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!4969 = distinct !{!4969, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!4970 = !{!4971, !4973, !4975, !4976, !4978}
!4971 = distinct !{!4971, !4972, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4972 = distinct !{!4972, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4973 = distinct !{!4973, !4974, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!4974 = distinct !{!4974, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!4975 = distinct !{!4975, !4974, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!4976 = distinct !{!4976, !4977, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!4977 = distinct !{!4977, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!4978 = distinct !{!4978, !4977, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!4979 = !{!4973, !4976}
!4980 = !{!4975, !4978}
!4981 = !{!4982}
!4982 = distinct !{!4982, !4983, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!4983 = distinct !{!4983, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!4984 = !{!4985}
!4985 = distinct !{!4985, !4986, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!4986 = distinct !{!4986, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!4987 = !{!4988}
!4988 = distinct !{!4988, !4989, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4989 = distinct !{!4989, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4990 = !{!4991}
!4991 = distinct !{!4991, !4992, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4992 = distinct !{!4992, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4993 = !{!4994, !4996, !4998, !4999, !5001}
!4994 = distinct !{!4994, !4995, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!4995 = distinct !{!4995, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!4996 = distinct !{!4996, !4997, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!4997 = distinct !{!4997, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!4998 = distinct !{!4998, !4997, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!4999 = distinct !{!4999, !5000, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!5000 = distinct !{!5000, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!5001 = distinct !{!5001, !5000, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!5002 = !{!4996, !4999}
!5003 = !{!4998, !5001}
!5004 = !{!5005}
!5005 = distinct !{!5005, !5006, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!5006 = distinct !{!5006, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!5007 = !{!5008}
!5008 = distinct !{!5008, !5009, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!5009 = distinct !{!5009, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!5010 = !{!5011, !5013, !5015, !5016, !5018}
!5011 = distinct !{!5011, !5012, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5012 = distinct !{!5012, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5013 = distinct !{!5013, !5014, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!5014 = distinct !{!5014, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!5015 = distinct !{!5015, !5014, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!5016 = distinct !{!5016, !5017, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!5017 = distinct !{!5017, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!5018 = distinct !{!5018, !5017, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!5019 = !{!5013, !5016}
!5020 = !{!5015, !5018}
!5021 = !{!5022}
!5022 = distinct !{!5022, !5023, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!5023 = distinct !{!5023, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!5024 = !{!5025}
!5025 = distinct !{!5025, !5026, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!5026 = distinct !{!5026, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!5027 = !{!5028}
!5028 = distinct !{!5028, !5029, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5029 = distinct !{!5029, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5030 = !{!5031}
!5031 = distinct !{!5031, !5032, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5032 = distinct !{!5032, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5033 = !{!5034, !5036, !5038, !5039, !5041}
!5034 = distinct !{!5034, !5035, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5035 = distinct !{!5035, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5036 = distinct !{!5036, !5037, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!5037 = distinct !{!5037, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!5038 = distinct !{!5038, !5037, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!5039 = distinct !{!5039, !5040, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!5040 = distinct !{!5040, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!5041 = distinct !{!5041, !5040, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!5042 = !{!5036, !5039}
!5043 = !{!5038, !5041}
!5044 = !{!5045}
!5045 = distinct !{!5045, !5046, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!5046 = distinct !{!5046, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!5047 = !{!5048}
!5048 = distinct !{!5048, !5049, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!5049 = distinct !{!5049, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!5050 = !{!5051}
!5051 = distinct !{!5051, !5052, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5052 = distinct !{!5052, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5053 = !{!5054}
!5054 = distinct !{!5054, !5055, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5055 = distinct !{!5055, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5056 = !{!5057, !5059, !5061, !5062, !5064}
!5057 = distinct !{!5057, !5058, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5058 = distinct !{!5058, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5059 = distinct !{!5059, !5060, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!5060 = distinct !{!5060, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!5061 = distinct !{!5061, !5060, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!5062 = distinct !{!5062, !5063, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!5063 = distinct !{!5063, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!5064 = distinct !{!5064, !5063, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!5065 = !{!5059, !5062}
!5066 = !{!5061, !5064}
!5067 = !{!5068}
!5068 = distinct !{!5068, !5069, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!5069 = distinct !{!5069, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!5070 = !{!5071}
!5071 = distinct !{!5071, !5072, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!5072 = distinct !{!5072, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!5073 = !{!5074, !5076, !5078, !5079, !5081}
!5074 = distinct !{!5074, !5075, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5075 = distinct !{!5075, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5076 = distinct !{!5076, !5077, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!5077 = distinct !{!5077, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!5078 = distinct !{!5078, !5077, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!5079 = distinct !{!5079, !5080, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!5080 = distinct !{!5080, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!5081 = distinct !{!5081, !5080, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!5082 = !{!5076, !5079}
!5083 = !{!5078, !5081}
!5084 = !{!5085}
!5085 = distinct !{!5085, !5086, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!5086 = distinct !{!5086, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!5087 = !{!5088}
!5088 = distinct !{!5088, !5089, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!5089 = distinct !{!5089, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!5090 = !{!5091, !5093, !5095, !5096, !5098}
!5091 = distinct !{!5091, !5092, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5092 = distinct !{!5092, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5093 = distinct !{!5093, !5094, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!5094 = distinct !{!5094, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!5095 = distinct !{!5095, !5094, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!5096 = distinct !{!5096, !5097, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!5097 = distinct !{!5097, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!5098 = distinct !{!5098, !5097, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!5099 = !{!5093, !5096}
!5100 = !{!5095, !5098}
!5101 = !{!5102}
!5102 = distinct !{!5102, !5103, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!5103 = distinct !{!5103, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!5104 = !{!5105}
!5105 = distinct !{!5105, !5106, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!5106 = distinct !{!5106, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!5107 = !{!5108, !5110, !5112, !5113, !5115}
!5108 = distinct !{!5108, !5109, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5109 = distinct !{!5109, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5110 = distinct !{!5110, !5111, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!5111 = distinct !{!5111, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!5112 = distinct !{!5112, !5111, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!5113 = distinct !{!5113, !5114, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!5114 = distinct !{!5114, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!5115 = distinct !{!5115, !5114, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!5116 = !{!5110, !5113}
!5117 = !{!5112, !5115}
!5118 = !{!5119}
!5119 = distinct !{!5119, !5120, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!5120 = distinct !{!5120, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!5121 = !{!5122}
!5122 = distinct !{!5122, !5123, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!5123 = distinct !{!5123, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!5124 = !{!5125, !5127, !5129, !5130, !5132}
!5125 = distinct !{!5125, !5126, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5126 = distinct !{!5126, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5127 = distinct !{!5127, !5128, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!5128 = distinct !{!5128, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!5129 = distinct !{!5129, !5128, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!5130 = distinct !{!5130, !5131, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!5131 = distinct !{!5131, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!5132 = distinct !{!5132, !5131, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!5133 = !{!5127, !5130}
!5134 = !{!5129, !5132}
!5135 = !{!5136}
!5136 = distinct !{!5136, !5137, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!5137 = distinct !{!5137, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!5138 = !{!5139}
!5139 = distinct !{!5139, !5140, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!5140 = distinct !{!5140, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!5141 = !{!5142, !5144, !5146, !5147, !5149}
!5142 = distinct !{!5142, !5143, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5143 = distinct !{!5143, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5144 = distinct !{!5144, !5145, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!5145 = distinct !{!5145, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!5146 = distinct !{!5146, !5145, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!5147 = distinct !{!5147, !5148, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!5148 = distinct !{!5148, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!5149 = distinct !{!5149, !5148, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!5150 = !{!5144, !5147}
!5151 = !{!5146, !5149}
!5152 = !{!5153}
!5153 = distinct !{!5153, !5154, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!5154 = distinct !{!5154, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!5155 = !{!5156}
!5156 = distinct !{!5156, !5157, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!5157 = distinct !{!5157, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!5158 = !{!5159, !5161, !5163, !5164, !5166}
!5159 = distinct !{!5159, !5160, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5160 = distinct !{!5160, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5161 = distinct !{!5161, !5162, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!5162 = distinct !{!5162, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!5163 = distinct !{!5163, !5162, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!5164 = distinct !{!5164, !5165, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!5165 = distinct !{!5165, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!5166 = distinct !{!5166, !5165, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!5167 = !{!5161, !5164}
!5168 = !{!5163, !5166}
!5169 = !{!5170}
!5170 = distinct !{!5170, !5171, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!5171 = distinct !{!5171, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!5172 = !{!5173}
!5173 = distinct !{!5173, !5174, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!5174 = distinct !{!5174, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!5175 = !{!5176}
!5176 = distinct !{!5176, !5177, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5177 = distinct !{!5177, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5178 = !{!5179}
!5179 = distinct !{!5179, !5180, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5180 = distinct !{!5180, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5181 = !{!5182, !5184, !5186, !5187, !5189}
!5182 = distinct !{!5182, !5183, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5183 = distinct !{!5183, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5184 = distinct !{!5184, !5185, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!5185 = distinct !{!5185, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!5186 = distinct !{!5186, !5185, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!5187 = distinct !{!5187, !5188, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!5188 = distinct !{!5188, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!5189 = distinct !{!5189, !5188, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!5190 = !{!5184, !5187}
!5191 = !{!5186, !5189}
!5192 = !{!5193}
!5193 = distinct !{!5193, !5194, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!5194 = distinct !{!5194, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!5195 = !{!5196}
!5196 = distinct !{!5196, !5197, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!5197 = distinct !{!5197, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!5198 = !{!5199}
!5199 = distinct !{!5199, !5200, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5200 = distinct !{!5200, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5201 = !{!5202}
!5202 = distinct !{!5202, !5203, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5203 = distinct !{!5203, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5204 = !{!5205, !5207, !5209, !5210, !5212}
!5205 = distinct !{!5205, !5206, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5206 = distinct !{!5206, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5207 = distinct !{!5207, !5208, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!5208 = distinct !{!5208, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!5209 = distinct !{!5209, !5208, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!5210 = distinct !{!5210, !5211, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!5211 = distinct !{!5211, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!5212 = distinct !{!5212, !5211, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!5213 = !{!5207, !5210}
!5214 = !{!5209, !5212}
!5215 = !{!5216}
!5216 = distinct !{!5216, !5217, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!5217 = distinct !{!5217, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!5218 = !{!5219}
!5219 = distinct !{!5219, !5220, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!5220 = distinct !{!5220, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!5221 = !{!5222}
!5222 = distinct !{!5222, !5223, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5223 = distinct !{!5223, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5224 = !{!5225}
!5225 = distinct !{!5225, !5226, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5226 = distinct !{!5226, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5227 = !{!5228, !5230, !5232, !5233, !5235}
!5228 = distinct !{!5228, !5229, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5229 = distinct !{!5229, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5230 = distinct !{!5230, !5231, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!5231 = distinct !{!5231, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!5232 = distinct !{!5232, !5231, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!5233 = distinct !{!5233, !5234, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!5234 = distinct !{!5234, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!5235 = distinct !{!5235, !5234, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!5236 = !{!5230, !5233}
!5237 = !{!5232, !5235}
!5238 = !{!5239}
!5239 = distinct !{!5239, !5240, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!5240 = distinct !{!5240, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!5241 = !{!5242}
!5242 = distinct !{!5242, !5243, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!5243 = distinct !{!5243, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!5244 = !{!5245}
!5245 = distinct !{!5245, !5246, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5246 = distinct !{!5246, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5247 = !{!5248}
!5248 = distinct !{!5248, !5249, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5249 = distinct !{!5249, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5250 = !{!5251, !5253, !5255, !5256, !5258}
!5251 = distinct !{!5251, !5252, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5252 = distinct !{!5252, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5253 = distinct !{!5253, !5254, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!5254 = distinct !{!5254, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!5255 = distinct !{!5255, !5254, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!5256 = distinct !{!5256, !5257, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!5257 = distinct !{!5257, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!5258 = distinct !{!5258, !5257, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!5259 = !{!5253, !5256}
!5260 = !{!5255, !5258}
!5261 = !{!5262}
!5262 = distinct !{!5262, !5263, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!5263 = distinct !{!5263, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!5264 = !{!5265}
!5265 = distinct !{!5265, !5266, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!5266 = distinct !{!5266, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!5267 = !{!5268}
!5268 = distinct !{!5268, !5269, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5269 = distinct !{!5269, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5270 = !{!5271}
!5271 = distinct !{!5271, !5272, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5272 = distinct !{!5272, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5273 = !{!5274, !5276, !5278, !5279, !5281}
!5274 = distinct !{!5274, !5275, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5275 = distinct !{!5275, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5276 = distinct !{!5276, !5277, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!5277 = distinct !{!5277, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!5278 = distinct !{!5278, !5277, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!5279 = distinct !{!5279, !5280, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!5280 = distinct !{!5280, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!5281 = distinct !{!5281, !5280, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!5282 = !{!5276, !5279}
!5283 = !{!5278, !5281}
!5284 = !{!5285}
!5285 = distinct !{!5285, !5286, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!5286 = distinct !{!5286, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!5287 = !{!5288}
!5288 = distinct !{!5288, !5289, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!5289 = distinct !{!5289, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!5290 = !{!5291, !5293, !5295, !5296, !5298}
!5291 = distinct !{!5291, !5292, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5292 = distinct !{!5292, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5293 = distinct !{!5293, !5294, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!5294 = distinct !{!5294, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!5295 = distinct !{!5295, !5294, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!5296 = distinct !{!5296, !5297, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!5297 = distinct !{!5297, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!5298 = distinct !{!5298, !5297, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!5299 = !{!5293, !5296}
!5300 = !{!5295, !5298}
!5301 = !{!5302}
!5302 = distinct !{!5302, !5303, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!5303 = distinct !{!5303, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!5304 = !{!5305}
!5305 = distinct !{!5305, !5306, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!5306 = distinct !{!5306, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!5307 = !{!5308, !5310, !5312, !5313, !5315}
!5308 = distinct !{!5308, !5309, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5309 = distinct !{!5309, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5310 = distinct !{!5310, !5311, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!5311 = distinct !{!5311, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!5312 = distinct !{!5312, !5311, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!5313 = distinct !{!5313, !5314, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!5314 = distinct !{!5314, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!5315 = distinct !{!5315, !5314, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!5316 = !{!5310, !5313}
!5317 = !{!5312, !5315}
!5318 = !{!5319}
!5319 = distinct !{!5319, !5320, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!5320 = distinct !{!5320, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!5321 = !{!5322}
!5322 = distinct !{!5322, !5323, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!5323 = distinct !{!5323, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!5324 = !{!5325, !5327, !5329, !5330, !5332}
!5325 = distinct !{!5325, !5326, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5326 = distinct !{!5326, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5327 = distinct !{!5327, !5328, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!5328 = distinct !{!5328, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!5329 = distinct !{!5329, !5328, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!5330 = distinct !{!5330, !5331, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!5331 = distinct !{!5331, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!5332 = distinct !{!5332, !5331, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!5333 = !{!5327, !5330}
!5334 = !{!5329, !5332}
!5335 = !{!5336}
!5336 = distinct !{!5336, !5337, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!5337 = distinct !{!5337, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!5338 = !{!5339}
!5339 = distinct !{!5339, !5340, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!5340 = distinct !{!5340, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!5341 = !{!5342, !5344, !5346, !5347, !5349}
!5342 = distinct !{!5342, !5343, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5343 = distinct !{!5343, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5344 = distinct !{!5344, !5345, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!5345 = distinct !{!5345, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!5346 = distinct !{!5346, !5345, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!5347 = distinct !{!5347, !5348, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!5348 = distinct !{!5348, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!5349 = distinct !{!5349, !5348, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!5350 = !{!5344, !5347}
!5351 = !{!5346, !5349}
!5352 = !{!5353}
!5353 = distinct !{!5353, !5354, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!5354 = distinct !{!5354, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!5355 = !{!5356}
!5356 = distinct !{!5356, !5357, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!5357 = distinct !{!5357, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!5358 = !{!5359, !5361, !5363}
!5359 = distinct !{!5359, !5360, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17ha1e0a4b9f33eaf30E: %self"}
!5360 = distinct !{!5360, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17ha1e0a4b9f33eaf30E"}
!5361 = distinct !{!5361, !5362, !"_ZN86_$LT$core..iter..adapters..chain..Chain$LT$A$C$B$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h6f13754655ee18ecE: %self"}
!5362 = distinct !{!5362, !"_ZN86_$LT$core..iter..adapters..chain..Chain$LT$A$C$B$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h6f13754655ee18ecE"}
!5363 = distinct !{!5363, !5364, !"_ZN61_$LT$core..str..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h782fe422a3c02e85E: %self"}
!5364 = distinct !{!5364, !"_ZN61_$LT$core..str..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h782fe422a3c02e85E"}
!5365 = !{!5366, !5367, !5368}
!5366 = distinct !{!5366, !5360, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17ha1e0a4b9f33eaf30E: argument 0"}
!5367 = distinct !{!5367, !5362, !"_ZN86_$LT$core..iter..adapters..chain..Chain$LT$A$C$B$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h6f13754655ee18ecE: argument 0"}
!5368 = distinct !{!5368, !5364, !"_ZN61_$LT$core..str..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h782fe422a3c02e85E: argument 0"}
!5369 = !{!5370, !5372, !5374, !5376, !5359, !5361, !5363}
!5370 = distinct !{!5370, !5371, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17hba54aea2acf49166E: %self"}
!5371 = distinct !{!5371, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17hba54aea2acf49166E"}
!5372 = distinct !{!5372, !5373, !"_ZN80_$LT$core..iter..adapters..fuse..Fuse$LT$I$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h13362029e6d24a93E: %self"}
!5373 = distinct !{!5373, !"_ZN80_$LT$core..iter..adapters..fuse..Fuse$LT$I$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h13362029e6d24a93E"}
!5374 = distinct !{!5374, !5375, !"_ZN96_$LT$core..iter..adapters..flatten..FlattenCompat$LT$I$C$U$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h347404ff38daf538E: %self"}
!5375 = distinct !{!5375, !"_ZN96_$LT$core..iter..adapters..flatten..FlattenCompat$LT$I$C$U$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h347404ff38daf538E"}
!5376 = distinct !{!5376, !5377, !"_ZN86_$LT$core..iter..adapters..flatten..Flatten$LT$I$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h10affd5be41f2176E: %self"}
!5377 = distinct !{!5377, !"_ZN86_$LT$core..iter..adapters..flatten..Flatten$LT$I$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h10affd5be41f2176E"}
!5378 = !{!5379, !5380, !5381, !5382, !5366, !5367, !5368}
!5379 = distinct !{!5379, !5371, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17hba54aea2acf49166E: argument 0"}
!5380 = distinct !{!5380, !5373, !"_ZN80_$LT$core..iter..adapters..fuse..Fuse$LT$I$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h13362029e6d24a93E: argument 0"}
!5381 = distinct !{!5381, !5375, !"_ZN96_$LT$core..iter..adapters..flatten..FlattenCompat$LT$I$C$U$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h347404ff38daf538E: argument 0"}
!5382 = distinct !{!5382, !5377, !"_ZN86_$LT$core..iter..adapters..flatten..Flatten$LT$I$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h10affd5be41f2176E: argument 0"}
!5383 = !{!5384, !5386, !5388, !5390, !5392, !5394, !5396, !5370, !5372, !5374, !5376, !5359, !5361, !5363}
!5384 = distinct !{!5384, !5385, !"_ZN64_$LT$core..char..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h4ba96d3e2e3228bdE: %self"}
!5385 = distinct !{!5385, !"_ZN64_$LT$core..char..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h4ba96d3e2e3228bdE"}
!5386 = distinct !{!5386, !5387, !"_ZN69_$LT$core..char..EscapeDefaultState$u20$as$u20$core..clone..Clone$GT$5clone17h51a3912726efa2efE: %self"}
!5387 = distinct !{!5387, !"_ZN69_$LT$core..char..EscapeDefaultState$u20$as$u20$core..clone..Clone$GT$5clone17h51a3912726efa2efE"}
!5388 = distinct !{!5388, !5389, !"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE: %self"}
!5389 = distinct !{!5389, !"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE"}
!5390 = distinct !{!5390, !5391, !"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E: %self"}
!5391 = distinct !{!5391, !"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E"}
!5392 = distinct !{!5392, !5393, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h09ee4d648f19fea1E: %self"}
!5393 = distinct !{!5393, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h09ee4d648f19fea1E"}
!5394 = distinct !{!5394, !5395, !"_ZN66_$LT$core..option..Item$LT$A$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h86ee847a0e8bac85E: %self"}
!5395 = distinct !{!5395, !"_ZN66_$LT$core..option..Item$LT$A$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h86ee847a0e8bac85E"}
!5396 = distinct !{!5396, !5397, !"_ZN70_$LT$core..option..IntoIter$LT$A$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h5866fad9eefae58dE: %self"}
!5397 = distinct !{!5397, !"_ZN70_$LT$core..option..IntoIter$LT$A$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h5866fad9eefae58dE"}
!5398 = !{!5399, !5400, !5401, !5402, !5403, !5404, !5405, !5379, !5380, !5381, !5382, !5366, !5367, !5368}
!5399 = distinct !{!5399, !5385, !"_ZN64_$LT$core..char..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h4ba96d3e2e3228bdE: argument 0"}
!5400 = distinct !{!5400, !5387, !"_ZN69_$LT$core..char..EscapeDefaultState$u20$as$u20$core..clone..Clone$GT$5clone17h51a3912726efa2efE: argument 0"}
!5401 = distinct !{!5401, !5389, !"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE: argument 0"}
!5402 = distinct !{!5402, !5391, !"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E: argument 0"}
!5403 = distinct !{!5403, !5393, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h09ee4d648f19fea1E: argument 0"}
!5404 = distinct !{!5404, !5395, !"_ZN66_$LT$core..option..Item$LT$A$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h86ee847a0e8bac85E: argument 0"}
!5405 = distinct !{!5405, !5397, !"_ZN70_$LT$core..option..IntoIter$LT$A$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h5866fad9eefae58dE: argument 0"}
!5406 = !{!5386, !5388, !5390, !5392, !5394, !5396, !5370, !5372, !5374, !5376, !5359, !5361, !5363}
!5407 = !{!5400, !5401, !5402, !5403, !5404, !5405, !5379, !5380, !5381, !5382, !5366, !5367, !5368}
!5408 = !{!5409, !5411, !5413, !5415, !5417, !5374, !5376, !5359, !5361, !5363}
!5409 = distinct !{!5409, !5410, !"_ZN64_$LT$core..char..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h4ba96d3e2e3228bdE: %self"}
!5410 = distinct !{!5410, !"_ZN64_$LT$core..char..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h4ba96d3e2e3228bdE"}
!5411 = distinct !{!5411, !5412, !"_ZN69_$LT$core..char..EscapeDefaultState$u20$as$u20$core..clone..Clone$GT$5clone17h51a3912726efa2efE: %self"}
!5412 = distinct !{!5412, !"_ZN69_$LT$core..char..EscapeDefaultState$u20$as$u20$core..clone..Clone$GT$5clone17h51a3912726efa2efE"}
!5413 = distinct !{!5413, !5414, !"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE: %self"}
!5414 = distinct !{!5414, !"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE"}
!5415 = distinct !{!5415, !5416, !"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E: %self"}
!5416 = distinct !{!5416, !"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E"}
!5417 = distinct !{!5417, !5418, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h09ee4d648f19fea1E: %self"}
!5418 = distinct !{!5418, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h09ee4d648f19fea1E"}
!5419 = !{!5420, !5421, !5422, !5423, !5424, !5381, !5382, !5366, !5367, !5368}
!5420 = distinct !{!5420, !5410, !"_ZN64_$LT$core..char..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h4ba96d3e2e3228bdE: argument 0"}
!5421 = distinct !{!5421, !5412, !"_ZN69_$LT$core..char..EscapeDefaultState$u20$as$u20$core..clone..Clone$GT$5clone17h51a3912726efa2efE: argument 0"}
!5422 = distinct !{!5422, !5414, !"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE: argument 0"}
!5423 = distinct !{!5423, !5416, !"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E: argument 0"}
!5424 = distinct !{!5424, !5418, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h09ee4d648f19fea1E: argument 0"}
!5425 = !{!5411, !5413, !5415, !5417, !5374, !5376, !5359, !5361, !5363}
!5426 = !{!5421, !5422, !5423, !5424, !5381, !5382, !5366, !5367, !5368}
!5427 = !{!5428, !5374, !5376, !5359, !5361, !5363}
!5428 = distinct !{!5428, !5429, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h09ee4d648f19fea1E: %self"}
!5429 = distinct !{!5429, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h09ee4d648f19fea1E"}
!5430 = !{!5431, !5381, !5382, !5366, !5367, !5368}
!5431 = distinct !{!5431, !5429, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h09ee4d648f19fea1E: argument 0"}
!5432 = !{!5433, !5435, !5437, !5439, !5428, !5374, !5376, !5359, !5361, !5363}
!5433 = distinct !{!5433, !5434, !"_ZN64_$LT$core..char..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h4ba96d3e2e3228bdE: %self"}
!5434 = distinct !{!5434, !"_ZN64_$LT$core..char..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h4ba96d3e2e3228bdE"}
!5435 = distinct !{!5435, !5436, !"_ZN69_$LT$core..char..EscapeDefaultState$u20$as$u20$core..clone..Clone$GT$5clone17h51a3912726efa2efE: %self"}
!5436 = distinct !{!5436, !"_ZN69_$LT$core..char..EscapeDefaultState$u20$as$u20$core..clone..Clone$GT$5clone17h51a3912726efa2efE"}
!5437 = distinct !{!5437, !5438, !"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE: %self"}
!5438 = distinct !{!5438, !"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE"}
!5439 = distinct !{!5439, !5440, !"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E: %self"}
!5440 = distinct !{!5440, !"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E"}
!5441 = !{!5442, !5443, !5444, !5445, !5431, !5381, !5382, !5366, !5367, !5368}
!5442 = distinct !{!5442, !5434, !"_ZN64_$LT$core..char..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h4ba96d3e2e3228bdE: argument 0"}
!5443 = distinct !{!5443, !5436, !"_ZN69_$LT$core..char..EscapeDefaultState$u20$as$u20$core..clone..Clone$GT$5clone17h51a3912726efa2efE: argument 0"}
!5444 = distinct !{!5444, !5438, !"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE: argument 0"}
!5445 = distinct !{!5445, !5440, !"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E: argument 0"}
!5446 = !{!5435, !5437, !5439, !5428, !5374, !5376, !5359, !5361, !5363}
!5447 = !{!5443, !5444, !5445, !5431, !5381, !5382, !5366, !5367, !5368}
!5448 = !{!5449, !5361, !5363}
!5449 = distinct !{!5449, !5450, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h7df5e79df245ecd5E: %self"}
!5450 = distinct !{!5450, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h7df5e79df245ecd5E"}
!5451 = !{!5452, !5367, !5368}
!5452 = distinct !{!5452, !5450, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h7df5e79df245ecd5E: argument 0"}
!5453 = !{!5454, !5456, !5458, !5449, !5361, !5363}
!5454 = distinct !{!5454, !5455, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17hb08bb4ff6e35c9f3E: %self"}
!5455 = distinct !{!5455, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17hb08bb4ff6e35c9f3E"}
!5456 = distinct !{!5456, !5457, !"_ZN96_$LT$core..iter..adapters..flatten..FlattenCompat$LT$I$C$U$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h2ada8377e052a3acE: %self"}
!5457 = distinct !{!5457, !"_ZN96_$LT$core..iter..adapters..flatten..FlattenCompat$LT$I$C$U$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h2ada8377e052a3acE"}
!5458 = distinct !{!5458, !5459, !"_ZN94_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h2f48ebba1f12964fE: %self"}
!5459 = distinct !{!5459, !"_ZN94_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h2f48ebba1f12964fE"}
!5460 = !{!5461, !5462, !5452, !5367, !5368}
!5461 = distinct !{!5461, !5457, !"_ZN96_$LT$core..iter..adapters..flatten..FlattenCompat$LT$I$C$U$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h2ada8377e052a3acE: argument 0"}
!5462 = distinct !{!5462, !5459, !"_ZN94_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h2f48ebba1f12964fE: argument 0"}
!5463 = !{!5464, !5466, !5468, !5470, !5472, !5456, !5458, !5449, !5361, !5363}
!5464 = distinct !{!5464, !5465, !"_ZN64_$LT$core..char..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h4ba96d3e2e3228bdE: %self"}
!5465 = distinct !{!5465, !"_ZN64_$LT$core..char..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h4ba96d3e2e3228bdE"}
!5466 = distinct !{!5466, !5467, !"_ZN69_$LT$core..char..EscapeDefaultState$u20$as$u20$core..clone..Clone$GT$5clone17h51a3912726efa2efE: %self"}
!5467 = distinct !{!5467, !"_ZN69_$LT$core..char..EscapeDefaultState$u20$as$u20$core..clone..Clone$GT$5clone17h51a3912726efa2efE"}
!5468 = distinct !{!5468, !5469, !"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE: %self"}
!5469 = distinct !{!5469, !"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE"}
!5470 = distinct !{!5470, !5471, !"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E: %self"}
!5471 = distinct !{!5471, !"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E"}
!5472 = distinct !{!5472, !5473, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h09ee4d648f19fea1E: %self"}
!5473 = distinct !{!5473, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h09ee4d648f19fea1E"}
!5474 = !{!5475, !5476, !5477, !5478, !5479, !5461, !5462, !5452, !5367, !5368}
!5475 = distinct !{!5475, !5465, !"_ZN64_$LT$core..char..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h4ba96d3e2e3228bdE: argument 0"}
!5476 = distinct !{!5476, !5467, !"_ZN69_$LT$core..char..EscapeDefaultState$u20$as$u20$core..clone..Clone$GT$5clone17h51a3912726efa2efE: argument 0"}
!5477 = distinct !{!5477, !5469, !"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE: argument 0"}
!5478 = distinct !{!5478, !5471, !"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E: argument 0"}
!5479 = distinct !{!5479, !5473, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h09ee4d648f19fea1E: argument 0"}
!5480 = !{!5466, !5468, !5470, !5472, !5456, !5458, !5449, !5361, !5363}
!5481 = !{!5476, !5477, !5478, !5479, !5461, !5462, !5452, !5367, !5368}
!5482 = !{!5483, !5456, !5458, !5449, !5361, !5363}
!5483 = distinct !{!5483, !5484, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h09ee4d648f19fea1E: %self"}
!5484 = distinct !{!5484, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h09ee4d648f19fea1E"}
!5485 = !{!5486, !5461, !5462, !5452, !5367, !5368}
!5486 = distinct !{!5486, !5484, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h09ee4d648f19fea1E: argument 0"}
!5487 = !{!5488, !5490, !5492, !5494, !5483, !5456, !5458, !5449, !5361, !5363}
!5488 = distinct !{!5488, !5489, !"_ZN64_$LT$core..char..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h4ba96d3e2e3228bdE: %self"}
!5489 = distinct !{!5489, !"_ZN64_$LT$core..char..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h4ba96d3e2e3228bdE"}
!5490 = distinct !{!5490, !5491, !"_ZN69_$LT$core..char..EscapeDefaultState$u20$as$u20$core..clone..Clone$GT$5clone17h51a3912726efa2efE: %self"}
!5491 = distinct !{!5491, !"_ZN69_$LT$core..char..EscapeDefaultState$u20$as$u20$core..clone..Clone$GT$5clone17h51a3912726efa2efE"}
!5492 = distinct !{!5492, !5493, !"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE: %self"}
!5493 = distinct !{!5493, !"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE"}
!5494 = distinct !{!5494, !5495, !"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E: %self"}
!5495 = distinct !{!5495, !"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E"}
!5496 = !{!5497, !5498, !5499, !5500, !5486, !5461, !5462, !5452, !5367, !5368}
!5497 = distinct !{!5497, !5489, !"_ZN64_$LT$core..char..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h4ba96d3e2e3228bdE: argument 0"}
!5498 = distinct !{!5498, !5491, !"_ZN69_$LT$core..char..EscapeDefaultState$u20$as$u20$core..clone..Clone$GT$5clone17h51a3912726efa2efE: argument 0"}
!5499 = distinct !{!5499, !5493, !"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE: argument 0"}
!5500 = distinct !{!5500, !5495, !"_ZN62_$LT$core..char..EscapeDebug$u20$as$u20$core..clone..Clone$GT$5clone17h3989d2b0995dcbe1E: argument 0"}
!5501 = !{!5490, !5492, !5494, !5483, !5456, !5458, !5449, !5361, !5363}
!5502 = !{!5498, !5499, !5500, !5486, !5461, !5462, !5452, !5367, !5368}
!5503 = !{!5504}
!5504 = distinct !{!5504, !5505, !"_ZN116_$LT$core..iter..adapters..flatten..FlattenCompat$LT$I$C$U$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$8try_fold7flatten28_$u7b$$u7b$closure$u7d$$u7d$17hf59fb86c7e7b1c08E: %x"}
!5505 = distinct !{!5505, !"_ZN116_$LT$core..iter..adapters..flatten..FlattenCompat$LT$I$C$U$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$8try_fold7flatten28_$u7b$$u7b$closure$u7d$$u7d$17hf59fb86c7e7b1c08E"}
!5506 = !{!5507}
!5507 = distinct !{!5507, !5508, !"_ZN4core4iter6traits8iterator8Iterator8try_fold17hf746e806257af6efE: %f"}
!5508 = distinct !{!5508, !"_ZN4core4iter6traits8iterator8Iterator8try_fold17hf746e806257af6efE"}
!5509 = !{!5510}
!5510 = distinct !{!5510, !5511, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!5511 = distinct !{!5511, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!5512 = !{!5513}
!5513 = distinct !{!5513, !5514, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!5514 = distinct !{!5514, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!5515 = !{!5516}
!5516 = distinct !{!5516, !5517, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!5517 = distinct !{!5517, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!5518 = !{!5519, !5521, !5507}
!5519 = distinct !{!5519, !5520, !"_ZN101_$LT$core..str..CharEscapeDebugContinue$u20$as$u20$core..ops..function..Fn$LT$$LP$char$C$$RP$$GT$$GT$4call17hc8f3cea433f8a4f8E: argument 0"}
!5520 = distinct !{!5520, !"_ZN101_$LT$core..str..CharEscapeDebugContinue$u20$as$u20$core..ops..function..Fn$LT$$LP$char$C$$RP$$GT$$GT$4call17hc8f3cea433f8a4f8E"}
!5521 = distinct !{!5521, !5522, !"_ZN104_$LT$core..str..CharEscapeDebugContinue$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf4a8f76e59b6da59E: argument 0"}
!5522 = distinct !{!5522, !"_ZN104_$LT$core..str..CharEscapeDebugContinue$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf4a8f76e59b6da59E"}
!5523 = !{!5524, !5507}
!5524 = distinct !{!5524, !5525, !"_ZN116_$LT$core..iter..adapters..flatten..FlattenCompat$LT$I$C$U$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$8try_fold7flatten28_$u7b$$u7b$closure$u7d$$u7d$17h93f269a0389ab095E: %x"}
!5525 = distinct !{!5525, !"_ZN116_$LT$core..iter..adapters..flatten..FlattenCompat$LT$I$C$U$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$8try_fold7flatten28_$u7b$$u7b$closure$u7d$$u7d$17h93f269a0389ab095E"}
!5526 = !{!5527, !5529, !5531, !5533}
!5527 = distinct !{!5527, !5528, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17hcc1399f43e8f63d3E: %self"}
!5528 = distinct !{!5528, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17hcc1399f43e8f63d3E"}
!5529 = distinct !{!5529, !5530, !"_ZN96_$LT$core..iter..adapters..flatten..FlattenCompat$LT$I$C$U$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h1451336c972aa9feE: %self"}
!5530 = distinct !{!5530, !"_ZN96_$LT$core..iter..adapters..flatten..FlattenCompat$LT$I$C$U$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h1451336c972aa9feE"}
!5531 = distinct !{!5531, !5532, !"_ZN94_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h63d6e8219db4e5cfE: %self"}
!5532 = distinct !{!5532, !"_ZN94_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h63d6e8219db4e5cfE"}
!5533 = distinct !{!5533, !5534, !"_ZN63_$LT$core..str..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h37c06d3c469a8844E: %self"}
!5534 = distinct !{!5534, !"_ZN63_$LT$core..str..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h37c06d3c469a8844E"}
!5535 = !{!5536, !5537, !5538}
!5536 = distinct !{!5536, !5530, !"_ZN96_$LT$core..iter..adapters..flatten..FlattenCompat$LT$I$C$U$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h1451336c972aa9feE: argument 0"}
!5537 = distinct !{!5537, !5532, !"_ZN94_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h63d6e8219db4e5cfE: argument 0"}
!5538 = distinct !{!5538, !5534, !"_ZN63_$LT$core..str..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h37c06d3c469a8844E: argument 0"}
!5539 = !{!5540, !5529, !5531, !5533}
!5540 = distinct !{!5540, !5541, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17hd40c37a037581357E: %self"}
!5541 = distinct !{!5541, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17hd40c37a037581357E"}
!5542 = !{!5543, !5536, !5537, !5538}
!5543 = distinct !{!5543, !5541, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17hd40c37a037581357E: argument 0"}
!5544 = !{!5545, !5547, !5549, !5540, !5529, !5531, !5533}
!5545 = distinct !{!5545, !5546, !"_ZN64_$LT$core..char..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h4ba96d3e2e3228bdE: %self"}
!5546 = distinct !{!5546, !"_ZN64_$LT$core..char..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h4ba96d3e2e3228bdE"}
!5547 = distinct !{!5547, !5548, !"_ZN69_$LT$core..char..EscapeDefaultState$u20$as$u20$core..clone..Clone$GT$5clone17h51a3912726efa2efE: %self"}
!5548 = distinct !{!5548, !"_ZN69_$LT$core..char..EscapeDefaultState$u20$as$u20$core..clone..Clone$GT$5clone17h51a3912726efa2efE"}
!5549 = distinct !{!5549, !5550, !"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE: %self"}
!5550 = distinct !{!5550, !"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE"}
!5551 = !{!5552, !5553, !5554, !5543, !5536, !5537, !5538}
!5552 = distinct !{!5552, !5546, !"_ZN64_$LT$core..char..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h4ba96d3e2e3228bdE: argument 0"}
!5553 = distinct !{!5553, !5548, !"_ZN69_$LT$core..char..EscapeDefaultState$u20$as$u20$core..clone..Clone$GT$5clone17h51a3912726efa2efE: argument 0"}
!5554 = distinct !{!5554, !5550, !"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE: argument 0"}
!5555 = !{!5547, !5549, !5540, !5529, !5531, !5533}
!5556 = !{!5553, !5554, !5543, !5536, !5537, !5538}
!5557 = !{!5558, !5529, !5531, !5533}
!5558 = distinct !{!5558, !5559, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17hd40c37a037581357E: %self"}
!5559 = distinct !{!5559, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17hd40c37a037581357E"}
!5560 = !{!5561, !5536, !5537, !5538}
!5561 = distinct !{!5561, !5559, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17hd40c37a037581357E: argument 0"}
!5562 = !{!5563, !5565, !5567, !5558, !5529, !5531, !5533}
!5563 = distinct !{!5563, !5564, !"_ZN64_$LT$core..char..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h4ba96d3e2e3228bdE: %self"}
!5564 = distinct !{!5564, !"_ZN64_$LT$core..char..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h4ba96d3e2e3228bdE"}
!5565 = distinct !{!5565, !5566, !"_ZN69_$LT$core..char..EscapeDefaultState$u20$as$u20$core..clone..Clone$GT$5clone17h51a3912726efa2efE: %self"}
!5566 = distinct !{!5566, !"_ZN69_$LT$core..char..EscapeDefaultState$u20$as$u20$core..clone..Clone$GT$5clone17h51a3912726efa2efE"}
!5567 = distinct !{!5567, !5568, !"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE: %self"}
!5568 = distinct !{!5568, !"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE"}
!5569 = !{!5570, !5571, !5572, !5561, !5536, !5537, !5538}
!5570 = distinct !{!5570, !5564, !"_ZN64_$LT$core..char..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h4ba96d3e2e3228bdE: argument 0"}
!5571 = distinct !{!5571, !5566, !"_ZN69_$LT$core..char..EscapeDefaultState$u20$as$u20$core..clone..Clone$GT$5clone17h51a3912726efa2efE: argument 0"}
!5572 = distinct !{!5572, !5568, !"_ZN64_$LT$core..char..EscapeDefault$u20$as$u20$core..clone..Clone$GT$5clone17h8b59e6458b80719bE: argument 0"}
!5573 = !{!5565, !5567, !5558, !5529, !5531, !5533}
!5574 = !{!5571, !5572, !5561, !5536, !5537, !5538}
!5575 = !{!5576}
!5576 = distinct !{!5576, !5577, !"_ZN4core4iter6traits8iterator8Iterator8try_fold17hd8c5e2864c44f56eE: %f"}
!5577 = distinct !{!5577, !"_ZN4core4iter6traits8iterator8Iterator8try_fold17hd8c5e2864c44f56eE"}
!5578 = !{!5579}
!5579 = distinct !{!5579, !5580, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!5580 = distinct !{!5580, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!5581 = !{!5582}
!5582 = distinct !{!5582, !5583, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!5583 = distinct !{!5583, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!5584 = !{!5585}
!5585 = distinct !{!5585, !5586, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!5586 = distinct !{!5586, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!5587 = !{!5588, !5590, !5592, !5594, !5576}
!5588 = distinct !{!5588, !5589, !"_ZN4core4char7methods22_$LT$impl$u20$char$GT$14escape_unicode17h1ed3cd9d3ead861dE: argument 0"}
!5589 = distinct !{!5589, !"_ZN4core4char7methods22_$LT$impl$u20$char$GT$14escape_unicode17h1ed3cd9d3ead861dE"}
!5590 = distinct !{!5590, !5591, !"_ZN4core4char7methods22_$LT$impl$u20$char$GT$14escape_default17hdc1e2919be1b742aE: argument 0"}
!5591 = distinct !{!5591, !"_ZN4core4char7methods22_$LT$impl$u20$char$GT$14escape_default17hdc1e2919be1b742aE"}
!5592 = distinct !{!5592, !5593, !"_ZN95_$LT$core..str..CharEscapeDefault$u20$as$u20$core..ops..function..Fn$LT$$LP$char$C$$RP$$GT$$GT$4call17hae8b83e57a7c907cE: argument 0"}
!5593 = distinct !{!5593, !"_ZN95_$LT$core..str..CharEscapeDefault$u20$as$u20$core..ops..function..Fn$LT$$LP$char$C$$RP$$GT$$GT$4call17hae8b83e57a7c907cE"}
!5594 = distinct !{!5594, !5595, !"_ZN98_$LT$core..str..CharEscapeDefault$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf53924ff6e5867e2E: argument 0"}
!5595 = distinct !{!5595, !"_ZN98_$LT$core..str..CharEscapeDefault$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17hf53924ff6e5867e2E"}
!5596 = !{!5597, !5576}
!5597 = distinct !{!5597, !5598, !"_ZN116_$LT$core..iter..adapters..flatten..FlattenCompat$LT$I$C$U$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$8try_fold7flatten28_$u7b$$u7b$closure$u7d$$u7d$17h55520a6aca8bea9fE: %x"}
!5598 = distinct !{!5598, !"_ZN116_$LT$core..iter..adapters..flatten..FlattenCompat$LT$I$C$U$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$8try_fold7flatten28_$u7b$$u7b$closure$u7d$$u7d$17h55520a6aca8bea9fE"}
!5599 = !{!5600, !5602, !5604, !5606}
!5600 = distinct !{!5600, !5601, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17hce46b76133b9a32eE: %self"}
!5601 = distinct !{!5601, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17hce46b76133b9a32eE"}
!5602 = distinct !{!5602, !5603, !"_ZN96_$LT$core..iter..adapters..flatten..FlattenCompat$LT$I$C$U$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h135014bd6588ebd1E: %self"}
!5603 = distinct !{!5603, !"_ZN96_$LT$core..iter..adapters..flatten..FlattenCompat$LT$I$C$U$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h135014bd6588ebd1E"}
!5604 = distinct !{!5604, !5605, !"_ZN94_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h0ba4672b9f5707a8E: %self"}
!5605 = distinct !{!5605, !"_ZN94_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h0ba4672b9f5707a8E"}
!5606 = distinct !{!5606, !5607, !"_ZN63_$LT$core..str..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h0b841a6c2a2501c4E: %self"}
!5607 = distinct !{!5607, !"_ZN63_$LT$core..str..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h0b841a6c2a2501c4E"}
!5608 = !{!5609, !5610, !5611}
!5609 = distinct !{!5609, !5603, !"_ZN96_$LT$core..iter..adapters..flatten..FlattenCompat$LT$I$C$U$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h135014bd6588ebd1E: argument 0"}
!5610 = distinct !{!5610, !5605, !"_ZN94_$LT$core..iter..adapters..flatten..FlatMap$LT$I$C$U$C$F$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h0ba4672b9f5707a8E: argument 0"}
!5611 = distinct !{!5611, !5607, !"_ZN63_$LT$core..str..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h0b841a6c2a2501c4E: argument 0"}
!5612 = !{!5613, !5602, !5604, !5606}
!5613 = distinct !{!5613, !5614, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17hcd67f479f4c26559E: %self"}
!5614 = distinct !{!5614, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17hcd67f479f4c26559E"}
!5615 = !{!5616, !5609, !5610, !5611}
!5616 = distinct !{!5616, !5614, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17hcd67f479f4c26559E: argument 0"}
!5617 = !{!5618, !5613, !5602, !5604, !5606}
!5618 = distinct !{!5618, !5619, !"_ZN64_$LT$core..char..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h4ba96d3e2e3228bdE: %self"}
!5619 = distinct !{!5619, !"_ZN64_$LT$core..char..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h4ba96d3e2e3228bdE"}
!5620 = !{!5621, !5616, !5609, !5610, !5611}
!5621 = distinct !{!5621, !5619, !"_ZN64_$LT$core..char..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h4ba96d3e2e3228bdE: argument 0"}
!5622 = !{!5623, !5602, !5604, !5606}
!5623 = distinct !{!5623, !5624, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17hcd67f479f4c26559E: %self"}
!5624 = distinct !{!5624, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17hcd67f479f4c26559E"}
!5625 = !{!5626, !5609, !5610, !5611}
!5626 = distinct !{!5626, !5624, !"_ZN68_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17hcd67f479f4c26559E: argument 0"}
!5627 = !{!5628, !5623, !5602, !5604, !5606}
!5628 = distinct !{!5628, !5629, !"_ZN64_$LT$core..char..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h4ba96d3e2e3228bdE: %self"}
!5629 = distinct !{!5629, !"_ZN64_$LT$core..char..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h4ba96d3e2e3228bdE"}
!5630 = !{!5631, !5626, !5609, !5610, !5611}
!5631 = distinct !{!5631, !5629, !"_ZN64_$LT$core..char..EscapeUnicode$u20$as$u20$core..clone..Clone$GT$5clone17h4ba96d3e2e3228bdE: argument 0"}
!5632 = !{!5633}
!5633 = distinct !{!5633, !5634, !"_ZN4core4iter6traits8iterator8Iterator8try_fold17h152539f133faffb8E: %f"}
!5634 = distinct !{!5634, !"_ZN4core4iter6traits8iterator8Iterator8try_fold17h152539f133faffb8E"}
!5635 = !{!5636}
!5636 = distinct !{!5636, !5637, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!5637 = distinct !{!5637, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!5638 = !{!5639}
!5639 = distinct !{!5639, !5640, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!5640 = distinct !{!5640, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!5641 = !{!5642}
!5642 = distinct !{!5642, !5643, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E: argument 0"}
!5643 = distinct !{!5643, !"_ZN4core3str11unwrap_or_017hbd3db57c3f2a7902E"}
!5644 = !{!5645, !5647, !5649, !5633}
!5645 = distinct !{!5645, !5646, !"_ZN4core4char7methods22_$LT$impl$u20$char$GT$14escape_unicode17h1ed3cd9d3ead861dE: argument 0"}
!5646 = distinct !{!5646, !"_ZN4core4char7methods22_$LT$impl$u20$char$GT$14escape_unicode17h1ed3cd9d3ead861dE"}
!5647 = distinct !{!5647, !5648, !"_ZN95_$LT$core..str..CharEscapeUnicode$u20$as$u20$core..ops..function..Fn$LT$$LP$char$C$$RP$$GT$$GT$4call17hbe0343a5107e5c65E: argument 0"}
!5648 = distinct !{!5648, !"_ZN95_$LT$core..str..CharEscapeUnicode$u20$as$u20$core..ops..function..Fn$LT$$LP$char$C$$RP$$GT$$GT$4call17hbe0343a5107e5c65E"}
!5649 = distinct !{!5649, !5650, !"_ZN98_$LT$core..str..CharEscapeUnicode$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17ha3570256831e48c9E: argument 0"}
!5650 = distinct !{!5650, !"_ZN98_$LT$core..str..CharEscapeUnicode$u20$as$u20$core..ops..function..FnMut$LT$$LP$char$C$$RP$$GT$$GT$8call_mut17ha3570256831e48c9E"}
!5651 = !{!5652, !5633}
!5652 = distinct !{!5652, !5653, !"_ZN116_$LT$core..iter..adapters..flatten..FlattenCompat$LT$I$C$U$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$8try_fold7flatten28_$u7b$$u7b$closure$u7d$$u7d$17h3ce2bb9f91091cbdE: %x"}
!5653 = distinct !{!5653, !"_ZN116_$LT$core..iter..adapters..flatten..FlattenCompat$LT$I$C$U$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$8try_fold7flatten28_$u7b$$u7b$closure$u7d$$u7d$17h3ce2bb9f91091cbdE"}
!5654 = !{!5655, !5657}
!5655 = distinct !{!5655, !5656, !"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$16binary_search_by17h28eaee7d857381e1E: argument 0"}
!5656 = distinct !{!5656, !"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$16binary_search_by17h28eaee7d857381e1E"}
!5657 = distinct !{!5657, !5658, !"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$20binary_search_by_key17hde565da8c6282facE: argument 0"}
!5658 = distinct !{!5658, !"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$20binary_search_by_key17hde565da8c6282facE"}
!5659 = !{!5660, !5662}
!5660 = distinct !{!5660, !5661, !"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17h7f90cdb7b69e7dbcE: %_1"}
!5661 = distinct !{!5661, !"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17h7f90cdb7b69e7dbcE"}
!5662 = distinct !{!5662, !5663, !"_ZN4core6option15Option$LT$T$GT$3map17h01ef77005f6b24b4E: %f"}
!5663 = distinct !{!5663, !"_ZN4core6option15Option$LT$T$GT$3map17h01ef77005f6b24b4E"}
!5664 = !{!5665, !5667}
!5665 = distinct !{!5665, !5666, !"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$16binary_search_by17h8a93c194f2c7ec64E: argument 0"}
!5666 = distinct !{!5666, !"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$16binary_search_by17h8a93c194f2c7ec64E"}
!5667 = distinct !{!5667, !5668, !"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$20binary_search_by_key17hb0786cff504be821E: argument 0"}
!5668 = distinct !{!5668, !"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$20binary_search_by_key17hb0786cff504be821E"}
!5669 = !{!5670, !5672}
!5670 = distinct !{!5670, !5671, !"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17h1f6afc82f3e8e6abE: %_1"}
!5671 = distinct !{!5671, !"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17h1f6afc82f3e8e6abE"}
!5672 = distinct !{!5672, !5673, !"_ZN4core6option15Option$LT$T$GT$3map17h556f864426b89504E: %f"}
!5673 = distinct !{!5673, !"_ZN4core6option15Option$LT$T$GT$3map17h556f864426b89504E"}
!5674 = !{!5675, !5677}
!5675 = distinct !{!5675, !5676, !"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$16binary_search_by17h2e9a9c9303618625E: argument 0"}
!5676 = distinct !{!5676, !"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$16binary_search_by17h2e9a9c9303618625E"}
!5677 = distinct !{!5677, !5678, !"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$20binary_search_by_key17h388b9a022e00f94dE: argument 0"}
!5678 = distinct !{!5678, !"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$20binary_search_by_key17h388b9a022e00f94dE"}
!5679 = !{!5680, !5682}
!5680 = distinct !{!5680, !5681, !"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17hf94b2c1d1bc52905E: %_1"}
!5681 = distinct !{!5681, !"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17hf94b2c1d1bc52905E"}
!5682 = distinct !{!5682, !5683, !"_ZN4core6option15Option$LT$T$GT$3map17h7061bddaf314142fE: %f"}
!5683 = distinct !{!5683, !"_ZN4core6option15Option$LT$T$GT$3map17h7061bddaf314142fE"}
!5684 = !{!5685, !5687}
!5685 = distinct !{!5685, !5686, !"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$16binary_search_by17h0dee776bb44ed83dE: argument 0"}
!5686 = distinct !{!5686, !"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$16binary_search_by17h0dee776bb44ed83dE"}
!5687 = distinct !{!5687, !5688, !"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$20binary_search_by_key17hba745a93b25d3784E: argument 0"}
!5688 = distinct !{!5688, !"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$20binary_search_by_key17hba745a93b25d3784E"}
!5689 = !{!5690, !5692}
!5690 = distinct !{!5690, !5691, !"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17he9a2cbc1f893f0d7E: %_1"}
!5691 = distinct !{!5691, !"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17he9a2cbc1f893f0d7E"}
!5692 = distinct !{!5692, !5693, !"_ZN4core6option15Option$LT$T$GT$3map17ha311893580c2ac09E: %f"}
!5693 = distinct !{!5693, !"_ZN4core6option15Option$LT$T$GT$3map17ha311893580c2ac09E"}
!5694 = !{!5695, !5697}
!5695 = distinct !{!5695, !5696, !"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$16binary_search_by17hb15a603b7bfaa9a4E: argument 0"}
!5696 = distinct !{!5696, !"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$16binary_search_by17hb15a603b7bfaa9a4E"}
!5697 = distinct !{!5697, !5698, !"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$20binary_search_by_key17hbeb746b3a556320cE: argument 0"}
!5698 = distinct !{!5698, !"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$20binary_search_by_key17hbeb746b3a556320cE"}
!5699 = !{!5700, !5702}
!5700 = distinct !{!5700, !5701, !"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17hd343cb5adc9a1486E: %_1"}
!5701 = distinct !{!5701, !"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17hd343cb5adc9a1486E"}
!5702 = distinct !{!5702, !5703, !"_ZN4core6option15Option$LT$T$GT$3map17h4e107bae80b276c2E: %f"}
!5703 = distinct !{!5703, !"_ZN4core6option15Option$LT$T$GT$3map17h4e107bae80b276c2E"}
!5704 = !{!5705, !5707}
!5705 = distinct !{!5705, !5706, !"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$16binary_search_by17hf479a50766d821f2E: argument 0"}
!5706 = distinct !{!5706, !"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$16binary_search_by17hf479a50766d821f2E"}
!5707 = distinct !{!5707, !5708, !"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$20binary_search_by_key17hc5e7d3d90ae2a8c4E: argument 0"}
!5708 = distinct !{!5708, !"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$20binary_search_by_key17hc5e7d3d90ae2a8c4E"}
!5709 = !{!5710, !5712}
!5710 = distinct !{!5710, !5711, !"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17hec65b838f0f73162E: %_1"}
!5711 = distinct !{!5711, !"_ZN4core7unicode12unicode_data11skip_search28_$u7b$$u7b$closure$u7d$$u7d$17hec65b838f0f73162E"}
!5712 = distinct !{!5712, !5713, !"_ZN4core6option15Option$LT$T$GT$3map17hb8940c7f044b037dE: %f"}
!5713 = distinct !{!5713, !"_ZN4core6option15Option$LT$T$GT$3map17hb8940c7f044b037dE"}
!5714 = !{!5715, !5717, !5719}
!5715 = distinct !{!5715, !5716, !"_ZN4core7unicode12unicode_data11conversions18bsearch_case_table28_$u7b$$u7b$closure$u7d$$u7d$17hef3c70b0cc3b82d4E: %_2"}
!5716 = distinct !{!5716, !"_ZN4core7unicode12unicode_data11conversions18bsearch_case_table28_$u7b$$u7b$closure$u7d$$u7d$17hef3c70b0cc3b82d4E"}
!5717 = distinct !{!5717, !5718, !"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$16binary_search_by17h3872de32f8807db9E: %self.0"}
!5718 = distinct !{!5718, !"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$16binary_search_by17h3872de32f8807db9E"}
!5719 = distinct !{!5719, !5720, !"_ZN4core7unicode12unicode_data11conversions18bsearch_case_table17hdc43b4ee209eb814E: %table.0"}
!5720 = distinct !{!5720, !"_ZN4core7unicode12unicode_data11conversions18bsearch_case_table17hdc43b4ee209eb814E"}
!5721 = !{!5722}
!5722 = distinct !{!5722, !5718, !"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$16binary_search_by17h3872de32f8807db9E: argument 1"}
!5723 = !{!5724, !5717, !5719}
!5724 = distinct !{!5724, !5725, !"_ZN4core7unicode12unicode_data11conversions18bsearch_case_table28_$u7b$$u7b$closure$u7d$$u7d$17hef3c70b0cc3b82d4E: %_2"}
!5725 = distinct !{!5725, !"_ZN4core7unicode12unicode_data11conversions18bsearch_case_table28_$u7b$$u7b$closure$u7d$$u7d$17hef3c70b0cc3b82d4E"}
!5726 = !{!5727, !5729, !5731}
!5727 = distinct !{!5727, !5728, !"_ZN4core7unicode12unicode_data11conversions18bsearch_case_table28_$u7b$$u7b$closure$u7d$$u7d$17hef3c70b0cc3b82d4E: %_2"}
!5728 = distinct !{!5728, !"_ZN4core7unicode12unicode_data11conversions18bsearch_case_table28_$u7b$$u7b$closure$u7d$$u7d$17hef3c70b0cc3b82d4E"}
!5729 = distinct !{!5729, !5730, !"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$16binary_search_by17h3872de32f8807db9E: %self.0"}
!5730 = distinct !{!5730, !"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$16binary_search_by17h3872de32f8807db9E"}
!5731 = distinct !{!5731, !5732, !"_ZN4core7unicode12unicode_data11conversions18bsearch_case_table17hdc43b4ee209eb814E: %table.0"}
!5732 = distinct !{!5732, !"_ZN4core7unicode12unicode_data11conversions18bsearch_case_table17hdc43b4ee209eb814E"}
!5733 = !{!5734}
!5734 = distinct !{!5734, !5730, !"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$16binary_search_by17h3872de32f8807db9E: argument 1"}
!5735 = !{!5736, !5729, !5731}
!5736 = distinct !{!5736, !5737, !"_ZN4core7unicode12unicode_data11conversions18bsearch_case_table28_$u7b$$u7b$closure$u7d$$u7d$17hef3c70b0cc3b82d4E: %_2"}
!5737 = distinct !{!5737, !"_ZN4core7unicode12unicode_data11conversions18bsearch_case_table28_$u7b$$u7b$closure$u7d$$u7d$17hef3c70b0cc3b82d4E"}
!5738 = !{!5739, !5741, !5743, !5744, !5746}
!5739 = distinct !{!5739, !5740, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5740 = distinct !{!5740, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5741 = distinct !{!5741, !5742, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!5742 = distinct !{!5742, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!5743 = distinct !{!5743, !5742, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!5744 = distinct !{!5744, !5745, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!5745 = distinct !{!5745, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!5746 = distinct !{!5746, !5745, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!5747 = !{!5741, !5744}
!5748 = !{!5743, !5746}
!5749 = !{!5750}
!5750 = distinct !{!5750, !5751, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!5751 = distinct !{!5751, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!5752 = !{!5753}
!5753 = distinct !{!5753, !5754, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!5754 = distinct !{!5754, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!5755 = !{!5756}
!5756 = distinct !{!5756, !5757, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5757 = distinct !{!5757, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5758 = !{!5759}
!5759 = distinct !{!5759, !5760, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5760 = distinct !{!5760, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5761 = !{!5762, !5764, !5766, !5767, !5769}
!5762 = distinct !{!5762, !5763, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5763 = distinct !{!5763, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5764 = distinct !{!5764, !5765, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!5765 = distinct !{!5765, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!5766 = distinct !{!5766, !5765, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!5767 = distinct !{!5767, !5768, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!5768 = distinct !{!5768, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!5769 = distinct !{!5769, !5768, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!5770 = !{!5764, !5767}
!5771 = !{!5766, !5769}
!5772 = !{!5773}
!5773 = distinct !{!5773, !5774, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!5774 = distinct !{!5774, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!5775 = !{!5776}
!5776 = distinct !{!5776, !5777, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!5777 = distinct !{!5777, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!5778 = !{!5779, !5781, !5783, !5784, !5786}
!5779 = distinct !{!5779, !5780, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5780 = distinct !{!5780, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5781 = distinct !{!5781, !5782, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!5782 = distinct !{!5782, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!5783 = distinct !{!5783, !5782, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!5784 = distinct !{!5784, !5785, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!5785 = distinct !{!5785, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!5786 = distinct !{!5786, !5785, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!5787 = !{!5781, !5784}
!5788 = !{!5783, !5786}
!5789 = !{!5790}
!5790 = distinct !{!5790, !5791, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!5791 = distinct !{!5791, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!5792 = !{!5793}
!5793 = distinct !{!5793, !5794, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!5794 = distinct !{!5794, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!5795 = !{!5796, !5798, !5800, !5801, !5803}
!5796 = distinct !{!5796, !5797, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5797 = distinct !{!5797, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5798 = distinct !{!5798, !5799, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!5799 = distinct !{!5799, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!5800 = distinct !{!5800, !5799, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!5801 = distinct !{!5801, !5802, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!5802 = distinct !{!5802, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!5803 = distinct !{!5803, !5802, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!5804 = !{!5798, !5801}
!5805 = !{!5800, !5803}
!5806 = !{!5807}
!5807 = distinct !{!5807, !5808, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!5808 = distinct !{!5808, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!5809 = !{!5810}
!5810 = distinct !{!5810, !5811, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!5811 = distinct !{!5811, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!5812 = !{!5813, !5815, !5817, !5818, !5820}
!5813 = distinct !{!5813, !5814, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5814 = distinct !{!5814, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5815 = distinct !{!5815, !5816, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!5816 = distinct !{!5816, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!5817 = distinct !{!5817, !5816, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!5818 = distinct !{!5818, !5819, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!5819 = distinct !{!5819, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!5820 = distinct !{!5820, !5819, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!5821 = !{!5815, !5818}
!5822 = !{!5817, !5820}
!5823 = !{!5824}
!5824 = distinct !{!5824, !5825, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!5825 = distinct !{!5825, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!5826 = !{!5827}
!5827 = distinct !{!5827, !5828, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!5828 = distinct !{!5828, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!5829 = !{!5830, !5832, !5834, !5835, !5837}
!5830 = distinct !{!5830, !5831, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5831 = distinct !{!5831, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5832 = distinct !{!5832, !5833, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!5833 = distinct !{!5833, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!5834 = distinct !{!5834, !5833, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!5835 = distinct !{!5835, !5836, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!5836 = distinct !{!5836, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!5837 = distinct !{!5837, !5836, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!5838 = !{!5832, !5835}
!5839 = !{!5840, !5842}
!5840 = distinct !{!5840, !5841, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!5841 = distinct !{!5841, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!5842 = distinct !{!5842, !5843, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!5843 = distinct !{!5843, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!5844 = !{!5845, !5847}
!5845 = distinct !{!5845, !5846, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!5846 = distinct !{!5846, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!5847 = distinct !{!5847, !5848, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!5848 = distinct !{!5848, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!5849 = !{!5850, !5852, !5854, !5855, !5857}
!5850 = distinct !{!5850, !5851, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5851 = distinct !{!5851, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5852 = distinct !{!5852, !5853, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: argument 0"}
!5853 = distinct !{!5853, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE"}
!5854 = distinct !{!5854, !5853, !"_ZN4core3fmt8builders16debug_struct_new17hd29b5caee048be2bE: %name.0"}
!5855 = distinct !{!5855, !5856, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: argument 0"}
!5856 = distinct !{!5856, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE"}
!5857 = distinct !{!5857, !5856, !"_ZN4core3fmt9Formatter12debug_struct17h4eca6868b46f488fE: %name.0"}
!5858 = !{!5852, !5855}
!5859 = !{!5854, !5857}
!5860 = !{!5861}
!5861 = distinct !{!5861, !5862, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!5862 = distinct !{!5862, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!5863 = !{!5864}
!5864 = distinct !{!5864, !5865, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E: %self"}
!5865 = distinct !{!5865, !"_ZN4core3fmt8builders11DebugStruct9is_pretty17h5d5b02c1d5409c38E"}
!5866 = !{!5867, !5869, !5871, !5872, !5874}
!5867 = distinct !{!5867, !5868, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5868 = distinct !{!5868, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5869 = distinct !{!5869, !5870, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!5870 = distinct !{!5870, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!5871 = distinct !{!5871, !5870, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!5872 = distinct !{!5872, !5873, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!5873 = distinct !{!5873, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!5874 = distinct !{!5874, !5873, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!5875 = !{!5869, !5872}
!5876 = !{!5871, !5874}
!5877 = !{!5878}
!5878 = distinct !{!5878, !5879, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!5879 = distinct !{!5879, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!5880 = !{!5881}
!5881 = distinct !{!5881, !5882, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!5882 = distinct !{!5882, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!5883 = !{!5884}
!5884 = distinct !{!5884, !5885, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5885 = distinct !{!5885, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5886 = !{!5887}
!5887 = distinct !{!5887, !5888, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5888 = distinct !{!5888, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5889 = !{!5890, !5892, !5894, !5895, !5897}
!5890 = distinct !{!5890, !5891, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5891 = distinct !{!5891, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5892 = distinct !{!5892, !5893, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!5893 = distinct !{!5893, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!5894 = distinct !{!5894, !5893, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!5895 = distinct !{!5895, !5896, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!5896 = distinct !{!5896, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!5897 = distinct !{!5897, !5896, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!5898 = !{!5892, !5895}
!5899 = !{!5894, !5897}
!5900 = !{!5901}
!5901 = distinct !{!5901, !5902, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!5902 = distinct !{!5902, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!5903 = !{!5904}
!5904 = distinct !{!5904, !5905, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!5905 = distinct !{!5905, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!5906 = !{!5907}
!5907 = distinct !{!5907, !5908, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5908 = distinct !{!5908, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5909 = !{!5910}
!5910 = distinct !{!5910, !5911, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5911 = distinct !{!5911, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5912 = !{!5913, !5915, !5917, !5918, !5920}
!5913 = distinct !{!5913, !5914, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5914 = distinct !{!5914, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5915 = distinct !{!5915, !5916, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!5916 = distinct !{!5916, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!5917 = distinct !{!5917, !5916, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!5918 = distinct !{!5918, !5919, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!5919 = distinct !{!5919, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!5920 = distinct !{!5920, !5919, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!5921 = !{!5915, !5918}
!5922 = !{!5917, !5920}
!5923 = !{!5924}
!5924 = distinct !{!5924, !5925, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!5925 = distinct !{!5925, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!5926 = !{!5927}
!5927 = distinct !{!5927, !5928, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!5928 = distinct !{!5928, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!5929 = !{!5930}
!5930 = distinct !{!5930, !5931, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5931 = distinct !{!5931, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5932 = !{!5933}
!5933 = distinct !{!5933, !5934, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5934 = distinct !{!5934, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5935 = !{!5936, !5938, !5940, !5941, !5943}
!5936 = distinct !{!5936, !5937, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5937 = distinct !{!5937, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5938 = distinct !{!5938, !5939, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!5939 = distinct !{!5939, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!5940 = distinct !{!5940, !5939, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!5941 = distinct !{!5941, !5942, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!5942 = distinct !{!5942, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!5943 = distinct !{!5943, !5942, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!5944 = !{!5938, !5941}
!5945 = !{!5940, !5943}
!5946 = !{!5947}
!5947 = distinct !{!5947, !5948, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!5948 = distinct !{!5948, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!5949 = !{!5950}
!5950 = distinct !{!5950, !5951, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!5951 = distinct !{!5951, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!5952 = !{!5953}
!5953 = distinct !{!5953, !5954, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5954 = distinct !{!5954, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5955 = !{!5956}
!5956 = distinct !{!5956, !5957, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5957 = distinct !{!5957, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5958 = !{!5959, !5961, !5963, !5964, !5966}
!5959 = distinct !{!5959, !5960, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5960 = distinct !{!5960, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5961 = distinct !{!5961, !5962, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!5962 = distinct !{!5962, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!5963 = distinct !{!5963, !5962, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!5964 = distinct !{!5964, !5965, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!5965 = distinct !{!5965, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!5966 = distinct !{!5966, !5965, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!5967 = !{!5961, !5964}
!5968 = !{!5963, !5966}
!5969 = !{!5970}
!5970 = distinct !{!5970, !5971, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!5971 = distinct !{!5971, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!5972 = !{!5973}
!5973 = distinct !{!5973, !5974, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!5974 = distinct !{!5974, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!5975 = !{!5976}
!5976 = distinct !{!5976, !5977, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5977 = distinct !{!5977, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5978 = !{!5979}
!5979 = distinct !{!5979, !5980, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5980 = distinct !{!5980, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5981 = !{!5982, !5984, !5986, !5987, !5989}
!5982 = distinct !{!5982, !5983, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!5983 = distinct !{!5983, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!5984 = distinct !{!5984, !5985, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!5985 = distinct !{!5985, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!5986 = distinct !{!5986, !5985, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!5987 = distinct !{!5987, !5988, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!5988 = distinct !{!5988, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!5989 = distinct !{!5989, !5988, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!5990 = !{!5984, !5987}
!5991 = !{!5986, !5989}
!5992 = !{!5993}
!5993 = distinct !{!5993, !5994, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!5994 = distinct !{!5994, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!5995 = !{!5996}
!5996 = distinct !{!5996, !5997, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!5997 = distinct !{!5997, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!5998 = !{!5999}
!5999 = distinct !{!5999, !6000, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6000 = distinct !{!6000, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6001 = !{!6002}
!6002 = distinct !{!6002, !6003, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6003 = distinct !{!6003, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6004 = !{!6005, !6007, !6009, !6010, !6012}
!6005 = distinct !{!6005, !6006, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6006 = distinct !{!6006, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6007 = distinct !{!6007, !6008, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6008 = distinct !{!6008, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6009 = distinct !{!6009, !6008, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6010 = distinct !{!6010, !6011, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6011 = distinct !{!6011, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6012 = distinct !{!6012, !6011, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6013 = !{!6007, !6010}
!6014 = !{!6009, !6012}
!6015 = !{!6016}
!6016 = distinct !{!6016, !6017, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6017 = distinct !{!6017, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6018 = !{!6019}
!6019 = distinct !{!6019, !6020, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6020 = distinct !{!6020, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6021 = !{!6022}
!6022 = distinct !{!6022, !6023, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6023 = distinct !{!6023, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6024 = !{!6025}
!6025 = distinct !{!6025, !6026, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6026 = distinct !{!6026, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6027 = !{!6028, !6030, !6032, !6033, !6035}
!6028 = distinct !{!6028, !6029, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6029 = distinct !{!6029, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6030 = distinct !{!6030, !6031, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6031 = distinct !{!6031, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6032 = distinct !{!6032, !6031, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6033 = distinct !{!6033, !6034, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6034 = distinct !{!6034, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6035 = distinct !{!6035, !6034, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6036 = !{!6030, !6033}
!6037 = !{!6032, !6035}
!6038 = !{!6039}
!6039 = distinct !{!6039, !6040, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6040 = distinct !{!6040, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6041 = !{!6042}
!6042 = distinct !{!6042, !6043, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6043 = distinct !{!6043, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6044 = !{!6045}
!6045 = distinct !{!6045, !6046, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6046 = distinct !{!6046, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6047 = !{!6048}
!6048 = distinct !{!6048, !6049, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6049 = distinct !{!6049, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6050 = !{!6051, !6053, !6055, !6056, !6058}
!6051 = distinct !{!6051, !6052, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6052 = distinct !{!6052, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6053 = distinct !{!6053, !6054, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6054 = distinct !{!6054, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6055 = distinct !{!6055, !6054, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6056 = distinct !{!6056, !6057, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6057 = distinct !{!6057, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6058 = distinct !{!6058, !6057, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6059 = !{!6053, !6056}
!6060 = !{!6055, !6058}
!6061 = !{!6062}
!6062 = distinct !{!6062, !6063, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6063 = distinct !{!6063, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6064 = !{!6065}
!6065 = distinct !{!6065, !6066, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6066 = distinct !{!6066, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6067 = !{!6068}
!6068 = distinct !{!6068, !6069, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6069 = distinct !{!6069, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6070 = !{!6071}
!6071 = distinct !{!6071, !6072, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6072 = distinct !{!6072, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6073 = !{!6074, !6076, !6078, !6079, !6081}
!6074 = distinct !{!6074, !6075, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6075 = distinct !{!6075, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6076 = distinct !{!6076, !6077, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6077 = distinct !{!6077, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6078 = distinct !{!6078, !6077, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6079 = distinct !{!6079, !6080, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6080 = distinct !{!6080, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6081 = distinct !{!6081, !6080, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6082 = !{!6076, !6079}
!6083 = !{!6078, !6081}
!6084 = !{!6085}
!6085 = distinct !{!6085, !6086, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6086 = distinct !{!6086, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6087 = !{!6088}
!6088 = distinct !{!6088, !6089, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6089 = distinct !{!6089, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6090 = !{!6091}
!6091 = distinct !{!6091, !6092, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6092 = distinct !{!6092, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6093 = !{!6094}
!6094 = distinct !{!6094, !6095, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6095 = distinct !{!6095, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6096 = !{!6097, !6099, !6101, !6102, !6104}
!6097 = distinct !{!6097, !6098, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6098 = distinct !{!6098, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6099 = distinct !{!6099, !6100, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6100 = distinct !{!6100, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6101 = distinct !{!6101, !6100, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6102 = distinct !{!6102, !6103, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6103 = distinct !{!6103, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6104 = distinct !{!6104, !6103, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6105 = !{!6099, !6102}
!6106 = !{!6101, !6104}
!6107 = !{!6108}
!6108 = distinct !{!6108, !6109, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6109 = distinct !{!6109, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6110 = !{!6111}
!6111 = distinct !{!6111, !6112, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6112 = distinct !{!6112, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6113 = !{!6114}
!6114 = distinct !{!6114, !6115, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6115 = distinct !{!6115, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6116 = !{!6117}
!6117 = distinct !{!6117, !6118, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6118 = distinct !{!6118, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6119 = !{!6120, !6122, !6124, !6125, !6127}
!6120 = distinct !{!6120, !6121, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6121 = distinct !{!6121, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6122 = distinct !{!6122, !6123, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6123 = distinct !{!6123, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6124 = distinct !{!6124, !6123, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6125 = distinct !{!6125, !6126, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6126 = distinct !{!6126, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6127 = distinct !{!6127, !6126, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6128 = !{!6122, !6125}
!6129 = !{!6124, !6127}
!6130 = !{!6131}
!6131 = distinct !{!6131, !6132, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6132 = distinct !{!6132, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6133 = !{!6134}
!6134 = distinct !{!6134, !6135, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6135 = distinct !{!6135, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6136 = !{!6137}
!6137 = distinct !{!6137, !6138, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6138 = distinct !{!6138, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6139 = !{!6140}
!6140 = distinct !{!6140, !6141, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6141 = distinct !{!6141, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6142 = !{!6143, !6145, !6147, !6148, !6150}
!6143 = distinct !{!6143, !6144, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6144 = distinct !{!6144, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6145 = distinct !{!6145, !6146, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6146 = distinct !{!6146, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6147 = distinct !{!6147, !6146, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6148 = distinct !{!6148, !6149, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6149 = distinct !{!6149, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6150 = distinct !{!6150, !6149, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6151 = !{!6145, !6148}
!6152 = !{!6147, !6150}
!6153 = !{!6154}
!6154 = distinct !{!6154, !6155, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6155 = distinct !{!6155, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6156 = !{!6157}
!6157 = distinct !{!6157, !6158, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6158 = distinct !{!6158, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6159 = !{!6160}
!6160 = distinct !{!6160, !6161, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6161 = distinct !{!6161, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6162 = !{!6163}
!6163 = distinct !{!6163, !6164, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6164 = distinct !{!6164, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6165 = !{!6166, !6168, !6170, !6171, !6173}
!6166 = distinct !{!6166, !6167, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6167 = distinct !{!6167, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6168 = distinct !{!6168, !6169, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6169 = distinct !{!6169, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6170 = distinct !{!6170, !6169, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6171 = distinct !{!6171, !6172, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6172 = distinct !{!6172, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6173 = distinct !{!6173, !6172, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6174 = !{!6168, !6171}
!6175 = !{!6170, !6173}
!6176 = !{!6177}
!6177 = distinct !{!6177, !6178, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6178 = distinct !{!6178, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6179 = !{!6180}
!6180 = distinct !{!6180, !6181, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6181 = distinct !{!6181, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6182 = !{!6183}
!6183 = distinct !{!6183, !6184, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6184 = distinct !{!6184, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6185 = !{!6186}
!6186 = distinct !{!6186, !6187, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6187 = distinct !{!6187, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6188 = !{!6189, !6191, !6193, !6194, !6196}
!6189 = distinct !{!6189, !6190, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6190 = distinct !{!6190, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6191 = distinct !{!6191, !6192, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6192 = distinct !{!6192, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6193 = distinct !{!6193, !6192, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6194 = distinct !{!6194, !6195, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6195 = distinct !{!6195, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6196 = distinct !{!6196, !6195, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6197 = !{!6191, !6194}
!6198 = !{!6193, !6196}
!6199 = !{!6200}
!6200 = distinct !{!6200, !6201, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6201 = distinct !{!6201, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6202 = !{!6203}
!6203 = distinct !{!6203, !6204, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6204 = distinct !{!6204, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6205 = !{!6206}
!6206 = distinct !{!6206, !6207, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6207 = distinct !{!6207, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6208 = !{!6209}
!6209 = distinct !{!6209, !6210, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6210 = distinct !{!6210, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6211 = !{!6212, !6214, !6216, !6217, !6219}
!6212 = distinct !{!6212, !6213, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6213 = distinct !{!6213, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6214 = distinct !{!6214, !6215, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6215 = distinct !{!6215, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6216 = distinct !{!6216, !6215, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6217 = distinct !{!6217, !6218, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6218 = distinct !{!6218, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6219 = distinct !{!6219, !6218, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6220 = !{!6214, !6217}
!6221 = !{!6216, !6219}
!6222 = !{!6223}
!6223 = distinct !{!6223, !6224, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6224 = distinct !{!6224, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6225 = !{!6226}
!6226 = distinct !{!6226, !6227, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6227 = distinct !{!6227, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6228 = !{!6229}
!6229 = distinct !{!6229, !6230, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6230 = distinct !{!6230, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6231 = !{!6232}
!6232 = distinct !{!6232, !6233, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6233 = distinct !{!6233, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6234 = !{!6235, !6237, !6239, !6240, !6242}
!6235 = distinct !{!6235, !6236, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6236 = distinct !{!6236, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6237 = distinct !{!6237, !6238, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6238 = distinct !{!6238, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6239 = distinct !{!6239, !6238, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6240 = distinct !{!6240, !6241, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6241 = distinct !{!6241, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6242 = distinct !{!6242, !6241, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6243 = !{!6237, !6240}
!6244 = !{!6239, !6242}
!6245 = !{!6246}
!6246 = distinct !{!6246, !6247, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6247 = distinct !{!6247, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6248 = !{!6249}
!6249 = distinct !{!6249, !6250, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6250 = distinct !{!6250, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6251 = !{!6252}
!6252 = distinct !{!6252, !6253, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6253 = distinct !{!6253, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6254 = !{!6255}
!6255 = distinct !{!6255, !6256, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6256 = distinct !{!6256, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6257 = !{!6258, !6260, !6262, !6263, !6265}
!6258 = distinct !{!6258, !6259, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6259 = distinct !{!6259, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6260 = distinct !{!6260, !6261, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6261 = distinct !{!6261, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6262 = distinct !{!6262, !6261, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6263 = distinct !{!6263, !6264, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6264 = distinct !{!6264, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6265 = distinct !{!6265, !6264, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6266 = !{!6260, !6263}
!6267 = !{!6262, !6265}
!6268 = !{!6269}
!6269 = distinct !{!6269, !6270, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6270 = distinct !{!6270, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6271 = !{!6272}
!6272 = distinct !{!6272, !6273, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6273 = distinct !{!6273, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6274 = !{!6275}
!6275 = distinct !{!6275, !6276, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6276 = distinct !{!6276, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6277 = !{!6278}
!6278 = distinct !{!6278, !6279, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6279 = distinct !{!6279, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6280 = !{!6281, !6283, !6285, !6286, !6288}
!6281 = distinct !{!6281, !6282, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6282 = distinct !{!6282, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6283 = distinct !{!6283, !6284, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6284 = distinct !{!6284, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6285 = distinct !{!6285, !6284, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6286 = distinct !{!6286, !6287, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6287 = distinct !{!6287, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6288 = distinct !{!6288, !6287, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6289 = !{!6283, !6286}
!6290 = !{!6285, !6288}
!6291 = !{!6292}
!6292 = distinct !{!6292, !6293, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6293 = distinct !{!6293, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6294 = !{!6295}
!6295 = distinct !{!6295, !6296, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6296 = distinct !{!6296, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6297 = !{!6298}
!6298 = distinct !{!6298, !6299, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6299 = distinct !{!6299, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6300 = !{!6301}
!6301 = distinct !{!6301, !6302, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6302 = distinct !{!6302, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6303 = !{!6304, !6306, !6308, !6309, !6311}
!6304 = distinct !{!6304, !6305, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6305 = distinct !{!6305, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6306 = distinct !{!6306, !6307, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6307 = distinct !{!6307, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6308 = distinct !{!6308, !6307, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6309 = distinct !{!6309, !6310, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6310 = distinct !{!6310, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6311 = distinct !{!6311, !6310, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6312 = !{!6306, !6309}
!6313 = !{!6308, !6311}
!6314 = !{!6315}
!6315 = distinct !{!6315, !6316, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6316 = distinct !{!6316, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6317 = !{!6318}
!6318 = distinct !{!6318, !6319, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6319 = distinct !{!6319, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6320 = !{!6321}
!6321 = distinct !{!6321, !6322, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6322 = distinct !{!6322, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6323 = !{!6324}
!6324 = distinct !{!6324, !6325, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6325 = distinct !{!6325, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6326 = !{!6327, !6329, !6331, !6332, !6334}
!6327 = distinct !{!6327, !6328, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6328 = distinct !{!6328, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6329 = distinct !{!6329, !6330, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6330 = distinct !{!6330, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6331 = distinct !{!6331, !6330, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6332 = distinct !{!6332, !6333, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6333 = distinct !{!6333, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6334 = distinct !{!6334, !6333, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6335 = !{!6329, !6332}
!6336 = !{!6331, !6334}
!6337 = !{!6338}
!6338 = distinct !{!6338, !6339, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6339 = distinct !{!6339, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6340 = !{!6341}
!6341 = distinct !{!6341, !6342, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6342 = distinct !{!6342, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6343 = !{!6344}
!6344 = distinct !{!6344, !6345, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6345 = distinct !{!6345, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6346 = !{!6347}
!6347 = distinct !{!6347, !6348, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6348 = distinct !{!6348, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6349 = !{!6350, !6352, !6354, !6355, !6357}
!6350 = distinct !{!6350, !6351, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6351 = distinct !{!6351, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6352 = distinct !{!6352, !6353, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6353 = distinct !{!6353, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6354 = distinct !{!6354, !6353, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6355 = distinct !{!6355, !6356, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6356 = distinct !{!6356, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6357 = distinct !{!6357, !6356, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6358 = !{!6352, !6355}
!6359 = !{!6354, !6357}
!6360 = !{!6361}
!6361 = distinct !{!6361, !6362, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6362 = distinct !{!6362, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6363 = !{!6364}
!6364 = distinct !{!6364, !6365, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6365 = distinct !{!6365, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6366 = !{!6367}
!6367 = distinct !{!6367, !6368, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6368 = distinct !{!6368, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6369 = !{!6370}
!6370 = distinct !{!6370, !6371, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6371 = distinct !{!6371, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6372 = !{!6373, !6375, !6377, !6378, !6380}
!6373 = distinct !{!6373, !6374, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6374 = distinct !{!6374, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6375 = distinct !{!6375, !6376, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6376 = distinct !{!6376, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6377 = distinct !{!6377, !6376, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6378 = distinct !{!6378, !6379, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6379 = distinct !{!6379, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6380 = distinct !{!6380, !6379, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6381 = !{!6375, !6378}
!6382 = !{!6377, !6380}
!6383 = !{!6384}
!6384 = distinct !{!6384, !6385, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6385 = distinct !{!6385, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6386 = !{!6387}
!6387 = distinct !{!6387, !6388, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6388 = distinct !{!6388, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6389 = !{!6390}
!6390 = distinct !{!6390, !6391, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6391 = distinct !{!6391, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6392 = !{!6393}
!6393 = distinct !{!6393, !6394, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6394 = distinct !{!6394, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6395 = !{!6396, !6398, !6400, !6401, !6403}
!6396 = distinct !{!6396, !6397, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6397 = distinct !{!6397, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6398 = distinct !{!6398, !6399, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6399 = distinct !{!6399, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6400 = distinct !{!6400, !6399, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6401 = distinct !{!6401, !6402, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6402 = distinct !{!6402, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6403 = distinct !{!6403, !6402, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6404 = !{!6398, !6401}
!6405 = !{!6400, !6403}
!6406 = !{!6407}
!6407 = distinct !{!6407, !6408, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6408 = distinct !{!6408, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6409 = !{!6410}
!6410 = distinct !{!6410, !6411, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6411 = distinct !{!6411, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6412 = !{!6413}
!6413 = distinct !{!6413, !6414, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6414 = distinct !{!6414, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6415 = !{!6416}
!6416 = distinct !{!6416, !6417, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6417 = distinct !{!6417, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6418 = !{!6419, !6421, !6423, !6424, !6426}
!6419 = distinct !{!6419, !6420, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6420 = distinct !{!6420, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6421 = distinct !{!6421, !6422, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6422 = distinct !{!6422, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6423 = distinct !{!6423, !6422, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6424 = distinct !{!6424, !6425, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6425 = distinct !{!6425, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6426 = distinct !{!6426, !6425, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6427 = !{!6421, !6424}
!6428 = !{!6423, !6426}
!6429 = !{!6430}
!6430 = distinct !{!6430, !6431, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6431 = distinct !{!6431, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6432 = !{!6433}
!6433 = distinct !{!6433, !6434, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6434 = distinct !{!6434, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6435 = !{!6436}
!6436 = distinct !{!6436, !6437, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6437 = distinct !{!6437, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6438 = !{!6439}
!6439 = distinct !{!6439, !6440, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6440 = distinct !{!6440, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6441 = !{!6442, !6444, !6446, !6447, !6449}
!6442 = distinct !{!6442, !6443, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6443 = distinct !{!6443, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6444 = distinct !{!6444, !6445, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6445 = distinct !{!6445, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6446 = distinct !{!6446, !6445, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6447 = distinct !{!6447, !6448, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6448 = distinct !{!6448, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6449 = distinct !{!6449, !6448, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6450 = !{!6444, !6447}
!6451 = !{!6446, !6449}
!6452 = !{!6453}
!6453 = distinct !{!6453, !6454, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6454 = distinct !{!6454, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6455 = !{!6456}
!6456 = distinct !{!6456, !6457, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6457 = distinct !{!6457, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6458 = !{!6459}
!6459 = distinct !{!6459, !6460, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6460 = distinct !{!6460, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6461 = !{!6462}
!6462 = distinct !{!6462, !6463, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6463 = distinct !{!6463, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6464 = !{!6465, !6467, !6469, !6470, !6472}
!6465 = distinct !{!6465, !6466, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6466 = distinct !{!6466, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6467 = distinct !{!6467, !6468, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6468 = distinct !{!6468, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6469 = distinct !{!6469, !6468, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6470 = distinct !{!6470, !6471, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6471 = distinct !{!6471, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6472 = distinct !{!6472, !6471, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6473 = !{!6467, !6470}
!6474 = !{!6469, !6472}
!6475 = !{!6476}
!6476 = distinct !{!6476, !6477, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6477 = distinct !{!6477, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6478 = !{!6479}
!6479 = distinct !{!6479, !6480, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6480 = distinct !{!6480, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6481 = !{!6482}
!6482 = distinct !{!6482, !6483, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6483 = distinct !{!6483, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6484 = !{!6485}
!6485 = distinct !{!6485, !6486, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6486 = distinct !{!6486, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6487 = !{!6488, !6490, !6492, !6493, !6495}
!6488 = distinct !{!6488, !6489, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6489 = distinct !{!6489, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6490 = distinct !{!6490, !6491, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6491 = distinct !{!6491, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6492 = distinct !{!6492, !6491, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6493 = distinct !{!6493, !6494, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6494 = distinct !{!6494, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6495 = distinct !{!6495, !6494, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6496 = !{!6490, !6493}
!6497 = !{!6492, !6495}
!6498 = !{!6499}
!6499 = distinct !{!6499, !6500, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6500 = distinct !{!6500, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6501 = !{!6502}
!6502 = distinct !{!6502, !6503, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6503 = distinct !{!6503, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6504 = !{!6505}
!6505 = distinct !{!6505, !6506, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6506 = distinct !{!6506, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6507 = !{!6508}
!6508 = distinct !{!6508, !6509, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6509 = distinct !{!6509, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6510 = !{!6511, !6513, !6515, !6516, !6518}
!6511 = distinct !{!6511, !6512, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6512 = distinct !{!6512, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6513 = distinct !{!6513, !6514, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6514 = distinct !{!6514, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6515 = distinct !{!6515, !6514, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6516 = distinct !{!6516, !6517, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6517 = distinct !{!6517, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6518 = distinct !{!6518, !6517, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6519 = !{!6513, !6516}
!6520 = !{!6515, !6518}
!6521 = !{!6522}
!6522 = distinct !{!6522, !6523, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6523 = distinct !{!6523, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6524 = !{!6525}
!6525 = distinct !{!6525, !6526, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6526 = distinct !{!6526, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6527 = !{!6528}
!6528 = distinct !{!6528, !6529, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6529 = distinct !{!6529, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6530 = !{!6531}
!6531 = distinct !{!6531, !6532, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6532 = distinct !{!6532, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6533 = !{!6534, !6536, !6538, !6539, !6541}
!6534 = distinct !{!6534, !6535, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6535 = distinct !{!6535, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6536 = distinct !{!6536, !6537, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6537 = distinct !{!6537, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6538 = distinct !{!6538, !6537, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6539 = distinct !{!6539, !6540, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6540 = distinct !{!6540, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6541 = distinct !{!6541, !6540, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6542 = !{!6536, !6539}
!6543 = !{!6538, !6541}
!6544 = !{!6545}
!6545 = distinct !{!6545, !6546, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6546 = distinct !{!6546, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6547 = !{!6548}
!6548 = distinct !{!6548, !6549, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6549 = distinct !{!6549, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6550 = !{!6551}
!6551 = distinct !{!6551, !6552, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6552 = distinct !{!6552, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6553 = !{!6554}
!6554 = distinct !{!6554, !6555, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6555 = distinct !{!6555, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6556 = !{!6557, !6559, !6561, !6562, !6564}
!6557 = distinct !{!6557, !6558, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6558 = distinct !{!6558, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6559 = distinct !{!6559, !6560, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6560 = distinct !{!6560, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6561 = distinct !{!6561, !6560, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6562 = distinct !{!6562, !6563, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6563 = distinct !{!6563, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6564 = distinct !{!6564, !6563, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6565 = !{!6559, !6562}
!6566 = !{!6561, !6564}
!6567 = !{!6568}
!6568 = distinct !{!6568, !6569, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6569 = distinct !{!6569, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6570 = !{!6571}
!6571 = distinct !{!6571, !6572, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6572 = distinct !{!6572, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6573 = !{!6574}
!6574 = distinct !{!6574, !6575, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6575 = distinct !{!6575, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6576 = !{!6577}
!6577 = distinct !{!6577, !6578, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6578 = distinct !{!6578, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6579 = !{!6580, !6582, !6584, !6585, !6587}
!6580 = distinct !{!6580, !6581, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6581 = distinct !{!6581, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6582 = distinct !{!6582, !6583, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6583 = distinct !{!6583, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6584 = distinct !{!6584, !6583, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6585 = distinct !{!6585, !6586, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6586 = distinct !{!6586, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6587 = distinct !{!6587, !6586, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6588 = !{!6582, !6585}
!6589 = !{!6584, !6587}
!6590 = !{!6591}
!6591 = distinct !{!6591, !6592, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6592 = distinct !{!6592, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6593 = !{!6594}
!6594 = distinct !{!6594, !6595, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6595 = distinct !{!6595, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6596 = !{!6597}
!6597 = distinct !{!6597, !6598, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6598 = distinct !{!6598, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6599 = !{!6600}
!6600 = distinct !{!6600, !6601, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6601 = distinct !{!6601, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6602 = !{!6603, !6605, !6607, !6608, !6610}
!6603 = distinct !{!6603, !6604, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6604 = distinct !{!6604, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6605 = distinct !{!6605, !6606, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6606 = distinct !{!6606, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6607 = distinct !{!6607, !6606, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6608 = distinct !{!6608, !6609, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6609 = distinct !{!6609, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6610 = distinct !{!6610, !6609, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6611 = !{!6605, !6608}
!6612 = !{!6607, !6610}
!6613 = !{!6614}
!6614 = distinct !{!6614, !6615, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6615 = distinct !{!6615, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6616 = !{!6617}
!6617 = distinct !{!6617, !6618, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6618 = distinct !{!6618, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6619 = !{!6620}
!6620 = distinct !{!6620, !6621, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6621 = distinct !{!6621, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6622 = !{!6623}
!6623 = distinct !{!6623, !6624, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6624 = distinct !{!6624, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6625 = !{!6626, !6628, !6630, !6631, !6633}
!6626 = distinct !{!6626, !6627, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6627 = distinct !{!6627, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6628 = distinct !{!6628, !6629, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6629 = distinct !{!6629, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6630 = distinct !{!6630, !6629, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6631 = distinct !{!6631, !6632, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6632 = distinct !{!6632, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6633 = distinct !{!6633, !6632, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6634 = !{!6628, !6631}
!6635 = !{!6630, !6633}
!6636 = !{!6637}
!6637 = distinct !{!6637, !6638, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6638 = distinct !{!6638, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6639 = !{!6640}
!6640 = distinct !{!6640, !6641, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6641 = distinct !{!6641, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6642 = !{!6643}
!6643 = distinct !{!6643, !6644, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6644 = distinct !{!6644, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6645 = !{!6646}
!6646 = distinct !{!6646, !6647, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6647 = distinct !{!6647, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6648 = !{!6649, !6651, !6653, !6654, !6656}
!6649 = distinct !{!6649, !6650, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6650 = distinct !{!6650, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6651 = distinct !{!6651, !6652, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6652 = distinct !{!6652, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6653 = distinct !{!6653, !6652, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6654 = distinct !{!6654, !6655, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6655 = distinct !{!6655, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6656 = distinct !{!6656, !6655, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6657 = !{!6651, !6654}
!6658 = !{!6653, !6656}
!6659 = !{!6660}
!6660 = distinct !{!6660, !6661, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6661 = distinct !{!6661, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6662 = !{!6663}
!6663 = distinct !{!6663, !6664, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6664 = distinct !{!6664, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6665 = !{!6666}
!6666 = distinct !{!6666, !6667, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6667 = distinct !{!6667, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6668 = !{!6669}
!6669 = distinct !{!6669, !6670, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6670 = distinct !{!6670, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6671 = !{!6672, !6674, !6676, !6677, !6679}
!6672 = distinct !{!6672, !6673, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6673 = distinct !{!6673, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6674 = distinct !{!6674, !6675, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6675 = distinct !{!6675, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6676 = distinct !{!6676, !6675, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6677 = distinct !{!6677, !6678, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6678 = distinct !{!6678, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6679 = distinct !{!6679, !6678, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6680 = !{!6674, !6677}
!6681 = !{!6676, !6679}
!6682 = !{!6683}
!6683 = distinct !{!6683, !6684, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6684 = distinct !{!6684, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6685 = !{!6686}
!6686 = distinct !{!6686, !6687, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6687 = distinct !{!6687, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6688 = !{!6689}
!6689 = distinct !{!6689, !6690, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6690 = distinct !{!6690, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6691 = !{!6692}
!6692 = distinct !{!6692, !6693, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6693 = distinct !{!6693, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6694 = !{!6695, !6697, !6699, !6700, !6702}
!6695 = distinct !{!6695, !6696, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6696 = distinct !{!6696, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6697 = distinct !{!6697, !6698, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6698 = distinct !{!6698, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6699 = distinct !{!6699, !6698, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6700 = distinct !{!6700, !6701, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6701 = distinct !{!6701, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6702 = distinct !{!6702, !6701, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6703 = !{!6697, !6700}
!6704 = !{!6699, !6702}
!6705 = !{!6706}
!6706 = distinct !{!6706, !6707, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6707 = distinct !{!6707, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6708 = !{!6709}
!6709 = distinct !{!6709, !6710, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6710 = distinct !{!6710, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6711 = !{!6712}
!6712 = distinct !{!6712, !6713, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6713 = distinct !{!6713, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6714 = !{!6715}
!6715 = distinct !{!6715, !6716, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6716 = distinct !{!6716, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6717 = !{!6718, !6720, !6722, !6723, !6725}
!6718 = distinct !{!6718, !6719, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6719 = distinct !{!6719, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6720 = distinct !{!6720, !6721, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6721 = distinct !{!6721, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6722 = distinct !{!6722, !6721, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6723 = distinct !{!6723, !6724, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6724 = distinct !{!6724, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6725 = distinct !{!6725, !6724, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6726 = !{!6720, !6723}
!6727 = !{!6722, !6725}
!6728 = !{!6729}
!6729 = distinct !{!6729, !6730, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6730 = distinct !{!6730, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6731 = !{!6732}
!6732 = distinct !{!6732, !6733, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6733 = distinct !{!6733, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6734 = !{!6735}
!6735 = distinct !{!6735, !6736, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6736 = distinct !{!6736, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6737 = !{!6738}
!6738 = distinct !{!6738, !6739, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6739 = distinct !{!6739, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6740 = !{!6741, !6743, !6745, !6746, !6748}
!6741 = distinct !{!6741, !6742, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6742 = distinct !{!6742, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6743 = distinct !{!6743, !6744, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6744 = distinct !{!6744, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6745 = distinct !{!6745, !6744, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6746 = distinct !{!6746, !6747, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6747 = distinct !{!6747, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6748 = distinct !{!6748, !6747, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6749 = !{!6743, !6746}
!6750 = !{!6745, !6748}
!6751 = !{!6752}
!6752 = distinct !{!6752, !6753, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6753 = distinct !{!6753, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6754 = !{!6755}
!6755 = distinct !{!6755, !6756, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6756 = distinct !{!6756, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6757 = !{!6758}
!6758 = distinct !{!6758, !6759, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6759 = distinct !{!6759, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6760 = !{!6761}
!6761 = distinct !{!6761, !6762, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6762 = distinct !{!6762, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6763 = !{!6764, !6766, !6768, !6769, !6771}
!6764 = distinct !{!6764, !6765, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6765 = distinct !{!6765, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6766 = distinct !{!6766, !6767, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6767 = distinct !{!6767, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6768 = distinct !{!6768, !6767, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6769 = distinct !{!6769, !6770, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6770 = distinct !{!6770, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6771 = distinct !{!6771, !6770, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6772 = !{!6766, !6769}
!6773 = !{!6768, !6771}
!6774 = !{!6775}
!6775 = distinct !{!6775, !6776, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6776 = distinct !{!6776, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6777 = !{!6778}
!6778 = distinct !{!6778, !6779, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6779 = distinct !{!6779, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6780 = !{!6781}
!6781 = distinct !{!6781, !6782, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6782 = distinct !{!6782, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6783 = !{!6784}
!6784 = distinct !{!6784, !6785, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6785 = distinct !{!6785, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6786 = !{!6787, !6789, !6791, !6792, !6794}
!6787 = distinct !{!6787, !6788, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6788 = distinct !{!6788, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6789 = distinct !{!6789, !6790, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: argument 0"}
!6790 = distinct !{!6790, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E"}
!6791 = distinct !{!6791, !6790, !"_ZN4core3fmt8builders15debug_tuple_new17hbb2a74ddf55cb8e3E: %name.0"}
!6792 = distinct !{!6792, !6793, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: argument 0"}
!6793 = distinct !{!6793, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E"}
!6794 = distinct !{!6794, !6793, !"_ZN4core3fmt9Formatter11debug_tuple17he8880afe2a53a7d2E: %name.0"}
!6795 = !{!6789, !6792}
!6796 = !{!6791, !6794}
!6797 = !{!6798}
!6798 = distinct !{!6798, !6799, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E: %self"}
!6799 = distinct !{!6799, !"_ZN4core3fmt8builders10DebugTuple9is_pretty17h8fc1ff67fafbfba5E"}
!6800 = !{!6801}
!6801 = distinct !{!6801, !6802, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE: %self"}
!6802 = distinct !{!6802, !"_ZN4core3fmt9Formatter9alternate17h4bf39b61bed98bcfE"}
!6803 = !{!6804}
!6804 = distinct !{!6804, !6805, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6805 = distinct !{!6805, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}
!6806 = !{!6807}
!6807 = distinct !{!6807, !6808, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE: %data.0"}
!6808 = distinct !{!6808, !"_ZN4core3fmt9Formatter9write_str17hfd2de51fda918fdeE"}