-module('Idris.Idris2.TTImp.Interactive.ExprSearch'). -compile('no_auto_import'). -compile('inline'). -compile({'inline_size',24}). -export([ 'case--exprSearchN-11983'/8, 'case--case block in case block in exprSearchOpts-11869'/15, 'case--case block in exprSearchOpts-11818'/15, 'case--exprSearchOpts-11719'/9, 'case--case block in exprSearchOpts,lookupHoleName-11648'/11, 'case--exprSearchOpts,lookupHoleName-11584'/10, 'case--getLHSData,getLHS-11390'/6, 'case--case block in search-11134'/14, 'case--search-11103'/10, 'case--case block in search,lookupHoleName-11028'/12, 'case--search,lookupHoleName-10960'/11, 'case--case block in searchType-10844'/14, 'case--case block in searchType-10775'/15, 'case--case block in searchType-10699'/16, 'case--case block in case block in searchType-10470'/22, 'case--case block in case block in searchType-10366'/23, 'case--case block in case block in searchType-10259'/24, 'case--case block in case block in searchType-10106'/25, 'case--case block in searchType-10037'/18, 'case--searchType-9992'/12, 'case--searchType-9923'/26, 'case--searchType-9763'/22, 'case--case block in case block in tryIntermediateRec-9599'/17, 'case--case block in tryIntermediateRec-9456'/15, 'case--tryIntermediateRec-9413'/13, 'case--tryIntermediateRec,isSingleCon-9294'/18, 'case--case block in tryIntermediateWith,applyLocal-9063'/27, 'case--tryIntermediateWith,applyLocal-8955'/25, 'case--case block in case block in case block in makeHelper-8670'/30, 'case--case block in case block in case block in makeHelper-8475'/31, 'case--case block in case block in makeHelper-8373'/28, 'case--case block in makeHelper-8224'/16, 'case--makeHelper-8180'/14, 'case--searchLocalWith,findPos-7867'/28, 'case--case block in case block in searchLocalWith,findDirect-7615'/24, 'case--case block in case block in searchLocalWith,findDirect-7497'/25, 'case--case block in searchLocalWith,findDirect-7403'/23, 'case--searchLocalWith,findDirect-7356'/20, 'case--case block in tryRecursive-7234'/17, 'case--case block in tryRecursive-7202'/15, 'case--tryRecursive-7085'/13, 'case--case block in tryRecursive,structDiff-7013'/18, 'case--tryRecursive,structDiff-6973'/16, 'case--case block in searchNames,visible-6385'/18, 'case--searchNames,visible-6350'/16, 'case--case block in case block in getSuccessful-6218'/17, 'case--case block in getSuccessful-6146'/14, 'case--getSuccessful-6118'/13, 'case--case block in case block in case block in searchName-5878'/26, 'case--case block in case block in searchName-5793'/20, 'case--case block in case block in searchName-5638'/17, 'case--case block in searchName-5602'/17, 'case--searchName-5567'/16, 'case--firstSuccess-5264'/8, 'case--explicit-5176'/3, 'case--case block in case block in case block in searchIfHole-5037'/19, 'case--case block in case block in case block in searchIfHole-5002'/17, 'case--case block in case block in searchIfHole-4934'/16, 'case--case block in searchIfHole-4903'/14, 'case--searchIfHole-4841'/10, 'case--case block in getAllEnv-4720'/12, 'case--getAllEnv-4694'/9, 'case--nextResult-4403'/5, 'case--case block in searchSort-4332'/10, 'case--searchSort-4309'/7, 'case--searchN,count-4212'/9, 'case--filterS-4105'/7, 'nested--14147-6338--in--un--visible'/16, 'nested--13220-5528--in--un--usableName'/13, 'nested--12262-4670--in--un--usableName'/8, 'nested--16170-8164--in--un--toApp'/15, 'nested--14442-6601--in--un--structDiffTm'/15, 'nested--14442-6600--in--un--structDiff'/15, 'nested--11854-4282--in--un--returnBatch'/8, 'nested--16986-8879--in--un--matchable'/15, 'nested--20050-11573--in--un--lookupHoleName'/10, 'nested--12258-10949--in--un--lookupHoleName'/11, 'nested--17412-9249--in--un--isSingleCon'/13, 'nested--19814-11340--in--un--getLHS'/5, 'nested--15254-7337--in--un--findPos'/19, 'nested--15254-7336--in--un--findDirect'/20, 'nested--11718-4152--in--un--count'/7, 'nested--12892-5202--in--un--continue'/9, 'nested--14442-6598--in--un--argDiff'/15, 'nested--14442-6599--in--un--appsDiff'/17, 'nested--16986-8880--in--un--applyLocal'/17, 'dn--un--map_Functor__Search'/4, 'dn--un--__Impl_Functor_Search'/4, 'un--usableLocal'/4, 'un--trySearch'/5, 'un--tryRecursive'/12, 'un--tryIntermediateWith'/11, 'un--tryIntermediateRec'/11, 'un--tryIntermediate'/10, 'un--traverse'/4, 'un--searchType'/11, 'un--searchSort'/7, 'un--searchNames'/11, 'un--searchName'/11, 'un--searchN'/6, 'un--searchLocalWith'/12, 'un--searchLocal'/10, 'un--searchIfHole'/9, 'un--searchHole'/12, 'un--search'/9, 'un--one'/3, 'un--noResult'/2, 'un--nextResult'/5, 'un--mkCandidates'/7, 'un--makeHelper'/11, 'un--initSearchOpts'/2, 'un--getSuccessful'/13, 'un--getLHSData'/3, 'un--getAllEnv'/5, 'un--firstSuccess'/4, 'un--firstLinearOK'/5, 'un--filterS'/3, 'un--exprSearchOpts'/8, 'un--exprSearchN'/8, 'un--exprSearch'/7, 'un--explicit'/2, 'un--combine'/8, 'un--ExprDefs'/0 ]). 'case--exprSearchN-11983'(V0, V1, V2, V3, V4, V5, V6, V7) -> case V7 of {'Idris.Builtin.MkPair', E0, E1} -> (fun (V8, V9) -> fun (V10) -> {'Idris.Prelude.Types.Right', V8} end end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--case block in case block in exprSearchOpts-11869'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14) -> case V3 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E0, E1, E2, E3, E4, E5, E6, E7, E8, E9} -> (fun (V15, V16, V17, V18, V19, V20, V21, V22, V23, V24) -> {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', V15, V16, V14, V18, V19, V20, V21, V22, V23, V24} end(E0, E1, E2, E3, E4, E5, E6, E7, E8, E9)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--case block in exprSearchOpts-11818'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14) -> case V14 of 0 -> fun (V15) -> begin (V16 = (('un--getLHSData'(V6, V7, V12))(V15))), case V16 of {'Idris.Prelude.Types.Left', E0} -> (fun (V17) -> {'Idris.Prelude.Types.Left', V17} end(E0)); {'Idris.Prelude.Types.Right', E1} -> (fun (V18) -> {'Idris.Prelude.Types.Right', case V3 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E2, E3, E4, E5, E6, E7, E8, E9, E10, E11} -> (fun (V19, V20, V21, V22, V23, V24, V25, V26, V27, V28) -> {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', V19, V20, V18, V22, V23, V24, V25, V26, V27, V28} end(E2, E3, E4, E5, E6, E7, E8, E9, E10, E11)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end} end(E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end; 1 -> fun (V29) -> {'Idris.Prelude.Types.Right', V3} end; _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--exprSearchOpts-11719'(V0, V1, V2, V3, V4, V5, V6, V7, V8) -> case V8 of {'Idris.Prelude.Types.Just', E0} -> (fun (V9) -> case V9 of {'Idris.Builtin.MkPair', E1, E2} -> (fun (V10, V11) -> case V11 of {'Idris.Builtin.MkPair', E3, E4} -> (fun (V12, V13) -> fun (V14) -> begin (V18 = begin (V15 = (('Idris.Idris2.Core.Context':'un--getFullName'(V6, {'Idris.Core.Name.Resolved', V12}))(V14))), case V15 of {'Idris.Prelude.Types.Left', E5} -> (fun (V16) -> {'Idris.Prelude.Types.Left', V16} end(E5)); {'Idris.Prelude.Types.Right', E6} -> (fun (V17) -> ('Idris.Idris2.Core.Metadata':'un--findHoleLHS'(V5, V17, V14)) end(E6)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end), case V18 of {'Idris.Prelude.Types.Left', E7} -> (fun (V19) -> {'Idris.Prelude.Types.Left', V19} end(E7)); {'Idris.Prelude.Types.Right', E8} -> (fun (V20) -> begin (V33 = (('Idris.Idris2.Core.Context.Log':'un--log'(V6, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> ('Idris.Idris2.Prelude.Types.Strings':'un--++'(<<"LHS hole data "/utf8>>, ('Idris.Idris2.Prelude.Show':'dn--un--show_Show__(|((Builtin.Pair $a) $b),((Builtin.MkPair $a) $b)|)'('erased', 'erased', {'Idris.Builtin.MkPair', {'Idris.Prelude.Show.dn--un--__mkShow', fun (V21) -> ('Idris.Idris2.Core.Name':'dn--un--show_Show__Name'(V21)) end, fun (V22) -> fun (V23) -> ('Idris.Idris2.Core.Name':'dn--un--showPrec_Show__Name'(V22, V23)) end end}, {'Idris.Prelude.Show.dn--un--__mkShow', fun (V24) -> ('Idris.Idris2.Prelude.Show':'dn--un--show_Show__(Maybe $a)'('erased', {'Idris.Prelude.Show.dn--un--__mkShow', fun (V25) -> ('Idris.Idris2.Core.TT':'dn--un--show_Show__(Term $vars)'([], V25)) end, fun (V26) -> fun (V27) -> ('Idris.Idris2.Core.TT':'dn--un--showPrec_Show__(Term $vars)'([], V26, V27)) end end}, V24)) end, fun (V28) -> fun (V29) -> ('Idris.Idris2.Prelude.Show':'dn--un--showPrec_Show__(Maybe $a)'('erased', {'Idris.Prelude.Show.dn--un--__mkShow', fun (V30) -> ('Idris.Idris2.Core.TT':'dn--un--show_Show__(Term $vars)'([], V30)) end, fun (V31) -> fun (V32) -> ('Idris.Idris2.Core.TT':'dn--un--showPrec_Show__(Term $vars)'([], V31, V32)) end end}, V28, V29)) end end}}, {'Idris.Builtin.MkPair', V10, V20})))) end))(V14))), case V33 of {'Idris.Prelude.Types.Left', E9} -> (fun (V34) -> {'Idris.Prelude.Types.Left', V34} end(E9)); {'Idris.Prelude.Types.Right', E10} -> (fun (V35) -> begin (V47 = begin (V36 = {'Idris.Prelude.Types.Just', {'Idris.Builtin.MkPair', V10, {'Idris.Builtin.MkPair', V12, V13}}}), (('case--case block in exprSearchOpts-11818'(V0, V1, V2, V3, V4, V5, V6, V7, V10, V12, V13, V36, V20, V35, case V3 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E11, E12, E13, E14, E15, E16, E17, E18, E19, E20} -> (fun (V37, V38, V39, V40, V41, V42, V43, V44, V45, V46) -> V38 end(E11, E12, E13, E14, E15, E16, E17, E18, E19, E20)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end))(V14)) end), case V47 of {'Idris.Prelude.Types.Left', E21} -> (fun (V48) -> {'Idris.Prelude.Types.Left', V48} end(E21)); {'Idris.Prelude.Types.Right', E22} -> (fun (V49) -> begin (V92 = ('un--search'(V6, V5, V4, V2, case V13 of {'Idris.Core.Context.MkGlobalDef', E23, E24, E25, E26, E27, E28, E29, E30, E31, E32, E33, E34, E35, E36, E37, E38, E39, E40, E41, E42, E43} -> (fun (V50, V51, V52, V53, V54, V55, V56, V57, V58, V59, V60, V61, V62, V63, V64, V65, V66, V67, V68, V69, V70) -> V57 end(E23, E24, E25, E26, E27, E28, E29, E30, E31, E32, E33, E34, E35, E36, E37, E38, E39, E40, E41, E42, E43)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, V49, case V13 of {'Idris.Core.Context.MkGlobalDef', E44, E45, E46, E47, E48, E49, E50, E51, E52, E53, E54, E55, E56, E57, E58, E59, E60, E61, E62, E63, E64} -> (fun (V71, V72, V73, V74, V75, V76, V77, V78, V79, V80, V81, V82, V83, V84, V85, V86, V87, V88, V89, V90, V91) -> V73 end(E44, E45, E46, E47, E48, E49, E50, E51, E52, E53, E54, E55, E56, E57, E58, E59, E60, E61, E62, E63, E64)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, V10, V14))), case V92 of {'Idris.Prelude.Types.Left', E65} -> (fun (V93) -> {'Idris.Prelude.Types.Left', V93} end(E65)); {'Idris.Prelude.Types.Right', E66} -> (fun (V94) -> (('un--firstLinearOK'(V6, V5, V4, V2, V94))(V14)) end(E66)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E22)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E10)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E8)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E3, E4)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E1, E2)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E0)); {'Idris.Prelude.Types.Nothing'} -> (fun () -> fun (V95) -> ('Idris.Idris2.Core.Core':'dn--un--throw_Catchable__Core_Error'('erased', {'Idris.Core.Core.UndefinedName', V2, V1}, V95)) end end()); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--case block in exprSearchOpts,lookupHoleName-11648'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10) -> case V10 of [E0 | E1] -> (fun (V11, V12) -> case V12 of [] -> fun (V13) -> {'Idris.Prelude.Types.Right', {'Idris.Prelude.Types.Just', V11}} end; _ -> fun (V14) -> {'Idris.Prelude.Types.Right', {'Idris.Prelude.Types.Nothing'}} end end end(E0, E1)); _ -> fun (V15) -> {'Idris.Prelude.Types.Right', {'Idris.Prelude.Types.Nothing'}} end end. 'case--exprSearchOpts,lookupHoleName-11584'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9) -> case V9 of {'Idris.Prelude.Types.Just', E0} -> (fun (V10) -> case V10 of {'Idris.Builtin.MkPair', E1, E2} -> (fun (V11, V12) -> fun (V13) -> {'Idris.Prelude.Types.Right', {'Idris.Prelude.Types.Just', {'Idris.Builtin.MkPair', V8, {'Idris.Builtin.MkPair', V11, V12}}}} end end(E1, E2)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E0)); {'Idris.Prelude.Types.Nothing'} -> (fun () -> fun (V14) -> begin (V41 = (('Idris.Idris2.Core.Context':'un--lookupCtxtName'(V8, case V7 of {'Idris.Core.Context.MkDefs', E3, E4, E5, E6, E7, E8, E9, E10, E11, E12, E13, E14, E15, E16, E17, E18, E19, E20, E21, E22, E23, E24, E25, E26, E27, E28} -> (fun (V15, V16, V17, V18, V19, V20, V21, V22, V23, V24, V25, V26, V27, V28, V29, V30, V31, V32, V33, V34, V35, V36, V37, V38, V39, V40) -> V15 end(E3, E4, E5, E6, E7, E8, E9, E10, E11, E12, E13, E14, E15, E16, E17, E18, E19, E20, E21, E22, E23, E24, E25, E26, E27, E28)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end))(V14))), case V41 of {'Idris.Prelude.Types.Left', E29} -> (fun (V42) -> {'Idris.Prelude.Types.Left', V42} end(E29)); {'Idris.Prelude.Types.Right', E30} -> (fun (V43) -> case V43 of [E31 | E32] -> (fun (V44, V45) -> case V45 of [] -> {'Idris.Prelude.Types.Right', {'Idris.Prelude.Types.Just', V44}}; _ -> {'Idris.Prelude.Types.Right', {'Idris.Prelude.Types.Nothing'}} end end(E31, E32)); _ -> {'Idris.Prelude.Types.Right', {'Idris.Prelude.Types.Nothing'}} end end(E30)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end()); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--getLHSData,getLHS-11390'(V0, V1, V2, V3, V4, V5) -> case V5 of {'Idris.Core.TT.Ref', E0, E1, E2} -> (fun (V6, V7, V8) -> {'Idris.Prelude.Types.Just', {'Idris.TTImp.Interactive.ExprSearch.MkRecData', V3, V8, V4}} end(E0, E1, E2)); _ -> {'Idris.Prelude.Types.Nothing'} end. 'case--case block in search-11134'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13) -> case V13 of {'Idris.Core.Context.Hole', E15, E16} -> (fun (V14, V15) -> fun (V16) -> ('un--searchHole'(V7, V6, V5, V4, V3, V2, V9, V14, V1, V8, V11, V16)) end end(E15, E16)); {'Idris.Core.Context.BySearch', E17, E18, E19} -> (fun (V17, V18, V19) -> fun (V20) -> begin (V42 = ('Idris.Idris2.Core.Normalise':'un--getArity'(V7, [], V8, {'Idris.Core.Env.Nil'}, case V11 of {'Idris.Core.Context.MkGlobalDef', E20, E21, E22, E23, E24, E25, E26, E27, E28, E29, E30, E31, E32, E33, E34, E35, E36, E37, E38, E39, E40} -> (fun (V21, V22, V23, V24, V25, V26, V27, V28, V29, V30, V31, V32, V33, V34, V35, V36, V37, V38, V39, V40, V41) -> V23 end(E20, E21, E22, E23, E24, E25, E26, E27, E28, E29, E30, E31, E32, E33, E34, E35, E36, E37, E38, E39, E40)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, V20))), case V42 of {'Idris.Prelude.Types.Left', E41} -> (fun (V43) -> {'Idris.Prelude.Types.Left', V43} end(E41)); {'Idris.Prelude.Types.Right', E42} -> (fun (V44) -> ('un--searchHole'(V7, V6, V5, V4, V3, V2, V9, V44, V1, V8, V11, V20)) end(E42)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E17, E18, E19)); _ -> fun (V45) -> begin (V46 = (('Idris.Idris2.Core.Context.Log':'un--log'(V7, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> ('Idris.Idris2.Prelude.Types.Strings':'un--++'(('Idris.Idris2.Core.Name':'dn--un--show_Show__Name'(V0)), <<" not a hole"/utf8>>)) end))(V45))), case V46 of {'Idris.Prelude.Types.Left', E0} -> (fun (V47) -> {'Idris.Prelude.Types.Left', V47} end(E0)); {'Idris.Prelude.Types.Right', E1} -> (fun (V48) -> ('Idris.Idris2.Core.Core':'dn--un--throw_Catchable__Core_Error'('erased', {'Idris.Core.Core.InternalError', ('Idris.Idris2.Prelude.Types.Strings':'un--++'(<<"Not a hole: "/utf8>>, ('Idris.Idris2.Prelude.Types.Strings':'un--++'(('Idris.Idris2.Core.Name':'dn--un--show_Show__Name'(V9)), ('Idris.Idris2.Prelude.Types.Strings':'un--++'(<<" in "/utf8>>, ('Idris.Idris2.Prelude.Show':'dn--un--show_Show__(Maybe $a)'('erased', {'Idris.Prelude.Show.dn--un--__mkShow', fun (V49) -> ('Idris.Idris2.Core.Name':'dn--un--show_Show__Name'(V49)) end, fun (V50) -> fun (V51) -> ('Idris.Idris2.Core.Name':'dn--un--showPrec_Show__Name'(V50, V51)) end end}, ('Idris.Idris2.Prelude.Types':'dn--un--map_Functor__Maybe'('erased', 'erased', fun (V52) -> case V52 of {'Idris.TTImp.Interactive.ExprSearch.MkRecData', E2, E3, E4} -> (fun (V53, V54, V55) -> V54 end(E2, E3, E4)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end, case V2 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E5, E6, E7, E8, E9, E10, E11, E12, E13, E14} -> (fun (V56, V57, V58, V59, V60, V61, V62, V63, V64, V65) -> V58 end(E5, E6, E7, E8, E9, E10, E11, E12, E13, E14)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end))))))))))}, V45)) end(E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end. 'case--search-11103'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9) -> case V9 of {'Idris.Prelude.Types.Just', E2} -> (fun (V10) -> case V10 of {'Idris.Builtin.MkPair', E5, E6} -> (fun (V11, V12) -> case V12 of {'Idris.Builtin.MkPair', E9, E10} -> (fun (V13, V14) -> begin (V15 = {'Idris.Prelude.Types.Just', {'Idris.Builtin.MkPair', V11, {'Idris.Builtin.MkPair', V13, V14}}}), ('case--case block in search-11134'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V11, V13, V14, V15, case V14 of {'Idris.Core.Context.MkGlobalDef', E11, E12, E13, E14, E15, E16, E17, E18, E19, E20, E21, E22, E23, E24, E25, E26, E27, E28, E29, E30, E31} -> (fun (V16, V17, V18, V19, V20, V21, V22, V23, V24, V25, V26, V27, V28, V29, V30, V31, V32, V33, V34, V35, V36) -> V33 end(E11, E12, E13, E14, E15, E16, E17, E18, E19, E20, E21, E22, E23, E24, E25, E26, E27, E28, E29, E30, E31)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end)) end end(E9, E10)); _ -> fun (V37) -> begin (V38 = (('Idris.Idris2.Core.Context.Log':'un--log'(V7, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> ('Idris.Idris2.Prelude.Types.Strings':'un--++'(('Idris.Idris2.Core.Name':'dn--un--show_Show__Name'(V0)), <<" not found"/utf8>>)) end))(V37))), case V38 of {'Idris.Prelude.Types.Left', E7} -> (fun (V39) -> {'Idris.Prelude.Types.Left', V39} end(E7)); {'Idris.Prelude.Types.Right', E8} -> (fun (V40) -> ('Idris.Idris2.Core.Core':'dn--un--throw_Catchable__Core_Error'('erased', {'Idris.Core.Core.UndefinedName', V4, V0}, V37)) end(E8)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end end(E5, E6)); _ -> fun (V41) -> begin (V42 = (('Idris.Idris2.Core.Context.Log':'un--log'(V7, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> ('Idris.Idris2.Prelude.Types.Strings':'un--++'(('Idris.Idris2.Core.Name':'dn--un--show_Show__Name'(V0)), <<" not found"/utf8>>)) end))(V41))), case V42 of {'Idris.Prelude.Types.Left', E3} -> (fun (V43) -> {'Idris.Prelude.Types.Left', V43} end(E3)); {'Idris.Prelude.Types.Right', E4} -> (fun (V44) -> ('Idris.Idris2.Core.Core':'dn--un--throw_Catchable__Core_Error'('erased', {'Idris.Core.Core.UndefinedName', V4, V0}, V41)) end(E4)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end end(E2)); _ -> fun (V45) -> begin (V46 = (('Idris.Idris2.Core.Context.Log':'un--log'(V7, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> ('Idris.Idris2.Prelude.Types.Strings':'un--++'(('Idris.Idris2.Core.Name':'dn--un--show_Show__Name'(V0)), <<" not found"/utf8>>)) end))(V45))), case V46 of {'Idris.Prelude.Types.Left', E0} -> (fun (V47) -> {'Idris.Prelude.Types.Left', V47} end(E0)); {'Idris.Prelude.Types.Right', E1} -> (fun (V48) -> ('Idris.Idris2.Core.Core':'dn--un--throw_Catchable__Core_Error'('erased', {'Idris.Core.Core.UndefinedName', V4, V0}, V45)) end(E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end. 'case--case block in search,lookupHoleName-11028'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11) -> case V11 of [E0 | E1] -> (fun (V12, V13) -> case V13 of [] -> fun (V14) -> {'Idris.Prelude.Types.Right', {'Idris.Prelude.Types.Just', V12}} end; _ -> fun (V15) -> {'Idris.Prelude.Types.Right', {'Idris.Prelude.Types.Nothing'}} end end end(E0, E1)); _ -> fun (V16) -> {'Idris.Prelude.Types.Right', {'Idris.Prelude.Types.Nothing'}} end end. 'case--search,lookupHoleName-10960'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10) -> case V10 of {'Idris.Prelude.Types.Just', E0} -> (fun (V11) -> case V11 of {'Idris.Builtin.MkPair', E1, E2} -> (fun (V12, V13) -> fun (V14) -> {'Idris.Prelude.Types.Right', {'Idris.Prelude.Types.Just', {'Idris.Builtin.MkPair', V9, {'Idris.Builtin.MkPair', V12, V13}}}} end end(E1, E2)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E0)); {'Idris.Prelude.Types.Nothing'} -> (fun () -> fun (V15) -> begin (V16 = (('Idris.Idris2.Core.Context':'un--lookupCtxtName'(V9, V8))(V15))), case V16 of {'Idris.Prelude.Types.Left', E3} -> (fun (V17) -> {'Idris.Prelude.Types.Left', V17} end(E3)); {'Idris.Prelude.Types.Right', E4} -> (fun (V18) -> case V18 of [E5 | E6] -> (fun (V19, V20) -> case V20 of [] -> {'Idris.Prelude.Types.Right', {'Idris.Prelude.Types.Just', V19}}; _ -> {'Idris.Prelude.Types.Right', {'Idris.Prelude.Types.Nothing'}} end end(E5, E6)); _ -> {'Idris.Prelude.Types.Right', {'Idris.Prelude.Types.Nothing'}} end end(E4)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end()); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--case block in searchType-10844'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13) -> case V13 of 0 -> [('un--tryIntermediate'(V0, V10, V9, V8, V7, V6, V5, V4, V2, V3)) | []]; 1 -> []; _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--case block in searchType-10775'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14) -> case V14 of 0 -> []; 1 -> [('un--tryIntermediateRec'(V0, V10, V9, V8, V7, V6, V5, V4, V2, V3, case V5 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E0, E1, E2, E3, E4, E5, E6, E7, E8, E9} -> (fun (V15, V16, V17, V18, V19, V20, V21, V22, V23, V24) -> V17 end(E0, E1, E2, E3, E4, E5, E6, E7, E8, E9)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end)) | []]; _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--case block in searchType-10699'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15) -> case V15 of {'Idris.Prelude.Types.Nothing'} -> (fun () -> [] end()); {'Idris.Prelude.Types.Just', E0} -> (fun (V16) -> [fun (V17) -> ('un--tryRecursive'(V0, V10, V9, V8, V7, V6, V5, V4, V2, V3, V16, V17)) end | []] end(E0)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--case block in case block in searchType-10470'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18, V19, V20, V21) -> case V21 of {'Idris.Prelude.Types.Nothing'} -> (fun () -> [] end()); {'Idris.Prelude.Types.Just', E0} -> (fun (V22) -> [fun (V23) -> ('un--tryRecursive'(V0, V10, V9, V8, V7, V6, V5, V4, V2, V3, V22, V23)) end | []] end(E0)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--case block in case block in searchType-10366'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18, V19, V20, V21, V22) -> case V22 of 0 -> [('un--tryIntermediateRec'(V0, V10, V9, V8, V7, V6, V5, V4, V2, V3, case V5 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E0, E1, E2, E3, E4, E5, E6, E7, E8, E9} -> (fun (V23, V24, V25, V26, V27, V28, V29, V30, V31, V32) -> V25 end(E0, E1, E2, E3, E4, E5, E6, E7, E8, E9)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end)) | []]; 1 -> []; _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--case block in case block in searchType-10259'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18, V19, V20, V21, V22, V23) -> case V23 of 0 -> [('un--tryIntermediate'(V0, V10, V9, V8, V7, V6, V5, V4, V2, V3)) | []]; 1 -> []; _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--case block in case block in searchType-10106'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18, V19, V20, V21, V22, V23, V24) -> case V24 of 0 -> ('Idris.Idris2.Prelude.Types.List':'un--++'('erased', V21, ('Idris.Idris2.Prelude.Types.List':'un--++'('erased', V23, V20)))); 1 -> ('Idris.Idris2.Prelude.Types.List':'un--++'('erased', V23, ('Idris.Idris2.Prelude.Types.List':'un--++'('erased', V20, ('Idris.Idris2.Prelude.Types.List':'un--++'('erased', V21, V22)))))); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--case block in searchType-10037'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17) -> case V17 of 0 -> fun (V18) -> begin (V19 = ('Idris.Idris2.Core.Context':'un--getSearchData'(V10, V7, 1, V13, V18))), case V19 of {'Idris.Prelude.Types.Left', E0} -> (fun (V20) -> {'Idris.Prelude.Types.Left', V20} end(E0)); {'Idris.Prelude.Types.Right', E1} -> (fun (V21) -> begin (V37 = (('Idris.Idris2.Prelude.Interfaces':'un--concat'('erased', 'erased', {'Idris.Builtin.MkPair', {'Idris.Prelude.Interfaces.dn--un--__mkFoldable', fun (V25) -> fun (V26) -> fun (V27) -> fun (V28) -> fun (V29) -> ('Idris.Idris2.Prelude.Types':'dn--un--foldr_Foldable__List'('erased', 'erased', V27, V28, V29)) end end end end end, fun (V30) -> fun (V31) -> fun (V32) -> fun (V33) -> fun (V34) -> ('Idris.Idris2.Prelude.Types':'dn--un--foldl_Foldable__List'('erased', 'erased', V32, V33, V34)) end end end end end}, {'Idris.Prelude.Interfaces.dn--un--__mkMonoid', fun (V35) -> fun (V36) -> ('Idris.Idris2.Prelude.Types':'dn--un--<+>_Semigroup__(List $a)'('erased', V35, V36)) end end, ('Idris.Idris2.Prelude.Types':'dn--un--neutral_Monoid__(List $a)'('erased'))}}))(('Idris.Idris2.Prelude.Types':'dn--un--map_Functor__List'('erased', 'erased', fun (V22) -> ('Idris.Idris2.Builtin':'un--snd'('erased', 'erased', V22)) end, case V21 of {'Idris.Core.Context.MkSearchData', E2, E3} -> (fun (V23, V24) -> V24 end(E2, E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end))))), begin (V41 = (('Idris.Idris2.Core.Context.Log':'un--log'(V10, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> ('Idris.Idris2.Prelude.Types.Strings':'un--++'(<<"Hints found for "/utf8>>, ('Idris.Idris2.Prelude.Types.Strings':'un--++'(('Idris.Idris2.Core.Name':'dn--un--show_Show__Name'(V13)), ('Idris.Idris2.Prelude.Types.Strings':'un--++'(<<" "/utf8>>, ('Idris.Idris2.Prelude.Show':'dn--un--show_Show__(List $a)'('erased', {'Idris.Prelude.Show.dn--un--__mkShow', fun (V38) -> ('Idris.Idris2.Core.Name':'dn--un--show_Show__Name'(V38)) end, fun (V39) -> fun (V40) -> ('Idris.Idris2.Core.Name':'dn--un--showPrec_Show__Name'(V39, V40)) end end}, V37)))))))) end))(V18))), case V41 of {'Idris.Prelude.Types.Left', E4} -> (fun (V42) -> {'Idris.Prelude.Types.Left', V42} end(E4)); {'Idris.Prelude.Types.Right', E5} -> (fun (V43) -> begin (V44 = [('un--searchLocal'(V0, V10, V9, V8, V7, V6, V5, V4, V2, V3)) | [('un--searchNames'(V0, V10, V9, V8, V7, V6, V5, V4, V2, V3, V37)) | []]]), begin (V55 = ('case--case block in case block in searchType-10470'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V21, V37, V43, V44, case V5 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E6, E7, E8, E9, E10, E11, E12, E13, E14, E15} -> (fun (V45, V46, V47, V48, V49, V50, V51, V52, V53, V54) -> V47 end(E6, E7, E8, E9, E10, E11, E12, E13, E14, E15)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end))), begin (V66 = ('case--case block in case block in searchType-10366'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V21, V37, V43, V44, V55, case V5 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E16, E17, E18, E19, E20, E21, E22, E23, E24, E25} -> (fun (V56, V57, V58, V59, V60, V61, V62, V63, V64, V65) -> V64 end(E16, E17, E18, E19, E20, E21, E22, E23, E24, E25)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end))), begin (V77 = ('case--case block in case block in searchType-10259'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V21, V37, V43, V44, V55, V66, ('Idris.Idris2.Prelude.Basics':'un--not'(case V5 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E26, E27, E28, E29, E30, E31, E32, E33, E34, E35} -> (fun (V67, V68, V69, V70, V71, V72, V73, V74, V75, V76) -> V72 end(E26, E27, E28, E29, E30, E31, E32, E33, E34, E35)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end))))), begin (V88 = ('case--case block in case block in searchType-10106'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V21, V37, V43, V44, V55, V66, V77, case V5 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E36, E37, E38, E39, E40, E41, E42, E43, E44, E45} -> (fun (V78, V79, V80, V81, V82, V83, V84, V85, V86, V87) -> V82 end(E36, E37, E38, E39, E40, E41, E42, E43, E44, E45)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end))), ('un--getSuccessful'(V0, V10, V9, V8, V7, V6, V5, 0, V4, V2, V3, V88, V18)) end end end end end end(E5)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end; 1 -> fun (V89) -> ('un--noResult'('erased', V89)) end; _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--searchType-9992'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11) -> case V11 of {'Idris.Builtin.MkPair', E42, E43} -> (fun (V12, V13) -> case V12 of {'Idris.Core.TT.Ref', E86, E87, E88} -> (fun (V14, V15, V16) -> case V15 of {'Idris.Core.TT.TyCon', E131, E132} -> (fun (V17, V18) -> fun (V19) -> begin (V48 = begin (V47 = (('Idris.Idris2.Erlang.Data.IORef':'un--readIORef'('erased', 'erased', {'Idris.Prelude.IO.dn--un--__mkHasIO', {'Idris.Prelude.Interfaces.dn--un--__mkMonad', {'Idris.Prelude.Interfaces.dn--un--__mkApplicative', fun (V20) -> fun (V21) -> fun (V22) -> fun (V23) -> fun (V24) -> ('Idris.Idris2.Prelude.IO':'dn--un--map_Functor__IO'('erased', 'erased', V22, V23, V24)) end end end end end, fun (V25) -> fun (V26) -> fun (V27) -> V26 end end end, fun (V28) -> fun (V29) -> fun (V30) -> fun (V31) -> fun (V32) -> begin (V33 = (V30(V32))), begin (V34 = (V31(V32))), (V33(V34)) end end end end end end end}, fun (V35) -> fun (V36) -> fun (V37) -> fun (V38) -> fun (V39) -> begin (V40 = (V37(V39))), ((V38(V40))(V39)) end end end end end end, fun (V41) -> fun (V42) -> fun (V43) -> begin (V44 = (V42(V43))), (V44(V43)) end end end end}, fun (V45) -> fun (V46) -> V46 end end}, V10))(V19))), {'Idris.Prelude.Types.Right', V47} end), case V48 of {'Idris.Prelude.Types.Left', E133} -> (fun (V49) -> {'Idris.Prelude.Types.Left', V49} end(E133)); {'Idris.Prelude.Types.Right', E134} -> (fun (V50) -> (('case--case block in searchType-10037'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V18, V17, V16, V14, V13, V50, ('Idris.Idris2.Prelude.Types':'dn--un--==_Eq__Nat'(('Idris.Idris2.Prelude.Types.List':'un--length'('erased', V13)), V18))))(V19)) end(E134)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E131, E132)); _ -> fun (V51) -> begin (V52 = ('Idris.Idris2.Core.Context.Log':'un--logTerm'(V0, V10, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> <<"Searching locals only at"/utf8>> end, V2, V51))), case V52 of {'Idris.Prelude.Types.Left', E89} -> (fun (V53) -> {'Idris.Prelude.Types.Left', V53} end(E89)); {'Idris.Prelude.Types.Right', E90} -> (fun (V54) -> begin (V65 = ('case--case block in searchType-10844'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V54, ('Idris.Idris2.Prelude.Basics':'un--not'(case V5 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E91, E92, E93, E94, E95, E96, E97, E98, E99, E100} -> (fun (V55, V56, V57, V58, V59, V60, V61, V62, V63, V64) -> V60 end(E91, E92, E93, E94, E95, E96, E97, E98, E99, E100)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end))))), begin (V86 = ('case--case block in searchType-10775'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V54, V65, ('Idris.Idris2.Prelude.Basics':'un--||'(case V5 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E101, E102, E103, E104, E105, E106, E107, E108, E109, E110} -> (fun (V66, V67, V68, V69, V70, V71, V72, V73, V74, V75) -> V70 end(E101, E102, E103, E104, E105, E106, E107, E108, E109, E110)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, fun () -> ('Idris.Idris2.Prelude.Basics':'un--not'(case V5 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E111, E112, E113, E114, E115, E116, E117, E118, E119, E120} -> (fun (V76, V77, V78, V79, V80, V81, V82, V83, V84, V85) -> V84 end(E111, E112, E113, E114, E115, E116, E117, E118, E119, E120)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end)) end))))), ('un--getSuccessful'(V0, V10, V9, V8, V7, V6, V5, 0, V4, V2, V3, ('Idris.Idris2.Prelude.Types.List':'un--++'('erased', V65, ('Idris.Idris2.Prelude.Types.List':'un--++'('erased', [('un--searchLocal'(V0, V10, V9, V8, V7, V6, V5, V4, V2, V3)) | []], ('Idris.Idris2.Prelude.Types.List':'un--++'('erased', ('case--case block in searchType-10699'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V54, V65, V86, case V5 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E121, E122, E123, E124, E125, E126, E127, E128, E129, E130} -> (fun (V87, V88, V89, V90, V91, V92, V93, V94, V95, V96) -> V89 end(E121, E122, E123, E124, E125, E126, E127, E128, E129, E130)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end)), V86)))))), V51)) end end end(E90)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end end(E86, E87, E88)); _ -> fun (V97) -> begin (V98 = ('Idris.Idris2.Core.Context.Log':'un--logTerm'(V0, V10, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> <<"Searching locals only at"/utf8>> end, V2, V97))), case V98 of {'Idris.Prelude.Types.Left', E44} -> (fun (V99) -> {'Idris.Prelude.Types.Left', V99} end(E44)); {'Idris.Prelude.Types.Right', E45} -> (fun (V100) -> begin (V111 = ('case--case block in searchType-10844'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V100, ('Idris.Idris2.Prelude.Basics':'un--not'(case V5 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E46, E47, E48, E49, E50, E51, E52, E53, E54, E55} -> (fun (V101, V102, V103, V104, V105, V106, V107, V108, V109, V110) -> V106 end(E46, E47, E48, E49, E50, E51, E52, E53, E54, E55)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end))))), begin (V132 = ('case--case block in searchType-10775'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V100, V111, ('Idris.Idris2.Prelude.Basics':'un--||'(case V5 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E56, E57, E58, E59, E60, E61, E62, E63, E64, E65} -> (fun (V112, V113, V114, V115, V116, V117, V118, V119, V120, V121) -> V116 end(E56, E57, E58, E59, E60, E61, E62, E63, E64, E65)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, fun () -> ('Idris.Idris2.Prelude.Basics':'un--not'(case V5 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E66, E67, E68, E69, E70, E71, E72, E73, E74, E75} -> (fun (V122, V123, V124, V125, V126, V127, V128, V129, V130, V131) -> V130 end(E66, E67, E68, E69, E70, E71, E72, E73, E74, E75)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end)) end))))), ('un--getSuccessful'(V0, V10, V9, V8, V7, V6, V5, 0, V4, V2, V3, ('Idris.Idris2.Prelude.Types.List':'un--++'('erased', V111, ('Idris.Idris2.Prelude.Types.List':'un--++'('erased', [('un--searchLocal'(V0, V10, V9, V8, V7, V6, V5, V4, V2, V3)) | []], ('Idris.Idris2.Prelude.Types.List':'un--++'('erased', ('case--case block in searchType-10699'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V100, V111, V132, case V5 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E76, E77, E78, E79, E80, E81, E82, E83, E84, E85} -> (fun (V133, V134, V135, V136, V137, V138, V139, V140, V141, V142) -> V135 end(E76, E77, E78, E79, E80, E81, E82, E83, E84, E85)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end)), V132)))))), V97)) end end end(E45)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end end(E42, E43)); _ -> fun (V143) -> begin (V144 = ('Idris.Idris2.Core.Context.Log':'un--logTerm'(V0, V10, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> <<"Searching locals only at"/utf8>> end, V2, V143))), case V144 of {'Idris.Prelude.Types.Left', E0} -> (fun (V145) -> {'Idris.Prelude.Types.Left', V145} end(E0)); {'Idris.Prelude.Types.Right', E1} -> (fun (V146) -> begin (V157 = ('case--case block in searchType-10844'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V146, ('Idris.Idris2.Prelude.Basics':'un--not'(case V5 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E2, E3, E4, E5, E6, E7, E8, E9, E10, E11} -> (fun (V147, V148, V149, V150, V151, V152, V153, V154, V155, V156) -> V152 end(E2, E3, E4, E5, E6, E7, E8, E9, E10, E11)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end))))), begin (V178 = ('case--case block in searchType-10775'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V146, V157, ('Idris.Idris2.Prelude.Basics':'un--||'(case V5 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E12, E13, E14, E15, E16, E17, E18, E19, E20, E21} -> (fun (V158, V159, V160, V161, V162, V163, V164, V165, V166, V167) -> V162 end(E12, E13, E14, E15, E16, E17, E18, E19, E20, E21)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, fun () -> ('Idris.Idris2.Prelude.Basics':'un--not'(case V5 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E22, E23, E24, E25, E26, E27, E28, E29, E30, E31} -> (fun (V168, V169, V170, V171, V172, V173, V174, V175, V176, V177) -> V176 end(E22, E23, E24, E25, E26, E27, E28, E29, E30, E31)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end)) end))))), ('un--getSuccessful'(V0, V10, V9, V8, V7, V6, V5, 0, V4, V2, V3, ('Idris.Idris2.Prelude.Types.List':'un--++'('erased', V157, ('Idris.Idris2.Prelude.Types.List':'un--++'('erased', [('un--searchLocal'(V0, V10, V9, V8, V7, V6, V5, V4, V2, V3)) | []], ('Idris.Idris2.Prelude.Types.List':'un--++'('erased', ('case--case block in searchType-10699'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V146, V157, V178, case V5 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E32, E33, E34, E35, E36, E37, E38, E39, E40, E41} -> (fun (V179, V180, V181, V182, V183, V184, V185, V186, V187, V188) -> V181 end(E32, E33, E34, E35, E36, E37, E38, E39, E40, E41)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end)), V178)))))), V143)) end end end(E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end. 'case--searchType-9923'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18, V19, V20, V21, V22, V23, V24, V25) -> case V25 of {'Idris.Builtin.MkPair', E0, E1} -> (fun (V26, V27) -> {'Idris.Builtin.MkPair', {'Idris.Core.TT.Bind', V9, V20, {'Idris.Core.TT.Lam', V7, V6, V5, V4}, V26}, V27} end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--searchType-9763'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18, V19, V20, V21) -> case V21 of {'Idris.Builtin.MkPair', E0, E1} -> (fun (V22, V23) -> {'Idris.Builtin.MkPair', {'Idris.Core.TT.Bind', V10, V3, {'Idris.Core.TT.Lam', V8, V7, V6, V5}, V22}, V23} end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--case block in case block in tryIntermediateRec-9599'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16) -> case V5 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E0, E1, E2, E3, E4, E5, E6, E7, E8, E9} -> (fun (V17, V18, V19, V20, V21, V22, V23, V24, V25, V26) -> {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', V17, V18, {'Idris.Prelude.Types.Nothing'}, V20, V21, 0, V23, V24, V25, V26} end(E0, E1, E2, E3, E4, E5, E6, E7, E8, E9)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--case block in tryIntermediateRec-9456'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14) -> case V14 of 0 -> fun (V15) -> begin (V16 = ('Idris.Idris2.Core.UnifyState':'un--genVarName'(V10, V8, <<"cty"/utf8>>, V15))), case V16 of {'Idris.Prelude.Types.Left', E0} -> (fun (V17) -> {'Idris.Prelude.Types.Left', V17} end(E0)); {'Idris.Prelude.Types.Right', E1} -> (fun (V18) -> begin (V23 = ('Idris.Idris2.TTImp.Elab.Check':'un--metaVar'(V0, V10, V8, V7, ('Idris.Idris2.Algebra.Semiring':'un--erased'('erased', {'Idris.Algebra.Semiring.dn--un--__mkSemiring', fun (V19) -> fun (V20) -> ('Idris.Idris2.Algebra.ZeroOneOmega':'dn--un--|+|_Semiring__ZeroOneOmega'(V19, V20)) end end, ('Idris.Idris2.Algebra.ZeroOneOmega':'dn--un--plusNeutral_Semiring__ZeroOneOmega'()), fun (V21) -> fun (V22) -> ('Idris.Idris2.Algebra.ZeroOneOmega':'dn--un--|*|_Semiring__ZeroOneOmega'(V21, V22)) end end, ('Idris.Idris2.Algebra.ZeroOneOmega':'dn--un--timesNeutral_Semiring__ZeroOneOmega'())})), V4, V18, {'Idris.Core.TT.TType', V7}, V15))), case V23 of {'Idris.Prelude.Types.Left', E2} -> (fun (V24) -> {'Idris.Prelude.Types.Left', V24} end(E2)); {'Idris.Prelude.Types.Right', E3} -> (fun (V25) -> begin (V36 = case V5 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E4, E5, E6, E7, E8, E9, E10, E11, E12, E13} -> (fun (V26, V27, V28, V29, V30, V31, V32, V33, V34, V35) -> {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', V26, V27, {'Idris.Prelude.Types.Nothing'}, V29, V30, 0, V32, V33, V34, V35} end(E4, E5, E6, E7, E8, E9, E10, E11, E12, E13)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end), begin (V37 = ('Idris.Idris2.Core.Context.Log':'un--logTerm'(V0, V10, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> <<"Trying recursive search for"/utf8>> end, V3, V15))), case V37 of {'Idris.Prelude.Types.Left', E14} -> (fun (V38) -> {'Idris.Prelude.Types.Left', V38} end(E14)); {'Idris.Prelude.Types.Right', E15} -> (fun (V39) -> begin (V50 = begin (V47 = ('Idris.Idris2.Core.Context':'un--toFullNames'('erased', V10, {'Idris.Core.Context.dn--un--__mkHasNames', fun (V40) -> fun (V41) -> ('Idris.Idris2.Core.Context':'dn--un--full_HasNames__Name'(V40, V41)) end end, fun (V42) -> fun (V43) -> ('Idris.Idris2.Core.Context':'dn--un--resolved_HasNames__Name'(V42, V43)) end end}, case V1 of {'Idris.TTImp.Interactive.ExprSearch.MkRecData', E16, E17, E18} -> (fun (V44, V45, V46) -> V45 end(E16, E17, E18)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, V15))), case V47 of {'Idris.Prelude.Types.Left', E19} -> (fun (V48) -> {'Idris.Prelude.Types.Left', V48} end(E19)); {'Idris.Prelude.Types.Right', E20} -> (fun (V49) -> (('Idris.Idris2.Core.Context.Log':'un--log'(V10, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> ('Idris.Idris2.Core.Name':'dn--un--show_Show__Name'(V49)) end))(V15)) end(E20)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end), case V50 of {'Idris.Prelude.Types.Left', E21} -> (fun (V51) -> {'Idris.Prelude.Types.Left', V51} end(E21)); {'Idris.Prelude.Types.Right', E22} -> (fun (V52) -> begin (V66 = begin (V60 = ('Idris.Idris2.Core.Context':'un--toFullNames'('erased', V10, {'Idris.Core.Context.dn--un--__mkHasNames', fun (V53) -> fun (V54) -> ('Idris.Idris2.Core.Context':'dn--un--full_HasNames__(Term $vars)'('erased', V53, V54)) end end, fun (V55) -> fun (V56) -> ('Idris.Idris2.Core.Context':'dn--un--resolved_HasNames__(Term $vars)'('erased', V55, V56)) end end}, case V1 of {'Idris.TTImp.Interactive.ExprSearch.MkRecData', E23, E24, E25} -> (fun (V57, V58, V59) -> V59 end(E23, E24, E25)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, V15))), case V60 of {'Idris.Prelude.Types.Left', E26} -> (fun (V61) -> {'Idris.Prelude.Types.Left', V61} end(E26)); {'Idris.Prelude.Types.Right', E27} -> (fun (V62) -> ('Idris.Idris2.Core.Context.Log':'un--logTerm'(case V1 of {'Idris.TTImp.Interactive.ExprSearch.MkRecData', E28, E29, E30} -> (fun (V63, V64, V65) -> V63 end(E28, E29, E30)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, V10, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> <<"LHS"/utf8>> end, V62, V15)) end(E27)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end), case V66 of {'Idris.Prelude.Types.Left', E31} -> (fun (V67) -> {'Idris.Prelude.Types.Left', V67} end(E31)); {'Idris.Prelude.Types.Right', E32} -> (fun (V68) -> begin (V69 = ('un--tryRecursive'(V0, V10, V9, V8, V7, V6, V36, V4, V25, V2, V1, V15))), case V69 of {'Idris.Prelude.Types.Left', E33} -> (fun (V70) -> {'Idris.Prelude.Types.Left', V70} end(E33)); {'Idris.Prelude.Types.Right', E34} -> (fun (V71) -> (('un--makeHelper'(V0, V10, V9, V8, V7, V6, V36, V4, V25, V3, V71))(V15)) end(E34)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E32)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E22)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E15)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end; _ -> fun (V72) -> ('un--noResult'('erased', V72)) end end. 'case--tryIntermediateRec-9413'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12) -> case V12 of {'Idris.Prelude.Types.Just', E0} -> (fun (V13) -> fun (V14) -> begin (V18 = begin (V15 = (('Idris.Idris2.Core.Normalise':'un--nf'(V10, [], V11, {'Idris.Core.Env.Nil'}, V13))(V14))), case V15 of {'Idris.Prelude.Types.Left', E1} -> (fun (V16) -> {'Idris.Prelude.Types.Left', V16} end(E1)); {'Idris.Prelude.Types.Right', E2} -> (fun (V17) -> (('nested--17412-9249--in--un--isSingleCon'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V17))(V14)) end(E2)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end), case V18 of {'Idris.Prelude.Types.Left', E3} -> (fun (V19) -> {'Idris.Prelude.Types.Left', V19} end(E3)); {'Idris.Prelude.Types.Right', E4} -> (fun (V20) -> case V20 of 0 -> begin (V21 = ('Idris.Idris2.Core.UnifyState':'un--genVarName'(V10, V8, <<"cty"/utf8>>, V14))), case V21 of {'Idris.Prelude.Types.Left', E5} -> (fun (V22) -> {'Idris.Prelude.Types.Left', V22} end(E5)); {'Idris.Prelude.Types.Right', E6} -> (fun (V23) -> begin (V28 = ('Idris.Idris2.TTImp.Elab.Check':'un--metaVar'(V0, V10, V8, V7, ('Idris.Idris2.Algebra.Semiring':'un--erased'('erased', {'Idris.Algebra.Semiring.dn--un--__mkSemiring', fun (V24) -> fun (V25) -> ('Idris.Idris2.Algebra.ZeroOneOmega':'dn--un--|+|_Semiring__ZeroOneOmega'(V24, V25)) end end, ('Idris.Idris2.Algebra.ZeroOneOmega':'dn--un--plusNeutral_Semiring__ZeroOneOmega'()), fun (V26) -> fun (V27) -> ('Idris.Idris2.Algebra.ZeroOneOmega':'dn--un--|*|_Semiring__ZeroOneOmega'(V26, V27)) end end, ('Idris.Idris2.Algebra.ZeroOneOmega':'dn--un--timesNeutral_Semiring__ZeroOneOmega'())})), V4, V23, {'Idris.Core.TT.TType', V7}, V14))), case V28 of {'Idris.Prelude.Types.Left', E7} -> (fun (V29) -> {'Idris.Prelude.Types.Left', V29} end(E7)); {'Idris.Prelude.Types.Right', E8} -> (fun (V30) -> begin (V41 = case V5 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E9, E10, E11, E12, E13, E14, E15, E16, E17, E18} -> (fun (V31, V32, V33, V34, V35, V36, V37, V38, V39, V40) -> {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', V31, V32, {'Idris.Prelude.Types.Nothing'}, V34, V35, 0, V37, V38, V39, V40} end(E9, E10, E11, E12, E13, E14, E15, E16, E17, E18)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end), begin (V42 = ('Idris.Idris2.Core.Context.Log':'un--logTerm'(V0, V10, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> <<"Trying recursive search for"/utf8>> end, V3, V14))), case V42 of {'Idris.Prelude.Types.Left', E19} -> (fun (V43) -> {'Idris.Prelude.Types.Left', V43} end(E19)); {'Idris.Prelude.Types.Right', E20} -> (fun (V44) -> begin (V55 = begin (V52 = ('Idris.Idris2.Core.Context':'un--toFullNames'('erased', V10, {'Idris.Core.Context.dn--un--__mkHasNames', fun (V45) -> fun (V46) -> ('Idris.Idris2.Core.Context':'dn--un--full_HasNames__Name'(V45, V46)) end end, fun (V47) -> fun (V48) -> ('Idris.Idris2.Core.Context':'dn--un--resolved_HasNames__Name'(V47, V48)) end end}, case V1 of {'Idris.TTImp.Interactive.ExprSearch.MkRecData', E21, E22, E23} -> (fun (V49, V50, V51) -> V50 end(E21, E22, E23)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, V14))), case V52 of {'Idris.Prelude.Types.Left', E24} -> (fun (V53) -> {'Idris.Prelude.Types.Left', V53} end(E24)); {'Idris.Prelude.Types.Right', E25} -> (fun (V54) -> (('Idris.Idris2.Core.Context.Log':'un--log'(V10, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> ('Idris.Idris2.Core.Name':'dn--un--show_Show__Name'(V54)) end))(V14)) end(E25)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end), case V55 of {'Idris.Prelude.Types.Left', E26} -> (fun (V56) -> {'Idris.Prelude.Types.Left', V56} end(E26)); {'Idris.Prelude.Types.Right', E27} -> (fun (V57) -> begin (V71 = begin (V65 = ('Idris.Idris2.Core.Context':'un--toFullNames'('erased', V10, {'Idris.Core.Context.dn--un--__mkHasNames', fun (V58) -> fun (V59) -> ('Idris.Idris2.Core.Context':'dn--un--full_HasNames__(Term $vars)'('erased', V58, V59)) end end, fun (V60) -> fun (V61) -> ('Idris.Idris2.Core.Context':'dn--un--resolved_HasNames__(Term $vars)'('erased', V60, V61)) end end}, case V1 of {'Idris.TTImp.Interactive.ExprSearch.MkRecData', E28, E29, E30} -> (fun (V62, V63, V64) -> V64 end(E28, E29, E30)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, V14))), case V65 of {'Idris.Prelude.Types.Left', E31} -> (fun (V66) -> {'Idris.Prelude.Types.Left', V66} end(E31)); {'Idris.Prelude.Types.Right', E32} -> (fun (V67) -> ('Idris.Idris2.Core.Context.Log':'un--logTerm'(case V1 of {'Idris.TTImp.Interactive.ExprSearch.MkRecData', E33, E34, E35} -> (fun (V68, V69, V70) -> V68 end(E33, E34, E35)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, V10, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> <<"LHS"/utf8>> end, V67, V14)) end(E32)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end), case V71 of {'Idris.Prelude.Types.Left', E36} -> (fun (V72) -> {'Idris.Prelude.Types.Left', V72} end(E36)); {'Idris.Prelude.Types.Right', E37} -> (fun (V73) -> begin (V74 = ('un--tryRecursive'(V0, V10, V9, V8, V7, V6, V41, V4, V30, V2, V1, V14))), case V74 of {'Idris.Prelude.Types.Left', E38} -> (fun (V75) -> {'Idris.Prelude.Types.Left', V75} end(E38)); {'Idris.Prelude.Types.Right', E39} -> (fun (V76) -> (('un--makeHelper'(V0, V10, V9, V8, V7, V6, V41, V4, V30, V3, V76))(V14)) end(E39)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E37)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E27)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E20)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E8)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E6)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end; _ -> ('un--noResult'('erased', V14)) end end(E4)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E0)); {'Idris.Prelude.Types.Nothing'} -> (fun () -> fun (V77) -> ('un--noResult'('erased', V77)) end end()); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--tryIntermediateRec,isSingleCon-9294'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17) -> case V17 of {'Idris.Prelude.Types.Just', E0} -> (fun (V18) -> case V18 of {'Idris.Core.Context.TCon', E1, E2, E3, E4, E5, E6, E7, E8} -> (fun (V19, V20, V21, V22, V23, V24, V25, V26) -> case V25 of [E9 | E10] -> (fun (V27, V28) -> case V28 of [] -> fun (V29) -> {'Idris.Prelude.Types.Right', 0} end; _ -> fun (V30) -> {'Idris.Prelude.Types.Right', 1} end end end(E9, E10)); _ -> fun (V31) -> {'Idris.Prelude.Types.Right', 1} end end end(E1, E2, E3, E4, E5, E6, E7, E8)); _ -> fun (V32) -> {'Idris.Prelude.Types.Right', 1} end end end(E0)); _ -> fun (V33) -> {'Idris.Prelude.Types.Right', 1} end end. 'case--case block in tryIntermediateWith,applyLocal-9063'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18, V19, V20, V21, V22, V23, V24, V25, V26) -> case V7 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E0, E1, E2, E3, E4, E5, E6, E7, E8, E9} -> (fun (V27, V28, V29, V30, V31, V32, V33, V34, V35, V36) -> {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', V27, V28, V29, V30, V31, 0, V33, V34, V35, V36} end(E0, E1, E2, E3, E4, E5, E6, E7, E8, E9)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--tryIntermediateWith,applyLocal-8955'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18, V19, V20, V21, V22, V23, V24) -> case V24 of 0 -> fun (V25) -> begin (V26 = ('Idris.Idris2.Core.UnifyState':'un--genVarName'(V12, V10, <<"cty"/utf8>>, V25))), case V26 of {'Idris.Prelude.Types.Left', E0} -> (fun (V27) -> {'Idris.Prelude.Types.Left', V27} end(E0)); {'Idris.Prelude.Types.Right', E1} -> (fun (V28) -> begin (V33 = ('Idris.Idris2.TTImp.Elab.Check':'un--metaVar'(V0, V12, V10, V18, ('Idris.Idris2.Algebra.Semiring':'un--erased'('erased', {'Idris.Algebra.Semiring.dn--un--__mkSemiring', fun (V29) -> fun (V30) -> ('Idris.Idris2.Algebra.ZeroOneOmega':'dn--un--|+|_Semiring__ZeroOneOmega'(V29, V30)) end end, ('Idris.Idris2.Algebra.ZeroOneOmega':'dn--un--plusNeutral_Semiring__ZeroOneOmega'()), fun (V31) -> fun (V32) -> ('Idris.Idris2.Algebra.ZeroOneOmega':'dn--un--|*|_Semiring__ZeroOneOmega'(V31, V32)) end end, ('Idris.Idris2.Algebra.ZeroOneOmega':'dn--un--timesNeutral_Semiring__ZeroOneOmega'())})), V6, V28, {'Idris.Core.TT.TType', V9}, V25))), case V33 of {'Idris.Prelude.Types.Left', E2} -> (fun (V34) -> {'Idris.Prelude.Types.Left', V34} end(E2)); {'Idris.Prelude.Types.Right', E3} -> (fun (V35) -> begin (V46 = case V7 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E4, E5, E6, E7, E8, E9, E10, E11, E12, E13} -> (fun (V36, V37, V38, V39, V40, V41, V42, V43, V44, V45) -> {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', V36, V37, V38, V39, V40, 0, V42, V43, V44, V45} end(E4, E5, E6, E7, E8, E9, E10, E11, E12, E13)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end), begin (V47 = (('un--searchLocalWith'(V0, V12, V11, V10, V9, 0, V8, V46, V6, [{'Idris.Builtin.MkPair', V1, V2} | []], V35, V4))(V25))), case V47 of {'Idris.Prelude.Types.Left', E14} -> (fun (V48) -> {'Idris.Prelude.Types.Left', V48} end(E14)); {'Idris.Prelude.Types.Right', E15} -> (fun (V49) -> (('un--makeHelper'(V0, V12, V11, V10, V9, V8, V7, V6, V35, V17, V49))(V25)) end(E15)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end; 1 -> fun (V50) -> ('un--noResult'('erased', V50)) end; _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--case block in case block in case block in makeHelper-8670'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18, V19, V20, V21, V22, V23, V24, V25, V26, V27, V28, V29) -> case V7 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E0, E1, E2, E3, E4, E5, E6, E7, E8, E9} -> (fun (V30, V31, V32, V33, V34, V35, V36, V37, V38, V39) -> {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', V30, 1, V32, V13, V34, 0, 1, 0, V38, V39} end(E0, E1, E2, E3, E4, E5, E6, E7, E8, E9)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--case block in case block in case block in makeHelper-8475'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18, V19, V20, V21, V22, V23, V24, V25, V26, V27, V28, V29, V30) -> case V30 of {'Idris.Builtin.MkPair', E2, E3} -> (fun (V31, V32) -> case V31 of [E6 | E7] -> (fun (V33, V34) -> begin (V35 = {'Idris.TTImp.TTImp.IDef', V9, V19, ('Idris.Idris2.Builtin':'un--snd'('erased', 'erased', V33))}), fun (V36) -> begin (V37 = (('Idris.Idris2.Core.Context.Log':'un--log'(V12, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> ('Idris.Idris2.Prelude.Types.Strings':'un--++'(<<"Def: "/utf8>>, ('Idris.Idris2.TTImp.TTImp':'dn--un--show_Show__ImpDecl'(V35)))) end))(V36))), case V37 of {'Idris.Prelude.Types.Left', E8} -> (fun (V38) -> {'Idris.Prelude.Types.Left', V38} end(E8)); {'Idris.Prelude.Types.Right', E9} -> (fun (V39) -> {'Idris.Prelude.Types.Right', {'Idris.TTImp.Interactive.ExprSearch.Result', {'Idris.Builtin.MkPair', V24, [V35 | V2]}, fun (V40) -> begin (V41 = (V3(V40))), case V41 of {'Idris.Prelude.Types.Left', E10} -> (fun (V42) -> {'Idris.Prelude.Types.Left', V42} end(E10)); {'Idris.Prelude.Types.Right', E11} -> (fun (V43) -> (('un--makeHelper'(V0, V12, V11, V10, V9, V8, V7, V6, V5, V4, V43))(V40)) end(E11)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end}} end(E9)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end end(E6, E7)); _ -> fun (V44) -> begin (V45 = (('Idris.Idris2.Core.Context.Log':'un--log'(V12, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> <<"No results"/utf8>> end))(V44))), case V45 of {'Idris.Prelude.Types.Left', E4} -> (fun (V46) -> {'Idris.Prelude.Types.Left', V46} end(E4)); {'Idris.Prelude.Types.Right', E5} -> (fun (V47) -> ('un--noResult'('erased', V44)) end(E5)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end end(E2, E3)); _ -> fun (V48) -> begin (V49 = (('Idris.Idris2.Core.Context.Log':'un--log'(V12, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> <<"No results"/utf8>> end))(V48))), case V49 of {'Idris.Prelude.Types.Left', E0} -> (fun (V50) -> {'Idris.Prelude.Types.Left', V50} end(E0)); {'Idris.Prelude.Types.Right', E1} -> (fun (V51) -> ('un--noResult'('erased', V48)) end(E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end. 'case--case block in case block in makeHelper-8373'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18, V19, V20, V21, V22, V23, V24, V25, V26, V27) -> case V27 of {'Idris.Prelude.Types.Just', E0} -> (fun (V28) -> fun (V29) -> begin (V30 = (('Idris.Idris2.Core.Normalise':'un--logTermNF'([], V12, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> <<"Type of scope name"/utf8>> end, {'Idris.Core.Env.Nil'}, V28))(V29))), case V30 of {'Idris.Prelude.Types.Left', E1} -> (fun (V31) -> {'Idris.Prelude.Types.Left', V31} end(E1)); {'Idris.Prelude.Types.Right', E2} -> (fun (V32) -> begin (V43 = ('un--searchN'('erased', V12, V10, (1 + 0), ((((V15(case V7 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E3, E4, E5, E6, E7, E8, E9, E10, E11, E12} -> (fun (V33, V34, V35, V36, V37, V38, V39, V40, V41, V42) -> {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', V33, 1, V35, V13, V37, 0, 1, 0, V41, V42} end(E3, E4, E5, E6, E7, E8, E9, E10, E11, E12)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end))(V19))(0))(V28)), V29))), case V43 of {'Idris.Prelude.Types.Left', E13} -> (fun (V44) -> {'Idris.Prelude.Types.Left', V44} end(E13)); {'Idris.Prelude.Types.Right', E14} -> (fun (V45) -> case V45 of {'Idris.Builtin.MkPair', E17, E18} -> (fun (V46, V47) -> case V46 of [E21 | E22] -> (fun (V48, V49) -> begin (V50 = {'Idris.TTImp.TTImp.IDef', V9, V19, ('Idris.Idris2.Builtin':'un--snd'('erased', 'erased', V48))}), begin (V51 = (('Idris.Idris2.Core.Context.Log':'un--log'(V12, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> ('Idris.Idris2.Prelude.Types.Strings':'un--++'(<<"Def: "/utf8>>, ('Idris.Idris2.TTImp.TTImp':'dn--un--show_Show__ImpDecl'(V50)))) end))(V29))), case V51 of {'Idris.Prelude.Types.Left', E23} -> (fun (V52) -> {'Idris.Prelude.Types.Left', V52} end(E23)); {'Idris.Prelude.Types.Right', E24} -> (fun (V53) -> {'Idris.Prelude.Types.Right', {'Idris.TTImp.Interactive.ExprSearch.Result', {'Idris.Builtin.MkPair', V24, [V50 | V2]}, fun (V54) -> begin (V55 = (V3(V54))), case V55 of {'Idris.Prelude.Types.Left', E25} -> (fun (V56) -> {'Idris.Prelude.Types.Left', V56} end(E25)); {'Idris.Prelude.Types.Right', E26} -> (fun (V57) -> (('un--makeHelper'(V0, V12, V11, V10, V9, V8, V7, V6, V5, V4, V57))(V54)) end(E26)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end}} end(E24)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E21, E22)); _ -> begin (V58 = (('Idris.Idris2.Core.Context.Log':'un--log'(V12, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> <<"No results"/utf8>> end))(V29))), case V58 of {'Idris.Prelude.Types.Left', E19} -> (fun (V59) -> {'Idris.Prelude.Types.Left', V59} end(E19)); {'Idris.Prelude.Types.Right', E20} -> (fun (V60) -> ('un--noResult'('erased', V29)) end(E20)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E17, E18)); _ -> begin (V61 = (('Idris.Idris2.Core.Context.Log':'un--log'(V12, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> <<"No results"/utf8>> end))(V29))), case V61 of {'Idris.Prelude.Types.Left', E15} -> (fun (V62) -> {'Idris.Prelude.Types.Left', V62} end(E15)); {'Idris.Prelude.Types.Right', E16} -> (fun (V63) -> ('un--noResult'('erased', V29)) end(E16)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E14)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E2)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E0)); {'Idris.Prelude.Types.Nothing'} -> (fun () -> fun (V64) -> ('Idris.Idris2.Core.Core':'dn--un--throw_Catchable__Core_Error'('erased', {'Idris.Core.Core.InternalError', <<"Can\x{27}t happen"/utf8>>}, V64)) end end()); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--case block in makeHelper-8224'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15) -> case V15 of {'Idris.Prelude.Types.Just', E0} -> (fun (V16) -> fun (V17) -> begin (V46 = begin (V45 = (('Idris.Idris2.Erlang.Data.IORef':'un--readIORef'('erased', 'erased', {'Idris.Prelude.IO.dn--un--__mkHasIO', {'Idris.Prelude.Interfaces.dn--un--__mkMonad', {'Idris.Prelude.Interfaces.dn--un--__mkApplicative', fun (V18) -> fun (V19) -> fun (V20) -> fun (V21) -> fun (V22) -> ('Idris.Idris2.Prelude.IO':'dn--un--map_Functor__IO'('erased', 'erased', V20, V21, V22)) end end end end end, fun (V23) -> fun (V24) -> fun (V25) -> V24 end end end, fun (V26) -> fun (V27) -> fun (V28) -> fun (V29) -> fun (V30) -> begin (V31 = (V28(V30))), begin (V32 = (V29(V30))), (V31(V32)) end end end end end end end}, fun (V33) -> fun (V34) -> fun (V35) -> fun (V36) -> fun (V37) -> begin (V38 = (V35(V37))), ((V36(V38))(V37)) end end end end end end, fun (V39) -> fun (V40) -> fun (V41) -> begin (V42 = (V40(V41))), (V42(V41)) end end end end}, fun (V43) -> fun (V44) -> V44 end end}, V12))(V17))), {'Idris.Prelude.Types.Right', V45} end), case V46 of {'Idris.Prelude.Types.Left', E1} -> (fun (V47) -> {'Idris.Prelude.Types.Left', V47} end(E1)); {'Idris.Prelude.Types.Right', E2} -> (fun (V48) -> begin (V49 = ('Idris.Idris2.Core.UnifyState':'un--genVarName'(V12, V10, <<"cval"/utf8>>, V17))), case V49 of {'Idris.Prelude.Types.Left', E3} -> (fun (V50) -> {'Idris.Prelude.Types.Left', V50} end(E3)); {'Idris.Prelude.Types.Right', E4} -> (fun (V51) -> begin (V52 = ('Idris.Idris2.Core.UnifyState':'un--genCaseName'(V12, V10, <<"search"/utf8>>, V17))), case V52 of {'Idris.Prelude.Types.Left', E5} -> (fun (V53) -> {'Idris.Prelude.Types.Left', V53} end(E5)); {'Idris.Prelude.Types.Right', E6} -> (fun (V54) -> begin (V55 = (('Idris.Idris2.Core.Context':'un--inCurrentNS'(V12, V54))(V17))), case V55 of {'Idris.Prelude.Types.Left', E7} -> (fun (V56) -> {'Idris.Prelude.Types.Left', V56} end(E7)); {'Idris.Prelude.Types.Right', E8} -> (fun (V57) -> begin (V58 = {'Idris.Core.Env.::', {'Idris.Core.TT.Lam', V9, ('Idris.Idris2.Algebra.ZeroOneOmega':'dn--un--top_Top__ZeroOneOmega'()), {'Idris.Core.TT.Explicit'}, V5}, V6}), begin (V59 = ('Idris.Idris2.TTImp.Elab.Check':'un--metaVar'([V51 | V0], V12, V10, V9, ('Idris.Idris2.Algebra.ZeroOneOmega':'dn--un--top_Top__ZeroOneOmega'()), V58, V57, ('Idris.Idris2.Core.TT':'dn--un--weaken_Weaken__Term'('erased', 'erased', V4)), V17))), case V59 of {'Idris.Prelude.Types.Left', E9} -> (fun (V60) -> {'Idris.Prelude.Types.Left', V60} end(E9)); {'Idris.Prelude.Types.Right', E10} -> (fun (V61) -> begin (V62 = ('nested--16170-8164--in--un--toApp'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, 'erased', V61))), begin (V64 = ('Idris.Idris2.Core.Context':'un--updateDef'(V12, V57, fun (V63) -> {'Idris.Prelude.Types.Just', {'Idris.Core.Context.None'}} end, V17))), case V64 of {'Idris.Prelude.Types.Left', E11} -> (fun (V65) -> {'Idris.Prelude.Types.Left', V65} end(E11)); {'Idris.Prelude.Types.Right', E12} -> (fun (V66) -> begin (V67 = {'Idris.Core.TT.App', V9, {'Idris.Core.TT.Bind', V9, V51, {'Idris.Core.TT.Lam', V9, ('Idris.Idris2.Algebra.ZeroOneOmega':'dn--un--top_Top__ZeroOneOmega'()), {'Idris.Core.TT.Explicit'}, V5}, V62}, V1}), begin (V68 = (('Idris.Idris2.Core.Normalise':'un--logTermNF'(V0, V12, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> <<"Binding def"/utf8>> end, V6, V67))(V17))), case V68 of {'Idris.Prelude.Types.Left', E13} -> (fun (V69) -> {'Idris.Prelude.Types.Left', V69} end(E13)); {'Idris.Prelude.Types.Right', E14} -> (fun (V70) -> begin (V99 = begin (V98 = (('Idris.Idris2.Erlang.Data.IORef':'un--readIORef'('erased', 'erased', {'Idris.Prelude.IO.dn--un--__mkHasIO', {'Idris.Prelude.Interfaces.dn--un--__mkMonad', {'Idris.Prelude.Interfaces.dn--un--__mkApplicative', fun (V71) -> fun (V72) -> fun (V73) -> fun (V74) -> fun (V75) -> ('Idris.Idris2.Prelude.IO':'dn--un--map_Functor__IO'('erased', 'erased', V73, V74, V75)) end end end end end, fun (V76) -> fun (V77) -> fun (V78) -> V77 end end end, fun (V79) -> fun (V80) -> fun (V81) -> fun (V82) -> fun (V83) -> begin (V84 = (V81(V83))), begin (V85 = (V82(V83))), (V84(V85)) end end end end end end end}, fun (V86) -> fun (V87) -> fun (V88) -> fun (V89) -> fun (V90) -> begin (V91 = (V88(V90))), ((V89(V91))(V90)) end end end end end end, fun (V92) -> fun (V93) -> fun (V94) -> begin (V95 = (V93(V94))), (V95(V94)) end end end end}, fun (V96) -> fun (V97) -> V97 end end}, V12))(V17))), {'Idris.Prelude.Types.Right', V98} end), case V99 of {'Idris.Prelude.Types.Left', E15} -> (fun (V100) -> {'Idris.Prelude.Types.Left', V100} end(E15)); {'Idris.Prelude.Types.Right', E16} -> (fun (V101) -> begin (V128 = ('Idris.Idris2.Core.Context':'un--lookupTyExact'(V57, case V101 of {'Idris.Core.Context.MkDefs', E17, E18, E19, E20, E21, E22, E23, E24, E25, E26, E27, E28, E29, E30, E31, E32, E33, E34, E35, E36, E37, E38, E39, E40, E41, E42} -> (fun (V102, V103, V104, V105, V106, V107, V108, V109, V110, V111, V112, V113, V114, V115, V116, V117, V118, V119, V120, V121, V122, V123, V124, V125, V126, V127) -> V102 end(E17, E18, E19, E20, E21, E22, E23, E24, E25, E26, E27, E28, E29, E30, E31, E32, E33, E34, E35, E36, E37, E38, E39, E40, E41, E42)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, V17))), case V128 of {'Idris.Prelude.Types.Left', E43} -> (fun (V129) -> {'Idris.Prelude.Types.Left', V129} end(E43)); {'Idris.Prelude.Types.Right', E44} -> (fun (V130) -> case V130 of {'Idris.Prelude.Types.Just', E45} -> (fun (V131) -> begin (V132 = (('Idris.Idris2.Core.Normalise':'un--logTermNF'([], V12, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> <<"Type of scope name"/utf8>> end, {'Idris.Core.Env.Nil'}, V131))(V17))), case V132 of {'Idris.Prelude.Types.Left', E46} -> (fun (V133) -> {'Idris.Prelude.Types.Left', V133} end(E46)); {'Idris.Prelude.Types.Right', E47} -> (fun (V134) -> begin (V145 = ('un--searchN'('erased', V12, V10, (1 + 0), ((((V16(case V7 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E48, E49, E50, E51, E52, E53, E54, E55, E56, E57} -> (fun (V135, V136, V137, V138, V139, V140, V141, V142, V143, V144) -> {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', V135, 1, V137, V13, V139, 0, 1, 0, V143, V144} end(E48, E49, E50, E51, E52, E53, E54, E55, E56, E57)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end))(V57))(0))(V131)), V17))), case V145 of {'Idris.Prelude.Types.Left', E58} -> (fun (V146) -> {'Idris.Prelude.Types.Left', V146} end(E58)); {'Idris.Prelude.Types.Right', E59} -> (fun (V147) -> case V147 of {'Idris.Builtin.MkPair', E62, E63} -> (fun (V148, V149) -> case V148 of [E66 | E67] -> (fun (V150, V151) -> begin (V152 = {'Idris.TTImp.TTImp.IDef', V9, V57, ('Idris.Idris2.Builtin':'un--snd'('erased', 'erased', V150))}), begin (V153 = (('Idris.Idris2.Core.Context.Log':'un--log'(V12, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> ('Idris.Idris2.Prelude.Types.Strings':'un--++'(<<"Def: "/utf8>>, ('Idris.Idris2.TTImp.TTImp':'dn--un--show_Show__ImpDecl'(V152)))) end))(V17))), case V153 of {'Idris.Prelude.Types.Left', E68} -> (fun (V154) -> {'Idris.Prelude.Types.Left', V154} end(E68)); {'Idris.Prelude.Types.Right', E69} -> (fun (V155) -> {'Idris.Prelude.Types.Right', {'Idris.TTImp.Interactive.ExprSearch.Result', {'Idris.Builtin.MkPair', V67, [V152 | V2]}, fun (V156) -> begin (V157 = (V3(V156))), case V157 of {'Idris.Prelude.Types.Left', E70} -> (fun (V158) -> {'Idris.Prelude.Types.Left', V158} end(E70)); {'Idris.Prelude.Types.Right', E71} -> (fun (V159) -> (('un--makeHelper'(V0, V12, V11, V10, V9, V8, V7, V6, V5, V4, V159))(V156)) end(E71)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end}} end(E69)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E66, E67)); _ -> begin (V160 = (('Idris.Idris2.Core.Context.Log':'un--log'(V12, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> <<"No results"/utf8>> end))(V17))), case V160 of {'Idris.Prelude.Types.Left', E64} -> (fun (V161) -> {'Idris.Prelude.Types.Left', V161} end(E64)); {'Idris.Prelude.Types.Right', E65} -> (fun (V162) -> ('un--noResult'('erased', V17)) end(E65)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E62, E63)); _ -> begin (V163 = (('Idris.Idris2.Core.Context.Log':'un--log'(V12, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> <<"No results"/utf8>> end))(V17))), case V163 of {'Idris.Prelude.Types.Left', E60} -> (fun (V164) -> {'Idris.Prelude.Types.Left', V164} end(E60)); {'Idris.Prelude.Types.Right', E61} -> (fun (V165) -> ('un--noResult'('erased', V17)) end(E61)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E59)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E47)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E45)); {'Idris.Prelude.Types.Nothing'} -> (fun () -> ('Idris.Idris2.Core.Core':'dn--un--throw_Catchable__Core_Error'('erased', {'Idris.Core.Core.InternalError', <<"Can\x{27}t happen"/utf8>>}, V17)) end()); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E44)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E16)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E14)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E12)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E10)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E8)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E6)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E4)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E2)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E0)); {'Idris.Prelude.Types.Nothing'} -> (fun () -> fun (V166) -> ('un--noResult'('erased', V166)) end end()); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--makeHelper-8180'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13) -> case V13 of 0 -> fun (V14) -> ('un--noResult'('erased', V14)) end; _ -> begin (V15 = (V13 - 1)), fun (V16) -> begin (V17 = ('Idris.Idris2.Core.Context.Log':'un--logTerm'(V0, V12, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> <<"Local app"/utf8>> end, V1, V16))), case V17 of {'Idris.Prelude.Types.Left', E0} -> (fun (V18) -> {'Idris.Prelude.Types.Left', V18} end(E0)); {'Idris.Prelude.Types.Right', E1} -> (fun (V19) -> (('case--case block in makeHelper-8224'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V15, V19, case V7 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E2, E3, E4, E5, E6, E7, E8, E9, E10, E11} -> (fun (V20, V21, V22, V23, V24, V25, V26, V27, V28, V29) -> V29 end(E2, E3, E4, E5, E6, E7, E8, E9, E10, E11)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end))(V16)) end(E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end end. 'case--searchLocalWith,findPos-7867'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18, V19, V20, V21, V22, V23, V24, V25, V26, V27) -> case V27 of 0 -> fun (V28) -> begin (V29 = ('Idris.Idris2.Core.Context':'un--clearDefs'(V24, V28))), case V29 of {'Idris.Prelude.Types.Left', E0} -> (fun (V30) -> {'Idris.Prelude.Types.Left', V30} end(E0)); {'Idris.Prelude.Types.Right', E1} -> (fun (V31) -> begin (V32 = ('Idris.Idris2.Core.Normalise':'dn--un--quote_Quote__Closure'(V13, V0, V31, V6, V17, V28))), case V32 of {'Idris.Prelude.Types.Left', E2} -> (fun (V33) -> {'Idris.Prelude.Types.Left', V33} end(E2)); {'Idris.Prelude.Types.Right', E3} -> (fun (V34) -> begin (V35 = ('Idris.Idris2.Core.Normalise':'dn--un--quote_Quote__Closure'(V13, V0, V31, V6, V18, V28))), case V35 of {'Idris.Prelude.Types.Left', E4} -> (fun (V36) -> {'Idris.Prelude.Types.Left', V36} end(E4)); {'Idris.Prelude.Types.Right', E5} -> (fun (V37) -> ('un--getSuccessful'(V0, V13, V12, V11, V10, V8, V7, 1, V6, V5, V4, [fun (V38) -> begin (V39 = (('Idris.Idris2.Core.Normalise':'un--evalClosure'(V13, V0, V24, V17))(V38))), case V39 of {'Idris.Prelude.Types.Left', E6} -> (fun (V40) -> {'Idris.Prelude.Types.Left', V40} end(E6)); {'Idris.Prelude.Types.Right', E7} -> (fun (V41) -> (('nested--15254-7337--in--un--findPos'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V24, V23, fun (V42) -> ('Idris.Idris2.Core.TT':'un--apply'('erased', V10, {'Idris.Core.TT.Ref', V10, {'Idris.Core.TT.Func'}, V25}, [V34 | [V37 | [(V22(V42)) | []]]])) end, V41, V16))(V38)) end(E7)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end | [fun (V43) -> begin (V44 = (('Idris.Idris2.Core.Normalise':'un--evalClosure'(V13, V0, V24, V18))(V43))), case V44 of {'Idris.Prelude.Types.Left', E8} -> (fun (V45) -> {'Idris.Prelude.Types.Left', V45} end(E8)); {'Idris.Prelude.Types.Right', E9} -> (fun (V46) -> (('nested--15254-7337--in--un--findPos'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V24, V23, fun (V47) -> ('Idris.Idris2.Core.TT':'un--apply'('erased', V10, {'Idris.Core.TT.Ref', V10, {'Idris.Core.TT.Func'}, V26}, [V34 | [V37 | [(V22(V47)) | []]]])) end, V46, V16))(V43)) end(E9)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end | []]], V28)) end(E5)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end; 1 -> fun (V48) -> ('un--noResult'('erased', V48)) end; _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--case block in case block in searchLocalWith,findDirect-7615'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18, V19, V20, V21, V22, V23) -> case V23 of [] -> fun (V24) -> begin (V26 = (('Idris.Idris2.Core.Core':'un--traverse'('erased', 'erased', fun (V25) -> ('un--searchIfHole'(V0, V13, V12, V11, V10, V7, V4, V6, V25)) end, V19))(V24))), case V26 of {'Idris.Prelude.Types.Left', E0} -> (fun (V27) -> {'Idris.Prelude.Types.Left', V27} end(E0)); {'Idris.Prelude.Types.Right', E1} -> (fun (V28) -> (('un--mkCandidates'(V0, V13, V11, V10, (V16(V17)), [], V28))(V24)) end(E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end; _ -> fun (V29) -> ('un--noResult'('erased', V29)) end end. 'case--case block in case block in searchLocalWith,findDirect-7497'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18, V19, V20, V21, V22, V23, V24) -> case V24 of [] -> ('un--mkCandidates'(V0, V13, V11, V10, (V16(V17)), [], [])); _ -> fun (V25) -> ('Idris.Idris2.Core.Core':'dn--un--throw_Catchable__Core_Error'('erased', {'Idris.Core.Core.InternalError', <<"Can\x{27}t use directly"/utf8>>}, V25)) end end. 'case--case block in searchLocalWith,findDirect-7403'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18, V19, V20, V21, V22) -> case V22 of 0 -> fun (V23) -> ('Idris.Idris2.Core.UnifyState':'un--tryUnify'('erased', V13, V11, fun (V24) -> begin (V25 = case ('Idris.Idris2.Prelude.Basics':'un--&&'(('Idris.Idris2.Prelude.Basics':'un--not'(('Idris.Idris2.Data.List':'un--isNil'('erased', V19)))), fun () -> V9 end)) of 0 -> ('Idris.Idris2.Core.Core':'dn--un--throw_Catchable__Core_Error'('erased', {'Idris.Core.Core.InternalError', <<"Must apply function"/utf8>>}, V24)); 1 -> {'Idris.Prelude.Types.Right', {'Idris.Builtin.MkUnit'}}; _ -> ('erlang':'throw'("Error: Unreachable branch")) end), case V25 of {'Idris.Prelude.Types.Left', E0} -> (fun (V26) -> {'Idris.Prelude.Types.Left', V26} end(E0)); {'Idris.Prelude.Types.Right', E1} -> (fun (V27) -> begin (V44 = ((((((('Idris.Idris2.Core.Unify':'un--unify'('erased', {'Idris.Core.Unify.dn--un--__mkUnify', fun (V28) -> fun (V29) -> fun (V30) -> fun (V31) -> fun (V32) -> fun (V33) -> fun (V34) -> fun (V35) -> ('Idris.Idris2.Core.Unify':'dn--un--unifyD_Unify__NF'(V28, V29, V30, V31, V32, V33, V34, V35)) end end end end end end end end, fun (V36) -> fun (V37) -> fun (V38) -> fun (V39) -> fun (V40) -> fun (V41) -> fun (V42) -> fun (V43) -> ('Idris.Idris2.Core.Unify':'dn--un--unifyWithLazyD_Unify__NF'(V36, V37, V38, V39, V40, V41, V42, V43)) end end end end end end end end}, V0, V13, V11))(('Idris.Idris2.Core.Unify':'un--inTerm'())))(V10))(V6))(V14))(V15))(V24))), case V44 of {'Idris.Prelude.Types.Left', E2} -> (fun (V45) -> {'Idris.Prelude.Types.Left', V45} end(E2)); {'Idris.Prelude.Types.Right', E3} -> (fun (V46) -> (('case--case block in case block in searchLocalWith,findDirect-7497'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18, V19, V20, V21, V27, V46, case V46 of {'Idris.Core.Unify.MkUnifyResult', E4, E5, E6, E7} -> (fun (V47, V48, V49, V50) -> V47 end(E4, E5, E6, E7)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end))(V24)) end(E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end, fun (V51) -> begin (V68 = ((((((('Idris.Idris2.Core.Unify':'un--unify'('erased', {'Idris.Core.Unify.dn--un--__mkUnify', fun (V52) -> fun (V53) -> fun (V54) -> fun (V55) -> fun (V56) -> fun (V57) -> fun (V58) -> fun (V59) -> ('Idris.Idris2.Core.Unify':'dn--un--unifyD_Unify__NF'(V52, V53, V54, V55, V56, V57, V58, V59)) end end end end end end end end, fun (V60) -> fun (V61) -> fun (V62) -> fun (V63) -> fun (V64) -> fun (V65) -> fun (V66) -> fun (V67) -> ('Idris.Idris2.Core.Unify':'dn--un--unifyWithLazyD_Unify__NF'(V60, V61, V62, V63, V64, V65, V66, V67)) end end end end end end end end}, V0, V13, V11))(('Idris.Idris2.Core.Unify':'un--inTerm'())))(V10))(V6))(V14))(V20))(V51))), case V68 of {'Idris.Prelude.Types.Left', E8} -> (fun (V69) -> {'Idris.Prelude.Types.Left', V69} end(E8)); {'Idris.Prelude.Types.Right', E9} -> (fun (V70) -> (('case--case block in case block in searchLocalWith,findDirect-7615'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18, V19, V20, V21, V70, case V70 of {'Idris.Core.Unify.MkUnifyResult', E10, E11, E12, E13} -> (fun (V71, V72, V73, V74) -> V71 end(E10, E11, E12, E13)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end))(V51)) end(E9)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end, V23)) end; 1 -> fun (V75) -> ('un--noResult'('erased', V75)) end; _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--searchLocalWith,findDirect-7356'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18, V19) -> case V19 of {'Idris.Builtin.MkPair', E0, E1} -> (fun (V20, V21) -> begin (V22 = {'Idris.Builtin.MkPair', V20, V21}), ('case--case block in searchLocalWith,findDirect-7403'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18, V20, V21, V22, ('un--usableLocal'('erased', V10, V6, V15)))) end end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--case block in tryRecursive-7234'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16) -> case V16 of {'Idris.Builtin.MkPair', E0, E1} -> (fun (V17, V18) -> fun (V19) -> begin (V24 = ('Idris.Idris2.Core.Context':'un--toFullNames'('erased', V10, {'Idris.Core.Context.dn--un--__mkHasNames', fun (V20) -> fun (V21) -> ('Idris.Idris2.Core.Context':'dn--un--full_HasNames__(Term $vars)'('erased', V20, V21)) end end, fun (V22) -> fun (V23) -> ('Idris.Idris2.Core.Context':'dn--un--resolved_HasNames__(Term $vars)'('erased', V22, V23)) end end}, V17, V19))), case V24 of {'Idris.Prelude.Types.Left', E2} -> (fun (V25) -> {'Idris.Prelude.Types.Left', V25} end(E2)); {'Idris.Prelude.Types.Right', E3} -> (fun (V26) -> {'Idris.Prelude.Types.Right', {'Idris.Builtin.MkPair', V26, V18}} end(E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--case block in tryRecursive-7202'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14) -> case V5 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E0, E1, E2, E3, E4, E5, E6, E7, E8, E9} -> (fun (V15, V16, V17, V18, V19, V20, V21, V22, V23, V24) -> {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', V15, V16, {'Idris.Prelude.Types.Nothing'}, V18, V19, V20, V21, V22, V23, V24} end(E0, E1, E2, E3, E4, E5, E6, E7, E8, E9)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--tryRecursive-7085'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12) -> case V12 of {'Idris.Prelude.Types.Nothing'} -> (fun () -> fun (V13) -> ('un--noResult'('erased', V13)) end end()); {'Idris.Prelude.Types.Just', E0} -> (fun (V14) -> fun (V15) -> begin (V32 = begin (V16 = (('Idris.Idris2.Core.Normalise':'un--nf'(V10, V0, V11, V4, V3))(V15))), case V16 of {'Idris.Prelude.Types.Left', E1} -> (fun (V17) -> {'Idris.Prelude.Types.Left', V17} end(E1)); {'Idris.Prelude.Types.Right', E2} -> (fun (V18) -> (('un--searchName'(V0, V10, V9, V8, V7, V6, case V5 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E3, E4, E5, E6, E7, E8, E9, E10, E11, E12} -> (fun (V19, V20, V21, V22, V23, V24, V25, V26, V27, V28) -> {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', V19, V20, {'Idris.Prelude.Types.Nothing'}, V22, V23, V24, V25, V26, V27, V28} end(E3, E4, E5, E6, E7, E8, E9, E10, E11, E12)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, V4, V18, V2, {'Idris.Builtin.MkPair', case V1 of {'Idris.TTImp.Interactive.ExprSearch.MkRecData', E13, E14, E15} -> (fun (V29, V30, V31) -> V30 end(E13, E14, E15)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, V14}))(V15)) end(E2)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end), case V32 of {'Idris.Prelude.Types.Left', E16} -> (fun (V33) -> {'Idris.Prelude.Types.Left', V33} end(E16)); {'Idris.Prelude.Types.Right', E17} -> (fun (V34) -> begin (V63 = begin (V62 = (('Idris.Idris2.Erlang.Data.IORef':'un--readIORef'('erased', 'erased', {'Idris.Prelude.IO.dn--un--__mkHasIO', {'Idris.Prelude.Interfaces.dn--un--__mkMonad', {'Idris.Prelude.Interfaces.dn--un--__mkApplicative', fun (V35) -> fun (V36) -> fun (V37) -> fun (V38) -> fun (V39) -> ('Idris.Idris2.Prelude.IO':'dn--un--map_Functor__IO'('erased', 'erased', V37, V38, V39)) end end end end end, fun (V40) -> fun (V41) -> fun (V42) -> V41 end end end, fun (V43) -> fun (V44) -> fun (V45) -> fun (V46) -> fun (V47) -> begin (V48 = (V45(V47))), begin (V49 = (V46(V47))), (V48(V49)) end end end end end end end}, fun (V50) -> fun (V51) -> fun (V52) -> fun (V53) -> fun (V54) -> begin (V55 = (V52(V54))), ((V53(V55))(V54)) end end end end end end, fun (V56) -> fun (V57) -> fun (V58) -> begin (V59 = (V57(V58))), (V59(V58)) end end end end}, fun (V60) -> fun (V61) -> V61 end end}, V10))(V15))), {'Idris.Prelude.Types.Right', V62} end), case V63 of {'Idris.Prelude.Types.Left', E18} -> (fun (V64) -> {'Idris.Prelude.Types.Left', V64} end(E18)); {'Idris.Prelude.Types.Right', E19} -> (fun (V65) -> begin (V77 = (('un--traverse'('erased', 'erased', fun (V66) -> case V66 of {'Idris.Builtin.MkPair', E20, E21} -> (fun (V67, V68) -> fun (V69) -> begin (V74 = ('Idris.Idris2.Core.Context':'un--toFullNames'('erased', V10, {'Idris.Core.Context.dn--un--__mkHasNames', fun (V70) -> fun (V71) -> ('Idris.Idris2.Core.Context':'dn--un--full_HasNames__(Term $vars)'('erased', V70, V71)) end end, fun (V72) -> fun (V73) -> ('Idris.Idris2.Core.Context':'dn--un--resolved_HasNames__(Term $vars)'('erased', V72, V73)) end end}, V67, V69))), case V74 of {'Idris.Prelude.Types.Left', E22} -> (fun (V75) -> {'Idris.Prelude.Types.Left', V75} end(E22)); {'Idris.Prelude.Types.Right', E23} -> (fun (V76) -> {'Idris.Prelude.Types.Right', {'Idris.Builtin.MkPair', V76, V68}} end(E23)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E20, E21)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end, V34))(V15))), case V77 of {'Idris.Prelude.Types.Left', E24} -> (fun (V78) -> {'Idris.Prelude.Types.Left', V78} end(E24)); {'Idris.Prelude.Types.Right', E25} -> (fun (V79) -> (('un--filterS'('erased', fun (V80) -> ('nested--14442-6601--in--un--structDiffTm'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', case V1 of {'Idris.TTImp.Interactive.ExprSearch.MkRecData', E26, E27, E28} -> (fun (V81, V82, V83) -> V83 end(E26, E27, E28)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, V80)) end, V79))(V15)) end(E25)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E19)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E17)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E0)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--case block in tryRecursive,structDiff-7013'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17) -> case V17 of {'Idris.Builtin.MkPair', E0, E1} -> (fun (V18, V19) -> ('nested--14442-6599--in--un--appsDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V15, V18, V16, V19)) end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--tryRecursive,structDiff-6973'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15) -> case V15 of {'Idris.Builtin.MkPair', E0, E1} -> (fun (V16, V17) -> ('case--case block in tryRecursive,structDiff-7013'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V13, V14, V16, V17, ('Idris.Idris2.Core.TT':'un--getFnArgs'('erased', V13)))) end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--case block in searchNames,visible-6385'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17) -> case V17 of 0 -> fun (V18) -> {'Idris.Prelude.Types.Right', {'Idris.Prelude.Types.Just', {'Idris.Builtin.MkPair', V12, V15}}} end; 1 -> fun (V19) -> {'Idris.Prelude.Types.Right', {'Idris.Prelude.Types.Nothing'}} end; _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--searchNames,visible-6350'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15) -> case V15 of {'Idris.Prelude.Types.Just', E0} -> (fun (V16) -> begin (V17 = {'Idris.Prelude.Types.Just', V16}), ('case--case block in searchNames,visible-6385'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V16, V17, ('Idris.Idris2.Core.Context':'un--visibleInAny'(V13, V12, case V16 of {'Idris.Core.Context.MkGlobalDef', E1, E2, E3, E4, E5, E6, E7, E8, E9, E10, E11, E12, E13, E14, E15, E16, E17, E18, E19, E20, E21} -> (fun (V18, V19, V20, V21, V22, V23, V24, V25, V26, V27, V28, V29, V30, V31, V32, V33, V34, V35, V36, V37, V38) -> V27 end(E1, E2, E3, E4, E5, E6, E7, E8, E9, E10, E11, E12, E13, E14, E15, E16, E17, E18, E19, E20, E21)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end)))) end end(E0)); {'Idris.Prelude.Types.Nothing'} -> (fun () -> fun (V39) -> {'Idris.Prelude.Types.Right', {'Idris.Prelude.Types.Nothing'}} end end()); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--case block in case block in getSuccessful-6218'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16) -> case V16 of {'Idris.Builtin.MkPair', E0, E1} -> (fun (V17, V18) -> fun (V19) -> ('un--one'('erased', {'Idris.Builtin.MkPair', V18, []}, V19)) end end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--case block in getSuccessful-6146'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13) -> case V13 of 0 -> fun (V14) -> begin (V43 = begin (V42 = (('Idris.Idris2.Erlang.Data.IORef':'un--readIORef'('erased', 'erased', {'Idris.Prelude.IO.dn--un--__mkHasIO', {'Idris.Prelude.Interfaces.dn--un--__mkMonad', {'Idris.Prelude.Interfaces.dn--un--__mkApplicative', fun (V15) -> fun (V16) -> fun (V17) -> fun (V18) -> fun (V19) -> ('Idris.Idris2.Prelude.IO':'dn--un--map_Functor__IO'('erased', 'erased', V17, V18, V19)) end end end end end, fun (V20) -> fun (V21) -> fun (V22) -> V21 end end end, fun (V23) -> fun (V24) -> fun (V25) -> fun (V26) -> fun (V27) -> begin (V28 = (V25(V27))), begin (V29 = (V26(V27))), (V28(V29)) end end end end end end end}, fun (V30) -> fun (V31) -> fun (V32) -> fun (V33) -> fun (V34) -> begin (V35 = (V32(V34))), ((V33(V35))(V34)) end end end end end end, fun (V36) -> fun (V37) -> fun (V38) -> begin (V39 = (V37(V38))), (V39(V38)) end end end end}, fun (V40) -> fun (V41) -> V41 end end}, V11))(V14))), {'Idris.Prelude.Types.Right', V42} end), case V43 of {'Idris.Prelude.Types.Left', E0} -> (fun (V44) -> {'Idris.Prelude.Types.Left', V44} end(E0)); {'Idris.Prelude.Types.Right', E1} -> (fun (V45) -> begin (V60 = ('Idris.Idris2.Prelude.Types':'un--maybe'('erased', 'erased', fun () -> <<"arg"/utf8>> end, fun () -> fun (V46) -> ('Idris.Idris2.Prelude.Types.Strings':'un--++'(('Idris.Idris2.Core.Name':'un--nameRoot'(case V46 of {'Idris.TTImp.Interactive.ExprSearch.MkRecData', E2, E3, E4} -> (fun (V47, V48, V49) -> V48 end(E2, E3, E4)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end)), <<"_rhs"/utf8>>)) end end, case V6 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E5, E6, E7, E8, E9, E10, E11, E12, E13, E14} -> (fun (V50, V51, V52, V53, V54, V55, V56, V57, V58, V59) -> V52 end(E5, E6, E7, E8, E9, E10, E11, E12, E13, E14)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end))), begin (V62 = ('Idris.Idris2.TTImp.Utils':'un--uniqueName'(V45, ('Idris.Idris2.Prelude.Types':'dn--un--map_Functor__List'('erased', 'erased', fun (V61) -> ('Idris.Idris2.Core.Name':'un--nameRoot'(V61)) end, V0)), V60, V14))), case V62 of {'Idris.Prelude.Types.Left', E15} -> (fun (V63) -> {'Idris.Prelude.Types.Left', V63} end(E15)); {'Idris.Prelude.Types.Right', E16} -> (fun (V64) -> begin (V65 = (('Idris.Idris2.Core.UnifyState':'un--newMeta'(V0, V11, V9, V8, V7, V4, {'Idris.Core.Name.UN', V64}, V3, {'Idris.Core.Context.Hole', ('Idris.Idris2.Core.Env':'un--length'('erased', 'erased', V4)), ('Idris.Idris2.Core.Context':'un--holeInit'(1))}, 1))(V14))), case V65 of {'Idris.Prelude.Types.Left', E17} -> (fun (V66) -> {'Idris.Prelude.Types.Left', V66} end(E17)); {'Idris.Prelude.Types.Right', E18} -> (fun (V67) -> case V67 of {'Idris.Builtin.MkPair', E19, E20} -> (fun (V68, V69) -> ('un--one'('erased', {'Idris.Builtin.MkPair', V69, []}, V14)) end(E19, E20)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E18)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E16)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end; 1 -> fun (V70) -> ('un--noResult'('erased', V70)) end; _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--getSuccessful-6118'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12) -> case V12 of {'Idris.TTImp.Interactive.ExprSearch.NoMore'} -> (fun () -> begin (V13 = {'Idris.TTImp.Interactive.ExprSearch.NoMore'}), ('case--case block in getSuccessful-6146'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V13, ('Idris.Idris2.Prelude.Basics':'un--&&'(V5, fun () -> case V6 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E0, E1, E2, E3, E4, E5, E6, E7, E8, E9} -> (fun (V14, V15, V16, V17, V18, V19, V20, V21, V22, V23) -> V14 end(E0, E1, E2, E3, E4, E5, E6, E7, E8, E9)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end)))) end end()); _ -> fun (V24) -> {'Idris.Prelude.Types.Right', V12} end end. 'case--case block in case block in case block in searchName-5878'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18, V19, V20, V21, V22, V23, V24, V25) -> case V25 of [] -> fun (V26) -> begin (V29 = (('Idris.Idris2.Core.Core':'un--traverse'('erased', 'erased', fun (V27) -> ('un--searchIfHole'(V0, V11, V10, V9, V8, V6, V3, V5, V27)) end, ('Idris.Idris2.Data.List':'un--filter'('erased', fun (V28) -> ('un--explicit'('erased', V28)) end, V19))))(V26))), case V29 of {'Idris.Prelude.Types.Left', E0} -> (fun (V30) -> {'Idris.Prelude.Types.Left', V30} end(E0)); {'Idris.Prelude.Types.Right', E1} -> (fun (V31) -> begin (V33 = (('Idris.Idris2.Core.Core':'un--traverse'('erased', 'erased', fun (V32) -> ('un--searchIfHole'(V0, V11, V10, V9, V8, V6, V3, V5, V32)) end, V19))(V26))), case V33 of {'Idris.Prelude.Types.Left', E2} -> (fun (V34) -> {'Idris.Prelude.Types.Left', V34} end(E2)); {'Idris.Prelude.Types.Right', E3} -> (fun (V35) -> (('un--mkCandidates'(V0, V11, V9, V8, {'Idris.Core.TT.Ref', V8, V16, V1}, [], V35))(V26)) end(E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end; _ -> fun (V36) -> ('un--noResult'('erased', V36)) end end. 'case--case block in case block in searchName-5793'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18, V19) -> case V19 of {'Idris.Builtin.MkPair', E0, E1} -> (fun (V20, V21) -> fun (V22) -> begin (V23 = ('Idris.Idris2.Core.Normalise':'un--logNF'(V0, V11, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + 0))))), fun () -> <<"Target"/utf8>> end, V5, V4, V22))), case V23 of {'Idris.Prelude.Types.Left', E2} -> (fun (V24) -> {'Idris.Prelude.Types.Left', V24} end(E2)); {'Idris.Prelude.Types.Right', E3} -> (fun (V25) -> begin (V26 = ('Idris.Idris2.Core.Normalise':'un--logNF'(V0, V11, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> <<"App type"/utf8>> end, V5, V21, V22))), case V26 of {'Idris.Prelude.Types.Left', E4} -> (fun (V27) -> {'Idris.Prelude.Types.Left', V27} end(E4)); {'Idris.Prelude.Types.Right', E5} -> (fun (V28) -> begin (V45 = ((((((('Idris.Idris2.Core.Unify':'un--unify'('erased', {'Idris.Core.Unify.dn--un--__mkUnify', fun (V29) -> fun (V30) -> fun (V31) -> fun (V32) -> fun (V33) -> fun (V34) -> fun (V35) -> fun (V36) -> ('Idris.Idris2.Core.Unify':'dn--un--unifyD_Unify__NF'(V29, V30, V31, V32, V33, V34, V35, V36)) end end end end end end end end, fun (V37) -> fun (V38) -> fun (V39) -> fun (V40) -> fun (V41) -> fun (V42) -> fun (V43) -> fun (V44) -> ('Idris.Idris2.Core.Unify':'dn--un--unifyWithLazyD_Unify__NF'(V37, V38, V39, V40, V41, V42, V43, V44)) end end end end end end end end}, V0, V11, V9))(('Idris.Idris2.Core.Unify':'un--inSearch'())))(V8))(V5))(V4))(V21))(V22))), case V45 of {'Idris.Prelude.Types.Left', E6} -> (fun (V46) -> {'Idris.Prelude.Types.Left', V46} end(E6)); {'Idris.Prelude.Types.Right', E7} -> (fun (V47) -> begin (V48 = {'Idris.Builtin.MkPair', V20, V21}), (('case--case block in case block in case block in searchName-5878'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18, V20, V21, V48, V25, V28, V47, case V47 of {'Idris.Core.Unify.MkUnifyResult', E8, E9, E10, E11} -> (fun (V49, V50, V51, V52) -> V49 end(E8, E9, E10, E11)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end))(V22)) end end(E7)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E5)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--case block in case block in searchName-5638'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16) -> case V16 of {'Idris.Core.Context.DCon', E0, E1, E2} -> (fun (V17, V18, V19) -> {'Idris.Core.TT.DataCon', V17, V18} end(E0, E1, E2)); {'Idris.Core.Context.TCon', E3, E4, E5, E6, E7, E8, E9, E10} -> (fun (V20, V21, V22, V23, V24, V25, V26, V27) -> {'Idris.Core.TT.TyCon', V20, V21} end(E3, E4, E5, E6, E7, E8, E9, E10)); _ -> {'Idris.Core.TT.Func'} end. 'case--case block in searchName-5602'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16) -> case V16 of 0 -> begin (V38 = ('case--case block in case block in searchName-5638'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, case V2 of {'Idris.Core.Context.MkGlobalDef', E0, E1, E2, E3, E4, E5, E6, E7, E8, E9, E10, E11, E12, E13, E14, E15, E16, E17, E18, E19, E20} -> (fun (V17, V18, V19, V20, V21, V22, V23, V24, V25, V26, V27, V28, V29, V30, V31, V32, V33, V34, V35, V36, V37) -> V34 end(E0, E1, E2, E3, E4, E5, E6, E7, E8, E9, E10, E11, E12, E13, E14, E15, E16, E17, E18, E19, E20)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end))), fun (V39) -> begin (V61 = (('Idris.Idris2.Core.Context.Log':'un--log'(V11, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + 0))))), fun () -> ('Idris.Idris2.Prelude.Types.Strings':'un--++'(<<"Trying "/utf8>>, ('Idris.Idris2.Core.Name':'dn--un--show_Show__Name'(case V2 of {'Idris.Core.Context.MkGlobalDef', E21, E22, E23, E24, E25, E26, E27, E28, E29, E30, E31, E32, E33, E34, E35, E36, E37, E38, E39, E40, E41} -> (fun (V40, V41, V42, V43, V44, V45, V46, V47, V48, V49, V50, V51, V52, V53, V54, V55, V56, V57, V58, V59, V60) -> V41 end(E21, E22, E23, E24, E25, E26, E27, E28, E29, E30, E31, E32, E33, E34, E35, E36, E37, E38, E39, E40, E41)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end)))) end))(V39))), case V61 of {'Idris.Prelude.Types.Left', E42} -> (fun (V62) -> {'Idris.Prelude.Types.Left', V62} end(E42)); {'Idris.Prelude.Types.Right', E43} -> (fun (V63) -> begin (V64 = (('Idris.Idris2.Core.Normalise':'un--nf'(V11, V0, V12, V5, ('Idris.Idris2.Core.TT':'un--embed'('erased', 'erased', V15))))(V39))), case V64 of {'Idris.Prelude.Types.Left', E44} -> (fun (V65) -> {'Idris.Prelude.Types.Left', V65} end(E44)); {'Idris.Prelude.Types.Right', E45} -> (fun (V66) -> begin (V67 = (('Idris.Idris2.Core.AutoSearch':'un--mkArgs'(V0, V11, V9, V8, V7, V5, V66))(V39))), case V67 of {'Idris.Prelude.Types.Left', E46} -> (fun (V68) -> {'Idris.Prelude.Types.Left', V68} end(E46)); {'Idris.Prelude.Types.Right', E47} -> (fun (V69) -> case V69 of {'Idris.Builtin.MkPair', E48, E49} -> (fun (V70, V71) -> begin (V72 = ('Idris.Idris2.Core.Normalise':'un--logNF'(V0, V11, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + 0))))), fun () -> <<"Target"/utf8>> end, V5, V4, V39))), case V72 of {'Idris.Prelude.Types.Left', E50} -> (fun (V73) -> {'Idris.Prelude.Types.Left', V73} end(E50)); {'Idris.Prelude.Types.Right', E51} -> (fun (V74) -> begin (V75 = ('Idris.Idris2.Core.Normalise':'un--logNF'(V0, V11, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> <<"App type"/utf8>> end, V5, V71, V39))), case V75 of {'Idris.Prelude.Types.Left', E52} -> (fun (V76) -> {'Idris.Prelude.Types.Left', V76} end(E52)); {'Idris.Prelude.Types.Right', E53} -> (fun (V77) -> begin (V94 = ((((((('Idris.Idris2.Core.Unify':'un--unify'('erased', {'Idris.Core.Unify.dn--un--__mkUnify', fun (V78) -> fun (V79) -> fun (V80) -> fun (V81) -> fun (V82) -> fun (V83) -> fun (V84) -> fun (V85) -> ('Idris.Idris2.Core.Unify':'dn--un--unifyD_Unify__NF'(V78, V79, V80, V81, V82, V83, V84, V85)) end end end end end end end end, fun (V86) -> fun (V87) -> fun (V88) -> fun (V89) -> fun (V90) -> fun (V91) -> fun (V92) -> fun (V93) -> ('Idris.Idris2.Core.Unify':'dn--un--unifyWithLazyD_Unify__NF'(V86, V87, V88, V89, V90, V91, V92, V93)) end end end end end end end end}, V0, V11, V9))(('Idris.Idris2.Core.Unify':'un--inSearch'())))(V8))(V5))(V4))(V71))(V39))), case V94 of {'Idris.Prelude.Types.Left', E54} -> (fun (V95) -> {'Idris.Prelude.Types.Left', V95} end(E54)); {'Idris.Prelude.Types.Right', E55} -> (fun (V96) -> begin (V97 = {'Idris.Builtin.MkPair', V70, V71}), (('case--case block in case block in case block in searchName-5878'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V38, V63, V66, V70, V71, V97, V74, V77, V96, case V96 of {'Idris.Core.Unify.MkUnifyResult', E56, E57, E58, E59} -> (fun (V98, V99, V100, V101) -> V98 end(E56, E57, E58, E59)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end))(V39)) end end(E55)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E53)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E51)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E48, E49)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E47)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E45)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E43)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end; _ -> fun (V102) -> ('un--noResult'('erased', V102)) end end. 'case--searchName-5567'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15) -> case V15 of 0 -> begin (V37 = case V2 of {'Idris.Core.Context.MkGlobalDef', E0, E1, E2, E3, E4, E5, E6, E7, E8, E9, E10, E11, E12, E13, E14, E15, E16, E17, E18, E19, E20} -> (fun (V16, V17, V18, V19, V20, V21, V22, V23, V24, V25, V26, V27, V28, V29, V30, V31, V32, V33, V34, V35, V36) -> V18 end(E0, E1, E2, E3, E4, E5, E6, E7, E8, E9, E10, E11, E12, E13, E14, E15, E16, E17, E18, E19, E20)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end), ('case--case block in searchName-5602'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V37, ('nested--13220-5528--in--un--usableName'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, case V2 of {'Idris.Core.Context.MkGlobalDef', E21, E22, E23, E24, E25, E26, E27, E28, E29, E30, E31, E32, E33, E34, E35, E36, E37, E38, E39, E40, E41} -> (fun (V38, V39, V40, V41, V42, V43, V44, V45, V46, V47, V48, V49, V50, V51, V52, V53, V54, V55, V56, V57, V58) -> V39 end(E21, E22, E23, E24, E25, E26, E27, E28, E29, E30, E31, E32, E33, E34, E35, E36, E37, E38, E39, E40, E41)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end)))) end; _ -> fun (V59) -> ('un--noResult'('erased', V59)) end end. 'case--firstSuccess-5264'(V0, V1, V2, V3, V4, V5, V6, V7) -> case V7 of {'Idris.TTImp.Interactive.ExprSearch.Result', E0, E1} -> (fun (V8, V9) -> fun (V10) -> {'Idris.Prelude.Types.Right', {'Idris.TTImp.Interactive.ExprSearch.Result', V8, fun (V11) -> ('nested--12892-5202--in--un--continue'('erased', V1, V2, V3, V4, V5, V6, [V9 | V2], V11)) end}} end end(E0, E1)); {'Idris.TTImp.Interactive.ExprSearch.NoMore'} -> (fun () -> fun (V12) -> ('nested--12892-5202--in--un--continue'('erased', V1, V2, V3, V4, V5, V6, V2, V12)) end end()); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--explicit-5176'(V0, V1, V2) -> case V2 of {'Idris.Core.TT.Explicit'} -> (fun () -> 0 end()); _ -> 1 end. 'case--case block in case block in case block in searchIfHole-5037'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18) -> case V18 of {'Idris.Builtin.MkPair', E0, E1} -> (fun (V19, V20) -> fun (V21) -> begin (V22 = ('Idris.Idris2.Core.Normalise':'un--normaliseHoles'(V8, V0, V12, V2, ('Idris.Idris2.Core.UnifyState':'un--applyTo'(V0, V5, ('Idris.Idris2.Core.TT':'un--embed'('erased', 'erased', V19)), V2)), V21))), case V22 of {'Idris.Prelude.Types.Left', E2} -> (fun (V23) -> {'Idris.Prelude.Types.Left', V23} end(E2)); {'Idris.Prelude.Types.Right', E3} -> (fun (V24) -> {'Idris.Prelude.Types.Right', {'Idris.Builtin.MkPair', V24, V20}} end(E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--case block in case block in case block in searchIfHole-5002'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16) -> case V4 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E0, E1, E2, E3, E4, E5, E6, E7, E8, E9} -> (fun (V17, V18, V19, V20, V21, V22, V23, V24, V25, V26) -> {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', V17, V18, V19, V9, 0, V22, V23, V24, V25, V26} end(E0, E1, E2, E3, E4, E5, E6, E7, E8, E9)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--case block in case block in searchIfHole-4934'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15) -> case V15 of {'Idris.Core.Context.Hole', E7, E8} -> (fun (V16, V17) -> fun (V18) -> begin (V29 = ('un--search'(V8, V7, V6, V5, V11, case V4 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E9, E10, E11, E12, E13, E14, E15, E16, E17, E18} -> (fun (V19, V20, V21, V22, V23, V24, V25, V26, V27, V28) -> {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', V19, V20, V21, V9, 0, V24, V25, V26, V27, V28} end(E9, E10, E11, E12, E13, E14, E15, E16, E17, E18)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, V3, {'Idris.Core.Name.Resolved', V10}, V18))), case V29 of {'Idris.Prelude.Types.Left', E19} -> (fun (V30) -> {'Idris.Prelude.Types.Left', V30} end(E19)); {'Idris.Prelude.Types.Right', E20} -> (fun (V31) -> (('un--traverse'('erased', 'erased', fun (V32) -> case V32 of {'Idris.Builtin.MkPair', E21, E22} -> (fun (V33, V34) -> fun (V35) -> begin (V36 = ('Idris.Idris2.Core.Normalise':'un--normaliseHoles'(V8, V0, V12, V2, ('Idris.Idris2.Core.UnifyState':'un--applyTo'(V0, V5, ('Idris.Idris2.Core.TT':'un--embed'('erased', 'erased', V33)), V2)), V35))), case V36 of {'Idris.Prelude.Types.Left', E23} -> (fun (V37) -> {'Idris.Prelude.Types.Left', V37} end(E23)); {'Idris.Prelude.Types.Right', E24} -> (fun (V38) -> {'Idris.Prelude.Types.Right', {'Idris.Builtin.MkPair', V38, V34}} end(E24)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E21, E22)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end, V31))(V18)) end(E20)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E7, E8)); _ -> fun (V39) -> begin (V45 = ('Idris.Idris2.Core.Normalise':'un--normaliseHoles'(V8, V0, V12, V2, case V1 of {'Idris.Core.AutoSearch.MkArgInfo', E0, E1, E2, E3, E4} -> (fun (V40, V41, V42, V43, V44) -> V43 end(E0, E1, E2, E3, E4)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, V39))), case V45 of {'Idris.Prelude.Types.Left', E5} -> (fun (V46) -> {'Idris.Prelude.Types.Left', V46} end(E5)); {'Idris.Prelude.Types.Right', E6} -> (fun (V47) -> ('un--one'('erased', {'Idris.Builtin.MkPair', V47, []}, V39)) end(E6)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end. 'case--case block in searchIfHole-4903'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13) -> case V13 of {'Idris.Prelude.Types.Just', E0} -> (fun (V14) -> begin (V15 = {'Idris.Prelude.Types.Just', V14}), ('case--case block in case block in searchIfHole-4934'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V14, V15, case V14 of {'Idris.Core.Context.MkGlobalDef', E1, E2, E3, E4, E5, E6, E7, E8, E9, E10, E11, E12, E13, E14, E15, E16, E17, E18, E19, E20, E21} -> (fun (V16, V17, V18, V19, V20, V21, V22, V23, V24, V25, V26, V27, V28, V29, V30, V31, V32, V33, V34, V35, V36) -> V33 end(E1, E2, E3, E4, E5, E6, E7, E8, E9, E10, E11, E12, E13, E14, E15, E16, E17, E18, E19, E20, E21)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end)) end end(E0)); {'Idris.Prelude.Types.Nothing'} -> (fun () -> fun (V37) -> ('un--noResult'('erased', V37)) end end()); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--searchIfHole-4841'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9) -> case V9 of 0 -> fun (V10) -> ('un--noResult'('erased', V10)) end; _ -> begin (V11 = (V9 - 1)), begin (V17 = case V1 of {'Idris.Core.AutoSearch.MkArgInfo', E0, E1, E2, E3, E4} -> (fun (V12, V13, V14, V15, V16) -> V12 end(E0, E1, E2, E3, E4)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end), begin (V23 = case V1 of {'Idris.Core.AutoSearch.MkArgInfo', E5, E6, E7, E8, E9} -> (fun (V18, V19, V20, V21, V22) -> V19 end(E5, E6, E7, E8, E9)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end), fun (V24) -> begin (V53 = begin (V52 = (('Idris.Idris2.Erlang.Data.IORef':'un--readIORef'('erased', 'erased', {'Idris.Prelude.IO.dn--un--__mkHasIO', {'Idris.Prelude.Interfaces.dn--un--__mkMonad', {'Idris.Prelude.Interfaces.dn--un--__mkApplicative', fun (V25) -> fun (V26) -> fun (V27) -> fun (V28) -> fun (V29) -> ('Idris.Idris2.Prelude.IO':'dn--un--map_Functor__IO'('erased', 'erased', V27, V28, V29)) end end end end end, fun (V30) -> fun (V31) -> fun (V32) -> V31 end end end, fun (V33) -> fun (V34) -> fun (V35) -> fun (V36) -> fun (V37) -> begin (V38 = (V35(V37))), begin (V39 = (V36(V37))), (V38(V39)) end end end end end end end}, fun (V40) -> fun (V41) -> fun (V42) -> fun (V43) -> fun (V44) -> begin (V45 = (V42(V44))), ((V43(V45))(V44)) end end end end end end, fun (V46) -> fun (V47) -> fun (V48) -> begin (V49 = (V47(V48))), (V49(V48)) end end end end}, fun (V50) -> fun (V51) -> V51 end end}, V8))(V24))), {'Idris.Prelude.Types.Right', V52} end), case V53 of {'Idris.Prelude.Types.Left', E10} -> (fun (V54) -> {'Idris.Prelude.Types.Left', V54} end(E10)); {'Idris.Prelude.Types.Right', E11} -> (fun (V55) -> begin (V82 = (('Idris.Idris2.Core.Context':'un--lookupCtxtExact'({'Idris.Core.Name.Resolved', V17}, case V55 of {'Idris.Core.Context.MkDefs', E12, E13, E14, E15, E16, E17, E18, E19, E20, E21, E22, E23, E24, E25, E26, E27, E28, E29, E30, E31, E32, E33, E34, E35, E36, E37} -> (fun (V56, V57, V58, V59, V60, V61, V62, V63, V64, V65, V66, V67, V68, V69, V70, V71, V72, V73, V74, V75, V76, V77, V78, V79, V80, V81) -> V56 end(E12, E13, E14, E15, E16, E17, E18, E19, E20, E21, E22, E23, E24, E25, E26, E27, E28, E29, E30, E31, E32, E33, E34, E35, E36, E37)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end))(V24))), case V82 of {'Idris.Prelude.Types.Left', E38} -> (fun (V83) -> {'Idris.Prelude.Types.Left', V83} end(E38)); {'Idris.Prelude.Types.Right', E39} -> (fun (V84) -> case V84 of {'Idris.Prelude.Types.Just', E40} -> (fun (V85) -> begin (V86 = {'Idris.Prelude.Types.Just', V85}), (('case--case block in case block in searchIfHole-4934'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V11, V17, V23, V55, V85, V86, case V85 of {'Idris.Core.Context.MkGlobalDef', E41, E42, E43, E44, E45, E46, E47, E48, E49, E50, E51, E52, E53, E54, E55, E56, E57, E58, E59, E60, E61} -> (fun (V87, V88, V89, V90, V91, V92, V93, V94, V95, V96, V97, V98, V99, V100, V101, V102, V103, V104, V105, V106, V107) -> V104 end(E41, E42, E43, E44, E45, E46, E47, E48, E49, E50, E51, E52, E53, E54, E55, E56, E57, E58, E59, E60, E61)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end))(V24)) end end(E40)); {'Idris.Prelude.Types.Nothing'} -> (fun () -> ('un--noResult'('erased', V24)) end()); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E39)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E11)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end end end end. 'case--case block in getAllEnv-4720'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11) -> case V11 of 0 -> [{'Idris.Builtin.MkPair', {'Idris.Core.TT.Local', V6, {'Idris.Prelude.Types.Nothing'}, V9}, ('Idris.Idris2.Core.TT':'dn--un--weakenNs_Weaken__Term'('erased', 'erased', ('Idris.Idris2.Core.TT.SizeOf':'un--sucR'('erased', 'erased', 'erased', V5)), ('Idris.Idris2.Core.TT':'un--binderType'('erased', V3))))} | V7]; 1 -> V7; _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--getAllEnv-4694'(V0, V1, V2, V3, V4, V5, V6, V7, V8) -> begin (V9 = ('nested--12262-4670--in--un--usableName'(V0, V1, V2, V3, 'erased', V5, V6, V0))), case V9 of 0 -> [{'Idris.Builtin.MkPair', {'Idris.Core.TT.Local', V6, {'Idris.Prelude.Types.Nothing'}, V8}, ('Idris.Idris2.Core.TT':'dn--un--weakenNs_Weaken__Term'('erased', 'erased', ('Idris.Idris2.Core.TT.SizeOf':'un--sucR'('erased', 'erased', 'erased', V5)), ('Idris.Idris2.Core.TT':'un--binderType'('erased', V3))))} | V7]; 1 -> V7; _ -> ('erlang':'throw'("Error: Unreachable branch")) end end. 'case--nextResult-4403'(V0, V1, V2, V3, V4) -> case V4 of {'Idris.TTImp.Interactive.ExprSearch.NoMore'} -> (fun () -> fun (V5) -> {'Idris.Prelude.Types.Right', {'Idris.Prelude.Types.Nothing'}} end end()); {'Idris.TTImp.Interactive.ExprSearch.Result', E0, E1} -> (fun (V6, V7) -> fun (V8) -> {'Idris.Prelude.Types.Right', {'Idris.Prelude.Types.Just', {'Idris.Builtin.MkPair', V6, V7}}} end end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--case block in searchSort-4332'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9) -> case V9 of 0 -> fun (V10) -> {'Idris.Prelude.Types.Right', {'Idris.TTImp.Interactive.ExprSearch.NoMore'}} end; 1 -> ('nested--11854-4282--in--un--returnBatch'('erased', V1, V2, V3, V4, V5, ('Idris.Idris2.Data.List':'un--sortBy'('erased', V1, V6)), V7)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--searchSort-4309'(V0, V1, V2, V3, V4, V5, V6) -> case V6 of {'Idris.Builtin.MkPair', E0, E1} -> (fun (V7, V8) -> begin (V9 = {'Idris.Builtin.MkPair', V7, V8}), ('case--case block in searchSort-4332'('erased', V1, V2, V3, V4, V5, V7, V8, V9, ('Idris.Idris2.Data.List':'un--isNil'('erased', V7)))) end end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--searchN,count-4212'(V0, V1, V2, V3, V4, V5, V6, V7, V8) -> case V8 of {'Idris.Builtin.MkPair', E0, E1} -> (fun (V9, V10) -> fun (V11) -> {'Idris.Prelude.Types.Right', {'Idris.Builtin.MkPair', [V6 | V9], V10}} end end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'case--filterS-4105'(V0, V1, V2, V3, V4, V5, V6) -> case V6 of 0 -> fun (V7) -> {'Idris.Prelude.Types.Right', {'Idris.TTImp.Interactive.ExprSearch.Result', V1, V5}} end; 1 -> V5; _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'nested--14147-6338--in--un--visible'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15) -> begin (V16 = (('Idris.Idris2.Core.Context':'un--lookupCtxtExact'(V14, V12))(V15))), case V16 of {'Idris.Prelude.Types.Left', E0} -> (fun (V17) -> {'Idris.Prelude.Types.Left', V17} end(E0)); {'Idris.Prelude.Types.Right', E1} -> (fun (V18) -> case V18 of {'Idris.Prelude.Types.Just', E2} -> (fun (V19) -> begin (V20 = {'Idris.Prelude.Types.Just', V19}), (('case--case block in searchNames,visible-6385'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V14, V13, V12, V19, V20, ('Idris.Idris2.Core.Context':'un--visibleInAny'(V13, V14, case V19 of {'Idris.Core.Context.MkGlobalDef', E3, E4, E5, E6, E7, E8, E9, E10, E11, E12, E13, E14, E15, E16, E17, E18, E19, E20, E21, E22, E23} -> (fun (V21, V22, V23, V24, V25, V26, V27, V28, V29, V30, V31, V32, V33, V34, V35, V36, V37, V38, V39, V40, V41) -> V30 end(E3, E4, E5, E6, E7, E8, E9, E10, E11, E12, E13, E14, E15, E16, E17, E18, E19, E20, E21, E22, E23)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end))))(V15)) end end(E2)); {'Idris.Prelude.Types.Nothing'} -> (fun () -> {'Idris.Prelude.Types.Right', {'Idris.Prelude.Types.Nothing'}} end()); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end. 'nested--13220-5528--in--un--usableName'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12) -> case V12 of {'Idris.Core.Name.UN', E0} -> (fun (V13) -> 0 end(E0)); {'Idris.Core.Name.NS', E1, E2} -> (fun (V14, V15) -> ('nested--13220-5528--in--un--usableName'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V15)) end(E1, E2)); {'Idris.Core.Name.Nested', E3, E4} -> (fun (V16, V17) -> ('nested--13220-5528--in--un--usableName'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V17)) end(E3, E4)); _ -> 1 end. 'nested--12262-4670--in--un--usableName'(V0, V1, V2, V3, V4, V5, V6, V7) -> case V7 of {'Idris.Core.Name.UN', E0} -> (fun (V8) -> 0 end(E0)); _ -> 1 end. 'nested--16170-8164--in--un--toApp'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14) -> case V14 of {'Idris.Core.TT.Meta', E0, E1, E2, E3} -> (fun (V15, V16, V17, V18) -> ('Idris.Idris2.Core.TT':'un--apply'('erased', V15, {'Idris.Core.TT.Ref', V15, {'Idris.Core.TT.Func'}, {'Idris.Core.Name.Resolved', V17}}, V18)) end(E0, E1, E2, E3)); _ -> V14 end. 'nested--14442-6601--in--un--structDiffTm'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14) -> case V14 of {'Idris.Builtin.MkPair', E0, E1} -> (fun (V15, V16) -> ('nested--14442-6600--in--un--structDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V13, V15)) end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'nested--14442-6600--in--un--structDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14) -> ('case--tryRecursive,structDiff-6973'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V14, V13, ('Idris.Idris2.Core.TT':'un--getFnArgs'('erased', V13)))). 'nested--11854-4282--in--un--returnBatch'(V0, V1, V2, V3, V4, V5, V6, V7) -> case V6 of [] -> fun (V8) -> ('un--searchSort'('erased', V5, V4, V3, V7, V1, V8)) end; [E0 | E1] -> (fun (V9, V10) -> fun (V11) -> {'Idris.Prelude.Types.Right', {'Idris.TTImp.Interactive.ExprSearch.Result', V9, ('nested--11854-4282--in--un--returnBatch'('erased', V1, V2, V3, V4, V5, V10, V7))}} end end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'nested--16986-8879--in--un--matchable'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14) -> case V14 of {'Idris.Core.Value.NBind', E0, E1, E2, E3} -> (fun (V15, V16, V17, V18) -> case V17 of {'Idris.Core.TT.Pi', E4, E5, E6, E7} -> (fun (V19, V20, V21, V22) -> fun (V23) -> begin (V24 = (((V18(V13))(('Idris.Idris2.Core.Normalise':'un--toClosure'('erased', ('Idris.Idris2.Core.Value':'un--defaultOpts'()), V6, {'Idris.Core.TT.Erased', V15, 1}))))(V23))), case V24 of {'Idris.Prelude.Types.Left', E8} -> (fun (V25) -> {'Idris.Prelude.Types.Left', V25} end(E8)); {'Idris.Prelude.Types.Right', E9} -> (fun (V26) -> (('nested--16986-8879--in--un--matchable'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V26))(V23)) end(E9)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E4, E5, E6, E7)); _ -> fun (V27) -> {'Idris.Prelude.Types.Right', 1} end end end(E0, E1, E2, E3)); {'Idris.Core.Value.NTCon', E10, E11, E12, E13, E14} -> (fun (V28, V29, V30, V31, V32) -> fun (V33) -> {'Idris.Prelude.Types.Right', 0} end end(E10, E11, E12, E13, E14)); _ -> fun (V34) -> {'Idris.Prelude.Types.Right', 1} end end. 'nested--20050-11573--in--un--lookupHoleName'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9) -> begin (V36 = (('Idris.Idris2.Core.Context':'un--lookupCtxtExactI'(V7, case V8 of {'Idris.Core.Context.MkDefs', E0, E1, E2, E3, E4, E5, E6, E7, E8, E9, E10, E11, E12, E13, E14, E15, E16, E17, E18, E19, E20, E21, E22, E23, E24, E25} -> (fun (V10, V11, V12, V13, V14, V15, V16, V17, V18, V19, V20, V21, V22, V23, V24, V25, V26, V27, V28, V29, V30, V31, V32, V33, V34, V35) -> V10 end(E0, E1, E2, E3, E4, E5, E6, E7, E8, E9, E10, E11, E12, E13, E14, E15, E16, E17, E18, E19, E20, E21, E22, E23, E24, E25)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end))(V9))), case V36 of {'Idris.Prelude.Types.Left', E26} -> (fun (V37) -> {'Idris.Prelude.Types.Left', V37} end(E26)); {'Idris.Prelude.Types.Right', E27} -> (fun (V38) -> case V38 of {'Idris.Prelude.Types.Just', E28} -> (fun (V39) -> case V39 of {'Idris.Builtin.MkPair', E29, E30} -> (fun (V40, V41) -> {'Idris.Prelude.Types.Right', {'Idris.Prelude.Types.Just', {'Idris.Builtin.MkPair', V7, {'Idris.Builtin.MkPair', V40, V41}}}} end(E29, E30)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E28)); {'Idris.Prelude.Types.Nothing'} -> (fun () -> begin (V68 = (('Idris.Idris2.Core.Context':'un--lookupCtxtName'(V7, case V8 of {'Idris.Core.Context.MkDefs', E31, E32, E33, E34, E35, E36, E37, E38, E39, E40, E41, E42, E43, E44, E45, E46, E47, E48, E49, E50, E51, E52, E53, E54, E55, E56} -> (fun (V42, V43, V44, V45, V46, V47, V48, V49, V50, V51, V52, V53, V54, V55, V56, V57, V58, V59, V60, V61, V62, V63, V64, V65, V66, V67) -> V42 end(E31, E32, E33, E34, E35, E36, E37, E38, E39, E40, E41, E42, E43, E44, E45, E46, E47, E48, E49, E50, E51, E52, E53, E54, E55, E56)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end))(V9))), case V68 of {'Idris.Prelude.Types.Left', E57} -> (fun (V69) -> {'Idris.Prelude.Types.Left', V69} end(E57)); {'Idris.Prelude.Types.Right', E58} -> (fun (V70) -> case V70 of [E59 | E60] -> (fun (V71, V72) -> case V72 of [] -> {'Idris.Prelude.Types.Right', {'Idris.Prelude.Types.Just', V71}}; _ -> {'Idris.Prelude.Types.Right', {'Idris.Prelude.Types.Nothing'}} end end(E59, E60)); _ -> {'Idris.Prelude.Types.Right', {'Idris.Prelude.Types.Nothing'}} end end(E58)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end()); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E27)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end. 'nested--12258-10949--in--un--lookupHoleName'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10) -> begin (V11 = (('Idris.Idris2.Core.Context':'un--lookupCtxtExactI'(V8, V9))(V10))), case V11 of {'Idris.Prelude.Types.Left', E0} -> (fun (V12) -> {'Idris.Prelude.Types.Left', V12} end(E0)); {'Idris.Prelude.Types.Right', E1} -> (fun (V13) -> case V13 of {'Idris.Prelude.Types.Just', E2} -> (fun (V14) -> case V14 of {'Idris.Builtin.MkPair', E3, E4} -> (fun (V15, V16) -> {'Idris.Prelude.Types.Right', {'Idris.Prelude.Types.Just', {'Idris.Builtin.MkPair', V8, {'Idris.Builtin.MkPair', V15, V16}}}} end(E3, E4)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E2)); {'Idris.Prelude.Types.Nothing'} -> (fun () -> begin (V17 = (('Idris.Idris2.Core.Context':'un--lookupCtxtName'(V8, V9))(V10))), case V17 of {'Idris.Prelude.Types.Left', E5} -> (fun (V18) -> {'Idris.Prelude.Types.Left', V18} end(E5)); {'Idris.Prelude.Types.Right', E6} -> (fun (V19) -> case V19 of [E7 | E8] -> (fun (V20, V21) -> case V21 of [] -> {'Idris.Prelude.Types.Right', {'Idris.Prelude.Types.Just', V20}}; _ -> {'Idris.Prelude.Types.Right', {'Idris.Prelude.Types.Nothing'}} end end(E7, E8)); _ -> {'Idris.Prelude.Types.Right', {'Idris.Prelude.Types.Nothing'}} end end(E6)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end()); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end. 'nested--17412-9249--in--un--isSingleCon'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12) -> case V12 of {'Idris.Core.Value.NBind', E0, E1, E2, E3} -> (fun (V13, V14, V15, V16) -> case V15 of {'Idris.Core.TT.Pi', E4, E5, E6, E7} -> (fun (V17, V18, V19, V20) -> fun (V21) -> begin (V22 = (((V16(V11))(('Idris.Idris2.Core.Normalise':'un--toClosure'('erased', ('Idris.Idris2.Core.Value':'un--defaultOpts'()), {'Idris.Core.Env.Nil'}, {'Idris.Core.TT.Erased', V13, 1}))))(V21))), case V22 of {'Idris.Prelude.Types.Left', E8} -> (fun (V23) -> {'Idris.Prelude.Types.Left', V23} end(E8)); {'Idris.Prelude.Types.Right', E9} -> (fun (V24) -> (('nested--17412-9249--in--un--isSingleCon'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V24))(V21)) end(E9)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E4, E5, E6, E7)); _ -> fun (V25) -> {'Idris.Prelude.Types.Right', 1} end end end(E0, E1, E2, E3)); {'Idris.Core.Value.NTCon', E10, E11, E12, E13, E14} -> (fun (V26, V27, V28, V29, V30) -> fun (V31) -> begin (V58 = ('Idris.Idris2.Core.Context':'un--lookupDefExact'(V27, case V11 of {'Idris.Core.Context.MkDefs', E15, E16, E17, E18, E19, E20, E21, E22, E23, E24, E25, E26, E27, E28, E29, E30, E31, E32, E33, E34, E35, E36, E37, E38, E39, E40} -> (fun (V32, V33, V34, V35, V36, V37, V38, V39, V40, V41, V42, V43, V44, V45, V46, V47, V48, V49, V50, V51, V52, V53, V54, V55, V56, V57) -> V32 end(E15, E16, E17, E18, E19, E20, E21, E22, E23, E24, E25, E26, E27, E28, E29, E30, E31, E32, E33, E34, E35, E36, E37, E38, E39, E40)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, V31))), case V58 of {'Idris.Prelude.Types.Left', E41} -> (fun (V59) -> {'Idris.Prelude.Types.Left', V59} end(E41)); {'Idris.Prelude.Types.Right', E42} -> (fun (V60) -> case V60 of {'Idris.Prelude.Types.Just', E43} -> (fun (V61) -> case V61 of {'Idris.Core.Context.TCon', E44, E45, E46, E47, E48, E49, E50, E51} -> (fun (V62, V63, V64, V65, V66, V67, V68, V69) -> case V68 of [E52 | E53] -> (fun (V70, V71) -> case V71 of [] -> {'Idris.Prelude.Types.Right', 0}; _ -> {'Idris.Prelude.Types.Right', 1} end end(E52, E53)); _ -> {'Idris.Prelude.Types.Right', 1} end end(E44, E45, E46, E47, E48, E49, E50, E51)); _ -> {'Idris.Prelude.Types.Right', 1} end end(E43)); _ -> {'Idris.Prelude.Types.Right', 1} end end(E42)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E10, E11, E12, E13, E14)); _ -> fun (V72) -> {'Idris.Prelude.Types.Right', 1} end end. 'nested--19814-11340--in--un--getLHS'(V0, V1, V2, V3, V4) -> case V4 of {'Idris.Core.TT.Bind', E0, E1, E2, E3} -> (fun (V5, V6, V7, V8) -> case V7 of {'Idris.Core.TT.PVar', E4, E5, E6, E7} -> (fun (V9, V10, V11, V12) -> ('nested--19814-11340--in--un--getLHS'(V0, V1, V2, [V6 | V3], V8)) end(E4, E5, E6, E7)); {'Idris.Core.TT.PLet', E8, E9, E10, E11} -> (fun (V13, V14, V15, V16) -> ('nested--19814-11340--in--un--getLHS'(V0, V1, V2, [V6 | V3], V8)) end(E8, E9, E10, E11)); _ -> ('case--getLHSData,getLHS-11390'(V0, V1, V2, V3, V4, ('Idris.Idris2.Core.TT':'un--getFn'('erased', V4)))) end end(E0, E1, E2, E3)); _ -> ('case--getLHSData,getLHS-11390'(V0, V1, V2, V3, V4, ('Idris.Idris2.Core.TT':'un--getFn'('erased', V4)))) end. 'nested--15254-7337--in--un--findPos'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18) -> case V17 of {'Idris.Core.Value.NTCon', E0, E1, E2, E3, E4} -> (fun (V19, V20, V21, V22, V23) -> case V23 of [E5 | E6] -> (fun (V24, V25) -> case V25 of [E7 | E8] -> (fun (V26, V27) -> case V27 of [] -> fun (V28) -> ('un--getSuccessful'(V0, V13, V12, V11, V10, V8, V7, 1, V6, V5, V4, [fun (V29) -> ('nested--15254-7336--in--un--findDirect'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18, V29)) end | [fun (V30) -> begin (V37 = begin (V31 = ('Idris.Idris2.Core.Context':'un--fstName'(V13, V30))), case V31 of {'Idris.Prelude.Types.Left', E9} -> (fun (V32) -> {'Idris.Prelude.Types.Left', V32} end(E9)); {'Idris.Prelude.Types.Right', E10} -> (fun (V33) -> (('Idris.Idris2.Prelude.Types':'un--maybe'('erased', 'erased', fun () -> fun (V34) -> ('Idris.Idris2.Core.Core':'dn--un--throw_Catchable__Core_Error'('erased', {'Idris.Core.Core.InternalError', <<"No fst"/utf8>>}, V34)) end end, fun () -> fun (V35) -> fun (V36) -> {'Idris.Prelude.Types.Right', V35} end end end, V33))(V30)) end(E10)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end), case V37 of {'Idris.Prelude.Types.Left', E11} -> (fun (V38) -> {'Idris.Prelude.Types.Left', V38} end(E11)); {'Idris.Prelude.Types.Right', E12} -> (fun (V39) -> begin (V46 = begin (V40 = ('Idris.Idris2.Core.Context':'un--sndName'(V13, V30))), case V40 of {'Idris.Prelude.Types.Left', E13} -> (fun (V41) -> {'Idris.Prelude.Types.Left', V41} end(E13)); {'Idris.Prelude.Types.Right', E14} -> (fun (V42) -> (('Idris.Idris2.Prelude.Types':'un--maybe'('erased', 'erased', fun () -> fun (V43) -> ('Idris.Idris2.Core.Core':'dn--un--throw_Catchable__Core_Error'('erased', {'Idris.Core.Core.InternalError', <<"No snd"/utf8>>}, V43)) end end, fun () -> fun (V44) -> fun (V45) -> {'Idris.Prelude.Types.Right', V44} end end end, V42))(V30)) end(E14)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end), case V46 of {'Idris.Prelude.Types.Left', E15} -> (fun (V47) -> {'Idris.Prelude.Types.Left', V47} end(E15)); {'Idris.Prelude.Types.Right', E16} -> (fun (V48) -> begin (V49 = ('Idris.Idris2.Core.Context':'un--isPairType'(V13, V20, V30))), case V49 of {'Idris.Prelude.Types.Left', E17} -> (fun (V50) -> {'Idris.Prelude.Types.Left', V50} end(E17)); {'Idris.Prelude.Types.Right', E18} -> (fun (V51) -> case V51 of 0 -> begin (V52 = ('Idris.Idris2.Core.Context':'un--clearDefs'(V14, V30))), case V52 of {'Idris.Prelude.Types.Left', E19} -> (fun (V53) -> {'Idris.Prelude.Types.Left', V53} end(E19)); {'Idris.Prelude.Types.Right', E20} -> (fun (V54) -> begin (V55 = ('Idris.Idris2.Core.Normalise':'dn--un--quote_Quote__Closure'(V13, V0, V54, V6, V24, V30))), case V55 of {'Idris.Prelude.Types.Left', E21} -> (fun (V56) -> {'Idris.Prelude.Types.Left', V56} end(E21)); {'Idris.Prelude.Types.Right', E22} -> (fun (V57) -> begin (V58 = ('Idris.Idris2.Core.Normalise':'dn--un--quote_Quote__Closure'(V13, V0, V54, V6, V26, V30))), case V58 of {'Idris.Prelude.Types.Left', E23} -> (fun (V59) -> {'Idris.Prelude.Types.Left', V59} end(E23)); {'Idris.Prelude.Types.Right', E24} -> (fun (V60) -> ('un--getSuccessful'(V0, V13, V12, V11, V10, V8, V7, 1, V6, V5, V4, [fun (V61) -> begin (V62 = (('Idris.Idris2.Core.Normalise':'un--evalClosure'(V13, V0, V14, V24))(V61))), case V62 of {'Idris.Prelude.Types.Left', E25} -> (fun (V63) -> {'Idris.Prelude.Types.Left', V63} end(E25)); {'Idris.Prelude.Types.Right', E26} -> (fun (V64) -> (('nested--15254-7337--in--un--findPos'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, fun (V65) -> ('Idris.Idris2.Core.TT':'un--apply'('erased', V10, {'Idris.Core.TT.Ref', V10, {'Idris.Core.TT.Func'}, V39}, [V57 | [V60 | [(V16(V65)) | []]]])) end, V64, V18))(V61)) end(E26)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end | [fun (V66) -> begin (V67 = (('Idris.Idris2.Core.Normalise':'un--evalClosure'(V13, V0, V14, V26))(V66))), case V67 of {'Idris.Prelude.Types.Left', E27} -> (fun (V68) -> {'Idris.Prelude.Types.Left', V68} end(E27)); {'Idris.Prelude.Types.Right', E28} -> (fun (V69) -> (('nested--15254-7337--in--un--findPos'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, fun (V70) -> ('Idris.Idris2.Core.TT':'un--apply'('erased', V10, {'Idris.Core.TT.Ref', V10, {'Idris.Core.TT.Func'}, V48}, [V57 | [V60 | [(V16(V70)) | []]]])) end, V69, V18))(V66)) end(E28)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end | []]], V30)) end(E24)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E22)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E20)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end; 1 -> ('un--noResult'('erased', V30)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E18)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E16)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E12)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end | []]], V28)) end; _ -> fun (V71) -> ('nested--15254-7336--in--un--findDirect'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18, V71)) end end end(E7, E8)); _ -> fun (V72) -> ('nested--15254-7336--in--un--findDirect'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18, V72)) end end end(E5, E6)); _ -> fun (V73) -> ('nested--15254-7336--in--un--findDirect'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18, V73)) end end end(E0, E1, E2, E3, E4)); _ -> fun (V74) -> ('nested--15254-7336--in--un--findDirect'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18, V74)) end end. 'nested--15254-7336--in--un--findDirect'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18, V19) -> begin (V20 = (('Idris.Idris2.Core.AutoSearch':'un--mkArgs'(V0, V13, V11, V10, V8, V6, V17))(V19))), case V20 of {'Idris.Prelude.Types.Left', E0} -> (fun (V21) -> {'Idris.Prelude.Types.Left', V21} end(E0)); {'Idris.Prelude.Types.Right', E1} -> (fun (V22) -> case V22 of {'Idris.Builtin.MkPair', E2, E3} -> (fun (V23, V24) -> begin (V25 = {'Idris.Builtin.MkPair', V23, V24}), (('case--case block in searchLocalWith,findDirect-7403'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V18, V17, V16, V15, V14, V23, V24, V25, ('un--usableLocal'('erased', V10, V6, V17))))(V19)) end end(E2, E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end. 'nested--11718-4152--in--un--count'(V0, V1, V2, V3, V4, V5, V6) -> case V6 of {'Idris.TTImp.Interactive.ExprSearch.NoMore'} -> (fun () -> fun (V7) -> {'Idris.Prelude.Types.Right', {'Idris.Builtin.MkPair', [], fun (V8) -> {'Idris.Prelude.Types.Right', {'Idris.TTImp.Interactive.ExprSearch.NoMore'}} end}} end end()); _ -> case V5 of 0 -> fun (V9) -> {'Idris.Prelude.Types.Right', {'Idris.Builtin.MkPair', [], fun (V10) -> {'Idris.Prelude.Types.Right', {'Idris.TTImp.Interactive.ExprSearch.NoMore'}} end}} end; _ -> begin (V11 = (V5 - 1)), case V11 of 0 -> case V6 of {'Idris.TTImp.Interactive.ExprSearch.Result', E16, E17} -> (fun (V12, V13) -> fun (V14) -> {'Idris.Prelude.Types.Right', {'Idris.Builtin.MkPair', [V12 | []], V13}} end end(E16, E17)); _ -> case V6 of {'Idris.TTImp.Interactive.ExprSearch.Result', E8, E9} -> (fun (V15, V16) -> fun (V17) -> begin (V21 = begin (V18 = (V16(V17))), case V18 of {'Idris.Prelude.Types.Left', E10} -> (fun (V19) -> {'Idris.Prelude.Types.Left', V19} end(E10)); {'Idris.Prelude.Types.Right', E11} -> (fun (V20) -> (('nested--11718-4152--in--un--count'('erased', V1, V2, V3, V4, V11, V20))(V17)) end(E11)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end), case V21 of {'Idris.Prelude.Types.Left', E12} -> (fun (V22) -> {'Idris.Prelude.Types.Left', V22} end(E12)); {'Idris.Prelude.Types.Right', E13} -> (fun (V23) -> case V23 of {'Idris.Builtin.MkPair', E14, E15} -> (fun (V24, V25) -> {'Idris.Prelude.Types.Right', {'Idris.Builtin.MkPair', [V15 | V24], V25}} end(E14, E15)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E13)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E8, E9)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end; _ -> case V6 of {'Idris.TTImp.Interactive.ExprSearch.Result', E0, E1} -> (fun (V26, V27) -> fun (V28) -> begin (V32 = begin (V29 = (V27(V28))), case V29 of {'Idris.Prelude.Types.Left', E2} -> (fun (V30) -> {'Idris.Prelude.Types.Left', V30} end(E2)); {'Idris.Prelude.Types.Right', E3} -> (fun (V31) -> (('nested--11718-4152--in--un--count'('erased', V1, V2, V3, V4, V11, V31))(V28)) end(E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end), case V32 of {'Idris.Prelude.Types.Left', E4} -> (fun (V33) -> {'Idris.Prelude.Types.Left', V33} end(E4)); {'Idris.Prelude.Types.Right', E5} -> (fun (V34) -> case V34 of {'Idris.Builtin.MkPair', E6, E7} -> (fun (V35, V36) -> {'Idris.Prelude.Types.Right', {'Idris.Builtin.MkPair', [V26 | V35], V36}} end(E6, E7)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E5)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end end. 'nested--12892-5202--in--un--continue'(V0, V1, V2, V3, V4, V5, V6, V7, V8) -> begin (V37 = begin (V36 = (('Idris.Idris2.Erlang.Data.IORef':'un--writeIORef'('erased', 'erased', {'Idris.Prelude.IO.dn--un--__mkHasIO', {'Idris.Prelude.Interfaces.dn--un--__mkMonad', {'Idris.Prelude.Interfaces.dn--un--__mkApplicative', fun (V9) -> fun (V10) -> fun (V11) -> fun (V12) -> fun (V13) -> ('Idris.Idris2.Prelude.IO':'dn--un--map_Functor__IO'('erased', 'erased', V11, V12, V13)) end end end end end, fun (V14) -> fun (V15) -> fun (V16) -> V15 end end end, fun (V17) -> fun (V18) -> fun (V19) -> fun (V20) -> fun (V21) -> begin (V22 = (V19(V21))), begin (V23 = (V20(V21))), (V22(V23)) end end end end end end end}, fun (V24) -> fun (V25) -> fun (V26) -> fun (V27) -> fun (V28) -> begin (V29 = (V26(V28))), ((V27(V29))(V28)) end end end end end end, fun (V30) -> fun (V31) -> fun (V32) -> begin (V33 = (V31(V32))), (V33(V32)) end end end end}, fun (V34) -> fun (V35) -> V35 end end}, V3, V5))(V8))), {'Idris.Prelude.Types.Right', V36} end), case V37 of {'Idris.Prelude.Types.Left', E0} -> (fun (V38) -> {'Idris.Prelude.Types.Left', V38} end(E0)); {'Idris.Prelude.Types.Right', E1} -> (fun (V39) -> begin (V68 = begin (V67 = (('Idris.Idris2.Erlang.Data.IORef':'un--writeIORef'('erased', 'erased', {'Idris.Prelude.IO.dn--un--__mkHasIO', {'Idris.Prelude.Interfaces.dn--un--__mkMonad', {'Idris.Prelude.Interfaces.dn--un--__mkApplicative', fun (V40) -> fun (V41) -> fun (V42) -> fun (V43) -> fun (V44) -> ('Idris.Idris2.Prelude.IO':'dn--un--map_Functor__IO'('erased', 'erased', V42, V43, V44)) end end end end end, fun (V45) -> fun (V46) -> fun (V47) -> V46 end end end, fun (V48) -> fun (V49) -> fun (V50) -> fun (V51) -> fun (V52) -> begin (V53 = (V50(V52))), begin (V54 = (V51(V52))), (V53(V54)) end end end end end end end}, fun (V55) -> fun (V56) -> fun (V57) -> fun (V58) -> fun (V59) -> begin (V60 = (V57(V59))), ((V58(V60))(V59)) end end end end end end, fun (V61) -> fun (V62) -> fun (V63) -> begin (V64 = (V62(V63))), (V64(V63)) end end end end}, fun (V65) -> fun (V66) -> V66 end end}, V4, V6))(V8))), {'Idris.Prelude.Types.Right', V67} end), case V68 of {'Idris.Prelude.Types.Left', E2} -> (fun (V69) -> {'Idris.Prelude.Types.Left', V69} end(E2)); {'Idris.Prelude.Types.Right', E3} -> (fun (V70) -> (('un--firstSuccess'('erased', V4, V3, V7))(V8)) end(E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end. 'nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14) -> case V13 of {'Idris.Core.TT.Local', E64, E65, E66} -> (fun (V15, V16, V17) -> 1 end(E64, E65, E66)); {'Idris.Core.TT.Ref', E67, E68, E69} -> (fun (V18, V19, V20) -> case V14 of {'Idris.Core.TT.Ref', E134, E135, E136} -> (fun (V21, V22, V23) -> ('Idris.Idris2.Core.Name':'dn--un--/=_Eq__Name'(V20, V23)) end(E134, E135, E136)); _ -> case V14 of {'Idris.Core.TT.Bind', E130, E131, E132, E133} -> (fun (V24, V25, V26, V27) -> 1 end(E130, E131, E132, E133)); _ -> case V13 of {'Idris.Core.TT.App', E86, E87, E88} -> (fun (V28, V29, V30) -> case V14 of {'Idris.Core.TT.App', E105, E106, E107} -> (fun (V31, V32, V33) -> ('Idris.Idris2.Prelude.Basics':'un--||'(('nested--14442-6600--in--un--structDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V29, V32)), fun () -> ('nested--14442-6600--in--un--structDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V30, V33)) end)) end(E105, E106, E107)); _ -> case V14 of {'Idris.Core.TT.Erased', E103, E104} -> (fun (V34, V35) -> 1 end(E103, E104)); _ -> case V13 of {'Idris.Core.TT.TType', E93} -> (fun (V36) -> case V14 of {'Idris.Core.TT.TType', E98} -> (fun (V37) -> 1 end(E98)); _ -> case V14 of {'Idris.Core.TT.As', E94, E95, E96, E97} -> (fun (V38, V39, V40, V41) -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V13, V41)) end(E94, E95, E96, E97)); _ -> 0 end end end(E93)); {'Idris.Core.TT.As', E99, E100, E101, E102} -> (fun (V42, V43, V44, V45) -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V45, V14)) end(E99, E100, E101, E102)); _ -> case V14 of {'Idris.Core.TT.As', E89, E90, E91, E92} -> (fun (V46, V47, V48, V49) -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V13, V49)) end(E89, E90, E91, E92)); _ -> 0 end end end end end(E86, E87, E88)); {'Idris.Core.TT.PrimVal', E108, E109} -> (fun (V50, V51) -> case V14 of {'Idris.Core.TT.PrimVal', E126, E127} -> (fun (V52, V53) -> ('Idris.Idris2.Core.TT':'dn--un--/=_Eq__Constant'(V51, V53)) end(E126, E127)); _ -> case V14 of {'Idris.Core.TT.Erased', E124, E125} -> (fun (V54, V55) -> 1 end(E124, E125)); _ -> case V13 of {'Idris.Core.TT.TType', E114} -> (fun (V56) -> case V14 of {'Idris.Core.TT.TType', E119} -> (fun (V57) -> 1 end(E119)); _ -> case V14 of {'Idris.Core.TT.As', E115, E116, E117, E118} -> (fun (V58, V59, V60, V61) -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V13, V61)) end(E115, E116, E117, E118)); _ -> 0 end end end(E114)); {'Idris.Core.TT.As', E120, E121, E122, E123} -> (fun (V62, V63, V64, V65) -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V65, V14)) end(E120, E121, E122, E123)); _ -> case V14 of {'Idris.Core.TT.As', E110, E111, E112, E113} -> (fun (V66, V67, V68, V69) -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V13, V69)) end(E110, E111, E112, E113)); _ -> 0 end end end end end(E108, E109)); {'Idris.Core.TT.Erased', E128, E129} -> (fun (V70, V71) -> 1 end(E128, E129)); _ -> case V14 of {'Idris.Core.TT.Erased', E84, E85} -> (fun (V72, V73) -> 1 end(E84, E85)); _ -> case V13 of {'Idris.Core.TT.TType', E74} -> (fun (V74) -> case V14 of {'Idris.Core.TT.TType', E79} -> (fun (V75) -> 1 end(E79)); _ -> case V14 of {'Idris.Core.TT.As', E75, E76, E77, E78} -> (fun (V76, V77, V78, V79) -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V13, V79)) end(E75, E76, E77, E78)); _ -> 0 end end end(E74)); {'Idris.Core.TT.As', E80, E81, E82, E83} -> (fun (V80, V81, V82, V83) -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V83, V14)) end(E80, E81, E82, E83)); _ -> case V14 of {'Idris.Core.TT.As', E70, E71, E72, E73} -> (fun (V84, V85, V86, V87) -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V13, V87)) end(E70, E71, E72, E73)); _ -> 0 end end end end end end end(E67, E68, E69)); {'Idris.Core.TT.Bind', E137, E138, E139, E140} -> (fun (V88, V89, V90, V91) -> 1 end(E137, E138, E139, E140)); _ -> case V14 of {'Idris.Core.TT.Bind', E60, E61, E62, E63} -> (fun (V92, V93, V94, V95) -> 1 end(E60, E61, E62, E63)); _ -> case V13 of {'Idris.Core.TT.App', E16, E17, E18} -> (fun (V96, V97, V98) -> case V14 of {'Idris.Core.TT.App', E35, E36, E37} -> (fun (V99, V100, V101) -> ('Idris.Idris2.Prelude.Basics':'un--||'(('nested--14442-6600--in--un--structDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V97, V100)), fun () -> ('nested--14442-6600--in--un--structDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V98, V101)) end)) end(E35, E36, E37)); _ -> case V14 of {'Idris.Core.TT.Erased', E33, E34} -> (fun (V102, V103) -> 1 end(E33, E34)); _ -> case V13 of {'Idris.Core.TT.TType', E23} -> (fun (V104) -> case V14 of {'Idris.Core.TT.TType', E28} -> (fun (V105) -> 1 end(E28)); _ -> case V14 of {'Idris.Core.TT.As', E24, E25, E26, E27} -> (fun (V106, V107, V108, V109) -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V13, V109)) end(E24, E25, E26, E27)); _ -> 0 end end end(E23)); {'Idris.Core.TT.As', E29, E30, E31, E32} -> (fun (V110, V111, V112, V113) -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V113, V14)) end(E29, E30, E31, E32)); _ -> case V14 of {'Idris.Core.TT.As', E19, E20, E21, E22} -> (fun (V114, V115, V116, V117) -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V13, V117)) end(E19, E20, E21, E22)); _ -> 0 end end end end end(E16, E17, E18)); {'Idris.Core.TT.PrimVal', E38, E39} -> (fun (V118, V119) -> case V14 of {'Idris.Core.TT.PrimVal', E56, E57} -> (fun (V120, V121) -> ('Idris.Idris2.Core.TT':'dn--un--/=_Eq__Constant'(V119, V121)) end(E56, E57)); _ -> case V14 of {'Idris.Core.TT.Erased', E54, E55} -> (fun (V122, V123) -> 1 end(E54, E55)); _ -> case V13 of {'Idris.Core.TT.TType', E44} -> (fun (V124) -> case V14 of {'Idris.Core.TT.TType', E49} -> (fun (V125) -> 1 end(E49)); _ -> case V14 of {'Idris.Core.TT.As', E45, E46, E47, E48} -> (fun (V126, V127, V128, V129) -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V13, V129)) end(E45, E46, E47, E48)); _ -> 0 end end end(E44)); {'Idris.Core.TT.As', E50, E51, E52, E53} -> (fun (V130, V131, V132, V133) -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V133, V14)) end(E50, E51, E52, E53)); _ -> case V14 of {'Idris.Core.TT.As', E40, E41, E42, E43} -> (fun (V134, V135, V136, V137) -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V13, V137)) end(E40, E41, E42, E43)); _ -> 0 end end end end end(E38, E39)); {'Idris.Core.TT.Erased', E58, E59} -> (fun (V138, V139) -> 1 end(E58, E59)); _ -> case V14 of {'Idris.Core.TT.Erased', E14, E15} -> (fun (V140, V141) -> 1 end(E14, E15)); _ -> case V13 of {'Idris.Core.TT.TType', E4} -> (fun (V142) -> case V14 of {'Idris.Core.TT.TType', E9} -> (fun (V143) -> 1 end(E9)); _ -> case V14 of {'Idris.Core.TT.As', E5, E6, E7, E8} -> (fun (V144, V145, V146, V147) -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V13, V147)) end(E5, E6, E7, E8)); _ -> 0 end end end(E4)); {'Idris.Core.TT.As', E10, E11, E12, E13} -> (fun (V148, V149, V150, V151) -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V151, V14)) end(E10, E11, E12, E13)); _ -> case V14 of {'Idris.Core.TT.As', E0, E1, E2, E3} -> (fun (V152, V153, V154, V155) -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V13, V155)) end(E0, E1, E2, E3)); _ -> 0 end end end end end end. 'nested--14442-6599--in--un--appsDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16) -> case V13 of {'Idris.Core.TT.Ref', E0, E1, E2} -> (fun (V17, V18, V19) -> case V18 of {'Idris.Core.TT.DataCon', E11, E12} -> (fun (V20, V21) -> case V14 of {'Idris.Core.TT.Ref', E21, E22, E23} -> (fun (V22, V23, V24) -> case V23 of {'Idris.Core.TT.DataCon', E32, E33} -> (fun (V25, V26) -> ('Idris.Idris2.Prelude.Basics':'un--||'(('Idris.Idris2.Core.Name':'dn--un--/=_Eq__Name'(V19, V24)), fun () -> ('Idris.Idris2.Data.Bool.Extra':'un--anyTrue'(('Idris.Idris2.Data.List':'un--zipWith'('erased', 'erased', 'erased', fun (V27) -> fun (V28) -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V27, V28)) end end, V15, V16)))) end)) end(E32, E33)); _ -> case V14 of {'Idris.Core.TT.Ref', E29, E30, E31} -> (fun (V29, V30, V31) -> ('Idris.Idris2.Prelude.Basics':'un--&&'(('Idris.Idris2.Core.Name':'dn--un--==_Eq__Name'(V19, V31)), fun () -> ('Idris.Idris2.Prelude.Basics':'un--&&'(('Idris.Idris2.Prelude.Types':'dn--un--==_Eq__Nat'(('Idris.Idris2.Prelude.Types.List':'un--length'('erased', V15)), ('Idris.Idris2.Prelude.Types.List':'un--length'('erased', V16)))), fun () -> ('Idris.Idris2.Data.Bool.Extra':'un--anyTrue'(('Idris.Idris2.Data.List':'un--zipWith'('erased', 'erased', 'erased', fun (V32) -> fun (V33) -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V32, V33)) end end, V15, V16)))) end)) end)) end(E29, E30, E31)); _ -> case V18 of {'Idris.Core.TT.DataCon', E24, E25} -> (fun (V34, V35) -> case V14 of {'Idris.Core.TT.Local', E26, E27, E28} -> (fun (V36, V37, V38) -> 0 end(E26, E27, E28)); _ -> case V15 of [] -> case V16 of [] -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V13, V14)); _ -> 1 end; _ -> 1 end end end(E24, E25)); _ -> case V15 of [] -> case V16 of [] -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V13, V14)); _ -> 1 end; _ -> 1 end end end end end(E21, E22, E23)); _ -> case V14 of {'Idris.Core.TT.Ref', E18, E19, E20} -> (fun (V39, V40, V41) -> ('Idris.Idris2.Prelude.Basics':'un--&&'(('Idris.Idris2.Core.Name':'dn--un--==_Eq__Name'(V19, V41)), fun () -> ('Idris.Idris2.Prelude.Basics':'un--&&'(('Idris.Idris2.Prelude.Types':'dn--un--==_Eq__Nat'(('Idris.Idris2.Prelude.Types.List':'un--length'('erased', V15)), ('Idris.Idris2.Prelude.Types.List':'un--length'('erased', V16)))), fun () -> ('Idris.Idris2.Data.Bool.Extra':'un--anyTrue'(('Idris.Idris2.Data.List':'un--zipWith'('erased', 'erased', 'erased', fun (V42) -> fun (V43) -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V42, V43)) end end, V15, V16)))) end)) end)) end(E18, E19, E20)); _ -> case V18 of {'Idris.Core.TT.DataCon', E13, E14} -> (fun (V44, V45) -> case V14 of {'Idris.Core.TT.Local', E15, E16, E17} -> (fun (V46, V47, V48) -> 0 end(E15, E16, E17)); _ -> case V15 of [] -> case V16 of [] -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V13, V14)); _ -> 1 end; _ -> 1 end end end(E13, E14)); _ -> case V15 of [] -> case V16 of [] -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V13, V14)); _ -> 1 end; _ -> 1 end end end end end(E11, E12)); {'Idris.Core.TT.TyCon', E34, E35} -> (fun (V49, V50) -> case V14 of {'Idris.Core.TT.Ref', E44, E45, E46} -> (fun (V51, V52, V53) -> case V52 of {'Idris.Core.TT.TyCon', E55, E56} -> (fun (V54, V55) -> ('Idris.Idris2.Prelude.Basics':'un--||'(('Idris.Idris2.Core.Name':'dn--un--/=_Eq__Name'(V19, V53)), fun () -> ('Idris.Idris2.Data.Bool.Extra':'un--anyTrue'(('Idris.Idris2.Data.List':'un--zipWith'('erased', 'erased', 'erased', fun (V56) -> fun (V57) -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V56, V57)) end end, V15, V16)))) end)) end(E55, E56)); _ -> case V14 of {'Idris.Core.TT.Ref', E52, E53, E54} -> (fun (V58, V59, V60) -> ('Idris.Idris2.Prelude.Basics':'un--&&'(('Idris.Idris2.Core.Name':'dn--un--==_Eq__Name'(V19, V60)), fun () -> ('Idris.Idris2.Prelude.Basics':'un--&&'(('Idris.Idris2.Prelude.Types':'dn--un--==_Eq__Nat'(('Idris.Idris2.Prelude.Types.List':'un--length'('erased', V15)), ('Idris.Idris2.Prelude.Types.List':'un--length'('erased', V16)))), fun () -> ('Idris.Idris2.Data.Bool.Extra':'un--anyTrue'(('Idris.Idris2.Data.List':'un--zipWith'('erased', 'erased', 'erased', fun (V61) -> fun (V62) -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V61, V62)) end end, V15, V16)))) end)) end)) end(E52, E53, E54)); _ -> case V18 of {'Idris.Core.TT.DataCon', E47, E48} -> (fun (V63, V64) -> case V14 of {'Idris.Core.TT.Local', E49, E50, E51} -> (fun (V65, V66, V67) -> 0 end(E49, E50, E51)); _ -> case V15 of [] -> case V16 of [] -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V13, V14)); _ -> 1 end; _ -> 1 end end end(E47, E48)); _ -> case V15 of [] -> case V16 of [] -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V13, V14)); _ -> 1 end; _ -> 1 end end end end end(E44, E45, E46)); _ -> case V14 of {'Idris.Core.TT.Ref', E41, E42, E43} -> (fun (V68, V69, V70) -> ('Idris.Idris2.Prelude.Basics':'un--&&'(('Idris.Idris2.Core.Name':'dn--un--==_Eq__Name'(V19, V70)), fun () -> ('Idris.Idris2.Prelude.Basics':'un--&&'(('Idris.Idris2.Prelude.Types':'dn--un--==_Eq__Nat'(('Idris.Idris2.Prelude.Types.List':'un--length'('erased', V15)), ('Idris.Idris2.Prelude.Types.List':'un--length'('erased', V16)))), fun () -> ('Idris.Idris2.Data.Bool.Extra':'un--anyTrue'(('Idris.Idris2.Data.List':'un--zipWith'('erased', 'erased', 'erased', fun (V71) -> fun (V72) -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V71, V72)) end end, V15, V16)))) end)) end)) end(E41, E42, E43)); _ -> case V18 of {'Idris.Core.TT.DataCon', E36, E37} -> (fun (V73, V74) -> case V14 of {'Idris.Core.TT.Local', E38, E39, E40} -> (fun (V75, V76, V77) -> 0 end(E38, E39, E40)); _ -> case V15 of [] -> case V16 of [] -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V13, V14)); _ -> 1 end; _ -> 1 end end end(E36, E37)); _ -> case V15 of [] -> case V16 of [] -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V13, V14)); _ -> 1 end; _ -> 1 end end end end end(E34, E35)); _ -> case V14 of {'Idris.Core.TT.Ref', E8, E9, E10} -> (fun (V78, V79, V80) -> ('Idris.Idris2.Prelude.Basics':'un--&&'(('Idris.Idris2.Core.Name':'dn--un--==_Eq__Name'(V19, V80)), fun () -> ('Idris.Idris2.Prelude.Basics':'un--&&'(('Idris.Idris2.Prelude.Types':'dn--un--==_Eq__Nat'(('Idris.Idris2.Prelude.Types.List':'un--length'('erased', V15)), ('Idris.Idris2.Prelude.Types.List':'un--length'('erased', V16)))), fun () -> ('Idris.Idris2.Data.Bool.Extra':'un--anyTrue'(('Idris.Idris2.Data.List':'un--zipWith'('erased', 'erased', 'erased', fun (V81) -> fun (V82) -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V81, V82)) end end, V15, V16)))) end)) end)) end(E8, E9, E10)); _ -> case V18 of {'Idris.Core.TT.DataCon', E3, E4} -> (fun (V83, V84) -> case V14 of {'Idris.Core.TT.Local', E5, E6, E7} -> (fun (V85, V86, V87) -> 0 end(E5, E6, E7)); _ -> case V15 of [] -> case V16 of [] -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V13, V14)); _ -> 1 end; _ -> 1 end end end(E3, E4)); _ -> case V15 of [] -> case V16 of [] -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V13, V14)); _ -> 1 end; _ -> 1 end end end end end(E0, E1, E2)); {'Idris.Core.TT.Local', E57, E58, E59} -> (fun (V88, V89, V90) -> case V14 of {'Idris.Core.TT.Ref', E60, E61, E62} -> (fun (V91, V92, V93) -> case V92 of {'Idris.Core.TT.DataCon', E63, E64} -> (fun (V94, V95) -> 0 end(E63, E64)); _ -> case V15 of [] -> case V16 of [] -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V13, V14)); _ -> 1 end; _ -> 1 end end end(E60, E61, E62)); _ -> case V15 of [] -> case V16 of [] -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V13, V14)); _ -> 1 end; _ -> 1 end end end(E57, E58, E59)); _ -> case V15 of [] -> case V16 of [] -> ('nested--14442-6598--in--un--argDiff'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, 'erased', 'erased', V13, V14)); _ -> 1 end; _ -> 1 end end. 'nested--16986-8880--in--un--applyLocal'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16) -> case V15 of {'Idris.Core.Value.NBind', E0, E1, E2, E3} -> (fun (V17, V18, V19, V20) -> case V19 of {'Idris.Core.TT.Pi', E4, E5, E6, E7} -> (fun (V21, V22, V23, V24) -> fun (V25) -> begin (V29 = begin (V26 = (((V20(V13))(('Idris.Idris2.Core.Normalise':'un--toClosure'('erased', ('Idris.Idris2.Core.Value':'un--defaultOpts'()), V6, {'Idris.Core.TT.Erased', V9, 1}))))(V25))), case V26 of {'Idris.Prelude.Types.Left', E8} -> (fun (V27) -> {'Idris.Prelude.Types.Left', V27} end(E8)); {'Idris.Prelude.Types.Right', E9} -> (fun (V28) -> (('nested--16986-8879--in--un--matchable'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V28))(V25)) end(E9)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end), case V29 of {'Idris.Prelude.Types.Left', E10} -> (fun (V30) -> {'Idris.Prelude.Types.Left', V30} end(E10)); {'Idris.Prelude.Types.Right', E11} -> (fun (V31) -> case V31 of 0 -> begin (V32 = ('Idris.Idris2.Core.UnifyState':'un--genVarName'(V12, V10, <<"cty"/utf8>>, V25))), case V32 of {'Idris.Prelude.Types.Left', E12} -> (fun (V33) -> {'Idris.Prelude.Types.Left', V33} end(E12)); {'Idris.Prelude.Types.Right', E13} -> (fun (V34) -> begin (V39 = ('Idris.Idris2.TTImp.Elab.Check':'un--metaVar'(V0, V12, V10, V21, ('Idris.Idris2.Algebra.Semiring':'un--erased'('erased', {'Idris.Algebra.Semiring.dn--un--__mkSemiring', fun (V35) -> fun (V36) -> ('Idris.Idris2.Algebra.ZeroOneOmega':'dn--un--|+|_Semiring__ZeroOneOmega'(V35, V36)) end end, ('Idris.Idris2.Algebra.ZeroOneOmega':'dn--un--plusNeutral_Semiring__ZeroOneOmega'()), fun (V37) -> fun (V38) -> ('Idris.Idris2.Algebra.ZeroOneOmega':'dn--un--|*|_Semiring__ZeroOneOmega'(V37, V38)) end end, ('Idris.Idris2.Algebra.ZeroOneOmega':'dn--un--timesNeutral_Semiring__ZeroOneOmega'())})), V6, V34, {'Idris.Core.TT.TType', V9}, V25))), case V39 of {'Idris.Prelude.Types.Left', E14} -> (fun (V40) -> {'Idris.Prelude.Types.Left', V40} end(E14)); {'Idris.Prelude.Types.Right', E15} -> (fun (V41) -> begin (V52 = case V7 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E16, E17, E18, E19, E20, E21, E22, E23, E24, E25} -> (fun (V42, V43, V44, V45, V46, V47, V48, V49, V50, V51) -> {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', V42, V43, V44, V45, V46, 0, V48, V49, V50, V51} end(E16, E17, E18, E19, E20, E21, E22, E23, E24, E25)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end), begin (V53 = (('un--searchLocalWith'(V0, V12, V11, V10, V9, 0, V8, V52, V6, [{'Idris.Builtin.MkPair', V1, V2} | []], V41, V4))(V25))), case V53 of {'Idris.Prelude.Types.Left', E26} -> (fun (V54) -> {'Idris.Prelude.Types.Left', V54} end(E26)); {'Idris.Prelude.Types.Right', E27} -> (fun (V55) -> (('un--makeHelper'(V0, V12, V11, V10, V9, V8, V7, V6, V41, V16, V55))(V25)) end(E27)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E15)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E13)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end; 1 -> ('un--noResult'('erased', V25)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E11)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E4, E5, E6, E7)); _ -> fun (V56) -> ('un--noResult'('erased', V56)) end end end(E0, E1, E2, E3)); _ -> fun (V57) -> ('un--noResult'('erased', V57)) end end. 'dn--un--map_Functor__Search'(V0, V1, V2, V3) -> case V3 of {'Idris.TTImp.Interactive.ExprSearch.NoMore'} -> (fun () -> {'Idris.TTImp.Interactive.ExprSearch.NoMore'} end()); {'Idris.TTImp.Interactive.ExprSearch.Result', E0, E1} -> (fun (V4, V5) -> {'Idris.TTImp.Interactive.ExprSearch.Result', (V2(V4)), fun (V6) -> begin (V7 = (V5(V6))), case V7 of {'Idris.Prelude.Types.Left', E2} -> (fun (V8) -> {'Idris.Prelude.Types.Left', V8} end(E2)); {'Idris.Prelude.Types.Right', E3} -> (fun (V9) -> {'Idris.Prelude.Types.Right', ('dn--un--map_Functor__Search'('erased', 'erased', V2, V9))} end(E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end} end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'dn--un--__Impl_Functor_Search'(V0, V1, V2, V3) -> ('dn--un--map_Functor__Search'('erased', 'erased', V2, V3)). 'un--usableLocal'(V0, V1, V2, V3) -> case V3 of {'Idris.Core.Value.NApp', E0, E1, E2} -> (fun (V4, V5, V6) -> case V5 of {'Idris.Core.Value.NMeta', E3, E4, E5} -> (fun (V7, V8, V9) -> 1 end(E3, E4, E5)); _ -> 0 end end(E0, E1, E2)); _ -> 0 end. 'un--trySearch'(V0, V1, V2, V3, V4) -> ('un--firstSuccess'('erased', V1, V2, [V3 | [V4 | []]])). 'un--tryRecursive'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11) -> begin (V40 = begin (V39 = (('Idris.Idris2.Erlang.Data.IORef':'un--readIORef'('erased', 'erased', {'Idris.Prelude.IO.dn--un--__mkHasIO', {'Idris.Prelude.Interfaces.dn--un--__mkMonad', {'Idris.Prelude.Interfaces.dn--un--__mkApplicative', fun (V12) -> fun (V13) -> fun (V14) -> fun (V15) -> fun (V16) -> ('Idris.Idris2.Prelude.IO':'dn--un--map_Functor__IO'('erased', 'erased', V14, V15, V16)) end end end end end, fun (V17) -> fun (V18) -> fun (V19) -> V18 end end end, fun (V20) -> fun (V21) -> fun (V22) -> fun (V23) -> fun (V24) -> begin (V25 = (V22(V24))), begin (V26 = (V23(V24))), (V25(V26)) end end end end end end end}, fun (V27) -> fun (V28) -> fun (V29) -> fun (V30) -> fun (V31) -> begin (V32 = (V29(V31))), ((V30(V32))(V31)) end end end end end end, fun (V33) -> fun (V34) -> fun (V35) -> begin (V36 = (V34(V35))), (V36(V35)) end end end end}, fun (V37) -> fun (V38) -> V38 end end}, V1))(V11))), {'Idris.Prelude.Types.Right', V39} end), case V40 of {'Idris.Prelude.Types.Left', E0} -> (fun (V41) -> {'Idris.Prelude.Types.Left', V41} end(E0)); {'Idris.Prelude.Types.Right', E1} -> (fun (V42) -> begin (V72 = (('Idris.Idris2.Core.Context':'un--lookupCtxtExact'(case V10 of {'Idris.TTImp.Interactive.ExprSearch.MkRecData', E2, E3, E4} -> (fun (V43, V44, V45) -> V44 end(E2, E3, E4)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, case V42 of {'Idris.Core.Context.MkDefs', E5, E6, E7, E8, E9, E10, E11, E12, E13, E14, E15, E16, E17, E18, E19, E20, E21, E22, E23, E24, E25, E26, E27, E28, E29, E30} -> (fun (V46, V47, V48, V49, V50, V51, V52, V53, V54, V55, V56, V57, V58, V59, V60, V61, V62, V63, V64, V65, V66, V67, V68, V69, V70, V71) -> V46 end(E5, E6, E7, E8, E9, E10, E11, E12, E13, E14, E15, E16, E17, E18, E19, E20, E21, E22, E23, E24, E25, E26, E27, E28, E29, E30)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end))(V11))), case V72 of {'Idris.Prelude.Types.Left', E31} -> (fun (V73) -> {'Idris.Prelude.Types.Left', V73} end(E31)); {'Idris.Prelude.Types.Right', E32} -> (fun (V74) -> case V74 of {'Idris.Prelude.Types.Nothing'} -> (fun () -> ('un--noResult'('erased', V11)) end()); {'Idris.Prelude.Types.Just', E33} -> (fun (V75) -> begin (V92 = begin (V76 = (('Idris.Idris2.Core.Normalise':'un--nf'(V1, V0, V42, V7, V8))(V11))), case V76 of {'Idris.Prelude.Types.Left', E34} -> (fun (V77) -> {'Idris.Prelude.Types.Left', V77} end(E34)); {'Idris.Prelude.Types.Right', E35} -> (fun (V78) -> (('un--searchName'(V0, V1, V2, V3, V4, V5, case V6 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E36, E37, E38, E39, E40, E41, E42, E43, E44, E45} -> (fun (V79, V80, V81, V82, V83, V84, V85, V86, V87, V88) -> {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', V79, V80, {'Idris.Prelude.Types.Nothing'}, V82, V83, V84, V85, V86, V87, V88} end(E36, E37, E38, E39, E40, E41, E42, E43, E44, E45)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, V7, V78, V9, {'Idris.Builtin.MkPair', case V10 of {'Idris.TTImp.Interactive.ExprSearch.MkRecData', E46, E47, E48} -> (fun (V89, V90, V91) -> V90 end(E46, E47, E48)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, V75}))(V11)) end(E35)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end), case V92 of {'Idris.Prelude.Types.Left', E49} -> (fun (V93) -> {'Idris.Prelude.Types.Left', V93} end(E49)); {'Idris.Prelude.Types.Right', E50} -> (fun (V94) -> begin (V123 = begin (V122 = (('Idris.Idris2.Erlang.Data.IORef':'un--readIORef'('erased', 'erased', {'Idris.Prelude.IO.dn--un--__mkHasIO', {'Idris.Prelude.Interfaces.dn--un--__mkMonad', {'Idris.Prelude.Interfaces.dn--un--__mkApplicative', fun (V95) -> fun (V96) -> fun (V97) -> fun (V98) -> fun (V99) -> ('Idris.Idris2.Prelude.IO':'dn--un--map_Functor__IO'('erased', 'erased', V97, V98, V99)) end end end end end, fun (V100) -> fun (V101) -> fun (V102) -> V101 end end end, fun (V103) -> fun (V104) -> fun (V105) -> fun (V106) -> fun (V107) -> begin (V108 = (V105(V107))), begin (V109 = (V106(V107))), (V108(V109)) end end end end end end end}, fun (V110) -> fun (V111) -> fun (V112) -> fun (V113) -> fun (V114) -> begin (V115 = (V112(V114))), ((V113(V115))(V114)) end end end end end end, fun (V116) -> fun (V117) -> fun (V118) -> begin (V119 = (V117(V118))), (V119(V118)) end end end end}, fun (V120) -> fun (V121) -> V121 end end}, V1))(V11))), {'Idris.Prelude.Types.Right', V122} end), case V123 of {'Idris.Prelude.Types.Left', E51} -> (fun (V124) -> {'Idris.Prelude.Types.Left', V124} end(E51)); {'Idris.Prelude.Types.Right', E52} -> (fun (V125) -> begin (V137 = (('un--traverse'('erased', 'erased', fun (V126) -> case V126 of {'Idris.Builtin.MkPair', E53, E54} -> (fun (V127, V128) -> fun (V129) -> begin (V134 = ('Idris.Idris2.Core.Context':'un--toFullNames'('erased', V1, {'Idris.Core.Context.dn--un--__mkHasNames', fun (V130) -> fun (V131) -> ('Idris.Idris2.Core.Context':'dn--un--full_HasNames__(Term $vars)'('erased', V130, V131)) end end, fun (V132) -> fun (V133) -> ('Idris.Idris2.Core.Context':'dn--un--resolved_HasNames__(Term $vars)'('erased', V132, V133)) end end}, V127, V129))), case V134 of {'Idris.Prelude.Types.Left', E55} -> (fun (V135) -> {'Idris.Prelude.Types.Left', V135} end(E55)); {'Idris.Prelude.Types.Right', E56} -> (fun (V136) -> {'Idris.Prelude.Types.Right', {'Idris.Builtin.MkPair', V136, V128}} end(E56)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E53, E54)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end, V94))(V11))), case V137 of {'Idris.Prelude.Types.Left', E57} -> (fun (V138) -> {'Idris.Prelude.Types.Left', V138} end(E57)); {'Idris.Prelude.Types.Right', E58} -> (fun (V139) -> (('un--filterS'('erased', fun (V140) -> ('nested--14442-6601--in--un--structDiffTm'(V0, V10, V9, V8, V7, V6, V5, V4, V3, V2, V1, 'erased', 'erased', case V10 of {'Idris.TTImp.Interactive.ExprSearch.MkRecData', E59, E60, E61} -> (fun (V141, V142, V143) -> V143 end(E59, E60, E61)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, V140)) end, V139))(V11)) end(E58)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E52)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E50)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E33)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E32)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end. 'un--tryIntermediateWith'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10) -> case V8 of [] -> fun (V11) -> ('un--noResult'('erased', V11)) end; [E0 | E1] -> (fun (V12, V13) -> case V12 of {'Idris.Builtin.MkPair', E2, E3} -> (fun (V14, V15) -> fun (V16) -> begin (V45 = begin (V44 = (('Idris.Idris2.Erlang.Data.IORef':'un--readIORef'('erased', 'erased', {'Idris.Prelude.IO.dn--un--__mkHasIO', {'Idris.Prelude.Interfaces.dn--un--__mkMonad', {'Idris.Prelude.Interfaces.dn--un--__mkApplicative', fun (V17) -> fun (V18) -> fun (V19) -> fun (V20) -> fun (V21) -> ('Idris.Idris2.Prelude.IO':'dn--un--map_Functor__IO'('erased', 'erased', V19, V20, V21)) end end end end end, fun (V22) -> fun (V23) -> fun (V24) -> V23 end end end, fun (V25) -> fun (V26) -> fun (V27) -> fun (V28) -> fun (V29) -> begin (V30 = (V27(V29))), begin (V31 = (V28(V29))), (V30(V31)) end end end end end end end}, fun (V32) -> fun (V33) -> fun (V34) -> fun (V35) -> fun (V36) -> begin (V37 = (V34(V36))), ((V35(V37))(V36)) end end end end end end, fun (V38) -> fun (V39) -> fun (V40) -> begin (V41 = (V39(V40))), (V41(V40)) end end end end}, fun (V42) -> fun (V43) -> V43 end end}, V1))(V16))), {'Idris.Prelude.Types.Right', V44} end), case V45 of {'Idris.Prelude.Types.Left', E4} -> (fun (V46) -> {'Idris.Prelude.Types.Left', V46} end(E4)); {'Idris.Prelude.Types.Right', E5} -> (fun (V47) -> begin (V48 = (('Idris.Idris2.Core.Normalise':'un--nf'(V1, V0, V47, V7, V15))(V16))), case V48 of {'Idris.Prelude.Types.Left', E6} -> (fun (V49) -> {'Idris.Prelude.Types.Left', V49} end(E6)); {'Idris.Prelude.Types.Right', E7} -> (fun (V50) -> ('un--getSuccessful'(V0, V1, V2, V3, V4, V5, V6, 1, V7, V9, V10, [('nested--16986-8880--in--un--applyLocal'(V0, V14, V15, V13, V10, V9, V7, V6, V5, V4, V3, V2, V1, V47, V14, V50, V9)) | [('un--tryIntermediateWith'(V0, V1, V2, V3, V4, V5, V6, V7, V13, V9, V10)) | []]], V16)) end(E7)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E5)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E2, E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'un--tryIntermediateRec'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10) -> case V10 of {'Idris.Prelude.Types.Nothing'} -> (fun () -> fun (V11) -> ('un--noResult'('erased', V11)) end end()); {'Idris.Prelude.Types.Just', E0} -> (fun (V12) -> fun (V13) -> begin (V42 = begin (V41 = (('Idris.Idris2.Erlang.Data.IORef':'un--readIORef'('erased', 'erased', {'Idris.Prelude.IO.dn--un--__mkHasIO', {'Idris.Prelude.Interfaces.dn--un--__mkMonad', {'Idris.Prelude.Interfaces.dn--un--__mkApplicative', fun (V14) -> fun (V15) -> fun (V16) -> fun (V17) -> fun (V18) -> ('Idris.Idris2.Prelude.IO':'dn--un--map_Functor__IO'('erased', 'erased', V16, V17, V18)) end end end end end, fun (V19) -> fun (V20) -> fun (V21) -> V20 end end end, fun (V22) -> fun (V23) -> fun (V24) -> fun (V25) -> fun (V26) -> begin (V27 = (V24(V26))), begin (V28 = (V25(V26))), (V27(V28)) end end end end end end end}, fun (V29) -> fun (V30) -> fun (V31) -> fun (V32) -> fun (V33) -> begin (V34 = (V31(V33))), ((V32(V34))(V33)) end end end end end end, fun (V35) -> fun (V36) -> fun (V37) -> begin (V38 = (V36(V37))), (V38(V37)) end end end end}, fun (V39) -> fun (V40) -> V40 end end}, V1))(V13))), {'Idris.Prelude.Types.Right', V41} end), case V42 of {'Idris.Prelude.Types.Left', E1} -> (fun (V43) -> {'Idris.Prelude.Types.Left', V43} end(E1)); {'Idris.Prelude.Types.Right', E2} -> (fun (V44) -> begin (V74 = ('Idris.Idris2.Core.Context':'un--lookupTyExact'(case V12 of {'Idris.TTImp.Interactive.ExprSearch.MkRecData', E3, E4, E5} -> (fun (V45, V46, V47) -> V46 end(E3, E4, E5)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, case V44 of {'Idris.Core.Context.MkDefs', E6, E7, E8, E9, E10, E11, E12, E13, E14, E15, E16, E17, E18, E19, E20, E21, E22, E23, E24, E25, E26, E27, E28, E29, E30, E31} -> (fun (V48, V49, V50, V51, V52, V53, V54, V55, V56, V57, V58, V59, V60, V61, V62, V63, V64, V65, V66, V67, V68, V69, V70, V71, V72, V73) -> V48 end(E6, E7, E8, E9, E10, E11, E12, E13, E14, E15, E16, E17, E18, E19, E20, E21, E22, E23, E24, E25, E26, E27, E28, E29, E30, E31)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, V13))), case V74 of {'Idris.Prelude.Types.Left', E32} -> (fun (V75) -> {'Idris.Prelude.Types.Left', V75} end(E32)); {'Idris.Prelude.Types.Right', E33} -> (fun (V76) -> case V76 of {'Idris.Prelude.Types.Just', E34} -> (fun (V77) -> begin (V81 = begin (V78 = (('Idris.Idris2.Core.Normalise':'un--nf'(V1, [], V44, {'Idris.Core.Env.Nil'}, V77))(V13))), case V78 of {'Idris.Prelude.Types.Left', E35} -> (fun (V79) -> {'Idris.Prelude.Types.Left', V79} end(E35)); {'Idris.Prelude.Types.Right', E36} -> (fun (V80) -> (('nested--17412-9249--in--un--isSingleCon'(V0, V12, V9, V8, V7, V6, V5, V4, V3, V2, V1, V44, V80))(V13)) end(E36)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end), case V81 of {'Idris.Prelude.Types.Left', E37} -> (fun (V82) -> {'Idris.Prelude.Types.Left', V82} end(E37)); {'Idris.Prelude.Types.Right', E38} -> (fun (V83) -> case V83 of 0 -> begin (V84 = ('Idris.Idris2.Core.UnifyState':'un--genVarName'(V1, V3, <<"cty"/utf8>>, V13))), case V84 of {'Idris.Prelude.Types.Left', E39} -> (fun (V85) -> {'Idris.Prelude.Types.Left', V85} end(E39)); {'Idris.Prelude.Types.Right', E40} -> (fun (V86) -> begin (V91 = ('Idris.Idris2.TTImp.Elab.Check':'un--metaVar'(V0, V1, V3, V4, ('Idris.Idris2.Algebra.Semiring':'un--erased'('erased', {'Idris.Algebra.Semiring.dn--un--__mkSemiring', fun (V87) -> fun (V88) -> ('Idris.Idris2.Algebra.ZeroOneOmega':'dn--un--|+|_Semiring__ZeroOneOmega'(V87, V88)) end end, ('Idris.Idris2.Algebra.ZeroOneOmega':'dn--un--plusNeutral_Semiring__ZeroOneOmega'()), fun (V89) -> fun (V90) -> ('Idris.Idris2.Algebra.ZeroOneOmega':'dn--un--|*|_Semiring__ZeroOneOmega'(V89, V90)) end end, ('Idris.Idris2.Algebra.ZeroOneOmega':'dn--un--timesNeutral_Semiring__ZeroOneOmega'())})), V7, V86, {'Idris.Core.TT.TType', V4}, V13))), case V91 of {'Idris.Prelude.Types.Left', E41} -> (fun (V92) -> {'Idris.Prelude.Types.Left', V92} end(E41)); {'Idris.Prelude.Types.Right', E42} -> (fun (V93) -> begin (V104 = case V6 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E43, E44, E45, E46, E47, E48, E49, E50, E51, E52} -> (fun (V94, V95, V96, V97, V98, V99, V100, V101, V102, V103) -> {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', V94, V95, {'Idris.Prelude.Types.Nothing'}, V97, V98, 0, V100, V101, V102, V103} end(E43, E44, E45, E46, E47, E48, E49, E50, E51, E52)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end), begin (V105 = ('Idris.Idris2.Core.Context.Log':'un--logTerm'(V0, V1, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> <<"Trying recursive search for"/utf8>> end, V8, V13))), case V105 of {'Idris.Prelude.Types.Left', E53} -> (fun (V106) -> {'Idris.Prelude.Types.Left', V106} end(E53)); {'Idris.Prelude.Types.Right', E54} -> (fun (V107) -> begin (V118 = begin (V115 = ('Idris.Idris2.Core.Context':'un--toFullNames'('erased', V1, {'Idris.Core.Context.dn--un--__mkHasNames', fun (V108) -> fun (V109) -> ('Idris.Idris2.Core.Context':'dn--un--full_HasNames__Name'(V108, V109)) end end, fun (V110) -> fun (V111) -> ('Idris.Idris2.Core.Context':'dn--un--resolved_HasNames__Name'(V110, V111)) end end}, case V12 of {'Idris.TTImp.Interactive.ExprSearch.MkRecData', E55, E56, E57} -> (fun (V112, V113, V114) -> V113 end(E55, E56, E57)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, V13))), case V115 of {'Idris.Prelude.Types.Left', E58} -> (fun (V116) -> {'Idris.Prelude.Types.Left', V116} end(E58)); {'Idris.Prelude.Types.Right', E59} -> (fun (V117) -> (('Idris.Idris2.Core.Context.Log':'un--log'(V1, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> ('Idris.Idris2.Core.Name':'dn--un--show_Show__Name'(V117)) end))(V13)) end(E59)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end), case V118 of {'Idris.Prelude.Types.Left', E60} -> (fun (V119) -> {'Idris.Prelude.Types.Left', V119} end(E60)); {'Idris.Prelude.Types.Right', E61} -> (fun (V120) -> begin (V134 = begin (V128 = ('Idris.Idris2.Core.Context':'un--toFullNames'('erased', V1, {'Idris.Core.Context.dn--un--__mkHasNames', fun (V121) -> fun (V122) -> ('Idris.Idris2.Core.Context':'dn--un--full_HasNames__(Term $vars)'('erased', V121, V122)) end end, fun (V123) -> fun (V124) -> ('Idris.Idris2.Core.Context':'dn--un--resolved_HasNames__(Term $vars)'('erased', V123, V124)) end end}, case V12 of {'Idris.TTImp.Interactive.ExprSearch.MkRecData', E62, E63, E64} -> (fun (V125, V126, V127) -> V127 end(E62, E63, E64)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, V13))), case V128 of {'Idris.Prelude.Types.Left', E65} -> (fun (V129) -> {'Idris.Prelude.Types.Left', V129} end(E65)); {'Idris.Prelude.Types.Right', E66} -> (fun (V130) -> ('Idris.Idris2.Core.Context.Log':'un--logTerm'(case V12 of {'Idris.TTImp.Interactive.ExprSearch.MkRecData', E67, E68, E69} -> (fun (V131, V132, V133) -> V131 end(E67, E68, E69)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, V1, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> <<"LHS"/utf8>> end, V130, V13)) end(E66)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end), case V134 of {'Idris.Prelude.Types.Left', E70} -> (fun (V135) -> {'Idris.Prelude.Types.Left', V135} end(E70)); {'Idris.Prelude.Types.Right', E71} -> (fun (V136) -> begin (V137 = ('un--tryRecursive'(V0, V1, V2, V3, V4, V5, V104, V7, V93, V9, V12, V13))), case V137 of {'Idris.Prelude.Types.Left', E72} -> (fun (V138) -> {'Idris.Prelude.Types.Left', V138} end(E72)); {'Idris.Prelude.Types.Right', E73} -> (fun (V139) -> (('un--makeHelper'(V0, V1, V2, V3, V4, V5, V104, V7, V93, V8, V139))(V13)) end(E73)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E71)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E61)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E54)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E42)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E40)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end; _ -> ('un--noResult'('erased', V13)) end end(E38)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E34)); {'Idris.Prelude.Types.Nothing'} -> (fun () -> ('un--noResult'('erased', V13)) end()); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E33)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E2)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E0)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'un--tryIntermediate'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9) -> ('un--tryIntermediateWith'(V0, V1, V2, V3, V4, V5, V6, V7, ('Idris.Idris2.Data.List':'un--reverse'('erased', ('un--getAllEnv'('erased', V0, V4, ('Idris.Idris2.Core.TT.SizeOf':'un--zero'('erased')), V7)))), V8, V9)). 'un--traverse'(V0, V1, V2, V3) -> case V3 of {'Idris.TTImp.Interactive.ExprSearch.NoMore'} -> (fun () -> fun (V4) -> {'Idris.Prelude.Types.Right', {'Idris.TTImp.Interactive.ExprSearch.NoMore'}} end end()); {'Idris.TTImp.Interactive.ExprSearch.Result', E0, E1} -> (fun (V5, V6) -> fun (V7) -> begin (V8 = ((V2(V5))(V7))), case V8 of {'Idris.Prelude.Types.Left', E2} -> (fun (V9) -> {'Idris.Prelude.Types.Left', V9} end(E2)); {'Idris.Prelude.Types.Right', E3} -> (fun (V10) -> {'Idris.Prelude.Types.Right', {'Idris.TTImp.Interactive.ExprSearch.Result', V10, fun (V11) -> begin (V12 = (V6(V11))), case V12 of {'Idris.Prelude.Types.Left', E4} -> (fun (V13) -> {'Idris.Prelude.Types.Left', V13} end(E4)); {'Idris.Prelude.Types.Right', E5} -> (fun (V14) -> (('un--traverse'('erased', 'erased', V2, V14))(V11)) end(E5)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end}} end(E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'un--searchType'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10) -> case V9 of 0 -> case V10 of {'Idris.Core.TT.Bind', E14, E15, E16, E17} -> (fun (V11, V12, V13, V14) -> case V13 of {'Idris.Core.TT.Pi', E18, E19, E20, E21} -> (fun (V15, V16, V17, V18) -> fun (V19) -> ('un--getSuccessful'(V0, V1, V2, V3, V4, V5, V6, 1, V7, V18, V8, [('un--searchLocal'(V0, V1, V2, V3, V4, V5, V6, V7, {'Idris.Core.TT.Bind', V11, V12, V13, V14}, V8)) | [fun (V20) -> begin (V49 = begin (V48 = (('Idris.Idris2.Erlang.Data.IORef':'un--readIORef'('erased', 'erased', {'Idris.Prelude.IO.dn--un--__mkHasIO', {'Idris.Prelude.Interfaces.dn--un--__mkMonad', {'Idris.Prelude.Interfaces.dn--un--__mkApplicative', fun (V21) -> fun (V22) -> fun (V23) -> fun (V24) -> fun (V25) -> ('Idris.Idris2.Prelude.IO':'dn--un--map_Functor__IO'('erased', 'erased', V23, V24, V25)) end end end end end, fun (V26) -> fun (V27) -> fun (V28) -> V27 end end end, fun (V29) -> fun (V30) -> fun (V31) -> fun (V32) -> fun (V33) -> begin (V34 = (V31(V33))), begin (V35 = (V32(V33))), (V34(V35)) end end end end end end end}, fun (V36) -> fun (V37) -> fun (V38) -> fun (V39) -> fun (V40) -> begin (V41 = (V38(V40))), ((V39(V41))(V40)) end end end end end end, fun (V42) -> fun (V43) -> fun (V44) -> begin (V45 = (V43(V44))), (V45(V44)) end end end end}, fun (V46) -> fun (V47) -> V47 end end}, V1))(V20))), {'Idris.Prelude.Types.Right', V48} end), case V49 of {'Idris.Prelude.Types.Left', E22} -> (fun (V50) -> {'Idris.Prelude.Types.Left', V50} end(E22)); {'Idris.Prelude.Types.Right', E23} -> (fun (V51) -> begin (V52 = (('Idris.Idris2.Core.Normalise':'un--nf'(V1, V0, V51, V7, V18))(V20))), case V52 of {'Idris.Prelude.Types.Left', E24} -> (fun (V53) -> {'Idris.Prelude.Types.Left', V53} end(E24)); {'Idris.Prelude.Types.Right', E25} -> (fun (V54) -> begin (V55 = ('Idris.Idris2.TTImp.Interactive.CaseSplit':'un--getArgName'('erased', V1, V51, V12, [], V0, V54, V20))), case V55 of {'Idris.Prelude.Types.Left', E26} -> (fun (V56) -> {'Idris.Prelude.Types.Left', V56} end(E26)); {'Idris.Prelude.Types.Right', E27} -> (fun (V57) -> begin (V58 = {'Idris.Core.Name.UN', V57}), begin (V59 = {'Idris.Core.Env.::', V13, V7}), begin (V60 = ('Idris.Idris2.Core.TT':'un--renameTop'('erased', 'erased', V58, V14))), begin (V61 = (('Idris.Idris2.Core.Context.Log':'un--log'(V1, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> ('Idris.Idris2.Prelude.Types.Strings':'un--++'(<<"Introduced lambda, search for "/utf8>>, ('Idris.Idris2.Core.TT':'dn--un--show_Show__(Term $vars)'([V58 | V0], V60)))) end))(V20))), case V61 of {'Idris.Prelude.Types.Left', E28} -> (fun (V62) -> {'Idris.Prelude.Types.Left', V62} end(E28)); {'Idris.Prelude.Types.Right', E29} -> (fun (V63) -> begin (V64 = (('un--searchType'([V58 | V0], V1, V2, V3, V4, V5, V6, V59, V8, 0, V60))(V20))), case V64 of {'Idris.Prelude.Types.Left', E30} -> (fun (V65) -> {'Idris.Prelude.Types.Left', V65} end(E30)); {'Idris.Prelude.Types.Right', E31} -> (fun (V66) -> {'Idris.Prelude.Types.Right', ('dn--un--map_Functor__Search'('erased', 'erased', fun (V67) -> case V67 of {'Idris.Builtin.MkPair', E32, E33} -> (fun (V68, V69) -> {'Idris.Builtin.MkPair', {'Idris.Core.TT.Bind', V11, V58, {'Idris.Core.TT.Lam', V15, V16, V17, V18}, V68}, V69} end(E32, E33)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end, V66))} end(E31)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E29)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end end end(E27)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E25)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E23)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end | []]], V19)) end end(E18, E19, E20, E21)); _ -> ('case--searchType-9992'(V0, V9, V10, V8, V7, V6, V5, V4, V3, V2, V1, ('Idris.Idris2.Core.TT':'un--getFnArgs'('erased', V10)))) end end(E14, E15, E16, E17)); _ -> ('case--searchType-9992'(V0, V9, V10, V8, V7, V6, V5, V4, V3, V2, V1, ('Idris.Idris2.Core.TT':'un--getFnArgs'('erased', V10)))) end; _ -> begin (V70 = (V9 - 1)), case V10 of {'Idris.Core.TT.Bind', E0, E1, E2, E3} -> (fun (V71, V72, V73, V74) -> case V73 of {'Idris.Core.TT.Pi', E4, E5, E6, E7} -> (fun (V75, V76, V77, V78) -> begin (V79 = {'Idris.Core.Env.::', V73, V7}), fun (V80) -> begin (V81 = (('Idris.Idris2.Core.Context.Log':'un--log'(V1, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> ('Idris.Idris2.Prelude.Types.Strings':'un--++'(<<"Introduced lambda, search for "/utf8>>, ('Idris.Idris2.Core.TT':'dn--un--show_Show__(Term $vars)'([V72 | V0], V74)))) end))(V80))), case V81 of {'Idris.Prelude.Types.Left', E8} -> (fun (V82) -> {'Idris.Prelude.Types.Left', V82} end(E8)); {'Idris.Prelude.Types.Right', E9} -> (fun (V83) -> begin (V84 = (('un--searchType'([V72 | V0], V1, V2, V3, V4, V5, V6, V79, V8, V70, V74))(V80))), case V84 of {'Idris.Prelude.Types.Left', E10} -> (fun (V85) -> {'Idris.Prelude.Types.Left', V85} end(E10)); {'Idris.Prelude.Types.Right', E11} -> (fun (V86) -> {'Idris.Prelude.Types.Right', ('dn--un--map_Functor__Search'('erased', 'erased', fun (V87) -> case V87 of {'Idris.Builtin.MkPair', E12, E13} -> (fun (V88, V89) -> {'Idris.Builtin.MkPair', {'Idris.Core.TT.Bind', V71, V72, {'Idris.Core.TT.Lam', V75, V76, V77, V78}, V88}, V89} end(E12, E13)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end, V86))} end(E11)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E9)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end end(E4, E5, E6, E7)); _ -> ('case--searchType-9992'(V0, V9, V10, V8, V7, V6, V5, V4, V3, V2, V1, ('Idris.Idris2.Core.TT':'un--getFnArgs'('erased', V10)))) end end(E0, E1, E2, E3)); _ -> ('case--searchType-9992'(V0, V9, V10, V8, V7, V6, V5, V4, V3, V2, V1, ('Idris.Idris2.Core.TT':'un--getFnArgs'('erased', V10)))) end end end. 'un--searchSort'(V0, V1, V2, V3, V4, V5, V6) -> begin (V7 = ('un--searchN'('erased', V1, V2, V3, V4, V6))), case V7 of {'Idris.Prelude.Types.Left', E0} -> (fun (V8) -> {'Idris.Prelude.Types.Left', V8} end(E0)); {'Idris.Prelude.Types.Right', E1} -> (fun (V9) -> case V9 of {'Idris.Builtin.MkPair', E2, E3} -> (fun (V10, V11) -> begin (V12 = {'Idris.Builtin.MkPair', V10, V11}), (('case--case block in searchSort-4332'('erased', V5, V4, V3, V2, V1, V10, V11, V12, ('Idris.Idris2.Data.List':'un--isNil'('erased', V10))))(V6)) end end(E2, E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end. 'un--searchNames'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10) -> case V10 of [] -> fun (V11) -> ('un--noResult'('erased', V11)) end; [E0 | E1] -> (fun (V12, V13) -> fun (V14) -> begin (V43 = begin (V42 = (('Idris.Idris2.Erlang.Data.IORef':'un--readIORef'('erased', 'erased', {'Idris.Prelude.IO.dn--un--__mkHasIO', {'Idris.Prelude.Interfaces.dn--un--__mkMonad', {'Idris.Prelude.Interfaces.dn--un--__mkApplicative', fun (V15) -> fun (V16) -> fun (V17) -> fun (V18) -> fun (V19) -> ('Idris.Idris2.Prelude.IO':'dn--un--map_Functor__IO'('erased', 'erased', V17, V18, V19)) end end end end end, fun (V20) -> fun (V21) -> fun (V22) -> V21 end end end, fun (V23) -> fun (V24) -> fun (V25) -> fun (V26) -> fun (V27) -> begin (V28 = (V25(V27))), begin (V29 = (V26(V27))), (V28(V29)) end end end end end end end}, fun (V30) -> fun (V31) -> fun (V32) -> fun (V33) -> fun (V34) -> begin (V35 = (V32(V34))), ((V33(V35))(V34)) end end end end end end, fun (V36) -> fun (V37) -> fun (V38) -> begin (V39 = (V37(V38))), (V39(V38)) end end end end}, fun (V40) -> fun (V41) -> V41 end end}, V1))(V14))), {'Idris.Prelude.Types.Right', V42} end), case V43 of {'Idris.Prelude.Types.Left', E2} -> (fun (V44) -> {'Idris.Prelude.Types.Left', V44} end(E2)); {'Idris.Prelude.Types.Right', E3} -> (fun (V45) -> begin (V126 = (('Idris.Idris2.Core.Core':'un--traverse'('erased', 'erased', fun (V46) -> fun (V47) -> ('nested--14147-6338--in--un--visible'(V0, V12, V13, V9, V8, V7, V6, V5, V4, V3, V2, V1, case V45 of {'Idris.Core.Context.MkDefs', E4, E5, E6, E7, E8, E9, E10, E11, E12, E13, E14, E15, E16, E17, E18, E19, E20, E21, E22, E23, E24, E25, E26, E27, E28, E29} -> (fun (V48, V49, V50, V51, V52, V53, V54, V55, V56, V57, V58, V59, V60, V61, V62, V63, V64, V65, V66, V67, V68, V69, V70, V71, V72, V73) -> V48 end(E4, E5, E6, E7, E8, E9, E10, E11, E12, E13, E14, E15, E16, E17, E18, E19, E20, E21, E22, E23, E24, E25, E26, E27, E28, E29)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, [case V45 of {'Idris.Core.Context.MkDefs', E30, E31, E32, E33, E34, E35, E36, E37, E38, E39, E40, E41, E42, E43, E44, E45, E46, E47, E48, E49, E50, E51, E52, E53, E54, E55} -> (fun (V74, V75, V76, V77, V78, V79, V80, V81, V82, V83, V84, V85, V86, V87, V88, V89, V90, V91, V92, V93, V94, V95, V96, V97, V98, V99) -> V76 end(E30, E31, E32, E33, E34, E35, E36, E37, E38, E39, E40, E41, E42, E43, E44, E45, E46, E47, E48, E49, E50, E51, E52, E53, E54, E55)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end | case V45 of {'Idris.Core.Context.MkDefs', E56, E57, E58, E59, E60, E61, E62, E63, E64, E65, E66, E67, E68, E69, E70, E71, E72, E73, E74, E75, E76, E77, E78, E79, E80, E81} -> (fun (V100, V101, V102, V103, V104, V105, V106, V107, V108, V109, V110, V111, V112, V113, V114, V115, V116, V117, V118, V119, V120, V121, V122, V123, V124, V125) -> V103 end(E56, E57, E58, E59, E60, E61, E62, E63, E64, E65, E66, E67, E68, E69, E70, E71, E72, E73, E74, E75, E76, E77, E78, E79, E80, E81)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end], V46, V47)) end end, [V12 | V13]))(V14))), case V126 of {'Idris.Prelude.Types.Left', E82} -> (fun (V127) -> {'Idris.Prelude.Types.Left', V127} end(E82)); {'Idris.Prelude.Types.Right', E83} -> (fun (V128) -> begin (V130 = ('Idris.Idris2.Data.List':'un--mapMaybe'('erased', 'erased', fun (V129) -> V129 end, V128))), begin (V131 = (('Idris.Idris2.Core.Normalise':'un--nf'(V1, V0, V45, V7, V8))(V14))), case V131 of {'Idris.Prelude.Types.Left', E84} -> (fun (V132) -> {'Idris.Prelude.Types.Left', V132} end(E84)); {'Idris.Prelude.Types.Right', E85} -> (fun (V133) -> begin (V138 = ('Idris.Idris2.Core.Context.Log':'un--logTerm'(V0, V1, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> ('Idris.Idris2.Prelude.Types.Strings':'un--++'(<<"Searching "/utf8>>, ('Idris.Idris2.Prelude.Types.Strings':'un--++'(('Idris.Idris2.Prelude.Show':'dn--un--show_Show__(List $a)'('erased', {'Idris.Prelude.Show.dn--un--__mkShow', fun (V134) -> ('Idris.Idris2.Core.Name':'dn--un--show_Show__Name'(V134)) end, fun (V135) -> fun (V136) -> ('Idris.Idris2.Core.Name':'dn--un--showPrec_Show__Name'(V135, V136)) end end}, ('Idris.Idris2.Prelude.Types':'dn--un--map_Functor__List'('erased', 'erased', fun (V137) -> ('Idris.Idris2.Builtin':'un--fst'('erased', 'erased', V137)) end, V130)))), <<" for "/utf8>>)))) end, V8, V14))), case V138 of {'Idris.Prelude.Types.Left', E86} -> (fun (V139) -> {'Idris.Prelude.Types.Left', V139} end(E86)); {'Idris.Prelude.Types.Right', E87} -> (fun (V140) -> ('un--getSuccessful'(V0, V1, V2, V3, V4, V5, V6, 1, V7, V8, V9, ('Idris.Idris2.Prelude.Types':'dn--un--map_Functor__List'('erased', 'erased', fun (V141) -> ('un--searchName'(V0, V1, V2, V3, V4, V5, V6, V7, V133, V9, V141)) end, V130)), V14)) end(E87)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E85)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E83)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'un--searchName'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10) -> case V10 of {'Idris.Builtin.MkPair', E0, E1} -> (fun (V11, V12) -> fun (V13) -> begin (V42 = begin (V41 = (('Idris.Idris2.Erlang.Data.IORef':'un--readIORef'('erased', 'erased', {'Idris.Prelude.IO.dn--un--__mkHasIO', {'Idris.Prelude.Interfaces.dn--un--__mkMonad', {'Idris.Prelude.Interfaces.dn--un--__mkApplicative', fun (V14) -> fun (V15) -> fun (V16) -> fun (V17) -> fun (V18) -> ('Idris.Idris2.Prelude.IO':'dn--un--map_Functor__IO'('erased', 'erased', V16, V17, V18)) end end end end end, fun (V19) -> fun (V20) -> fun (V21) -> V20 end end end, fun (V22) -> fun (V23) -> fun (V24) -> fun (V25) -> fun (V26) -> begin (V27 = (V24(V26))), begin (V28 = (V25(V26))), (V27(V28)) end end end end end end end}, fun (V29) -> fun (V30) -> fun (V31) -> fun (V32) -> fun (V33) -> begin (V34 = (V31(V33))), ((V32(V34))(V33)) end end end end end end, fun (V35) -> fun (V36) -> fun (V37) -> begin (V38 = (V36(V37))), (V38(V37)) end end end end}, fun (V39) -> fun (V40) -> V40 end end}, V1))(V13))), {'Idris.Prelude.Types.Right', V41} end), case V42 of {'Idris.Prelude.Types.Left', E2} -> (fun (V43) -> {'Idris.Prelude.Types.Left', V43} end(E2)); {'Idris.Prelude.Types.Right', E3} -> (fun (V44) -> begin (V45 = ('Idris.Idris2.Core.Context':'un--getNS'(V1, V13))), case V45 of {'Idris.Prelude.Types.Left', E4} -> (fun (V46) -> {'Idris.Prelude.Types.Left', V46} end(E4)); {'Idris.Prelude.Types.Right', E5} -> (fun (V47) -> begin (V48 = ('Idris.Idris2.Core.Context':'un--getNestedNS'(V1, V13))), case V48 of {'Idris.Prelude.Types.Left', E6} -> (fun (V49) -> {'Idris.Prelude.Types.Left', V49} end(E6)); {'Idris.Prelude.Types.Right', E7} -> (fun (V50) -> (('case--searchName-5567'(V0, V11, V12, V9, V8, V7, V6, V5, V4, V3, V2, V1, V44, V47, V50, ('Idris.Idris2.Core.Context':'un--visibleInAny'([V47 | V50], case V12 of {'Idris.Core.Context.MkGlobalDef', E8, E9, E10, E11, E12, E13, E14, E15, E16, E17, E18, E19, E20, E21, E22, E23, E24, E25, E26, E27, E28} -> (fun (V51, V52, V53, V54, V55, V56, V57, V58, V59, V60, V61, V62, V63, V64, V65, V66, V67, V68, V69, V70, V71) -> V52 end(E8, E9, E10, E11, E12, E13, E14, E15, E16, E17, E18, E19, E20, E21, E22, E23, E24, E25, E26, E27, E28)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, case V12 of {'Idris.Core.Context.MkGlobalDef', E29, E30, E31, E32, E33, E34, E35, E36, E37, E38, E39, E40, E41, E42, E43, E44, E45, E46, E47, E48, E49} -> (fun (V72, V73, V74, V75, V76, V77, V78, V79, V80, V81, V82, V83, V84, V85, V86, V87, V88, V89, V90, V91, V92) -> V81 end(E29, E30, E31, E32, E33, E34, E35, E36, E37, E38, E39, E40, E41, E42, E43, E44, E45, E46, E47, E48, E49)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end))))(V13)) end(E7)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E5)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'un--searchN'(V0, V1, V2, V3, V4, V5) -> ('Idris.Idris2.Core.UnifyState':'un--tryUnify'('erased', V1, V2, fun (V6) -> begin (V7 = (V4(V6))), case V7 of {'Idris.Prelude.Types.Left', E0} -> (fun (V8) -> {'Idris.Prelude.Types.Left', V8} end(E0)); {'Idris.Prelude.Types.Right', E1} -> (fun (V9) -> begin (V10 = (('nested--11718-4152--in--un--count'('erased', V4, V3, V2, V1, V3, V9))(V6))), case V10 of {'Idris.Prelude.Types.Left', E2} -> (fun (V11) -> {'Idris.Prelude.Types.Left', V11} end(E2)); {'Idris.Prelude.Types.Right', E3} -> (fun (V12) -> {'Idris.Prelude.Types.Right', V12} end(E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end, fun (V13) -> {'Idris.Prelude.Types.Right', {'Idris.Builtin.MkPair', [], fun (V14) -> {'Idris.Prelude.Types.Right', {'Idris.TTImp.Interactive.ExprSearch.NoMore'}} end}} end, V5)). 'un--searchLocalWith'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11) -> case V9 of [] -> fun (V12) -> ('un--noResult'('erased', V12)) end; [E0 | E1] -> (fun (V13, V14) -> case V13 of {'Idris.Builtin.MkPair', E2, E3} -> (fun (V15, V16) -> fun (V17) -> begin (V46 = begin (V45 = (('Idris.Idris2.Erlang.Data.IORef':'un--readIORef'('erased', 'erased', {'Idris.Prelude.IO.dn--un--__mkHasIO', {'Idris.Prelude.Interfaces.dn--un--__mkMonad', {'Idris.Prelude.Interfaces.dn--un--__mkApplicative', fun (V18) -> fun (V19) -> fun (V20) -> fun (V21) -> fun (V22) -> ('Idris.Idris2.Prelude.IO':'dn--un--map_Functor__IO'('erased', 'erased', V20, V21, V22)) end end end end end, fun (V23) -> fun (V24) -> fun (V25) -> V24 end end end, fun (V26) -> fun (V27) -> fun (V28) -> fun (V29) -> fun (V30) -> begin (V31 = (V28(V30))), begin (V32 = (V29(V30))), (V31(V32)) end end end end end end end}, fun (V33) -> fun (V34) -> fun (V35) -> fun (V36) -> fun (V37) -> begin (V38 = (V35(V37))), ((V36(V38))(V37)) end end end end end end, fun (V39) -> fun (V40) -> fun (V41) -> begin (V42 = (V40(V41))), (V42(V41)) end end end end}, fun (V43) -> fun (V44) -> V44 end end}, V1))(V17))), {'Idris.Prelude.Types.Right', V45} end), case V46 of {'Idris.Prelude.Types.Left', E4} -> (fun (V47) -> {'Idris.Prelude.Types.Left', V47} end(E4)); {'Idris.Prelude.Types.Right', E5} -> (fun (V48) -> begin (V49 = (('Idris.Idris2.Core.Normalise':'un--nf'(V1, V0, V48, V8, V10))(V17))), case V49 of {'Idris.Prelude.Types.Left', E6} -> (fun (V50) -> {'Idris.Prelude.Types.Left', V50} end(E6)); {'Idris.Prelude.Types.Right', E7} -> (fun (V51) -> begin (V52 = (('Idris.Idris2.Core.Normalise':'un--nf'(V1, V0, V48, V8, V16))(V17))), case V52 of {'Idris.Prelude.Types.Left', E8} -> (fun (V53) -> {'Idris.Prelude.Types.Left', V53} end(E8)); {'Idris.Prelude.Types.Right', E9} -> (fun (V54) -> ('un--getSuccessful'(V0, V1, V2, V3, V4, V6, V7, 1, V8, V10, V11, [('nested--15254-7337--in--un--findPos'(V0, V15, V16, V14, V11, V10, V8, V7, V6, V5, V4, V3, V2, V1, V48, V15, fun (V55) -> V55 end, V54, V51)) | [('un--searchLocalWith'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V14, V10, V11)) | []]], V17)) end(E9)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E7)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E5)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E2, E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'un--searchLocal'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9) -> ('un--searchLocalWith'(V0, V1, V2, V3, V4, 1, V5, V6, V7, ('Idris.Idris2.Data.List':'un--reverse'('erased', ('un--getAllEnv'('erased', V0, V4, ('Idris.Idris2.Core.TT.SizeOf':'un--zero'('erased')), V7)))), V8, V9)). 'un--searchIfHole'(V0, V1, V2, V3, V4, V5, V6, V7, V8) -> ('case--searchIfHole-4841'(V0, V8, V7, V6, V5, V4, V3, V2, V1, case V5 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E0, E1, E2, E3, E4, E5, E6, E7, E8, E9} -> (fun (V9, V10, V11, V12, V13, V14, V15, V16, V17, V18) -> V12 end(E0, E1, E2, E3, E4, E5, E6, E7, E8, E9)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end)). 'un--searchHole'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11) -> begin (V33 = ('Idris.Idris2.Core.Normalise':'un--normalise'(V0, [], V9, {'Idris.Core.Env.Nil'}, case V10 of {'Idris.Core.Context.MkGlobalDef', E0, E1, E2, E3, E4, E5, E6, E7, E8, E9, E10, E11, E12, E13, E14, E15, E16, E17, E18, E19, E20} -> (fun (V12, V13, V14, V15, V16, V17, V18, V19, V20, V21, V22, V23, V24, V25, V26, V27, V28, V29, V30, V31, V32) -> V14 end(E0, E1, E2, E3, E4, E5, E6, E7, E8, E9, E10, E11, E12, E13, E14, E15, E16, E17, E18, E19, E20)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, V11))), case V33 of {'Idris.Prelude.Types.Left', E21} -> (fun (V34) -> {'Idris.Prelude.Types.Left', V34} end(E21)); {'Idris.Prelude.Types.Right', E22} -> (fun (V35) -> begin (V36 = ('Idris.Idris2.Core.Context.Log':'un--logTerm'([], V0, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> <<"Normalised type"/utf8>> end, V35, V11))), case V36 of {'Idris.Prelude.Types.Left', E23} -> (fun (V37) -> {'Idris.Prelude.Types.Left', V37} end(E23)); {'Idris.Prelude.Types.Right', E24} -> (fun (V38) -> (('un--searchType'([], V0, V1, V2, V3, V4, V5, {'Idris.Core.Env.Nil'}, V8, V7, V35))(V11)) end(E24)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E22)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end. 'un--search'(V0, V1, V2, V3, V4, V5, V6, V7, V8) -> begin (V37 = begin (V36 = (('Idris.Idris2.Erlang.Data.IORef':'un--readIORef'('erased', 'erased', {'Idris.Prelude.IO.dn--un--__mkHasIO', {'Idris.Prelude.Interfaces.dn--un--__mkMonad', {'Idris.Prelude.Interfaces.dn--un--__mkApplicative', fun (V9) -> fun (V10) -> fun (V11) -> fun (V12) -> fun (V13) -> ('Idris.Idris2.Prelude.IO':'dn--un--map_Functor__IO'('erased', 'erased', V11, V12, V13)) end end end end end, fun (V14) -> fun (V15) -> fun (V16) -> V15 end end end, fun (V17) -> fun (V18) -> fun (V19) -> fun (V20) -> fun (V21) -> begin (V22 = (V19(V21))), begin (V23 = (V20(V21))), (V22(V23)) end end end end end end end}, fun (V24) -> fun (V25) -> fun (V26) -> fun (V27) -> fun (V28) -> begin (V29 = (V26(V28))), ((V27(V29))(V28)) end end end end end end, fun (V30) -> fun (V31) -> fun (V32) -> begin (V33 = (V31(V32))), (V33(V32)) end end end end}, fun (V34) -> fun (V35) -> V35 end end}, V0))(V8))), {'Idris.Prelude.Types.Right', V36} end), case V37 of {'Idris.Prelude.Types.Left', E0} -> (fun (V38) -> {'Idris.Prelude.Types.Left', V38} end(E0)); {'Idris.Prelude.Types.Right', E1} -> (fun (V39) -> begin (V66 = ('nested--12258-10949--in--un--lookupHoleName'(V7, V6, V5, V4, V3, V2, V1, V0, V7, case V39 of {'Idris.Core.Context.MkDefs', E2, E3, E4, E5, E6, E7, E8, E9, E10, E11, E12, E13, E14, E15, E16, E17, E18, E19, E20, E21, E22, E23, E24, E25, E26, E27} -> (fun (V40, V41, V42, V43, V44, V45, V46, V47, V48, V49, V50, V51, V52, V53, V54, V55, V56, V57, V58, V59, V60, V61, V62, V63, V64, V65) -> V40 end(E2, E3, E4, E5, E6, E7, E8, E9, E10, E11, E12, E13, E14, E15, E16, E17, E18, E19, E20, E21, E22, E23, E24, E25, E26, E27)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, V8))), case V66 of {'Idris.Prelude.Types.Left', E28} -> (fun (V67) -> {'Idris.Prelude.Types.Left', V67} end(E28)); {'Idris.Prelude.Types.Right', E29} -> (fun (V68) -> case V68 of {'Idris.Prelude.Types.Just', E32} -> (fun (V69) -> case V69 of {'Idris.Builtin.MkPair', E35, E36} -> (fun (V70, V71) -> case V71 of {'Idris.Builtin.MkPair', E39, E40} -> (fun (V72, V73) -> begin (V74 = {'Idris.Prelude.Types.Just', {'Idris.Builtin.MkPair', V70, {'Idris.Builtin.MkPair', V72, V73}}}), (('case--case block in search-11134'(V7, V6, V5, V4, V3, V2, V1, V0, V39, V70, V72, V73, V74, case V73 of {'Idris.Core.Context.MkGlobalDef', E41, E42, E43, E44, E45, E46, E47, E48, E49, E50, E51, E52, E53, E54, E55, E56, E57, E58, E59, E60, E61} -> (fun (V75, V76, V77, V78, V79, V80, V81, V82, V83, V84, V85, V86, V87, V88, V89, V90, V91, V92, V93, V94, V95) -> V92 end(E41, E42, E43, E44, E45, E46, E47, E48, E49, E50, E51, E52, E53, E54, E55, E56, E57, E58, E59, E60, E61)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end))(V8)) end end(E39, E40)); _ -> begin (V96 = (('Idris.Idris2.Core.Context.Log':'un--log'(V0, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> ('Idris.Idris2.Prelude.Types.Strings':'un--++'(('Idris.Idris2.Core.Name':'dn--un--show_Show__Name'(V7)), <<" not found"/utf8>>)) end))(V8))), case V96 of {'Idris.Prelude.Types.Left', E37} -> (fun (V97) -> {'Idris.Prelude.Types.Left', V97} end(E37)); {'Idris.Prelude.Types.Right', E38} -> (fun (V98) -> ('Idris.Idris2.Core.Core':'dn--un--throw_Catchable__Core_Error'('erased', {'Idris.Core.Core.UndefinedName', V3, V7}, V8)) end(E38)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E35, E36)); _ -> begin (V99 = (('Idris.Idris2.Core.Context.Log':'un--log'(V0, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> ('Idris.Idris2.Prelude.Types.Strings':'un--++'(('Idris.Idris2.Core.Name':'dn--un--show_Show__Name'(V7)), <<" not found"/utf8>>)) end))(V8))), case V99 of {'Idris.Prelude.Types.Left', E33} -> (fun (V100) -> {'Idris.Prelude.Types.Left', V100} end(E33)); {'Idris.Prelude.Types.Right', E34} -> (fun (V101) -> ('Idris.Idris2.Core.Core':'dn--un--throw_Catchable__Core_Error'('erased', {'Idris.Core.Core.UndefinedName', V3, V7}, V8)) end(E34)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E32)); _ -> begin (V102 = (('Idris.Idris2.Core.Context.Log':'un--log'(V0, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> ('Idris.Idris2.Prelude.Types.Strings':'un--++'(('Idris.Idris2.Core.Name':'dn--un--show_Show__Name'(V7)), <<" not found"/utf8>>)) end))(V8))), case V102 of {'Idris.Prelude.Types.Left', E30} -> (fun (V103) -> {'Idris.Prelude.Types.Left', V103} end(E30)); {'Idris.Prelude.Types.Right', E31} -> (fun (V104) -> ('Idris.Idris2.Core.Core':'dn--un--throw_Catchable__Core_Error'('erased', {'Idris.Core.Core.UndefinedName', V3, V7}, V8)) end(E31)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E29)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end. 'un--one'(V0, V1, V2) -> {'Idris.Prelude.Types.Right', {'Idris.TTImp.Interactive.ExprSearch.Result', V1, fun (V3) -> {'Idris.Prelude.Types.Right', {'Idris.TTImp.Interactive.ExprSearch.NoMore'}} end}}. 'un--noResult'(V0, V1) -> {'Idris.Prelude.Types.Right', {'Idris.TTImp.Interactive.ExprSearch.NoMore'}}. 'un--nextResult'(V0, V1, V2, V3, V4) -> ('Idris.Idris2.Core.UnifyState':'un--tryUnify'('erased', V1, V2, fun (V5) -> begin (V6 = (V3(V5))), case V6 of {'Idris.Prelude.Types.Left', E0} -> (fun (V7) -> {'Idris.Prelude.Types.Left', V7} end(E0)); {'Idris.Prelude.Types.Right', E1} -> (fun (V8) -> case V8 of {'Idris.TTImp.Interactive.ExprSearch.NoMore'} -> (fun () -> {'Idris.Prelude.Types.Right', {'Idris.Prelude.Types.Nothing'}} end()); {'Idris.TTImp.Interactive.ExprSearch.Result', E2, E3} -> (fun (V9, V10) -> {'Idris.Prelude.Types.Right', {'Idris.Prelude.Types.Just', {'Idris.Builtin.MkPair', V9, V10}}} end(E2, E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end, fun (V11) -> {'Idris.Prelude.Types.Right', {'Idris.Prelude.Types.Nothing'}} end, V4)). 'un--mkCandidates'(V0, V1, V2, V3, V4, V5, V6) -> case V6 of [] -> fun (V7) -> ('un--one'('erased', {'Idris.Builtin.MkPair', V4, V5}, V7)) end; [E0 | E1] -> (fun (V8, V9) -> case V8 of {'Idris.TTImp.Interactive.ExprSearch.NoMore'} -> (fun () -> fun (V10) -> ('un--noResult'('erased', V10)) end end()); {'Idris.TTImp.Interactive.ExprSearch.Result', E2, E3} -> (fun (V11, V12) -> case V11 of {'Idris.Builtin.MkPair', E4, E5} -> (fun (V13, V14) -> ('un--firstSuccess'('erased', V1, V2, [('un--mkCandidates'(V0, V1, V2, V3, {'Idris.Core.TT.App', V3, V4, V13}, ('Idris.Idris2.Prelude.Types.List':'un--++'('erased', V5, V14)), V9)) | [fun (V15) -> begin (V16 = (V12(V15))), case V16 of {'Idris.Prelude.Types.Left', E6} -> (fun (V17) -> {'Idris.Prelude.Types.Left', V17} end(E6)); {'Idris.Prelude.Types.Right', E7} -> (fun (V18) -> (('un--mkCandidates'(V0, V1, V2, V3, V4, V5, [V18 | V9]))(V15)) end(E7)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end | []]])) end(E4, E5)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E2, E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'un--makeHelper'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10) -> case V10 of {'Idris.TTImp.Interactive.ExprSearch.NoMore'} -> (fun () -> fun (V11) -> {'Idris.Prelude.Types.Right', {'Idris.TTImp.Interactive.ExprSearch.NoMore'}} end end()); {'Idris.TTImp.Interactive.ExprSearch.Result', E0, E1} -> (fun (V12, V13) -> case V12 of {'Idris.Builtin.MkPair', E2, E3} -> (fun (V14, V15) -> ('case--makeHelper-8180'(V0, V14, V15, V13, V9, V8, V7, V6, V5, V4, V3, V2, V1, case V6 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E4, E5, E6, E7, E8, E9, E10, E11, E12, E13} -> (fun (V16, V17, V18, V19, V20, V21, V22, V23, V24, V25) -> V19 end(E4, E5, E6, E7, E8, E9, E10, E11, E12, E13)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end)) end(E2, E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'un--initSearchOpts'(V0, V1) -> {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', 1, V0, {'Idris.Prelude.Types.Nothing'}, V1, 1, 1, 0, 1, 1, {'Idris.Prelude.Types.Nothing'}}. 'un--getSuccessful'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12) -> begin (V13 = (('un--firstSuccess'('erased', V1, V3, V11))(V12))), case V13 of {'Idris.Prelude.Types.Left', E0} -> (fun (V14) -> {'Idris.Prelude.Types.Left', V14} end(E0)); {'Idris.Prelude.Types.Right', E1} -> (fun (V15) -> case V15 of {'Idris.TTImp.Interactive.ExprSearch.NoMore'} -> (fun () -> begin (V16 = {'Idris.TTImp.Interactive.ExprSearch.NoMore'}), (('case--case block in getSuccessful-6146'(V0, V11, V10, V9, V8, V7, V6, V5, V4, V3, V2, V1, V16, ('Idris.Idris2.Prelude.Basics':'un--&&'(V7, fun () -> case V6 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E2, E3, E4, E5, E6, E7, E8, E9, E10, E11} -> (fun (V17, V18, V19, V20, V21, V22, V23, V24, V25, V26) -> V17 end(E2, E3, E4, E5, E6, E7, E8, E9, E10, E11)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end))))(V12)) end end()); _ -> {'Idris.Prelude.Types.Right', V15} end end(E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end. 'un--getLHSData'(V0, V1, V2) -> case V2 of {'Idris.Prelude.Types.Nothing'} -> (fun () -> fun (V3) -> {'Idris.Prelude.Types.Right', {'Idris.Prelude.Types.Nothing'}} end end()); {'Idris.Prelude.Types.Just', E0} -> (fun (V4) -> fun (V5) -> begin (V6 = ('Idris.Idris2.Core.Normalise':'un--normaliseHoles'(V0, [], V1, {'Idris.Core.Env.Nil'}, V4, V5))), case V6 of {'Idris.Prelude.Types.Left', E1} -> (fun (V7) -> {'Idris.Prelude.Types.Left', V7} end(E1)); {'Idris.Prelude.Types.Right', E2} -> (fun (V8) -> begin (V13 = ('Idris.Idris2.Core.Context':'un--toFullNames'('erased', V0, {'Idris.Core.Context.dn--un--__mkHasNames', fun (V9) -> fun (V10) -> ('Idris.Idris2.Core.Context':'dn--un--full_HasNames__(Term $vars)'('erased', V9, V10)) end end, fun (V11) -> fun (V12) -> ('Idris.Idris2.Core.Context':'dn--un--resolved_HasNames__(Term $vars)'('erased', V11, V12)) end end}, V8, V5))), case V13 of {'Idris.Prelude.Types.Left', E3} -> (fun (V14) -> {'Idris.Prelude.Types.Left', V14} end(E3)); {'Idris.Prelude.Types.Right', E4} -> (fun (V15) -> {'Idris.Prelude.Types.Right', ('nested--19814-11340--in--un--getLHS'(V4, V1, V0, [], V15))} end(E4)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E2)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E0)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'un--getAllEnv'(V0, V1, V2, V3, V4) -> case V1 of [] -> case V4 of {'Idris.Core.Env.Nil'} -> (fun () -> [] end()); _ -> ('erlang':'throw'("Error: Unreachable branch")) end; [E0 | E1] -> (fun (V5, V6) -> case V4 of {'Idris.Core.Env.::', E2, E3} -> (fun (V7, V8) -> begin (V9 = ('un--getAllEnv'('erased', V6, V2, ('Idris.Idris2.Core.TT.SizeOf':'un--sucR'('erased', 'erased', 'erased', V3)), V8))), ('case--getAllEnv-4694'(V5, V6, V8, V7, 'erased', V3, V2, V9, ('Idris.Idris2.Core.TT':'un--weakenVar'('erased', 'erased', V3, 0)))) end end(E2, E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'un--firstSuccess'(V0, V1, V2, V3) -> case V3 of [] -> fun (V4) -> ('un--noResult'('erased', V4)) end; [E0 | E1] -> (fun (V5, V6) -> fun (V7) -> begin (V36 = begin (V35 = (('Idris.Idris2.Erlang.Data.IORef':'un--readIORef'('erased', 'erased', {'Idris.Prelude.IO.dn--un--__mkHasIO', {'Idris.Prelude.Interfaces.dn--un--__mkMonad', {'Idris.Prelude.Interfaces.dn--un--__mkApplicative', fun (V8) -> fun (V9) -> fun (V10) -> fun (V11) -> fun (V12) -> ('Idris.Idris2.Prelude.IO':'dn--un--map_Functor__IO'('erased', 'erased', V10, V11, V12)) end end end end end, fun (V13) -> fun (V14) -> fun (V15) -> V14 end end end, fun (V16) -> fun (V17) -> fun (V18) -> fun (V19) -> fun (V20) -> begin (V21 = (V18(V20))), begin (V22 = (V19(V20))), (V21(V22)) end end end end end end end}, fun (V23) -> fun (V24) -> fun (V25) -> fun (V26) -> fun (V27) -> begin (V28 = (V25(V27))), ((V26(V28))(V27)) end end end end end end, fun (V29) -> fun (V30) -> fun (V31) -> begin (V32 = (V30(V31))), (V32(V31)) end end end end}, fun (V33) -> fun (V34) -> V34 end end}, V2))(V7))), {'Idris.Prelude.Types.Right', V35} end), case V36 of {'Idris.Prelude.Types.Left', E2} -> (fun (V37) -> {'Idris.Prelude.Types.Left', V37} end(E2)); {'Idris.Prelude.Types.Right', E3} -> (fun (V38) -> begin (V67 = begin (V66 = (('Idris.Idris2.Erlang.Data.IORef':'un--readIORef'('erased', 'erased', {'Idris.Prelude.IO.dn--un--__mkHasIO', {'Idris.Prelude.Interfaces.dn--un--__mkMonad', {'Idris.Prelude.Interfaces.dn--un--__mkApplicative', fun (V39) -> fun (V40) -> fun (V41) -> fun (V42) -> fun (V43) -> ('Idris.Idris2.Prelude.IO':'dn--un--map_Functor__IO'('erased', 'erased', V41, V42, V43)) end end end end end, fun (V44) -> fun (V45) -> fun (V46) -> V45 end end end, fun (V47) -> fun (V48) -> fun (V49) -> fun (V50) -> fun (V51) -> begin (V52 = (V49(V51))), begin (V53 = (V50(V51))), (V52(V53)) end end end end end end end}, fun (V54) -> fun (V55) -> fun (V56) -> fun (V57) -> fun (V58) -> begin (V59 = (V56(V58))), ((V57(V59))(V58)) end end end end end end, fun (V60) -> fun (V61) -> fun (V62) -> begin (V63 = (V61(V62))), (V63(V62)) end end end end}, fun (V64) -> fun (V65) -> V65 end end}, V1))(V7))), {'Idris.Prelude.Types.Right', V66} end), case V67 of {'Idris.Prelude.Types.Left', E4} -> (fun (V68) -> {'Idris.Prelude.Types.Left', V68} end(E4)); {'Idris.Prelude.Types.Right', E5} -> (fun (V69) -> ('Idris.Idris2.Core.Core':'dn--un--catch_Catchable__Core_Error'('erased', fun (V70) -> begin (V71 = (V5(V70))), case V71 of {'Idris.Prelude.Types.Left', E6} -> (fun (V72) -> {'Idris.Prelude.Types.Left', V72} end(E6)); {'Idris.Prelude.Types.Right', E7} -> (fun (V73) -> case V73 of {'Idris.TTImp.Interactive.ExprSearch.Result', E8, E9} -> (fun (V74, V75) -> {'Idris.Prelude.Types.Right', {'Idris.TTImp.Interactive.ExprSearch.Result', V74, fun (V76) -> ('nested--12892-5202--in--un--continue'('erased', V5, V6, V2, V1, V38, V69, [V75 | V6], V76)) end}} end(E8, E9)); {'Idris.TTImp.Interactive.ExprSearch.NoMore'} -> (fun () -> ('nested--12892-5202--in--un--continue'('erased', V5, V6, V2, V1, V38, V69, V6, V70)) end()); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E7)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end, fun (V77) -> fun (V78) -> ('nested--12892-5202--in--un--continue'('erased', V5, V6, V2, V1, V38, V69, V6, V78)) end end, V7)) end(E5)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'un--firstLinearOK'(V0, V1, V2, V3, V4) -> case V4 of {'Idris.TTImp.Interactive.ExprSearch.NoMore'} -> (fun () -> fun (V5) -> ('un--noResult'('erased', V5)) end end()); {'Idris.TTImp.Interactive.ExprSearch.Result', E0, E1} -> (fun (V6, V7) -> case V6 of {'Idris.Builtin.MkPair', E2, E3} -> (fun (V8, V9) -> fun (V10) -> ('Idris.Idris2.Core.UnifyState':'un--handleUnify'('erased', V0, V2, fun (V11) -> begin (V13 = case ('Idris.Idris2.Prelude.Basics':'un--not'(('Idris.Idris2.Data.List':'un--isNil'('erased', V9)))) of 0 -> (('Idris.Idris2.Core.Core':'un--traverse_'('erased', 'erased', fun (V12) -> ('Idris.Idris2.TTImp.Elab.Check':'un--processDecl'([], V0, V1, V2, [{'Idris.TTImp.Elab.Check.InCase'} | []], [], {'Idris.Core.Env.Nil'}, V12)) end, V9))(V11)); 1 -> {'Idris.Prelude.Types.Right', {'Idris.Builtin.MkUnit'}}; _ -> ('erlang':'throw'("Error: Unreachable branch")) end), case V13 of {'Idris.Prelude.Types.Left', E4} -> (fun (V14) -> {'Idris.Prelude.Types.Left', V14} end(E4)); {'Idris.Prelude.Types.Right', E5} -> (fun (V15) -> begin (V20 = ('Idris.Idris2.Core.LinearCheck':'un--linearCheck'([], V0, V2, V3, ('Idris.Idris2.Algebra.Semiring':'un--linear'('erased', {'Idris.Algebra.Semiring.dn--un--__mkSemiring', fun (V16) -> fun (V17) -> ('Idris.Idris2.Algebra.ZeroOneOmega':'dn--un--|+|_Semiring__ZeroOneOmega'(V16, V17)) end end, ('Idris.Idris2.Algebra.ZeroOneOmega':'dn--un--plusNeutral_Semiring__ZeroOneOmega'()), fun (V18) -> fun (V19) -> ('Idris.Idris2.Algebra.ZeroOneOmega':'dn--un--|*|_Semiring__ZeroOneOmega'(V18, V19)) end end, ('Idris.Idris2.Algebra.ZeroOneOmega':'dn--un--timesNeutral_Semiring__ZeroOneOmega'())})), 1, {'Idris.Core.Env.Nil'}, V8, V11))), case V20 of {'Idris.Prelude.Types.Left', E6} -> (fun (V21) -> {'Idris.Prelude.Types.Left', V21} end(E6)); {'Idris.Prelude.Types.Right', E7} -> (fun (V22) -> begin (V51 = begin (V50 = (('Idris.Idris2.Erlang.Data.IORef':'un--readIORef'('erased', 'erased', {'Idris.Prelude.IO.dn--un--__mkHasIO', {'Idris.Prelude.Interfaces.dn--un--__mkMonad', {'Idris.Prelude.Interfaces.dn--un--__mkApplicative', fun (V23) -> fun (V24) -> fun (V25) -> fun (V26) -> fun (V27) -> ('Idris.Idris2.Prelude.IO':'dn--un--map_Functor__IO'('erased', 'erased', V25, V26, V27)) end end end end end, fun (V28) -> fun (V29) -> fun (V30) -> V29 end end end, fun (V31) -> fun (V32) -> fun (V33) -> fun (V34) -> fun (V35) -> begin (V36 = (V33(V35))), begin (V37 = (V34(V35))), (V36(V37)) end end end end end end end}, fun (V38) -> fun (V39) -> fun (V40) -> fun (V41) -> fun (V42) -> begin (V43 = (V40(V42))), ((V41(V43))(V42)) end end end end end end, fun (V44) -> fun (V45) -> fun (V46) -> begin (V47 = (V45(V46))), (V47(V46)) end end end end}, fun (V48) -> fun (V49) -> V49 end end}, V0))(V11))), {'Idris.Prelude.Types.Right', V50} end), case V51 of {'Idris.Prelude.Types.Left', E8} -> (fun (V52) -> {'Idris.Prelude.Types.Left', V52} end(E8)); {'Idris.Prelude.Types.Right', E9} -> (fun (V53) -> begin (V54 = ('Idris.Idris2.Core.Normalise':'un--normaliseHoles'(V0, [], V53, {'Idris.Core.Env.Nil'}, V8, V11))), case V54 of {'Idris.Prelude.Types.Left', E10} -> (fun (V55) -> {'Idris.Prelude.Types.Left', V55} end(E10)); {'Idris.Prelude.Types.Right', E11} -> (fun (V56) -> begin (V64 = begin (V61 = ('Idris.Idris2.Core.Context':'un--toFullNames'('erased', V0, {'Idris.Core.Context.dn--un--__mkHasNames', fun (V57) -> fun (V58) -> ('Idris.Idris2.Core.Context':'dn--un--full_HasNames__(Term $vars)'('erased', V57, V58)) end end, fun (V59) -> fun (V60) -> ('Idris.Idris2.Core.Context':'dn--un--resolved_HasNames__(Term $vars)'('erased', V59, V60)) end end}, V56, V11))), case V61 of {'Idris.Prelude.Types.Left', E12} -> (fun (V62) -> {'Idris.Prelude.Types.Left', V62} end(E12)); {'Idris.Prelude.Types.Right', E13} -> (fun (V63) -> (('Idris.Idris2.TTImp.Unelab':'un--unelab'([], V0, {'Idris.Core.Env.Nil'}, V63))(V11)) end(E13)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end), case V64 of {'Idris.Prelude.Types.Left', E14} -> (fun (V65) -> {'Idris.Prelude.Types.Left', V65} end(E14)); {'Idris.Prelude.Types.Right', E15} -> (fun (V66) -> begin (V67 = (V7(V11))), case V67 of {'Idris.Prelude.Types.Left', E16} -> (fun (V68) -> {'Idris.Prelude.Types.Left', V68} end(E16)); {'Idris.Prelude.Types.Right', E17} -> (fun (V69) -> {'Idris.Prelude.Types.Right', {'Idris.TTImp.Interactive.ExprSearch.Result', V66, ('un--firstLinearOK'(V0, V1, V2, V3, V69))}} end(E17)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E15)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E11)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E9)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E7)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E5)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end, fun (V70) -> fun (V71) -> begin (V72 = (V7(V71))), case V72 of {'Idris.Prelude.Types.Left', E18} -> (fun (V73) -> {'Idris.Prelude.Types.Left', V73} end(E18)); {'Idris.Prelude.Types.Right', E19} -> (fun (V74) -> (('un--firstLinearOK'(V0, V1, V2, V3, V74))(V71)) end(E19)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end, V10)) end end(E2, E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'un--filterS'(V0, V1, V2) -> case V2 of {'Idris.TTImp.Interactive.ExprSearch.NoMore'} -> (fun () -> fun (V3) -> {'Idris.Prelude.Types.Right', {'Idris.TTImp.Interactive.ExprSearch.NoMore'}} end end()); {'Idris.TTImp.Interactive.ExprSearch.Result', E0, E1} -> (fun (V4, V5) -> fun (V6) -> begin (V7 = (V5(V6))), case V7 of {'Idris.Prelude.Types.Left', E2} -> (fun (V8) -> {'Idris.Prelude.Types.Left', V8} end(E2)); {'Idris.Prelude.Types.Right', E3} -> (fun (V9) -> begin (V10 = ('un--filterS'('erased', V1, V9))), (('case--filterS-4105'('erased', V4, V5, V1, V9, V10, (V1(V4))))(V6)) end end(E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'un--exprSearchOpts'(V0, V1, V2, V3, V4, V5, V6, V7) -> begin (V36 = begin (V35 = (('Idris.Idris2.Erlang.Data.IORef':'un--readIORef'('erased', 'erased', {'Idris.Prelude.IO.dn--un--__mkHasIO', {'Idris.Prelude.Interfaces.dn--un--__mkMonad', {'Idris.Prelude.Interfaces.dn--un--__mkApplicative', fun (V8) -> fun (V9) -> fun (V10) -> fun (V11) -> fun (V12) -> ('Idris.Idris2.Prelude.IO':'dn--un--map_Functor__IO'('erased', 'erased', V10, V11, V12)) end end end end end, fun (V13) -> fun (V14) -> fun (V15) -> V14 end end end, fun (V16) -> fun (V17) -> fun (V18) -> fun (V19) -> fun (V20) -> begin (V21 = (V18(V20))), begin (V22 = (V19(V20))), (V21(V22)) end end end end end end end}, fun (V23) -> fun (V24) -> fun (V25) -> fun (V26) -> fun (V27) -> begin (V28 = (V25(V27))), ((V26(V28))(V27)) end end end end end end, fun (V29) -> fun (V30) -> fun (V31) -> begin (V32 = (V30(V31))), (V32(V31)) end end end end}, fun (V33) -> fun (V34) -> V34 end end}, V0))(V7))), {'Idris.Prelude.Types.Right', V35} end), case V36 of {'Idris.Prelude.Types.Left', E0} -> (fun (V37) -> {'Idris.Prelude.Types.Left', V37} end(E0)); {'Idris.Prelude.Types.Right', E1} -> (fun (V38) -> begin (V39 = ('nested--20050-11573--in--un--lookupHoleName'(V6, V5, V4, V3, V2, V1, V0, V5, V38, V7))), case V39 of {'Idris.Prelude.Types.Left', E2} -> (fun (V40) -> {'Idris.Prelude.Types.Left', V40} end(E2)); {'Idris.Prelude.Types.Right', E3} -> (fun (V41) -> case V41 of {'Idris.Prelude.Types.Just', E4} -> (fun (V42) -> case V42 of {'Idris.Builtin.MkPair', E5, E6} -> (fun (V43, V44) -> case V44 of {'Idris.Builtin.MkPair', E7, E8} -> (fun (V45, V46) -> begin (V50 = begin (V47 = (('Idris.Idris2.Core.Context':'un--getFullName'(V0, {'Idris.Core.Name.Resolved', V45}))(V7))), case V47 of {'Idris.Prelude.Types.Left', E9} -> (fun (V48) -> {'Idris.Prelude.Types.Left', V48} end(E9)); {'Idris.Prelude.Types.Right', E10} -> (fun (V49) -> ('Idris.Idris2.Core.Metadata':'un--findHoleLHS'(V1, V49, V7)) end(E10)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end), case V50 of {'Idris.Prelude.Types.Left', E11} -> (fun (V51) -> {'Idris.Prelude.Types.Left', V51} end(E11)); {'Idris.Prelude.Types.Right', E12} -> (fun (V52) -> begin (V65 = (('Idris.Idris2.Core.Context.Log':'un--log'(V0, <<"interaction.search"/utf8>>, (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))), fun () -> ('Idris.Idris2.Prelude.Types.Strings':'un--++'(<<"LHS hole data "/utf8>>, ('Idris.Idris2.Prelude.Show':'dn--un--show_Show__(|((Builtin.Pair $a) $b),((Builtin.MkPair $a) $b)|)'('erased', 'erased', {'Idris.Builtin.MkPair', {'Idris.Prelude.Show.dn--un--__mkShow', fun (V53) -> ('Idris.Idris2.Core.Name':'dn--un--show_Show__Name'(V53)) end, fun (V54) -> fun (V55) -> ('Idris.Idris2.Core.Name':'dn--un--showPrec_Show__Name'(V54, V55)) end end}, {'Idris.Prelude.Show.dn--un--__mkShow', fun (V56) -> ('Idris.Idris2.Prelude.Show':'dn--un--show_Show__(Maybe $a)'('erased', {'Idris.Prelude.Show.dn--un--__mkShow', fun (V57) -> ('Idris.Idris2.Core.TT':'dn--un--show_Show__(Term $vars)'([], V57)) end, fun (V58) -> fun (V59) -> ('Idris.Idris2.Core.TT':'dn--un--showPrec_Show__(Term $vars)'([], V58, V59)) end end}, V56)) end, fun (V60) -> fun (V61) -> ('Idris.Idris2.Prelude.Show':'dn--un--showPrec_Show__(Maybe $a)'('erased', {'Idris.Prelude.Show.dn--un--__mkShow', fun (V62) -> ('Idris.Idris2.Core.TT':'dn--un--show_Show__(Term $vars)'([], V62)) end, fun (V63) -> fun (V64) -> ('Idris.Idris2.Core.TT':'dn--un--showPrec_Show__(Term $vars)'([], V63, V64)) end end}, V60, V61)) end end}}, {'Idris.Builtin.MkPair', V43, V52})))) end))(V7))), case V65 of {'Idris.Prelude.Types.Left', E13} -> (fun (V66) -> {'Idris.Prelude.Types.Left', V66} end(E13)); {'Idris.Prelude.Types.Right', E14} -> (fun (V67) -> begin (V79 = begin (V68 = {'Idris.Prelude.Types.Just', {'Idris.Builtin.MkPair', V43, {'Idris.Builtin.MkPair', V45, V46}}}), (('case--case block in exprSearchOpts-11818'(V6, V5, V4, V3, V2, V1, V0, V38, V43, V45, V46, V68, V52, V67, case V3 of {'Idris.TTImp.Interactive.ExprSearch.MkSearchOpts', E15, E16, E17, E18, E19, E20, E21, E22, E23, E24} -> (fun (V69, V70, V71, V72, V73, V74, V75, V76, V77, V78) -> V70 end(E15, E16, E17, E18, E19, E20, E21, E22, E23, E24)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end))(V7)) end), case V79 of {'Idris.Prelude.Types.Left', E25} -> (fun (V80) -> {'Idris.Prelude.Types.Left', V80} end(E25)); {'Idris.Prelude.Types.Right', E26} -> (fun (V81) -> begin (V124 = ('un--search'(V0, V1, V2, V4, case V46 of {'Idris.Core.Context.MkGlobalDef', E27, E28, E29, E30, E31, E32, E33, E34, E35, E36, E37, E38, E39, E40, E41, E42, E43, E44, E45, E46, E47} -> (fun (V82, V83, V84, V85, V86, V87, V88, V89, V90, V91, V92, V93, V94, V95, V96, V97, V98, V99, V100, V101, V102) -> V89 end(E27, E28, E29, E30, E31, E32, E33, E34, E35, E36, E37, E38, E39, E40, E41, E42, E43, E44, E45, E46, E47)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, V81, case V46 of {'Idris.Core.Context.MkGlobalDef', E48, E49, E50, E51, E52, E53, E54, E55, E56, E57, E58, E59, E60, E61, E62, E63, E64, E65, E66, E67, E68} -> (fun (V103, V104, V105, V106, V107, V108, V109, V110, V111, V112, V113, V114, V115, V116, V117, V118, V119, V120, V121, V122, V123) -> V105 end(E48, E49, E50, E51, E52, E53, E54, E55, E56, E57, E58, E59, E60, E61, E62, E63, E64, E65, E66, E67, E68)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, V43, V7))), case V124 of {'Idris.Prelude.Types.Left', E69} -> (fun (V125) -> {'Idris.Prelude.Types.Left', V125} end(E69)); {'Idris.Prelude.Types.Right', E70} -> (fun (V126) -> (('un--firstLinearOK'(V0, V1, V2, V4, V126))(V7)) end(E70)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E26)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E14)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E12)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E7, E8)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E5, E6)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E4)); {'Idris.Prelude.Types.Nothing'} -> (fun () -> ('Idris.Idris2.Core.Core':'dn--un--throw_Catchable__Core_Error'('erased', {'Idris.Core.Core.UndefinedName', V4, V5}, V7)) end()); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end. 'un--exprSearchN'(V0, V1, V2, V3, V4, V5, V6, V7) -> begin (V9 = ('un--searchN'('erased', V0, V2, V4, fun (V8) -> ('un--exprSearch'(V0, V1, V2, V3, V5, V6, V8)) end, V7))), case V9 of {'Idris.Prelude.Types.Left', E0} -> (fun (V10) -> {'Idris.Prelude.Types.Left', V10} end(E0)); {'Idris.Prelude.Types.Right', E1} -> (fun (V11) -> case V11 of {'Idris.Builtin.MkPair', E2, E3} -> (fun (V12, V13) -> {'Idris.Prelude.Types.Right', V12} end(E2, E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end. 'un--exprSearch'(V0, V1, V2, V3, V4, V5, V6) -> ('un--exprSearchOpts'(V0, V1, V2, ('un--initSearchOpts'(0, (1 + (1 + (1 + (1 + (1 + 0))))))), V3, V4, V5, V6)). 'un--explicit'(V0, V1) -> ('case--explicit-5176'('erased', V1, case V1 of {'Idris.Core.AutoSearch.MkArgInfo', E0, E1, E2, E3, E4} -> (fun (V2, V3, V4, V5, V6) -> V4 end(E0, E1, E2, E3, E4)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end)). 'un--combine'(V0, V1, V2, V3, V4, V5, V6, V7) -> case V6 of {'Idris.TTImp.Interactive.ExprSearch.NoMore'} -> (fun () -> fun (V8) -> {'Idris.Prelude.Types.Right', {'Idris.TTImp.Interactive.ExprSearch.NoMore'}} end end()); {'Idris.TTImp.Interactive.ExprSearch.Result', E0, E1} -> (fun (V9, V10) -> case V7 of {'Idris.TTImp.Interactive.ExprSearch.NoMore'} -> (fun () -> fun (V11) -> {'Idris.Prelude.Types.Right', {'Idris.TTImp.Interactive.ExprSearch.NoMore'}} end end()); {'Idris.TTImp.Interactive.ExprSearch.Result', E2, E3} -> (fun (V12, V13) -> fun (V14) -> {'Idris.Prelude.Types.Right', {'Idris.TTImp.Interactive.ExprSearch.Result', ((V5(V9))(V12)), ('un--trySearch'('erased', V3, V4, fun (V15) -> begin (V16 = (V13(V15))), case V16 of {'Idris.Prelude.Types.Left', E4} -> (fun (V17) -> {'Idris.Prelude.Types.Left', V17} end(E4)); {'Idris.Prelude.Types.Right', E5} -> (fun (V18) -> begin (V19 = ('un--one'('erased', V9, V15))), case V19 of {'Idris.Prelude.Types.Left', E6} -> (fun (V20) -> {'Idris.Prelude.Types.Left', V20} end(E6)); {'Idris.Prelude.Types.Right', E7} -> (fun (V21) -> (('un--combine'('erased', 'erased', 'erased', V3, V4, V5, V21, V18))(V15)) end(E7)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E5)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end, ('un--trySearch'('erased', V3, V4, fun (V22) -> begin (V23 = (V10(V22))), case V23 of {'Idris.Prelude.Types.Left', E8} -> (fun (V24) -> {'Idris.Prelude.Types.Left', V24} end(E8)); {'Idris.Prelude.Types.Right', E9} -> (fun (V25) -> begin (V26 = ('un--one'('erased', V12, V22))), case V26 of {'Idris.Prelude.Types.Left', E10} -> (fun (V27) -> {'Idris.Prelude.Types.Left', V27} end(E10)); {'Idris.Prelude.Types.Right', E11} -> (fun (V28) -> (('un--combine'('erased', 'erased', 'erased', V3, V4, V5, V25, V28))(V22)) end(E11)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E9)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end, fun (V29) -> begin (V30 = (V10(V29))), case V30 of {'Idris.Prelude.Types.Left', E12} -> (fun (V31) -> {'Idris.Prelude.Types.Left', V31} end(E12)); {'Idris.Prelude.Types.Right', E13} -> (fun (V32) -> begin (V33 = (V13(V29))), case V33 of {'Idris.Prelude.Types.Left', E14} -> (fun (V34) -> {'Idris.Prelude.Types.Left', V34} end(E14)); {'Idris.Prelude.Types.Right', E15} -> (fun (V35) -> (('un--combine'('erased', 'erased', 'erased', V3, V4, V5, V32, V35))(V29)) end(E15)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end(E13)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end))))}} end end(E2, E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end. 'un--ExprDefs'() -> {'Idris.Prelude.Types.List', {'Idris.TTImp.TTImp.ImpDecl'}}.