Na=a@V2V4a-V1c1Ia<V4c0Aa<=c0V4FIa<=c0a+V3c1La-V0c1Ia>=V1c0Aa>V0V1AarangeV2V0V1F
loop invariant init
Na=a@V2V7a-V1c1Ia<V7V6Aa<V4V7FIa<=V6a+V5c1La+V4c1La-V0c1Ia=a@V2V4a-V1c1INa=a@V2V8a-V1c1Ia<V8V4Aa<=c0V8FAa<=V4V3Aa<=c0V4FIa<=c0a+V3c1La-V0c1Ia>=V1c0Aa>V0V1AarangeV2V0V1F
NainjectiveV2V0Ia=a@V2V7a-V1c1INa=a@V2V8a-V1c1Ia<V8V7Aa<V4V8FAa<=V7V5Aa<=V6V7FIa<=V6a+V5c1La+V4c1La-V0c1Ia=a@V2V4a-V1c1INa=a@V2V9a-V1c1Ia<V9V4Aa<=c0V9FAa<=V4V3Aa<=c0V4FIa<=c0a+V3c1La-V0c1Ia>=V1c0Aa>V0V1AarangeV2V0V1F
postcondition
Na=a@V2V8a-V1c1Ia<V8a+V7c1Aa<V4V8FINa=a@V2V7a-V1c1INa=a@V2V9a-V1c1Ia<V9V7Aa<V4V9FAa<=V7V5Aa<=V6V7FIa<=V6a+V5c1La+V4c1La-V0c1Ia=a@V2V4a-V1c1INa=a@V2V10a-V1c1Ia<V10V4Aa<=c0V10FAa<=V4V3Aa<=c0V4FIa<=c0a+V3c1La-V0c1Ia>=V1c0Aa>V0V1AarangeV2V0V1F
loop invariant preservation
arangeV7a-V0c1a-V1c1LashiftV2V4INa=a@V2V8a-V1c1Ia<V8a+V5c1Aa<V4V8FIa<=V6a+V5c1La+V4c1La-V0c1Ia=a@V2V4a-V1c1INa=a@V2V9a-V1c1Ia<V9V4Aa<=c0V9FAa<=V4V3Aa<=c0V4FIa<=c0a+V3c1La-V0c1Ia>=V1c0Aa>V0V1AarangeV2V0V1F
assertion
a<V8V1Aa<=c0V1La-V0c1La-V1c1IarangeV7a-V0c1a-V1c1LashiftV2V4INa=a@V2V10a-V1c1Ia<V10a+V5c1Aa<V4V10FIa<=V6a+V5c1La+V4c1La-V0c1Ia=a@V2V4a-V1c1INa=a@V2V11a-V1c1Ia<V11V4Aa<=c0V11FAa<=V4V3Aa<=c0V4FIa<=c0a+V3c1La-V0c1Ia>=V1c0Aa>V0V1AarangeV2V0V1F
variant decrease
arangeV7V9V8La-V0c1La-V1c1IarangeV7a-V0c1a-V1c1LashiftV2V4INa=a@V2V10a-V1c1Ia<V10a+V5c1Aa<V4V10FIa<=V6a+V5c1La+V4c1La-V0c1Ia=a@V2V4a-V1c1INa=a@V2V11a-V1c1Ia<V11V4Aa<=c0V11FAa<=V4V3Aa<=c0V4FIa<=c0a+V3c1La-V0c1Ia>=V1c0Aa>V0V1AarangeV2V0V1F
precondition
a>=V8c0Aa>V9V8IarangeV7V9V8La-V0c1La-V1c1IarangeV7a-V0c1a-V1c1LashiftV2V4INa=a@V2V10a-V1c1Ia<V10a+V5c1Aa<V4V10FIa<=V6a+V5c1La+V4c1La-V0c1Ia=a@V2V4a-V1c1INa=a@V2V11a-V1c1Ia<V11V4Aa<=c0V11FAa<=V4V3Aa<=c0V4FIa<=c0a+V3c1La-V0c1Ia>=V1c0Aa>V0V1AarangeV2V0V1F
NainjectiveV2V0INainjectiveV7V9La-V0c1La-V1c1IarangeV7a-V0c1a-V1c1LashiftV2V4INa=a@V2V10a-V1c1Ia<V10a+V5c1Aa<V4V10FIa<=V6a+V5c1La+V4c1La-V0c1Ia=a@V2V4a-V1c1INa=a@V2V11a-V1c1Ia<V11V4Aa<=c0V11FAa<=V4V3Aa<=c0V4FIa<=c0a+V3c1La-V0c1Ia>=V1c0Aa>V0V1AarangeV2V0V1F
NainjectiveV2V0INainjectiveV7V9Aa>=V8c0Aa>V9V8AarangeV7V9V8Aa<V8V1Aa<=c0V1La-V0c1La-V1c1AarangeV7a-V0c1a-V1c1LashiftV2V4Ia>V6a+V5c1La+V4c1La-V0c1Ia=a@V2V4a-V1c1INa=a@V2V10a-V1c1Ia<V10V4Aa<=c0V10FAa<=V4V3Aa<=c0V4FIa<=c0a+V3c1La-V0c1Ia>=V1c0Aa>V0V1AarangeV2V0V1F
out of loop bounds
Na=a@V2V5a-V1c1Ia<V5a+V4c1Aa<=c0V5FINa=a@V2V4a-V1c1INa=a@V2V6a-V1c1Ia<V6V4Aa<=c0V6FAa<=V4V3Aa<=c0V4FIa<=c0a+V3c1La-V0c1Ia>=V1c0Aa>V0V1AarangeV2V0V1F
arangeV2V0a-V1c1INa=a@V2V4a-V1c1Ia<V4a+V3c1Aa<=c0V4FIa<=c0a+V3c1La-V0c1Ia>=V1c0Aa>V0V1AarangeV2V0V1F
a<V4V1Aa<=c0V1La-V1c1IarangeV2V0a-V1c1INa=a@V2V5a-V1c1Ia<V5a+V3c1Aa<=c0V5FIa<=c0a+V3c1La-V0c1Ia>=V1c0Aa>V0V1AarangeV2V0V1F
arangeV2V0V4La-V1c1IarangeV2V0a-V1c1INa=a@V2V5a-V1c1Ia<V5a+V3c1Aa<=c0V5FIa<=c0a+V3c1La-V0c1Ia>=V1c0Aa>V0V1AarangeV2V0V1F
a>=V4c0Aa>V0V4IarangeV2V0V4La-V1c1IarangeV2V0a-V1c1INa=a@V2V5a-V1c1Ia<V5a+V3c1Aa<=c0V5FIa<=c0a+V3c1La-V0c1Ia>=V1c0Aa>V0V1AarangeV2V0V1F
NainjectiveV2V0INainjectiveV2V0La-V1c1IarangeV2V0a-V1c1INa=a@V2V5a-V1c1Ia<V5a+V3c1Aa<=c0V5FIa<=c0a+V3c1La-V0c1Ia>=V1c0Aa>V0V1AarangeV2V0V1F
NainjectiveV2V0INainjectiveV2V0Aa>=V4c0Aa>V0V4AarangeV2V0V4Aa<V4V1Aa<=c0V1La-V1c1AarangeV2V0a-V1c1Ia>c0a+V3c1La-V0c1Ia>=V1c0Aa>V0V1AarangeV2V0V1F
NainjectiveV2V0INainjectiveV2V0Aa>=V4c0Aa>V0V4AarangeV2V0V4Aa<V4V1Aa<=c0V1La-V1c1AarangeV2V0a-V1c1Ia>c0a+V3c1ANainjectiveV2V0INainjectiveV2V0Aa>=V5c0Aa>V0V5AarangeV2V0V5Aa<V5V1Aa<=c0V1La-V1c1AarangeV2V0a-V1c1INa=a@V2V6a-V1c1Ia<V6a+V3c1Aa<=c0V6FAiNa=a@V2V8a-V1c1Ia<V8a+V7c1Aa<=c0V8FNainjectiveV2V0INainjectiveV11V13Aa>=V12c0Aa>V13V12AarangeV11V13V12Aa<V12V1Aa<=c0V1La-V0c1La-V1c1AarangeV11a-V0c1a-V1c1LashiftV2V7Ia>V10a+V9c1ANainjectiveV2V0INainjectiveV14V16Aa>=V15c0Aa>V16V15AarangeV14V16V15Aa<V15V1Aa<=c0V1La-V0c1La-V1c1AarangeV14a-V0c1a-V1c1LashiftV2V7INa=a@V2V17a-V1c1Ia<V17a+V9c1Aa<V7V17FAiNa=a@V2V19a-V1c1Ia<V19a+V18c1Aa<V7V19FNainjectiveV2V0a=a@V2V18a-V1c1INa=a@V2V20a-V1c1Ia<V20V18Aa<V7V20FAa<=V18V9Aa<=V10V18FANa=a@V2V21a-V1c1Ia<V21V10Aa<V7V21FIa<=V10a+V9c1La+V7c1La-V0c1a=a@V2V7a-V1c1INa=a@V2V22a-V1c1Ia<V22V7Aa<=c0V22FAa<=V7V3Aa<=c0V7FANa=a@V2V23a-V1c1Ia<V23c0Aa<=c0V23FIa<=c0a+V3c1La-V0c1Ia>=V1c0Aa>V0V1AarangeV2V0V1F
VC for pigeon_hole
awf_stacksarev_appendV0V1ICtaNilfaConsaNilwawf_stacksarev_appendV3aConsV2V1aConsVVV0ACtaNilfaConsaNilwawf_stacksaConsV4V1Aawf_stacksV5ACfaNila=V6V5aConswVV0aConsVVV0Iawf_stacksV1Aawf_stacksV0F
VC for wf_rev_append_stacks
awf_stacksarev_appendV0V1Iawf_stacksV1Iawf_stacksV0F
awf_stacksV5ICa=V5arev_appendaConsaConsV2aNilV4aNilaNilCfaNiliawf_stacksV5a=V5arev_appendaConsaConsV2V6V4V7a<=V2V8aConsVwV6aConsVVV3FACtaNilCfaNilawf_stacksaConsV9V4Aawf_stacksV10ACfaNila=V12V10aConswVV3INa<=V2V11aConsVwV9aConsVVV3Iawf_stacksV4Aawf_stacksV3F
VC for push_card
awf_stacksV4ICa=V4V3aNilawf_stacksV4Aawf_stacksV7EaConsVVV2FACtaNilawf_stacksV10ACfaNila=V11V9aConswVV2Iawf_stacksV10FAawf_stacksaNilAawf_stacksV3aConsVVV2Iawf_stacksV3F
VC for play_cards
awf_stacksaNil
VC for play_game
iCa=V3a-c0c1aTuple2VVaapositionsV1c-1Aa<c-1anum_eltsV1Aa<=c0c-1Aa>V0aavaluesV1c-1Aa=c-1aaastacksV1a-c0c1a-aastack_sizesV1a-c0c1c1ttIa<=c0a+V2c1La-anum_stacksV1c1IainvV1F
ainvas
a<=c0a+aoc1
a<=c0ai
a<=aiao
iCa=V0a-aic1aTuple2VVaapositionsasapredAa<apredanum_eltsasAa<=c0apredAa>acaavaluesasapredAa=apredaaastacksasa-aic1a-aastack_sizesasa-aic1c1a=apredc-1a=aic0
a<=acaavaluesasatop_stack_i
a=anum_stacksas1anum_stacksas
a=anum_eltsas1a+aidxc1
a=avaluesas1avaluesas
a=astack_sizesas1astack_sizesas
a=astacksas1astacksas
a=apositionsas1apositionsas
a=apredsas1apredsas
a=anum_stacksas2anum_stacksas1
a=anum_eltsas2anum_eltsas1
a=avaluesas2aavaluesas1aidxac
a=astack_sizesas2astack_sizesas1
a=astacksas2astacksas1
a=apositionsas2apositionsas1
a=apredsas2apredsas1
a=anum_stacksas3anum_stacksas2
a=anum_eltsas3anum_eltsas2
a=avaluesas3avaluesas2
a=astack_sizesas3aastack_sizesas2aia+astack_i_sizec1
a=astacksas3astacksas2
a=apositionsas3apositionsas2
a=apredsas3apredsas2
a=anum_stacksas4anum_stacksas3
a=anum_eltsas4anum_eltsas3
a=avaluesas4avaluesas3
a=astack_sizesas4astack_sizesas3
a=astacksas4aastacksas3aiaaastacksasaiastack_i_sizeaidx
a=apositionsas4apositionsas3
a=apredsas4apredsas3
a=anum_stacksas5anum_stacksas4
a=anum_eltsas5anum_eltsas4
a=avaluesas5avaluesas4
a=astack_sizesas5astack_sizesas4
a=astacksas5astacksas4
a=apositionsas5aapositionsas4aidxaTuple2aiastack_i_size
a=apredsas5apredsas4
a=anum_stacksas6anum_stacksas5
a=anum_eltsas6anum_eltsas5
a=avaluesas6avaluesas5
a=astack_sizesas6astack_sizesas5
a=astacksas6astacksas5
a=apositionsas6apositionsas5
a=apredsas6aapredsas5aidxapred
a<=c0anum_stacksas6
VC for play_card
a<=anum_stacksas6anum_eltsas6
a>anum_stacksas6c0Ia>anum_eltsas6c0
a>=aastack_sizesas6V2c1Ia<V2anum_stacksas6Aa<=c0V2F
a<=c0aaastacksas6V2V3Ia<V3aastack_sizesas6V2Aa<=c0V3FIa<V2anum_stacksas6Aa<=c0V2F
a<aaastacksas6V2V3anum_eltsas6Ia<V3aastack_sizesas6V2Aa<=c0V3FIa<V2anum_stacksas6Aa<=c0V2F
a<=c0V3Ia=aapositionsas6V2aTuple2V3V4FIa<V2anum_eltsas6Aa<=c0V2F
a<V3anum_stacksas6Ia=aapositionsas6V2aTuple2V3V4FIa<V2anum_eltsas6Aa<=c0V2F
a<=c0V4Laastacksas6V3Ia<V3anum_stacksas6Aa<=c0V3Ia=aapositionsas6V2aTuple2V3V4FIa<V2anum_eltsas6Aa<=c0V2F
a<V4aastack_sizesas6V3Laastacksas6V3Ia<V3anum_stacksas6Aa<=c0V3Ia=aapositionsas6V2aTuple2V3V4FIa<V2anum_eltsas6Aa<=c0V2F
a=aV5V4V2Ia<V4aastack_sizesas6V3Aa<=c0V4Laastacksas6V3Ia<V3anum_stacksas6Aa<=c0V3Ia=aapositionsas6V2aTuple2V3V4FIa<V2anum_eltsas6Aa<=c0V2F
a=aTuple2V2V3aapositionsas6V4Laaastacksas6V2V3Ia<V3aastack_sizesas6V2Aa<=c0V3FIa<V2anum_stacksas6Aa<=c0V2F
a<aV3V4aV3V5Ia<V5aastack_sizesas6V2Aa<V4V5Aa<=c0V4FLaastacksas6V2Ia<V2anum_stacksas6Aa<=c0V2F
a>=aavaluesas6aV3V4aavaluesas6aV3V5Ia<V5aastack_sizesas6V2Aa<=V4V5Aa<=c0V4FLaastacksas6V2Ia<V2anum_stacksas6Aa<=c0V2F
a<=c-1V3Laapredsas6V2Ia<V2anum_eltsas6Aa<=c0V2F
a<V3anum_eltsas6Laapredsas6V2Ia<V2anum_eltsas6Aa<=c0V2F
a<V3V2Ia<V3anum_eltsas6Aa<=c-1V3Laapredsas6V2Ia<V2anum_eltsas6Aa<=c0V2F
a=V4c0Ia<V3c0Ia=aapositionsas6V2aTuple2V4V5FIa<V3anum_eltsas6Aa<=c-1V3Laapredsas6V2Ia<V2anum_eltsas6Aa<=c0V2F
a<aavaluesas6V3aavaluesas6V2INa<V3c0Ia=aapositionsas6V2aTuple2V4V5FIa<V3anum_eltsas6Aa<=c-1V3Laapredsas6V2Ia<V2anum_eltsas6Aa<=c0V2F
a>V4c0INa<V3c0Ia=aapositionsas6V2aTuple2V4V5FIa<V3anum_eltsas6Aa<=c-1V3Laapredsas6V2Ia<V2anum_eltsas6Aa<=c0V2F
a=V6a-V4c1Ia=aapositionsas6V3aTuple2V6V7FIa>V4c0INa<V3c0Ia=aapositionsas6V2aTuple2V4V5FIa<V3anum_eltsas6Aa<=c-1V3Laapredsas6V2Ia<V2anum_eltsas6Aa<=c0V2F
CiCa=V6a-V4c1aTuple2VVaapositionsas6V3Aa>V4c0Aa<aavaluesas6V3aavaluesas6V2a=V4c0a<V3c0aTuple2VVaapositionsas6V2Aa<V3V2Aa<V3anum_eltsas6Aa<=c-1V3Laapredsas6V2Ia<V2anum_eltsas6Aa<=c0V2FAa>=aavaluesas6aV9V10aavaluesas6aV9V11Ia<V11aastack_sizesas6V8Aa<=V10V11Aa<=c0V10FLaastacksas6V8Ia<V8anum_stacksas6Aa<=c0V8FAa<aV13V14aV13V15Ia<V15aastack_sizesas6V12Aa<V14V15Aa<=c0V14FLaastacksas6V12Ia<V12anum_stacksas6Aa<=c0V12FAa=aTuple2V16V17aapositionsas6V18Laaastacksas6V16V17Ia<V17aastack_sizesas6V16Aa<=c0V17FIa<V16anum_stacksas6Aa<=c0V16FACa=aV22V21V19Aa<V21aastack_sizesas6V20Aa<=c0V21Laastacksas6V20Aa<V20anum_stacksas6Aa<=c0V20aTuple2VVaapositionsas6V19Ia<V19anum_eltsas6Aa<=c0V19FAa<aaastacksas6V23V24anum_eltsas6Aa<=c0aaastacksas6V23V24Ia<V24aastack_sizesas6V23Aa<=c0V24FAa>=aastack_sizesas6V23c1Ia<V23anum_stacksas6Aa<=c0V23FAa>anum_stacksas6c0Ia>anum_eltsas6c0Aa<=anum_stacksas6anum_eltsas6Aa<=c0anum_stacksas6
ainvas6
ainvV14Ia=apredsV14aapredsV13V8V3Aa=apositionsV14apositionsV13Aa=astacksV14astacksV13Aa=astack_sizesV14astack_sizesV13Aa=avaluesV14avaluesV13Aa=anum_eltsV14anum_eltsV13Aa=anum_stacksV14anum_stacksV13FIa=apredsV13apredsV12Aa=apositionsV13aapositionsV12V8aTuple2V4V7Aa=astacksV13astacksV12Aa=astack_sizesV13astack_sizesV12Aa=avaluesV13avaluesV12Aa=anum_eltsV13anum_eltsV12Aa=anum_stacksV13anum_stacksV12FIa=apredsV12apredsV11Aa=apositionsV12apositionsV11Aa=astacksV12aastacksV11V4aaastacksV1V4V7V8Aa=astack_sizesV12astack_sizesV11Aa=avaluesV12avaluesV11Aa=anum_eltsV12anum_eltsV11Aa=anum_stacksV12anum_stacksV11FIa=apredsV11apredsV10Aa=apositionsV11apositionsV10Aa=astacksV11astacksV10Aa=astack_sizesV11aastack_sizesV10V4a+V7c1Aa=avaluesV11avaluesV10Aa=anum_eltsV11anum_eltsV10Aa=anum_stacksV11anum_stacksV10FIa=apredsV10apredsV9Aa=apositionsV10apositionsV9Aa=astacksV10astacksV9Aa=astack_sizesV10astack_sizesV9Aa=avaluesV10aavaluesV9V8V0Aa=anum_eltsV10anum_eltsV9Aa=anum_stacksV10anum_stacksV9FIa=apredsV9apredsV1Aa=apositions
a=anum_eltsV14a+anum_eltsV1c1IainvV14Ia=apredsV14aapredsV13V8V3Aa=apositionsV14apositionsV13Aa=astacksV14astacksV13Aa=astack_sizesV14astack_sizesV13Aa=avaluesV14avaluesV13Aa=anum_eltsV14anum_eltsV13Aa=anum_stacksV14anum_stacksV13FIa=apredsV13apredsV12Aa=apositionsV13aapositionsV12V8aTuple2V4V7Aa=astacksV13astacksV12Aa=astack_sizesV13astack_sizesV12Aa=avaluesV13avaluesV12Aa=anum_eltsV13anum_eltsV12Aa=anum_stacksV13anum_stacksV12FIa=apredsV12apredsV11Aa=apositionsV12apositionsV11Aa=astacksV12aastacksV11V4aaastacksV1V4V7V8Aa=astack_sizesV12astack_sizesV11Aa=avaluesV12avaluesV11Aa=anum_eltsV12anum_eltsV11Aa=anum_stacksV12anum_stacksV11FIa=apredsV11apredsV10Aa=apositionsV11apositionsV10Aa=astacksV11astacksV10Aa=astack_sizesV11aastack_sizesV10V4a+V7c1Aa=avaluesV11avaluesV10Aa=anum_eltsV11anum_eltsV10Aa=anum_stacksV11anum_stacksV10FIa=apredsV10apredsV9Aa=apositionsV10apositionsV9Aa=astacksV10astacksV9Aa=astack_sizesV10astack_sizesV9Aa=avaluesV10aavaluesV9V8V0Aa=anum_eltsV10anum_eltsV9Aa=anum_stacksV10anum_stacksV9FI
a=avaluesV14aavaluesV1anum_eltsV1V0Ia=anum_eltsV14a+anum_eltsV1c1IainvV14Ia=apredsV14aapredsV13V8V3Aa=apositionsV14apositionsV13Aa=astacksV14astacksV13Aa=astack_sizesV14astack_sizesV13Aa=avaluesV14avaluesV13Aa=anum_eltsV14anum_eltsV13Aa=anum_stacksV14anum_stacksV13FIa=apredsV13apredsV12Aa=apositionsV13aapositionsV12V8aTuple2V4V7Aa=astacksV13astacksV12Aa=astack_sizesV13astack_sizesV12Aa=avaluesV13avaluesV12Aa=anum_eltsV13anum_eltsV12Aa=anum_stacksV13anum_stacksV12FIa=apredsV12apredsV11Aa=apositionsV12apositionsV11Aa=astacksV12aastacksV11V4aaastacksV1V4V7V8Aa=astack_sizesV12astack_sizesV11Aa=avaluesV12avaluesV11Aa=anum_eltsV12anum_eltsV11Aa=anum_stacksV12anum_stacksV11FIa=apredsV11apredsV10Aa=apositionsV11apositionsV10Aa=astacksV11astacksV10Aa=astack_sizesV11aastack_sizesV10V4a+V7c1Aa=avaluesV11avaluesV10Aa=anum_eltsV11anum_eltsV10Aa=anum_stacksV11anum_stacksV10FIa=apredsV10apredsV9Aa=apositionsV10apositionsV9Aa=astacksV10astacksV9Aa=astack_sizesV10astack_sizesV9Aa=avaluesV10aavaluesV9V8V0Aa=anum_eltsV10anum_elts
a<V6anum_eltsV1Aa<=c0V6INa<=V0aavaluesV1V6LaaastacksV1V4a-V5c1Laastack_sizesV1V4IiCa=V7a-V4c1aTuple2VVaapositionsV1V3Aa<V3anum_eltsV1Aa<=c0V3Aa>V0aavaluesV1V3Aa=V3aaastacksV1a-V4c1a-aastack_sizesV1a-V4c1c1a=V3c-1a=V4c0Aa<=V4V2Aa<=c0V4FFIa<=c0a+V2c1La-anum_stacksV1c1IainvV1F
Ca=V8a-V5c1Aa=V7V4Aa=aaastacksV1V7V8V6Aa<V8aastack_sizesV1V7Aa<=c0V8Aa<V7anum_stacksV1Aa<=c0V7aTuple2VVaapositionsV1V6Ia<V6anum_eltsV1Aa<=c0V6INa<=V0aavaluesV1V6LaaastacksV1V4a-V5c1Laastack_sizesV1V4IiCa=V9a-V4c1aTuple2VVaapositionsV1V3Aa<V3anum_eltsV1Aa<=c0V3Aa>V0aavaluesV1V3Aa=V3aaastacksV1a-V4c1a-aastack_sizesV1a-V4c1c1a=V3c-1a=V4c0Aa<=V4V2Aa<=c0V4FFIa<=c0a+V2c1La-anum_stacksV1c1IainvV1F
iCa=V8a-a+V4c1c1aTuple2VVaapositionsV1V7Aa<V7anum_eltsV1Aa<=c0V7Aa>V0aavaluesV1V7Aa=V7aaastacksV1a-a+V4c1c1a-aastack_sizesV1a-a+V4c1c1c1a=V7c-1a=a+V4c1c0Ia=V7V6FICa=V11a-V5c1Aa=V10V4Aa=aaastacksV1V10V11V6Aa<V11aastack_sizesV1V10Aa<=c0V11Aa<V10anum_stacksV1Aa<=c0V10aTuple2VVaapositionsV1V6Ia<V6anum_eltsV1Aa<=c0V6INa<=V0aavaluesV1V6LaaastacksV1V4a-V5c1Laastack_sizesV1V4IiCa=V12a-V4c1aTuple2VVaapositionsV1V3Aa<V3anum_eltsV1Aa<=c0V3Aa>V0aavaluesV1V3Aa=V3aaastacksV1a-V4c1a-aastack_sizesV1a-V4c1c1a=V3c-1a=V4c0Aa<=V4V2Aa<=c0V4FFIa<=c0a+V2c1La-anum_stacksV1c1IainvV1F
iCa=V0a-a+aoc1c1aTuple2VVaapositionsasapredAa<apredanum_eltsasAa<=c0apredAa>acaavaluesasapredAa=apredaaastacksasa-a+aoc1c1a-aastack_sizesasa-a+aoc1c1c1a=apredc-1a=a+aoc1c0
a=anum_stacksas3a+anum_stacksas2c1
a=astack_sizesas3astack_sizesas2
a=astack_sizesas4aastack_sizesas3aic1
a=astacksas4astacksas3
a=astacksas5aastacksas4aiaaastacksasaic0aidx
a=apositionsas5apositionsas4
a=apositionsas6aapositionsas5aidxaTuple2aic0
a=apredsas6apredsas5
a=anum_stacksas7anum_stacksas6
a=anum_eltsas7anum_eltsas6
a=avaluesas7avaluesas6
a=astack_sizesas7astack_sizesas6
a=astacksas7astacksas6
a=apositionsas7apositionsas6
a=apredsas7aapredsas6aidxapred
a<=c0anum_stacksas7
a<=anum_stacksas7anum_eltsas7
a>anum_stacksas7c0Ia>anum_eltsas7c0
a>=aastack_sizesas7V2c1Ia<V2anum_stacksas7Aa<=c0V2F
a<=c0aaastacksas7V2V3Ia<V3aastack_sizesas7V2Aa<=c0V3FIa<V2anum_stacksas7Aa<=c0V2F
a<aaastacksas7V2V3anum_eltsas7Ia<V3aastack_sizesas7V2Aa<=c0V3FIa<V2anum_stacksas7Aa<=c0V2F
a<=c0V3Ia=aapositionsas7V2aTuple2V3V4FIa<V2anum_eltsas7Aa<=c0V2F
a<V3anum_stacksas7Ia=aapositionsas7V2aTuple2V3V4FIa<V2anum_eltsas7Aa<=c0V2F
a<=c0V4Laastacksas7V3Ia<V3anum_stacksas7Aa<=c0V3Ia=aapositionsas7V2aTuple2V3V4FIa<V2anum_eltsas7Aa<=c0V2F
a<V4aastack_sizesas7V3Laastacksas7V3Ia<V3anum_stacksas7Aa<=c0V3Ia=aapositionsas7V2aTuple2V3V4FIa<V2anum_eltsas7Aa<=c0V2F
a=aV5V4V2Ia<V4aastack_sizesas7V3Aa<=c0V4Laastacksas7V3Ia<V3anum_stacksas7Aa<=c0V3Ia=aapositionsas7V2aTuple2V3V4FIa<V2anum_eltsas7Aa<=c0V2F
a=aTuple2V2V3aapositionsas7V4Laaastacksas7V2V3Ia<V3aastack_sizesas7V2Aa<=c0V3FIa<V2anum_stacksas7Aa<=c0V2F
a<aV3V4aV3V5Ia<V5aastack_sizesas7V2Aa<V4V5Aa<=c0V4FLaastacksas7V2Ia<V2anum_stacksas7Aa<=c0V2F
a>=aavaluesas7aV3V4aavaluesas7aV3V5Ia<V5aastack_sizesas7V2Aa<=V4V5Aa<=c0V4FLaastacksas7V2Ia<V2anum_stacksas7Aa<=c0V2F
a<=c-1V3Laapredsas7V2Ia<V2anum_eltsas7Aa<=c0V2F
a<V3anum_eltsas7Laapredsas7V2Ia<V2anum_eltsas7Aa<=c0V2F
a<V3V2Ia<V3anum_eltsas7Aa<=c-1V3Laapredsas7V2Ia<V2anum_eltsas7Aa<=c0V2F
a=V4c0Ia<V3c0Ia=aapositionsas7V2aTuple2V4V5FIa<V3anum_eltsas7Aa<=c-1V3Laapredsas7V2Ia<V2anum_eltsas7Aa<=c0V2F
a<aavaluesas7V3aavaluesas7V2INa<V3c0Ia=aapositionsas7V2aTuple2V4V5FIa<V3anum_eltsas7Aa<=c-1V3Laapredsas7V2Ia<V2anum_eltsas7Aa<=c0V2F
a>V4c0INa<V3c0Ia=aapositionsas7V2aTuple2V4V5FIa<V3anum_eltsas7Aa<=c-1V3Laapredsas7V2Ia<V2anum_eltsas7Aa<=c0V2F
a=V6a-V4c1Ia=aapositionsas7V3aTuple2V6V7FIa>V4c0INa<V3c0Ia=aapositionsas7V2aTuple2V4V5FIa<V3anum_eltsas7Aa<=c-1V3Laapredsas7V2Ia<V2anum_eltsas7Aa<=c0V2F
CiCa=V6a-V4c1aTuple2VVaapositionsas7V3Aa>V4c0Aa<aavaluesas7V3aavaluesas7V2a=V4c0a<V3c0aTuple2VVaapositionsas7V2Aa<V3V2Aa<V3anum_eltsas7Aa<=c-1V3Laapredsas7V2Ia<V2anum_eltsas7Aa<=c0V2FAa>=aavaluesas7aV9V10aavaluesas7aV9V11Ia<V11aastack_sizesas7V8Aa<=V10V11Aa<=c0V10FLaastacksas7V8Ia<V8anum_stacksas7Aa<=c0V8FAa<aV13V14aV13V15Ia<V15aastack_sizesas7V12Aa<V14V15Aa<=c0V14FLaastacksas7V12Ia<V12anum_stacksas7Aa<=c0V12FAa=aTuple2V16V17aapositionsas7V18Laaastacksas7V16V17Ia<V17aastack_sizesas7V16Aa<=c0V17FIa<V16anum_stacksas7Aa<=c0V16FACa=aV22V21V19Aa<V21aastack_sizesas7V20Aa<=c0V21Laastacksas7V20Aa<V20anum_stacksas7Aa<=c0V20aTuple2VVaapositionsas7V19Ia<V19anum_eltsas7Aa<=c0V19FAa<aaastacksas7V23V24anum_eltsas7Aa<=c0aaastacksas7V23V24Ia<V24aastack_sizesas7V23Aa<=c0V24FAa>=aastack_sizesas7V23c1Ia<V23anum_stacksas7Aa<=c0V23FAa>anum_stacksas7c0Ia>anum_eltsas7c0Aa<=anum_stacksas7anum_eltsas7Aa<=c0anum_stacksas7
ainvas7
ainvV12Ia=apredsV12aapredsV11V4V3Aa=apositionsV12apositionsV11Aa=astacksV12astacksV11Aa=astack_sizesV12astack_sizesV11Aa=avaluesV12avaluesV11Aa=anum_eltsV12anum_eltsV11Aa=anum_stacksV12anum_stacksV11FIa=apredsV11apredsV10Aa=apositionsV11aapositionsV10V4aTuple2V5c0Aa=astacksV11astacksV10Aa=astack_sizesV11astack_sizesV10Aa=avaluesV11avaluesV10Aa=anum_eltsV11anum_eltsV10Aa=anum_stacksV11anum_stacksV10FIa=apredsV10apredsV9Aa=apositionsV10apositionsV9Aa=astacksV10aastacksV9V5aaastacksV1V5c0V4Aa=astack_sizesV10astack_sizesV9Aa=avaluesV10avaluesV9Aa=anum_eltsV10anum_eltsV9Aa=anum_stacksV10anum_stacksV9FIa=apredsV9apredsV8Aa=apositionsV9apositionsV8Aa=astacksV9astacksV8Aa=astack_sizesV9aastack_sizesV8V5c1Aa=avaluesV9avaluesV8Aa=anum_eltsV9anum_eltsV8Aa=anum_stacksV9anum_stacksV8FIa=apredsV8apredsV7Aa=apositionsV8apositionsV7Aa=astacksV8astacksV7Aa=astack_sizesV8astack_sizesV7Aa=avaluesV8avaluesV7Aa=anum_eltsV8anum_eltsV7Aa=anum_stacksV8a+anum_stacksV7c1FIa=apredsV7apredsV6Aa=apositionsV7apositionsV6Aa=astacksV7astacks
a=anum_eltsV12a+anum_eltsV1c1IainvV12Ia=apredsV12aapredsV11V4V3Aa=apositionsV12apositionsV11Aa=astacksV12astacksV11Aa=astack_sizesV12astack_sizesV11Aa=avaluesV12avaluesV11Aa=anum_eltsV12anum_eltsV11Aa=anum_stacksV12anum_stacksV11FIa=apredsV11apredsV10Aa=apositionsV11aapositionsV10V4aTuple2V5c0Aa=astacksV11astacksV10Aa=astack_sizesV11astack_sizesV10Aa=avaluesV11avaluesV10Aa=anum_eltsV11anum_eltsV10Aa=anum_stacksV11anum_stacksV10FIa=apredsV10apredsV9Aa=apositionsV10apositionsV9Aa=astacksV10aastacksV9V5aaastacksV1V5c0V4Aa=astack_sizesV10astack_sizesV9Aa=avaluesV10avaluesV9Aa=anum_eltsV10anum_eltsV9Aa=anum_stacksV10anum_stacksV9FIa=apredsV9apredsV8Aa=apositionsV9apositionsV8Aa=astacksV9astacksV8Aa=astack_sizesV9aastack_sizesV8V5c1Aa=avaluesV9avaluesV8Aa=anum_eltsV9anum_eltsV8Aa=anum_stacksV9anum_stacksV8FIa=apredsV8apredsV7Aa=apositionsV8apositionsV7Aa=astacksV8astacksV7Aa=astack_sizesV8astack_sizesV7Aa=avaluesV8avaluesV7Aa=anum_eltsV8anum_eltsV7Aa=anum_stacksV8a+anum_stacksV7c1FIa=apredsV7apredsV6Aa=apositionsV7
a=avaluesV12aavaluesV1anum_eltsV1V0Ia=anum_eltsV12a+anum_eltsV1c1IainvV12Ia=apredsV12aapredsV11V4V3Aa=apositionsV12apositionsV11Aa=astacksV12astacksV11Aa=astack_sizesV12astack_sizesV11Aa=avaluesV12avaluesV11Aa=anum_eltsV12anum_eltsV11Aa=anum_stacksV12anum_stacksV11FIa=apredsV11apredsV10Aa=apositionsV11aapositionsV10V4aTuple2V5c0Aa=astacksV11astacksV10Aa=astack_sizesV11astack_sizesV10Aa=avaluesV11avaluesV10Aa=anum_eltsV11anum_eltsV10Aa=anum_stacksV11anum_stacksV10FIa=apredsV10apredsV9Aa=apositionsV10apositionsV9Aa=astacksV10aastacksV9V5aaastacksV1V5c0V4Aa=astack_sizesV10astack_sizesV9Aa=avaluesV10avaluesV9Aa=anum_eltsV10anum_eltsV9Aa=anum_stacksV10anum_stacksV9FIa=apredsV9apredsV8Aa=apositionsV9apositionsV8Aa=astacksV9astacksV8Aa=astack_sizesV9aastack_sizesV8V5c1Aa=avaluesV9avaluesV8Aa=anum_eltsV9anum_eltsV8Aa=anum_stacksV9anum_stacksV8FIa=apredsV8apredsV7Aa=apositionsV8apositionsV7Aa=astacksV8astacksV7Aa=astack_sizesV8astack_sizesV7Aa=avaluesV8avaluesV7Aa=anum_eltsV8anum_eltsV7Aa=anum_stacksV8a+anum_stacksV7c
a=avaluesV11aavaluesV1anum_eltsV1V0Aa=anum_eltsV11a+anum_eltsV1c1AainvV11Ia=apredsV11aapredsV10V3c-1Aa=apositionsV11apositionsV10Aa=astacksV11astacksV10Aa=astack_sizesV11astack_sizesV10Aa=avaluesV11avaluesV10Aa=anum_eltsV11anum_eltsV10Aa=anum_stacksV11anum_stacksV10FIa=apredsV10apredsV9Aa=apositionsV10aapositionsV9V3aTuple2V4c0Aa=astacksV10astacksV9Aa=astack_sizesV10astack_sizesV9Aa=avaluesV10avaluesV9Aa=anum_eltsV10anum_eltsV9Aa=anum_stacksV10anum_stacksV9FIa=apredsV9apredsV8Aa=apositionsV9apositionsV8Aa=astacksV9aastacksV8V4aaastacksV1V4c0V3Aa=astack_sizesV9astack_sizesV8Aa=avaluesV9avaluesV8Aa=anum_eltsV9anum_eltsV8Aa=anum_stacksV9anum_stacksV8FIa=apredsV8apredsV7Aa=apositionsV8apositionsV7Aa=astacksV8astacksV7Aa=astack_sizesV8aastack_sizesV7V4c1Aa=avaluesV8avaluesV7Aa=anum_eltsV8anum_eltsV7Aa=anum_stacksV8anum_stacksV7FIa=apredsV7apredsV6Aa=apositionsV7apositionsV6Aa=astacksV7astacksV6Aa=astack_sizesV7astack_sizesV6Aa=avaluesV7avaluesV6Aa=anum_eltsV7anum_eltsV6Aa=anum_stacksV7a+anum_stacksV6c1FIa=apredsV6
Ca=aavaluesV1V2antha-V2anum_eltsV1V0Ia<V2anum_eltsV1Aa<=anum_eltsV1V2FAtIa<V3anum_eltsV1Aa<=c0V3FAa=anum_eltsV1a+anum_eltsV1alengthV0AainvV1aNila=aavaluesV7V8antha-V8anum_eltsV1V0Ia<V8anum_eltsV7Aa<=anum_eltsV1V8FAa=aavaluesV7V9aavaluesV1V9Ia<V9anum_eltsV1Aa<=c0V9FAa=anum_eltsV7a+anum_eltsV1alengthV0AainvV7Ia=aavaluesV7V10antha-V10anum_eltsV6V5Ia<V10anum_eltsV7Aa<=anum_eltsV6V10FAa=aavaluesV7V11aavaluesV6V11Ia<V11anum_eltsV6Aa<=c0V11FAa=anum_eltsV7a+anum_eltsV6alengthV5AainvV7FAainvV6ACfaNila=V12V5aConswVV0Ia=avaluesV6aavaluesV1anum_eltsV1V4Aa=anum_eltsV6a+anum_eltsV1c1AainvV6FAainvV1aConsVVV0IainvV1F
ainvastate'mkc0c0aconstc-1aconstc0aconstaconstc-1aconstaTuple2c-1c-1aconstc-1F
a=V0aNilIa=V2c0Lanum_stacksV1Ia=aavaluesV1V3antha-V3c0V0Ia<V3anum_eltsV1Aa<=c0V3FAa=aavaluesV1V4aaconstc-1V4Ia<V4c0Aa<=c0V4FAa=anum_eltsV1a+c0alengthV0AainvV1FF
aincreasing_subsequenceaseq'mkc0aconstc-1V0Ia=V0aNilIa=V2c0Lanum_stacksV1Ia=aavaluesV1V3antha-V3c0V0Ia<V3anum_eltsV1Aa<=c0V3FAa=aavaluesV1V4aaconstc-1V4Ia<V4c0Aa<=c0V4FAa=anum_eltsV1a+c0alengthV0AainvV1FF
aincreasing_subsequenceV3V0Aa=aseqlenV3anum_stacksV1EIaincreasing_subsequenceaseq'mkc0aconstc-1V0Ia=V0aNilIa=V2c0Lanum_stacksV1Ia=aavaluesV1V4antha-V4c0V0Ia<V4anum_eltsV1Aa<=c0V4FAa=aavaluesV1V5aaconstc-1V5Ia<V5c0Aa<=c0V5FAa=anum_eltsV1a+c0alengthV0AainvV1FF
a<=aseqlenV3anum_stacksV1Iaincreasing_subsequenceV3V0FIaincreasing_subsequenceV4V0Aa=aseqlenV4anum_stacksV1EIaincreasing_subsequenceaseq'mkc0aconstc-1V0Ia=V0aNilIa=V2c0Lanum_stacksV1Ia=aavaluesV1V5antha-V5c0V0Ia<V5anum_eltsV1Aa<=c0V5FAa=aavaluesV1V6aaconstc-1V6Ia<V6c0Aa<=c0V6FAa=anum_eltsV1a+c0alengthV0AainvV1FF
a<aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1anum_eltsV1Aa<=c-1aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1Ia>=V3a-c0c1La-V2c1INa=V2c0Lanum_stacksV1Ia=aavaluesV1V4antha-V4c0V0Ia<V4anum_eltsV1Aa<=c0V4FAa=aavaluesV1V5aaconstc-1V5Ia<V5c0Aa<=c0V5FAa=anum_eltsV1a+c0alengthV0AainvV1FF
Ca=V4V3aTuple2VwaapositionsV1aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1Aa>=aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1c0Ia>=V3c0Ia<aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1anum_eltsV1Aa<=c-1aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1Ia>=V3a-c0c1La-V2c1INa=V2c0Lanum_stacksV1Ia=aavaluesV1V5antha-V5c0V0Ia<V5anum_eltsV1Aa<=c0V5FAa=aavaluesV1V6aaconstc-1V6Ia<V6c0Aa<=c0V6FAa=anum_eltsV1a+c0alengthV0AainvV1FF
a<aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1aaconstc-1a+V3c1Ia<a+V3c1V2ICa=V4V3aTuple2VwaapositionsV1aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1Aa>=aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1c0Ia>=V3c0Ia<aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1anum_eltsV1Aa<=c-1aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1Ia>=V3a-c0c1La-V2c1INa=V2c0Lanum_stacksV1Ia=aavaluesV1V5antha-V5c0V0Ia<V5anum_eltsV1Aa<=c0V5FAa=aavaluesV1V6aaconstc-1V6Ia<V6c0Aa<=c0V6FAa=anum_eltsV1a+c0alengthV0AainvV1FF
a<aavaluesV1aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1aavaluesV1aaconstc-1a+V3c1Ia<V3a-V2c1Aa<=c0V3Ia<aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1aaconstc-1a+V3c1Ia<a+V3c1V2ICa=V4V3aTuple2VwaapositionsV1aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1Aa>=aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1c0Ia>=V3c0Ia<aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1anum_eltsV1Aa<=c-1aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1Ia>=V3a-c0c1La-V2c1INa=V2c0Lanum_stacksV1Ia=aavaluesV1V5antha-V5c0V0Ia<V5anum_eltsV1Aa<=c0V5FAa=aavaluesV1V6aaconstc-1V6Ia<V6c0Aa<=c0V6FAa=anum_eltsV1a+c0alengthV0AainvV1FF
a<aaconstc-1V4anum_eltsV1Aa<=c0aaconstc-1V4Ia<V4V2Aa<V3V4FIa<aavaluesV1aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1aavaluesV1aaconstc-1a+V3c1Ia<V3a-V2c1Aa<=c0V3Ia<aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1aaconstc-1a+V3c1Ia<a+V3c1V2ICa=V5V3aTuple2VwaapositionsV1aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1Aa>=aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1c0Ia>=V3c0Ia<aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1anum_eltsV1Aa<=c-1aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1Ia>=V3a-c0c1La-V2c1INa=V2c0Lanum_stacksV1Ia=aavaluesV1V6antha-V6c0V0Ia<V6anum_eltsV1Aa<=c0V6FAa=aavaluesV1V7aaconstc-1V7Ia<V7c0Aa<=c0V7FAa=anum_eltsV1a+c0alengthV0AainvV1FF
a<aaconstc-1V4aaconstc-1V5Ia<V5V2Aa<V4V5Aa<V3V4FIa<aaconstc-1V6anum_eltsV1Aa<=c0aaconstc-1V6Ia<V6V2Aa<V3V6FIa<aavaluesV1aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1aavaluesV1aaconstc-1a+V3c1Ia<V3a-V2c1Aa<=c0V3Ia<aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1aaconstc-1a+V3c1Ia<a+V3c1V2ICa=V7V3aTuple2VwaapositionsV1aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1Aa>=aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1c0Ia>=V3c0Ia<aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1anum_eltsV1Aa<=c-1aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1Ia>=V3a-c0c1La-V2c1INa=V2c0Lanum_stacksV1Ia=aavaluesV1V8antha-V8c0V0Ia<V8anum_eltsV1Aa<=c0V8FAa=aavaluesV1V9aaconstc-1V9Ia<V9c0Aa<=c0V9FAa=anum_eltsV1a+c0alengthV0AainvV1FF
a<aavaluesV1aaconstc-1V4aavaluesV1aaconstc-1V5Ia<V5V2Aa<V4V5Aa<V3V4FIa<aaconstc-1V6aaconstc-1V7Ia<V7V2Aa<V6V7Aa<V3V6FIa<aaconstc-1V8anum_eltsV1Aa<=c0aaconstc-1V8Ia<V8V2Aa<V3V8FIa<aavaluesV1aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1aavaluesV1aaconstc-1a+V3c1Ia<V3a-V2c1Aa<=c0V3Ia<aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1aaconstc-1a+V3c1Ia<a+V3c1V2ICa=V9V3aTuple2VwaapositionsV1aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1Aa>=aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1c0Ia>=V3c0Ia<aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1anum_eltsV1Aa<=c-1aaastacksV1a-V2c1a-aastack_sizesV1a-V2c1c1Ia>=V3a-c0c1La-V2c1INa=V2c0Lanum_stacksV1Ia=aavaluesV1V10antha-V10c0V0Ia<V10anum_eltsV1Aa<=c0V10FAa=aavaluesV1V11aaconstc-1V11Ia<V11c0Aa<=c0V11FAa=anum_eltsV1a+c0alengthV0AainvV1FF
a<V8anum_eltsV1Aa<=c-1V8Ia=V8aapredsV1V5FIa=V7aV4V6V5FIa<aavaluesV1aV4V9aavaluesV1aV4V10Ia<V10V2Aa<V9V10Aa<V6V9FAa<aV4V11aV4V12Ia<V12V2Aa<V11V12Aa<V6V11FAa<aV4V13anum_eltsV1Aa<=c0aV4V13Ia<V13V2Aa<V6V13FAa<aavaluesV1V5aavaluesV1aV4a+V6c1Ia<V6a-V2c1Aa<=c0V6Aa<V5aV4a+V6c1Ia<a+V6c1V2ACa=V14V6aTuple2VwaapositionsV1V5Aa>=V5c0Ia>=V6c0Aa<V5anum_eltsV1Aa<=c-1V5Aa>=V6c0Aa>=V3V6FFIa>=V3a-c0c1La-V2c1INa=V2c0Lanum_stacksV1Ia=aavaluesV1V15antha-V15c0V0Ia<V15anum_eltsV1Aa<=c0V15FAa=aavaluesV1V16aaconstc-1V16Ia<V16c0Aa<=c0V16FAa=anum_eltsV1a+c0alengthV0AainvV1FF
Ca=V9a-V6c1aTuple2VwaapositionsV1V8Aa>=V8c0Ia>=a-V6c1c0Ia<V8anum_eltsV1Aa<=c-1V8Ia=V8aapredsV1V5FIa=V7aV4V6V5FIa<aavaluesV1aV4V10aavaluesV1aV4V11Ia<V11V2Aa<V10V11Aa<V6V10FAa<aV4V12aV4V13Ia<V13V2Aa<V12V13Aa<V6V12FAa<aV4V14anum_eltsV1Aa<=c0aV4V14Ia<V14V2Aa<V6V14FAa<aavaluesV1V5aavaluesV1aV4a+V6c1Ia<V6a-V2c1Aa<=c0V6Aa<V5aV4a+V6c1Ia<a+V6c1V2ACa=V15V6aTuple2VwaapositionsV1V5Aa>=V5c0Ia>=V6c0Aa<V5anum_eltsV1Aa<=c-1V5Aa>=V6c0Aa>=V3V6FFIa>=V3a-c0c1La-V2c1INa=V2c0Lanum_stacksV1Ia=aavaluesV1V16antha-V16c0V0Ia<V16anum_eltsV1Aa<=c0V16FAa=aavaluesV1V17aaconstc-1V17Ia<V17c0Aa<=c0V17FAa=anum_eltsV1a+c0alengthV0AainvV1FF
a<V8aV7a+a-V6c1c1Ia<a+a-V6c1c1V2ICa=V9a-V6c1aTuple2VwaapositionsV1V8Aa>=V8c0Ia>=a-V6c1c0Ia<V8anum_eltsV1Aa<=c-1V8Ia=V8aapredsV1V5FIa=V7aV4V6V5FIa<aavaluesV1aV4V10aavaluesV1aV4V11Ia<V11V2Aa<V10V11Aa<V6V10FAa<aV4V12aV4V13Ia<V13V2Aa<V12V13Aa<V6V12FAa<aV4V14anum_eltsV1Aa<=c0aV4V14Ia<V14V2Aa<V6V14FAa<aavaluesV1V5aavaluesV1aV4a+V6c1Ia<V6a-V2c1Aa<=c0V6Aa<V5aV4a+V6c1Ia<a+V6c1V2ACa=V15V6aTuple2VwaapositionsV1V5Aa>=V5c0Ia>=V6c0Aa<V5anum_eltsV1Aa<=c-1V5Aa>=V6c0Aa>=V3V6FFIa>=V3a-c0c1La-V2c1INa=V2c0Lanum_stacksV1Ia=aavaluesV1V16antha-V16c0V0Ia<V16anum_eltsV1Aa<=c0V16FAa=aavaluesV1V17aaconstc-1V17Ia<V17c0Aa<=c0V17FAa=anum_eltsV1a+c0alengthV0AainvV1FF
a<aavaluesV1V8aavaluesV1aV7a+a-V6c1c1Ia<a-V6c1a-V2c1Aa<=c0a-V6c1Ia<V8aV7a+a-V6c1c1Ia<a+a-V6c1c1V2ICa=V9a-V6c1aTuple2VwaapositionsV1V8Aa>=V8c0Ia>=a-V6c1c0Ia<V8anum_eltsV1Aa<=c-1V8Ia=V8aapredsV1V5FIa=V7aV4V6V5FIa<aavaluesV1aV4V10aavaluesV1aV4V11Ia<V11V2Aa<V10V11Aa<V6V10FAa<aV4V12aV4V13Ia<V13V2Aa<V12V13Aa<V6V12FAa<aV4V14anum_eltsV1Aa<=c0aV4V14Ia<V14V2Aa<V6V14FAa<aavaluesV1V5aavaluesV1aV4a+V6c1Ia<V6a-V2c1Aa<=c0V6Aa<V5aV4a+V6c1Ia<a+V6c1V2ACa=V15V6aTuple2VwaapositionsV1V5Aa>=V5c0Ia>=V6c0Aa<V5anum_eltsV1Aa<=c-1V5Aa>=V6c0Aa>=V3V6FFIa>=V3a-c0c1La-V2c1INa=V2c0Lanum_stacksV1Ia=aavaluesV1V16antha-V16c0V0Ia<V16anum_eltsV1Aa<=c0V16FAa=aavaluesV1V17aaconstc-1V17Ia<V17c0Aa<=c0V17FAa=anum_eltsV1a+c0alengthV0AainvV1FF
a<aV7V9anum_eltsV1Aa<=c0aV7V9Ia<V9V2Aa<a-V6c1V9FIa<aavaluesV1V8aavaluesV1aV7a+a-V6c1c1Ia<a-V6c1a-V2c1Aa<=c0a-V6c1Ia<V8aV7a+a-V6c1c1Ia<a+a-V6c1c1V2ICa=V10a-V6c1aTuple2VwaapositionsV1V8Aa>=V8c0Ia>=a-V6c1c0Ia<V8anum_eltsV1Aa<=c-1V8Ia=V8aapredsV1V5FIa=V7aV4V6V5FIa<aavaluesV1aV4V11aavaluesV1aV4V12Ia<V12V2Aa<V11V12Aa<V6V11FAa<aV4V13aV4V14Ia<V14V2Aa<V13V14Aa<V6V13FAa<aV4V15anum_eltsV1Aa<=c0aV4V15Ia<V15V2Aa<V6V15FAa<aavaluesV1V5aavaluesV1aV4a+V6c1Ia<V6a-V2c1Aa<=c0V6Aa<V5aV4a+V6c1Ia<a+V6c1V2ACa=V16V6aTuple2VwaapositionsV1V5Aa>=V5c0Ia>=V6c0Aa<V5anum_eltsV1Aa<=c-1V5Aa>=V6c0Aa>=V3V6FFIa>=V3a-c0c1La-V2c1INa=V2c0Lanum_stacksV1Ia=aavaluesV1V17antha-V17c0V0Ia<V17anum_eltsV1Aa<=c0V17FAa=aavaluesV1V18aaconstc-1V18Ia<V18c0Aa<=c0V18FAa=anum_eltsV1a+c0alengthV0AainvV1FF
a<aV7V9aV7V10Ia<V10V2Aa<V9V10Aa<a-V6c1V9FIa<aV7V11anum_eltsV1Aa<=c0aV7V11Ia<V11V2Aa<a-V6c1V11FIa<aavaluesV1V8aavaluesV1aV7a+a-V6c1c1Ia<a-V6c1a-V2c1Aa<=c0a-V6c1Ia<V8aV7a+a-V6c1c1Ia<a+a-V6c1c1V2ICa=V12a-V6c1aTuple2VwaapositionsV1V8Aa>=V8c0Ia>=a-V6c1c0Ia<V8anum_eltsV1Aa<=c-1V8Ia=V8aapredsV1V5FIa=V7aV4V6V5FIa<aavaluesV1aV4V13aavaluesV1aV4V14Ia<V14V2Aa<V13V14Aa<V6V13FAa<aV4V15aV4V16Ia<V16V2Aa<V15V16Aa<V6V15FAa<aV4V17anum_eltsV1Aa<=c0aV4V17Ia<V17V2Aa<V6V17FAa<aavaluesV1V5aavaluesV1aV4a+V6c1Ia<V6a-V2c1Aa<=c0V6Aa<V5aV4a+V6c1Ia<a+V6c1V2ACa=V18V6aTuple2VwaapositionsV1V5Aa>=V5c0Ia>=V6c0Aa<V5anum_eltsV1Aa<=c-1V5Aa>=V6c0Aa>=V3V6FFIa>=V3a-c0c1La-V2c1INa=V2c0Lanum_stacksV1Ia=aavaluesV1V19antha-V19c0V0Ia<V19anum_eltsV1Aa<=c0V19FAa=aavaluesV1V20aaconstc-1V20Ia<V20c0Aa<=c0V20FAa=anum_eltsV1a+c0alengthV0AainvV1FF
a<aavaluesV1aV7V9aavaluesV1aV7V10Ia<V10V2Aa<V9V10Aa<a-V6c1V9FIa<aV7V11aV7V12Ia<V12V2Aa<V11V12Aa<a-V6c1V11FIa<aV7V13anum_eltsV1Aa<=c0aV7V13Ia<V13V2Aa<a-V6c1V13FIa<aavaluesV1V8aavaluesV1aV7a+a-V6c1c1Ia<a-V6c1a-V2c1Aa<=c0a-V6c1Ia<V8aV7a+a-V6c1c1Ia<a+a-V6c1c1V2ICa=V14a-V6c1aTuple2VwaapositionsV1V8Aa>=V8c0Ia>=a-V6c1c0Ia<V8anum_eltsV1Aa<=c-1V8Ia=V8aapredsV1V5FIa=V7aV4V6V5FIa<aavaluesV1aV4V15aavaluesV1aV4V16Ia<V16V2Aa<V15V16Aa<V6V15FAa<aV4V17aV4V18Ia<V18V2Aa<V17V18Aa<V6V17FAa<aV4V19anum_eltsV1Aa<=c0aV4V19Ia<V19V2Aa<V6V19FAa<aavaluesV1V5aavaluesV1aV4a+V6c1Ia<V6a-V2c1Aa<=c0V6Aa<V5aV4a+V6c1Ia<a+V6c1V2ACa=V20V6aTuple2VwaapositionsV1V5Aa>=V5c0Ia>=V6c0Aa<V5anum_eltsV1Aa<=c-1V5Aa>=V6c0Aa>=V3V6FFIa>=V3a-c0c1La-V2c1INa=V2c0Lanum_stacksV1Ia=aavaluesV1V21antha-V21c0V0Ia<V21anum_eltsV1Aa<=c0V21FAa=aavaluesV1V22aaconstc-1V22Ia<V22c0Aa<=c0V22FAa=anum_eltsV1a+c0alengthV0AainvV1FF
a=anthV6V0aavaluesV1V6Ia<V6alengthV0Aa<=c0V6FIa<aavaluesV1aV4V7aavaluesV1aV4V8Ia<V8V2Aa<V7V8Aa<a-c0c1V7FAa<aV4V9aV4V10Ia<V10V2Aa<V9V10Aa<a-c0c1V9FAa<aV4V11anum_eltsV1Aa<=c0aV4V11Ia<V11V2Aa<a-c0c1V11FAa<aavaluesV1V5aavaluesV1aV4a+a-c0c1c1Ia<a-c0c1a-V2c1Aa<=c0a-c0c1Aa<V5aV4a+a-c0c1c1Ia<a+a-c0c1c1V2ACa=V12a-c0c1aTuple2VwaapositionsV1V5Aa>=V5c0Ia>=a-c0c1c0Aa<V5anum_eltsV1Aa<=c-1V5FIa>=V3a-c0c1La-V2c1INa=V2c0Lanum_stacksV1Ia=aavaluesV1V13antha-V13c0V0Ia<V13anum_eltsV1Aa<=c0V13FAa=aavaluesV1V14aaconstc-1V14Ia<V14c0Aa<=c0V14FAa=anum_eltsV1a+c0alengthV0AainvV1FF
aincreasing_subsequenceaseq'mkV2V4V0Ia=anthV6V0aavaluesV1V6Ia<V6alengthV0Aa<=c0V6FIa<aavaluesV1aV4V7aavaluesV1aV4V8Ia<V8V2Aa<V7V8Aa<a-c0c1V7FAa<aV4V9aV4V10Ia<V10V2Aa<V9V10Aa<a-c0c1V9FAa<aV4V11anum_eltsV1Aa<=c0aV4V11Ia<V11V2Aa<a-c0c1V11FAa<aavaluesV1V5aavaluesV1aV4a+a-c0c1c1Ia<a-c0c1a-V2c1Aa<=c0a-c0c1Aa<V5aV4a+a-c0c1c1Ia<a+a-c0c1c1V2ACa=V12a-c0c1aTuple2VwaapositionsV1V5Aa>=V5c0Ia>=a-c0c1c0Aa<V5anum_eltsV1Aa<=c-1V5FIa>=V3a-c0c1La-V2c1INa=V2c0Lanum_stacksV1Ia=aavaluesV1V13antha-V13c0V0Ia<V13anum_eltsV1Aa<=c0V13FAa=aavaluesV1V14aaconstc-1V14Ia<V14c0Aa<=c0V14FAa=anum_eltsV1a+c0alengthV0AainvV1FF
a=anum_eltsasa+c0alengthainput
a=aavaluesasV0aaconstc-1V0Ia<V0c0Aa<=c0V0F
a=aavaluesasV1antha-V1c0ainputIa<V1anum_eltsasAa<=c0V1F
Na=ansc0
a>=a-ansc1a-c0c1
a<=c-1aidx
a<aidxanum_eltsas
Ca=V2a-c0c1aTuple2VwaapositionsasaidxAa>=aidxc0Ia>=a-c0c1c0
a<aidxaaseqa+a-c0c1c1Ia<a+a-c0c1c1ans
a<aavaluesasaidxaavaluesasaaseqa+a-c0c1c1Ia<a-c0c1a-ansc1Aa<=c0a-c0c1
a<aaseqV3anum_eltsasAa<=c0aaseqV3Ia<V3ansAa<a-c0c1V3F
a<aaseqV4aaseqV5Ia<V5ansAa<V4V5Aa<a-c0c1V4F
a<aavaluesasaaseqV6aavaluesasaaseqV7Ia<V7ansAa<V6V7Aa<a-c0c1V6F
a=anthV8ainputaavaluesasV8Ia<V8alengthainputAa<=c0V8F
aincreasing_subsequenceaseq'mkansaseqainput
aincreasing_subsequenceasigmaainput
a>aseqlenasigmaanum_stacksas
a<aiaseqlenasigma
a<=c0asi
a<asialengthainput
a=aapositionsasasiaTuple2axax1
a<=c0ax
a<axanum_stacksas
Ca<V11anum_stacksasAa<=c0V11aTuple2VVaapositionsasV10Aa<V10alengthainputAa<=c0V10LaaseqvalasigmaV9Ia<V9aseqlenasigmaAa<=c0V9F
a<aiaseqlenasigmaAa<=c0ai
destruct premise
Ca<V14anum_stacksasAa<=c0V14aTuple2VVaapositionsasV13Aa<V13alengthainputAa<=c0V13Laaseqvalasigmaai
a<CV16aTuple2Vwaapositionsasaaseqvalasigmaaianum_stacksasAa<=c0CV17aTuple2Vwaapositionsasaaseqvalasigmaai
a=a@afaiCV16aTuple2Vwaapositionsasaaseqvalasigmaai
equality hypothesis
a<a@afaianum_stacksasAa<=c0a@afai
Ca<V14anum_stacksasAa<=c0V14aTuple2VVaapositionsasV13Aa<V13alengthainputAa<=c0V13LaaseqvalasigmaaiIa<aiaseqlenasigmaAa<=c0ai
a<a@afV13anum_stacksasAa<=c0a@afV13Ia<V13aseqlenasigmaAa<=c0V13F
arangeafaseqlenasigmaanum_stacksas
Nainjectiveafaseqlenasigma
Ca<V12anum_stacksasAa<=c0V12aTuple2VVaapositionsasV11Aa<V11alengthainputAa<=c0V11LaaseqvalasigmaV10Ia<V10aseqlenasigmaAa<=c0V10FLea=a@V14V15CV16aTuple2VwaapositionsasaaseqvalasigmaV15F
arangeV17aseqlenasigmaanum_stacksasLea=a@V18V19CV20aTuple2VwaapositionsasaaseqvalasigmaV19F
NainjectiveV21aseqlenasigmaLea=a@V22V23CV24aTuple2VwaapositionsasaaseqvalasigmaV23F
CCa=V27V29aTuple2VVaapositionsasaaseqvalasigmaV26aTuple2VVaapositionsasaaseqvalasigmaV25Aa<V26aseqlenasigmaAa<V25V26Aa<=c0V25E
CCa=V9V11aTuple2VVaapositionsV1aaseqvalV6V8aTuple2VVaapositionsV1aaseqvalV6V7Aa<V8aseqlenV6Aa<V7V8Aa<=c0V7EItOtOtONainjectiveV13aseqlenV6AarangeV13aseqlenV6anum_stacksV1ACa<V16anum_stacksV1Aa<=c0V16aTuple2VwaapositionsV1V15Aa<V15alengthV0Aa<=c0V15LaaseqvalV6V14Ia<V14aseqlenV6Aa<=c0V14FLea=a@V17V18CV19aTuple2VwaapositionsV1aaseqvalV6V18FIa>aseqlenV6anum_stacksV1Aaincreasing_subsequenceV6V0FIaincreasing_subsequenceaseq'mkV2V4V0Ia=anthV20V0aavaluesV1V20Ia<V20alengthV0Aa<=c0V20FIa<aavaluesV1aV4V21aavaluesV1aV4V22Ia<V22V2Aa<V21V22Aa<a-c0c1V21FAa<aV4V23aV4V24Ia<V24V2Aa<V23V24Aa<a-c0c1V23FAa<aV4V25anum_eltsV1Aa<=c0aV4V25Ia<V25V2Aa<a-c0c1V25FAa<aavaluesV1V5aavaluesV1aV4a+a-c0c1c1Ia<a-c0c1a-V2c1Aa<=c0a-c0c1Aa<V5aV4a+a-c0c1c1Ia<a+a-c0c1c1V2ACa=V26a-c0c1aTuple2VwaapositionsV1V5Aa>=V5c0Ia>=a-c0c1c0Aa<V5anum_eltsV1Aa<=c-1V5FIa>=V3a-c0c1La-V2c1INa=V2c0Lanum_stacksV1Ia=aavaluesV1V27antha-V27c0V0Ia<V27anum_eltsV1Aa<=c0V27FAa=aavaluesV1V28aaconstc-1V28Ia<V28c0Aa<=c0V28FAa=anum_eltsV1a+c0alengthV0AainvV1FF
CCa<aavaluesV1V9aavaluesV1V10Aa<V12V14Aa<V9V10Ia=V11V13aTuple2VVaapositionsV1V10aTuple2VVaapositionsV1V9LaaseqvalV6V8LaaseqvalV6V7Ia<V8aseqlenV6Aa<V7V8Aa<=c0V7FIa>aseqlenV6anum_stacksV1Aaincreasing_subsequenceV6V0FICCa=V18V20aTuple2VVaapositionsV1aaseqvalV15V17aTuple2VVaapositionsV1aaseqvalV15V16Aa<V17aseqlenV15Aa<V16V17Aa<=c0V16EIa>aseqlenV15anum_stacksV1Aaincreasing_subsequenceV15V0FIaincreasing_subsequenceaseq'mkV2V4V0Ia=anthV22V0aavaluesV1V22Ia<V22alengthV0Aa<=c0V22FIa<aavaluesV1aV4V23aavaluesV1aV4V24Ia<V24V2Aa<V23V24Aa<a-c0c1V23FAa<aV4V25aV4V26Ia<V26V2Aa<V25V26Aa<a-c0c1V25FAa<aV4V27anum_eltsV1Aa<=c0aV4V27Ia<V27V2Aa<a-c0c1V27FAa<aavaluesV1V5aavaluesV1aV4a+a-c0c1c1Ia<a-c0c1a-V2c1Aa<=c0a-c0c1Aa<V5aV4a+a-c0c1c1Ia<a+a-c0c1c1V2ACa=V28a-c0c1aTuple2VwaapositionsV1V5Aa>=V5c0Ia>=a-c0c1c0Aa<V5anum_eltsV1Aa<=c-1V5FIa>=V3a-c0c1La-V2c1INa=V2c0Lanum_stacksV1Ia=aavaluesV1V29antha-V29c0V0Ia<V29anum_eltsV1Aa<=c0V29FAa=aavaluesV1V30aaconstc-1V30Ia<V30c0Aa<=c0V30FAa=anum_eltsV1a+c0alengthV0AainvV1FF
aincreasing_subsequenceV6V0Aa=aseqlenV6anum_stacksV1EICCa<aavaluesV1V10aavaluesV1V11Aa<V13V15Aa<V10V11Ia=V12V14aTuple2VVaapositionsV1V11aTuple2VVaapositionsV1V10LaaseqvalV7V9LaaseqvalV7V8Ia<V9aseqlenV7Aa<V8V9Aa<=c0V8FIa>aseqlenV7anum_stacksV1Aaincreasing_subsequenceV7V0FICCa=V19V21aTuple2VVaapositionsV1aaseqvalV16V18aTuple2VVaapositionsV1aaseqvalV16V17Aa<V18aseqlenV16Aa<V17V18Aa<=c0V17EIa>aseqlenV16anum_stacksV1Aaincreasing_subsequenceV16V0FIaincreasing_subsequenceaseq'mkV2V4V0Ia=anthV23V0aavaluesV1V23Ia<V23alengthV0Aa<=c0V23FIa<aavaluesV1aV4V24aavaluesV1aV4V25Ia<V25V2Aa<V24V25Aa<a-c0c1V24FAa<aV4V26aV4V27Ia<V27V2Aa<V26V27Aa<a-c0c1V26FAa<aV4V28anum_eltsV1Aa<=c0aV4V28Ia<V28V2Aa<a-c0c1V28FAa<aavaluesV1V5aavaluesV1aV4a+a-c0c1c1Ia<a-c0c1a-V2c1Aa<=c0a-c0c1Aa<V5aV4a+a-c0c1c1Ia<a+a-c0c1c1V2ACa=V29a-c0c1aTuple2VwaapositionsV1V5Aa>=V5c0Ia>=a-c0c1c0Aa<V5anum_eltsV1Aa<=c-1V5FIa>=V3a-c0c1La-V2c1INa=V2c0Lanum_stacksV1Ia=aavaluesV1V30antha-V30c0V0Ia<V30anum_eltsV1Aa<=c0V30FAa=aavaluesV1V31aaconstc-1V31Ia<V31c0Aa<=c0V31FAa=a
a<=aseqlenV6anum_stacksV1Iaincreasing_subsequenceV6V0FIaincreasing_subsequenceV7V0Aa=aseqlenV7anum_stacksV1EICCa<aavaluesV1V11aavaluesV1V12Aa<V14V16Aa<V11V12Ia=V13V15aTuple2VVaapositionsV1V12aTuple2VVaapositionsV1V11LaaseqvalV8V10LaaseqvalV8V9Ia<V10aseqlenV8Aa<V9V10Aa<=c0V9FIa>aseqlenV8anum_stacksV1Aaincreasing_subsequenceV8V0FICCa=V20V22aTuple2VVaapositionsV1aaseqvalV17V19aTuple2VVaapositionsV1aaseqvalV17V18Aa<V19aseqlenV17Aa<V18V19Aa<=c0V18EIa>aseqlenV17anum_stacksV1Aaincreasing_subsequenceV17V0FIaincreasing_subsequenceaseq'mkV2V4V0Ia=anthV24V0aavaluesV1V24Ia<V24alengthV0Aa<=c0V24FIa<aavaluesV1aV4V25aavaluesV1aV4V26Ia<V26V2Aa<V25V26Aa<a-c0c1V25FAa<aV4V27aV4V28Ia<V28V2Aa<V27V28Aa<a-c0c1V27FAa<aV4V29anum_eltsV1Aa<=c0aV4V29Ia<V29V2Aa<a-c0c1V29FAa<aavaluesV1V5aavaluesV1aV4a+a-c0c1c1Ia<a-c0c1a-V2c1Aa<=c0a-c0c1Aa<V5aV4a+a-c0c1c1Ia<a+a-c0c1c1V2ACa=V30a-c0c1aTuple2VwaapositionsV1V5Aa>=V5c0Ia>=a-c0c1c0Aa<V5anum_eltsV1Aa<=c-1V5FIa>=V3a-c0c1La-V2c1INa=V2c0Lanum_stacksV1Ia=aavaluesV1V31antha-V31c0V0Ia<V31anum_eltsV1Aa<=
a<=aseqlenV4anum_stacksV1Iaincreasing_subsequenceV4V0FAaincreasing_subsequenceV5V0Aa=aseqlenV5anum_stacksV1EACCa<aavaluesV1V9aavaluesV1V10Aa<V12V14Aa<V9V10Ia=V11V13aTuple2VVaapositionsV1V10aTuple2VVaapositionsV1V9LaaseqvalV6V8LaaseqvalV6V7Ia<V8aseqlenV6Aa<V7V8Aa<=c0V7FIa>aseqlenV6anum_stacksV1Aaincreasing_subsequenceV6V0FACCa=V18V20aTuple2VVaapositionsV1aaseqvalV15V17aTuple2VVaapositionsV1aaseqvalV15V16Aa<V17aseqlenV15Aa<V16V17Aa<=c0V16EItOtOtONainjectiveV22aseqlenV15AarangeV22aseqlenV15anum_stacksV1ACa<V25anum_stacksV1Aa<=c0V25aTuple2VwaapositionsV1V24Aa<V24alengthV0Aa<=c0V24LaaseqvalV15V23Ia<V23aseqlenV15Aa<=c0V23FLea=a@V26V27CV28aTuple2VwaapositionsV1aaseqvalV15V27FIa>aseqlenV15anum_stacksV1Aaincreasing_subsequenceV15V0FAaincreasing_subsequenceaseq'mkV2aconstc-1V0Aa=anthV29V0aavaluesV1V29Ia<V29alengthV0Aa<=c0V29FIa<V3a-c0c1La-V2c1INa=V2c0Lanum_stacksV1Ia=aavaluesV1V30antha-V30c0V0Ia<V30anum_eltsV1Aa<=c0V30FAa=aavaluesV1V31aaconstc-1V31Ia<V31c0Aa<=c0V31FAa=anum_eltsV1a+c0alengthV0AainvV1FF
ia<=aseqlenV4anum_stacksV1Iaincreasing_subsequenceV4V0FAaincreasing_subsequenceV5V0Aa=aseqlenV5anum_stacksV1EACCa<aavaluesV1V9aavaluesV1V10Aa<V12V14Aa<V9V10Ia=V11V13aTuple2VVaapositionsV1V10aTuple2VVaapositionsV1V9LaaseqvalV6V8LaaseqvalV6V7Ia<V8aseqlenV6Aa<V7V8Aa<=c0V7FIa>aseqlenV6anum_stacksV1Aaincreasing_subsequenceV6V0FACCa=V18V20aTuple2VVaapositionsV1aaseqvalV15V17aTuple2VVaapositionsV1aaseqvalV15V16Aa<V17aseqlenV15Aa<V16V17Aa<=c0V16EItOtOtONainjectiveV22aseqlenV15AarangeV22aseqlenV15anum_stacksV1ACa<V25anum_stacksV1Aa<=c0V25aTuple2VwaapositionsV1V24Aa<V24alengthV0Aa<=c0V24LaaseqvalV15V23Ia<V23aseqlenV15Aa<=c0V23FLea=a@V26V27CV28aTuple2VwaapositionsV1aaseqvalV15V27FIa>aseqlenV15anum_stacksV1Aaincreasing_subsequenceV15V0FAaincreasing_subsequenceaseq'mkV2aconstc-1V0Aa=anthV29V0aavaluesV1V29Ia<V29alengthV0Aa<=c0V29FIa<V3a-c0c1Aa<=aseqlenV32anum_stacksV1Iaincreasing_subsequenceV32V0FAaincreasing_subsequenceV33V0Aa=aseqlenV33anum_stacksV1EACCa<aavaluesV1V37aavaluesV1V38Aa<V40V42Aa<V37V38Ia=V39V41aTuple2VVaapositions

bac4e35d72fecf04bf8a34ba680a9b64 25H24
4f11e9a324d546853982b61035f2174f 1H0
51b1afdc7a04d1572382b059e4ba758c 1H2
deb14a32746783e50077ebed78f0f8ce 4H3
cdfda2846328cf9199d7b79ea0461bb6 6H5
dfefe13d3b7c2e2a32597279c4ab6fb8 8H7
3465d99a63bb7a9dc11a95e1a5a2f15a 10H9
8de083efc2ef99b85ef39129f0b76017 12H11
e684de6c4d998528da9d3768bba6d441 12H13
df07cd10ead3acd7cf0e52a603ed49eb 4H14
2cf0a5d79c6a84abf95f83cf91fc9281 16H15
038ae8ef11f1dc1dea2f867e6cb326ef 6H17
c71b67a30a7cc37346fc9306951a77a0 8H18
4a13a75172b23301c5daaa23670dac11 10H19
9adc9aafee924cd6aacf977e1de1a306 12H20
096e3fe13a0a828b7c20aa52ead66452 12H21
4d5a20faf1808a7ff986d5a2047d2fac 4H22
bec44b7a5b8764922ac191b0427cecd8 16H23
7e66b473632e31e8b732d6dd5b16a034 27H26
55f9c844f3d0c457930ac7a6c2d212e6 30H29H28
08e017c305dbaae5190709f098004f83 32H31H28
be76a10ce83fd41c911c598ca10fa4c2 34H33H28
3558d2198f64e597a320b25b6d1feb2b 85H156
3a49b35be29089f76ea27b8f7af4a7f5 1H35
a20bd346fd81ef2804a5f603ebd09b77 4H108
e66059bd7bf4b0d5c52b4d51cc843cd4 4H107H83H82H81H80H79H78H77H76H75H74H73H72H71H70H69H68H67H66H65H64H63H62H61H60H59H58H57H56H55H54H53H52H51H50H49H48H47H46H45H44H43H42H41H40H39H38H37H36
b54b59061ecead4fa42ff959d5132f57 4H106H83H82H81H80H79H78H77H76H75H74H73H72H71H70H69H68H67H66H65H64H63H62H61H60H59H58H57H56H55H54H53H52H51H50H49H48H47H46H45H44H43H42H41H40H39H38H37H36
72e49924f7a4f46366a7b247045dfe55 85H84H83H82H81H80H79H78H77H76H75H74H73H72H71H70H69H68H67H66H65H64H63H62H61H60H59H58H57H56H55H54H53H52H51H50H49H48H47H46H45H44H43H42H41H40H39H38H37H36
d5581dcb497a972e4e3901d61cb33828 85H86H83H82H81H80H79H78H77H76H75H74H73H72H71H70H69H68H67H66H65H64H63H62H61H60H59H58H57H56H55H54H53H52H51H50H49H48H47H46H45H44H43H42H41H40H39H38H37H36
0084caf8af29dad15f129222cf1c1d8b 85H87H83H82H81H80H79H78H77H76H75H74H73H72H71H70H69H68H67H66H65H64H63H62H61H60H59H58H57H56H55H54H53H52H51H50H49H48H47H46H45H44H43H42H41H40H39H38H37H36
8b8193e251e3221b3471a6528cff3bda 85H88H83H82H81H80H79H78H77H76H75H74H73H72H71H70H69H68H67H66H65H64H63H62H61H60H59H58H57H56H55H54H53H52H51H50H49H48H47H46H45H44H43H42H41H40H39H38H37H36
1bb1f03b8a79384e09e395a9a6407079 85H89H83H82H81H80H79H78H77H76H75H74H73H72H71H70H69H68H67H66H65H64H63H62H61H60H59H58H57H56H55H54H53H52H51H50H49H48H47H46H45H44H43H42H41H40H39H38H37H36
90329f6bbb67ce51eb44ad95a8fba128 85H90H83H82H81H80H79H78H77H76H75H74H73H72H71H70H69H68H67H66H65H64H63H62H61H60H59H58H57H56H55H54H53H52H51H50H49H48H47H46H45H44H43H42H41H40H39H38H37H36
7cfed06e6c770d1b571d18030849b6ae 85H91H83H82H81H80H79H78H77H76H75H74H73H72H71H70H69H68H67H66H65H64H63H62H61H60H59H58H57H56H55H54H53H52H51H50H49H48H47H46H45H44H43H42H41H40H39H38H37H36
7294958c310bdf51194d839e90883c07 85H92H83H82H81H80H79H78H77H76H75H74H73H72H71H70H69H68H67H66H65H64H63H62H61H60H59H58H57H56H55H54H53H52H51H50H49H48H47H46H45H44H43H42H41H40H39H38H37H36
38fe2e96d91e0075cbf08ef67afa8c44 85H93H83H82H81H80H79H78H77H76H75H74H73H72H71H70H69H68H67H66H65H64H63H62H61H60H59H58H57H56H55H54H53H52H51H50H49H48H47H46H45H44H43H42H41H40H39H38H37H36
19c9b57a367561d5d6bfbadf73c7e52d 85H94H83H82H81H80H79H78H77H76H75H74H73H72H71H70H69H68H67H66H65H64H63H62H61H60H59H58H57H56H55H54H53H52H51H50H49H48H47H46H45H44H43H42H41H40H39H38H37H36
c3ec4e9b63fbe5e38b5bfd84efcd3bf9 85H95H83H82H81H80H79H78H77H76H75H74H73H72H71H70H69H68H67H66H65H64H63H62H61H60H59H58H57H56H55H54H53H52H51H50H49H48H47H46H45H44H43H42H41H40H39H38H37H36
c1e58ef684012bc2f49b4efaa5209e11 85H96H83H82H81H80H79H78H77H76H75H74H73H72H71H70H69H68H67H66H65H64H63H62H61H60H59H58H57H56H55H54H53H52H51H50H49H48H47H46H45H44H43H42H41H40H39H38H37H36
c704a118f9315d1de37d66d9e49aa151 85H97H83H82H81H80H79H78H77H76H75H74H73H72H71H70H69H68H67H66H65H64H63H62H61H60H59H58H57H56H55H54H53H52H51H50H49H48H47H46H45H44H43H42H41H40H39H38H37H36
a1fdbd52152f4ae5dad089fc8ab20246 85H98H83H82H81H80H79H78H77H76H75H74H73H72H71H70H69H68H67H66H65H64H63H62H61H60H59H58H57H56H55H54H53H52H51H50H49H48H47H46H45H44H43H42H41H40H39H38H37H36
eb5a66c05747403d9fd3399d38230e4e 85H99H83H82H81H80H79H78H77H76H75H74H73H72H71H70H69H68H67H66H65H64H63H62H61H60H59H58H57H56H55H54H53H52H51H50H49H48H47H46H45H44H43H42H41H40H39H38H37H36
df3e620e04c6f5f306b65dd6cce2049a 85H100H83H82H81H80H79H78H77H76H75H74H73H72H71H70H69H68H67H66H65H64H63H62H61H60H59H58H57H56H55H54H53H52H51H50H49H48H47H46H45H44H43H42H41H40H39H38H37H36
8e51b8dd585456bb219472895b466a5c 85H101H83H82H81H80H79H78H77H76H75H74H73H72H71H70H69H68H67H66H65H64H63H62H61H60H59H58H57H56H55H54H53H52H51H50H49H48H47H46H45H44H43H42H41H40H39H38H37H36
0cb313cd1bf8cfd3cee831589a5dd670 85H102H83H82H81H80H79H78H77H76H75H74H73H72H71H70H69H68H67H66H65H64H63H62H61H60H59H58H57H56H55H54H53H52H51H50H49H48H47H46H45H44H43H42H41H40H39H38H37H36
1efc75ee40c3d7cf836695f30f4c2cda 85H103H83H82H81H80H79H78H77H76H75H74H73H72H71H70H69H68H67H66H65H64H63H62H61H60H59H58H57H56H55H54H53H52H51H50H49H48H47H46H45H44H43H42H41H40H39H38H37H36
673bc57f679c71b2bfbb6b7c0dd447d9 85H104H83H82H81H80H79H78H77H76H75H74H73H72H71H70H69H68H67H66H65H64H63H62H61H60H59H58H57H56H55H54H53H52H51H50H49H48H47H46H45H44H43H42H41H40H39H38H37H36
c7106994136066ee25b205c1b81542cb 85H105H83H82H81H80H79H78H77H76H75H74H73H72H71H70H69H68H67H66H65H64H63H62H61H60H59H58H57H56H55H54H53H52H51H50H49H48H47H46H45H44H43H42H41H40H39H38H37H36
3bd8b80816c0fabe3f00415be1eddd57 4H109
9c5a22b015dfb5dfcf00e4e60cd05169 4H110
9abc5e963a7c2dedfd1a4d3091fb25c0 8H111
951292ad7b1b73458238d9829bcdbe1d 8H112
244c63beb26e7f6bd14c1e9e6109b59d 6H113
9b1e6e4c3aa3811aade4a076468f684d 4H153
2e3968ca1605d004cee5a3aee005fa32 4H152H129H128H127H126H125H124H123H122H121H81H80H79H78H77H76H120H119H73H72H71H70H69H68H118H117H65H64H63H62H61H60H116H58H57H115H55H54H53H52H51H50H49H48H47H46H45H44H43H42H114H37H36
b1c932aefce250ba1aff70d06762c6c3 4H151H129H128H127H126H125H124H123H122H121H81H80H79H78H77H76H120H119H73H72H71H70H69H68H118H117H65H64H63H62H61H60H116H58H57H115H55H54H53H52H51H50H49H48H47H46H45H44H43H42H114H37H36
842cb0822a2adc17fcca37632d015fc9 85H130H129H128H127H126H125H124H123H122H121H81H80H79H78H77H76H120H119H73H72H71H70H69H68H118H117H65H64H63H62H61H60H116H58H57H115H55H54H53H52H51H50H49H48H47H46H45H44H43H42H114H37H36
cca0bf4c0ea535ab8a1498e99742951c 85H131H129H128H127H126H125H124H123H122H121H81H80H79H78H77H76H120H119H73H72H71H70H69H68H118H117H65H64H63H62H61H60H116H58H57H115H55H54H53H52H51H50H49H48H47H46H45H44H43H42H114H37H36
507978cc17440545a0a9a6b416c44e9d 85H132H129H128H127H126H125H124H123H122H121H81H80H79H78H77H76H120H119H73H72H71H70H69H68H118H117H65H64H63H62H61H60H116H58H57H115H55H54H53H52H51H50H49H48H47H46H45H44H43H42H114H37H36
876d109d52fb10777dee5d3a22c48cbf 85H133H129H128H127H126H125H124H123H122H121H81H80H79H78H77H76H120H119H73H72H71H70H69H68H118H117H65H64H63H62H61H60H116H58H57H115H55H54H53H52H51H50H49H48H47H46H45H44H43H42H114H37H36
fd22799e6aa228c06b1a55ea157023ad 85H134H129H128H127H126H125H124H123H122H121H81H80H79H78H77H76H120H119H73H72H71H70H69H68H118H117H65H64H63H62H61H60H116H58H57H115H55H54H53H52H51H50H49H48H47H46H45H44H43H42H114H37H36
981a9aa6d3f4f709253a16d628c68ca7 85H135H129H128H127H126H125H124H123H122H121H81H80H79H78H77H76H120H119H73H72H71H70H69H68H118H117H65H64H63H62H61H60H116H58H57H115H55H54H53H52H51H50H49H48H47H46H45H44H43H42H114H37H36
9c4a1343232f5d93ec60e1e953ff035f 85H136H129H128H127H126H125H124H123H122H121H81H80H79H78H77H76H120H119H73H72H71H70H69H68H118H117H65H64H63H62H61H60H116H58H57H115H55H54H53H52H51H50H49H48H47H46H45H44H43H42H114H37H36
30089d8cdca9a835966e568df75f32c1 85H137H129H128H127H126H125H124H123H122H121H81H80H79H78H77H76H120H119H73H72H71H70H69H68H118H117H65H64H63H62H61H60H116H58H57H115H55H54H53H52H51H50H49H48H47H46H45H44H43H42H114H37H36
db12190f094e4cf04a1b36173c1110a4 85H138H129H128H127H126H125H124H123H122H121H81H80H79H78H77H76H120H119H73H72H71H70H69H68H118H117H65H64H63H62H61H60H116H58H57H115H55H54H53H52H51H50H49H48H47H46H45H44H43H42H114H37H36
a6f34b665ff1147c29841ae33f9d8bd3 85H139H129H128H127H126H125H124H123H122H121H81H80H79H78H77H76H120H119H73H72H71H70H69H68H118H117H65H64H63H62H61H60H116H58H57H115H55H54H53H52H51H50H49H48H47H46H45H44H43H42H114H37H36
9b965bda3a5a71d0c16bf0e87eac0ad4 85H140H129H128H127H126H125H124H123H122H121H81H80H79H78H77H76H120H119H73H72H71H70H69H68H118H117H65H64H63H62H61H60H116H58H57H115H55H54H53H52H51H50H49H48H47H46H45H44H43H42H114H37H36
63f6e3b82052531f7f59ff91510236ec 85H141H129H128H127H126H125H124H123H122H121H81H80H79H78H77H76H120H119H73H72H71H70H69H68H118H117H65H64H63H62H61H60H116H58H57H115H55H54H53H52H51H50H49H48H47H46H45H44H43H42H114H37H36
a440a86f0ab043c3be6879304df03975 85H142H129H128H127H126H125H124H123H122H121H81H80H79H78H77H76H120H119H73H72H71H70H69H68H118H117H65H64H63H62H61H60H116H58H57H115H55H54H53H52H51H50H49H48H47H46H45H44H43H42H114H37H36
fde8b2ae8ce20873277a38d9017afa8e 85H143H129H128H127H126H125H124H123H122H121H81H80H79H78H77H76H120H119H73H72H71H70H69H68H118H117H65H64H63H62H61H60H116H58H57H115H55H54H53H52H51H50H49H48H47H46H45H44H43H42H114H37H36
e6b00bdea34b27e0c0a9f427f029a77e 85H144H129H128H127H126H125H124H123H122H121H81H80H79H78H77H76H120H119H73H72H71H70H69H68H118H117H65H64H63H62H61H60H116H58H57H115H55H54H53H52H51H50H49H48H47H46H45H44H43H42H114H37H36
3c27c715c20605c5ca2ed6d716b1f320 85H145H129H128H127H126H125H124H123H122H121H81H80H79H78H77H76H120H119H73H72H71H70H69H68H118H117H65H64H63H62H61H60H116H58H57H115H55H54H53H52H51H50H49H48H47H46H45H44H43H42H114H37H36
946738d9ab92e746b31328814860923f 85H146H129H128H127H126H125H124H123H122H121H81H80H79H78H77H76H120H119H73H72H71H70H69H68H118H117H65H64H63H62H61H60H116H58H57H115H55H54H53H52H51H50H49H48H47H46H45H44H43H42H114H37H36
1ba92f276d864def605b7d5ed3e0ed5f 85H147H129H128H127H126H125H124H123H122H121H81H80H79H78H77H76H120H119H73H72H71H70H69H68H118H117H65H64H63H62H61H60H116H58H57H115H55H54H53H52H51H50H49H48H47H46H45H44H43H42H114H37H36
8db8c26eb01cb713f3e9b6c06ccc39a7 85H148H129H128H127H126H125H124H123H122H121H81H80H79H78H77H76H120H119H73H72H71H70H69H68H118H117H65H64H63H62H61H60H116H58H57H115H55H54H53H52H51H50H49H48H47H46H45H44H43H42H114H37H36
bb309d80cd81e9797cf59140aca05f49 85H149H129H128H127H126H125H124H123H122H121H81H80H79H78H77H76H120H119H73H72H71H70H69H68H118H117H65H64H63H62H61H60H116H58H57H115H55H54H53H52H51H50H49H48H47H46H45H44H43H42H114H37H36
b4a761f78de916f76f4b6781d4ce62f7 85H150H129H128H127H126H125H124H123H122H121H81H80H79H78H77H76H120H119H73H72H71H70H69H68H118H117H65H64H63H62H61H60H116H58H57H115H55H54H53H52H51H50H49H48H47H46H45H44H43H42H114H37H36
364595fccf82a309e1dfe78c99157fd1 4H154
6f3e6999c43761310236478953aa9256 4H155
c8b8361f81e27c4f2aec8216794fd427 16H156
d675273705fe31a1f3c39a0af3d275a0 32H157
5631de5d69c9ad98de16f191364c378f 34H223
de08e0e3bcfe3eb46821c2c695794d5d 12H158
354c9f22d2b63af689b7cc7d96988f10 8H159
ea21a527dba1e92f19b81a3ac8983a91 8H160
bfc62a1c17cdcb4b0d3e509cdb17fa8b 4H161
02e1f1c80ca3610e77bf6aa5cbff2645 4H162
642e67f3d890a5d88951a7dfc9458270 1H163
48b25c86c95307a694deb4adba894cab 1H164
ad502db79540d2e51c44074588afeedf 1H165
5c2cf62606ca26acdd3b40f703894649 1H166
e9bd1341e8cd82393cbc18d729f2f722 1H167
ca8dc8a8f70b3901b65cea0abc6beddd 1H168
709d2d0d32ea034035b19a46a784eb64 1H169
a7905cd0201f6aaafd58a454a752cab4 6H170
08ce317f2865e9ecd7f2e1904e998810 6H171
df90b99aeced4b68afb315d75dd06867 6H172
3d52a119e767ed44f2e1b276df4df35d 6H173
ab4305df798b9ea913127922341a3771 6H174
390c105600715d530355a02eacd9db15 6H175
9994d8491102882b695f84909f5af038 6H176
58daabbf87138a6ce3d9156c0de121fe 8H177
ca784653e04756176581f85939c6046a 8H178
fad770639ed80947613d9f0d28f59512 8H218
1125128b67364100eaf01f87f595f2cd 8H197H196H38H195H194H193H192H191H190H189H188H187H186H185H184H183H182H181H180H179H36
32fefced01937846d265633cc960b272 8H198H196H38H195H194H193H192H191H190H189H188H187H186H185H184H183H182H181H180H179H36
08a774ce1b3a8f7d488249a1cd86bf29 8H200H199H198H197H196H38H195H194H193H192H191H190H189H188H187H186H185H184H183H182H181H180H179H36
6f7e11f8f3a04a7588faf17651ae8770 8H201H199H198H197H196H38H195H194H193H192H191H190H189H188H187H186H185H184H183H182H181H180H179H36
a130874ea506731e3f210f0d5608b821 34H212H202H195H194H193H192H191H190H189H188H187H186H185H184H183H182H181H180H179H36
a52e75077e3f6e7a0df76fdd4eb38651 34H211H202H195H194H193H192H191H190H189H188H187H186H185H184H183H182H181H180H179H36
b435249f9ea746bd0d3c2c35bf314b91 34H209H196H38H202H195H194H193H192H191H190H189H188H187H186H185H184H183H182H181H180H179H36
404c3be9141346b6f7fc8777a52340c7 34H209H210H196H38H202H195H194H193H192H191H190H189H188H187H186H185H184H183H182H181H180H179H36
3a52d33a101c1df06c0d3242986400d7 204H203H196H38H202H195H194H193H192H191H190H189H188H187H186H185H184H183H182H181H180H179H36
fb9503b93794331f5813485d1f663627 34H209H205H196H38H202H195H194H193H192H191H190H189H188H187H186H185H184H183H182H181H180H179H36
f4724566e3998cd7656719b42833e41d 34H206H205H196H38H202H195H194H193H192H191H190H189H188H187H186H185H184H183H182H181H180H179H36
44642cd8c0b8b9217784f36ad0adf72b 208H207H205H196H38H202H195H194H193H192H191H190H189H188H187H186H185H184H183H182H181H180H179H36
fa9b6e0d75251536653720336f30d82a 34H213H212H202H195H194H193H192H191H190H189H188H187H186H185H184H183H182H181H180H179H36
a005222fd4d376e0823f27f9fba33c97 34H217H216H215H214H195H194H193H192H191H190H189H188H187H186H185H184H183H182H181H180H179H36
36fb2ff4594888cd52f3f2198573ed79 8H219
beca5197a88f7b6de83b3fb02daa00af 4H220
0c7cfb55ba56f323e3425ca8accbeaca 4H221
eb8268d267bccf9227bb336a835cabb1 16H222
