amatchesV0V2V1V3c0Ia<=V3alengthV1Aa<=c0V3Ia<=V2alengthV0Aa<=c0V2F
empty_shape
amatchesV4V6V5V7a+V8c1Ia=aV4a+V6V8aV5a+V7V8Ia<=V7a-a-alengthV5V8c1Ia<=V6a-a-alengthV4V8c1IamatchesV4V6V5V7V8F
NamatchesV9V11V10V12V13INa=aV9V11aV10V12Ia<c0V13F
NamatchesV14V16V15V17V19INa=aV14a+V16V18aV15a+V17V18Ia<V18V19Aa<=c0V18Ia<c0V19F
amatchesV20V22V21V23V25Ia<V25V24IamatchesV20V22V21V23V24F
amatchesV26V28V27V29V31Ia<V31V30IamatchesV26a-V28a-V30V31V27a-V29a-V30V31V30F
amatchesV33V35V32V34V36IamatchesV32V34V33V35V36F
amatchesV37V40V39V42V43IamatchesV38V41V39V42V43IamatchesV37V40V38V41V43F
amatchesV45a-V46V48V44c0V48Iais_nextV44V47V48IamatchesV45a-V46V47V44c0V47Ia<=V46alengthV45Aa<=V47V46Ia<V47alengthV44Aa<c0V47F
NamatchesV50V54V49c0alengthV49Iais_nextV49V52V53IamatchesV50a-V51V52V49c0V52Ia<V54a-V51V53Aa<a-V51V52V54Ia<=V51alengthV50Aa<=V52V51Ia<V52alengthV49Aa<c0V52F
ais_nextV55c1c0Ia<=c1alengthV55F
a>=V57c0LalengthV56Ia<=c1alengthV56F
array creation size
a<c1alengthV58Aa<=c0c1Ia<c1V57Ia=alengthV58V57Aa=aV58V59c0Ia<V59V57Aa<=c0V59FFLalengthV56Ia<=c1alengthV56F
index in array bounds
a<=c1V57Aa<c0c1Aa<=c0c0Ia=V59aV58c1c0Aa=aeltsV59asetaeltsV58c1c0Ia=alengthV59alengthV58FIa<c1V57Ia=alengthV58V57Aa=aV58V60c0Ia<V60V57Aa<=c0V60FFLalengthV56Ia<=c1alengthV56F
loop invariant init
amatchesV56a-c1c0V56c0c0Ia<=c1V57Aa<c0c1Aa<=c0c0Ia=V59aV58c1c0Aa=aeltsV59asetaeltsV58c1c0Ia=alengthV59alengthV58FIa<c1V57Ia=alengthV58V57Aa=aV58V60c0Ia<V60V57Aa<=c0V60FFLalengthV56Ia<=c1alengthV56F
NamatchesV56a-a+c1c1V60V56c0V60Ia<V60a+c1c1Aa<a+c0c1V60FIamatchesV56a-c1c0V56c0c0Ia<=c1V57Aa<c0c1Aa<=c0c0Ia=V59aV58c1c0Aa=aeltsV59asetaeltsV58c1c0Ia=alengthV59alengthV58FIa<c1V57Ia=alengthV58V57Aa=aV58V61c0Ia<V61V57Aa<=c0V61FFLalengthV56Ia<=c1alengthV56F
ais_nextV56V60aV59V60Ia<=V60c1Aa<c0V60FINamatchesV56a-a+c1c1V61V56c0V61Ia<V61a+c1c1Aa<a+c0c1V61FIamatchesV56a-c1c0V56c0c0Ia<=c1V57Aa<c0c1Aa<=c0c0Ia=V59aV58c1c0Aa=aeltsV59asetaeltsV58c1c0Ia=alengthV59alengthV58FIa<c1V57Ia=alengthV58V57Aa=aV58V62c0Ia<V62V57Aa<=c0V62FFLalengthV56Ia<=c1alengthV56F
a<V60alengthV56Aa<=c0V60Ia<V61a-V57c1Iais_nextV56V63aV62V63Ia<=V63V61Aa<c0V63FANamatchesV56a-a+V61c1V64V56c0V64Ia<V64a+V61c1Aa<a+V60c1V64FAamatchesV56a-V61V60V56c0V60Aa<=V61V57Aa<V60V61Aa<=c0V60Ia=alengthV62alengthV59FIa=V59aV58c1c0Aa=aeltsV59asetaeltsV58c1c0Ia=alengthV59alengthV58FIa<c1V57Ia=alengthV58V57Aa=aV58V65c0Ia<V65V57Aa<=c0V65FFLalengthV56Ia<=c1alengthV56F
a<V61alengthV56Aa<=c0V61Ia<V61a-V57c1Iais_nextV56V63aV62V63Ia<=V63V61Aa<c0V63FANamatchesV56a-a+V61c1V64V56c0V64Ia<V64a+V61c1Aa<a+V60c1V64FAamatchesV56a-V61V60V56c0V60Aa<=V61V57Aa<V60V61Aa<=c0V60Ia=alengthV62alengthV59FIa=V59aV58c1c0Aa=aeltsV59asetaeltsV58c1c0Ia=alengthV59alengthV58FIa<c1V57Ia=alengthV58V57Aa=aV58V65c0Ia<V65V57Aa<=c0V65FFLalengthV56Ia<=c1alengthV56F
a<V63alengthV62Aa<=c0V63Ia=V64a+V60c1FIa=V63a+V61c1FIa=aV56V61aV56V60Ia<V61a-V57c1Iais_nextV56V65aV62V65Ia<=V65V61Aa<c0V65FANamatchesV56a-a+V61c1V66V56c0V66Ia<V66a+V61c1Aa<a+V60c1V66FAamatchesV56a-V61V60V56c0V60Aa<=V61V57Aa<V60V61Aa<=c0V60Ia=alengthV62alengthV59FIa=V59aV58c1c0Aa=aeltsV59asetaeltsV58c1c0Ia=alengthV59alengthV58FIa<c1V57Ia=alengthV58V57Aa=aV58V67c0Ia<V67V57Aa<=c0V67FFLalengthV56Ia<=c1alengthV56F
a<V64V60Aa<=c0V60Aa=a-V57V61a-V57V63Oa<a-V57V63a-V57V61Aa<=c0a-V57V61Ia=V65aV62V63V64Aa=aeltsV65asetaeltsV62V63V64Ia=alengthV65alengthV62FIa=V64a+V60c1FIa=V63a+V61c1FIa=aV56V61aV56V60Ia<V61a-V57c1Iais_nextV56V66aV62V66Ia<=V66V61Aa<c0V66FANamatchesV56a-a+V61c1V67V56c0V67Ia<V67a+V61c1Aa<a+V60c1V67FAamatchesV56a-V61V60V56c0V60Aa<=V61V57Aa<V60V61Aa<=c0V60Ia=alengthV62alengthV59FIa=V59aV58c1c0Aa=aeltsV59asetaeltsV58c1c0Ia=alengthV59alengthV58FIa<c1V57Ia=alengthV58V57Aa=aV58V68c0Ia<V68V57Aa<=c0V68FFLalengthV56Ia<=c1alengthV56F
loop variant decrease
a<=V63V57Aa<V64V63Aa<=c0V64Ia=V65aV62V63V64Aa=aeltsV65asetaeltsV62V63V64Ia=alengthV65alengthV62FIa=V64a+V60c1FIa=V63a+V61c1FIa=aV56V61aV56V60Ia<V61a-V57c1Iais_nextV56V66aV62V66Ia<=V66V61Aa<c0V66FANamatchesV56a-a+V61c1V67V56c0V67Ia<V67a+V61c1Aa<a+V60c1V67FAamatchesV56a-V61V60V56c0V60Aa<=V61V57Aa<V60V61Aa<=c0V60Ia=alengthV62alengthV59FIa=V59aV58c1c0Aa=aeltsV59asetaeltsV58c1c0Ia=alengthV59alengthV58FIa<c1V57Ia=alengthV58V57Aa=aV58V68c0Ia<V68V57Aa<=c0V68FFLalengthV56Ia<=c1alengthV56F
loop invariant preservation
amatchesV56a-V63V64V56c0V64Ia<=V63V57Aa<V64V63Aa<=c0V64Ia=V65aV62V63V64Aa=aeltsV65asetaeltsV62V63V64Ia=alengthV65alengthV62FIa=V64a+V60c1FIa=V63a+V61c1FIa=aV56V61aV56V60Ia<V61a-V57c1Iais_nextV56V66aV62V66Ia<=V66V61Aa<c0V66FANamatchesV56a-a+V61c1V67V56c0V67Ia<V67a+V61c1Aa<a+V60c1V67FAamatchesV56a-V61V60V56c0V60Aa<=V61V57Aa<V60V61Aa<=c0V60Ia=alengthV62alengthV59FIa=V59aV58c1c0Aa=aeltsV59asetaeltsV58c1c0Ia=alengthV59alengthV58FIa<c1V57Ia=alengthV58V57Aa=aV58V68c0Ia<V68V57Aa<=c0V68FFLalengthV56Ia<=c1alengthV56F
a<=c1alengthap
a=aanextV56c0Ia<V56amAa<=c0V56F
a=alengthanextam
a<c1am
a=alengthanext1alengthanext
a=aeltsanext1asetaeltsanextc1c0
a=anext1aanextc1c0
a=alengthanext2alengthanext1
a<=c0aj
a<ajai
a<=aiam
amatchesapa-aiajapc0aj
Namatchesapa-a+aic1V57apc0V57Ia<V57a+aic1Aa<a+ajc1V57F
ais_nextapV58aanext2V58Ia<=V58aiAa<c0V58F
a<aia-amc1
a=aapaiaapaj
a=ai1a+aic1
a=aj1a+ajc1
a=alengthanext3alengthanext2
a=aeltsanext3asetaeltsanext2ai1aj1
a=anext3aanext2ai1aj1
a<=ai1amAa<aj1ai1Aa<=c0aj1
amatchesapa-ai1aj1apc0aj1
a<a+aj1c1az
a<aza+ai1c1
Namatchesapa-a+aic1a-azc1apc0a-azc1Ia<a-azc1a+aic1Aa<a+ajc1a-azc1
Namatchesapa-a+ai1c1azapc0az
NamatchesV56a-a+V63c1V66V56c0V66Ia<V66a+V63c1Aa<a+V64c1V66FIamatchesV56a-V63V64V56c0V64Ia<=V63V57Aa<V64V63Aa<=c0V64Ia=V65aV62V63V64Aa=aeltsV65asetaeltsV62V63V64Ia=alengthV65alengthV62FIa=V64a+V60c1FIa=V63a+V61c1FIa=aV56V61aV56V60Ia<V61a-V57c1Iais_nextV56V67aV62V67Ia<=V67V61Aa<c0V67FANamatchesV56a-a+V61c1V68V56c0V68Ia<V68a+V61c1Aa<a+V60c1V68FAamatchesV56a-V61V60V56c0V60Aa<=V61V57Aa<V60V61Aa<=c0V60Ia=alengthV62alengthV59FIa=V59aV58c1c0Aa=aeltsV59asetaeltsV58c1c0Ia=alengthV59alengthV58FIa<c1V57Ia=alengthV58V57Aa=aV58V69c0Ia<V69V57Aa<=c0V69FFLalengthV56Ia<=c1alengthV56F
ais_nextV56V66aV65V66Ia<=V66V63Aa<c0V66FINamatchesV56a-a+V63c1V67V56c0V67Ia<V67a+V63c1Aa<a+V64c1V67FIamatchesV56a-V63V64V56c0V64Ia<=V63V57Aa<V64V63Aa<=c0V64Ia=V65aV62V63V64Aa=aeltsV65asetaeltsV62V63V64Ia=alengthV65alengthV62FIa=V64a+V60c1FIa=V63a+V61c1FIa=aV56V61aV56V60Ia<V61a-V57c1Iais_nextV56V68aV62V68Ia<=V68V61Aa<c0V68FANamatchesV56a-a+V61c1V69V56c0V69Ia<V69a+V61c1Aa<a+V60c1V69FAamatchesV56a-V61V60V56c0V60Aa<=V61V57Aa<V60V61Aa<=c0V60Ia=alengthV62alengthV59FIa=V59aV58c1c0Aa=aeltsV59asetaeltsV58c1c0Ia=alengthV59alengthV58FIa<c1V57Ia=alengthV58V57Aa=aV58V70c0Ia<V70V57Aa<=c0V70FFLalengthV56Ia<=c1alengthV56F
a<V63alengthV62Aa<=c0V63Ia=V63a+V61c1FIa=V60c0INa=aV56V61aV56V60Ia<V61a-V57c1Iais_nextV56V64aV62V64Ia<=V64V61Aa<c0V64FANamatchesV56a-a+V61c1V65V56c0V65Ia<V65a+V61c1Aa<a+V60c1V65FAamatchesV56a-V61V60V56c0V60Aa<=V61V57Aa<V60V61Aa<=c0V60Ia=alengthV62alengthV59FIa=V59aV58c1c0Aa=aeltsV59asetaeltsV58c1c0Ia=alengthV59alengthV58FIa<c1V57Ia=alengthV58V57Aa=aV58V66c0Ia<V66V57Aa<=c0V66FFLalengthV56Ia<=c1alengthV56F
a<V60V60Aa<=c0V60Aa=a-V57V61a-V57V63Oa<a-V57V63a-V57V61Aa<=c0a-V57V61Ia=V64aV62V63c0Aa=aeltsV64asetaeltsV62V63c0Ia=alengthV64alengthV62FIa=V63a+V61c1FIa=V60c0INa=aV56V61aV56V60Ia<V61a-V57c1Iais_nextV56V65aV62V65Ia<=V65V61Aa<c0V65FANamatchesV56a-a+V61c1V66V56c0V66Ia<V66a+V61c1Aa<a+V60c1V66FAamatchesV56a-V61V60V56c0V60Aa<=V61V57Aa<V60V61Aa<=c0V60Ia=alengthV62alengthV59FIa=V59aV58c1c0Aa=aeltsV59asetaeltsV58c1c0Ia=alengthV59alengthV58FIa<c1V57Ia=alengthV58V57Aa=aV58V67c0Ia<V67V57Aa<=c0V67FFLalengthV56Ia<=c1alengthV56F
a<=V63V57Aa<V60V63Aa<=c0V60Ia=V64aV62V63c0Aa=aeltsV64asetaeltsV62V63c0Ia=alengthV64alengthV62FIa=V63a+V61c1FIa=V60c0INa=aV56V61aV56V60Ia<V61a-V57c1Iais_nextV56V65aV62V65Ia<=V65V61Aa<c0V65FANamatchesV56a-a+V61c1V66V56c0V66Ia<V66a+V61c1Aa<a+V60c1V66FAamatchesV56a-V61V60V56c0V60Aa<=V61V57Aa<V60V61Aa<=c0V60Ia=alengthV62alengthV59FIa=V59aV58c1c0Aa=aeltsV59asetaeltsV58c1c0Ia=alengthV59alengthV58FIa<c1V57Ia=alengthV58V57Aa=aV58V67c0Ia<V67V57Aa<=c0V67FFLalengthV56Ia<=c1alengthV56F
amatchesV56a-V63V60V56c0V60Ia<=V63V57Aa<V60V63Aa<=c0V60Ia=V64aV62V63c0Aa=aeltsV64asetaeltsV62V63c0Ia=alengthV64alengthV62FIa=V63a+V61c1FIa=V60c0INa=aV56V61aV56V60Ia<V61a-V57c1Iais_nextV56V65aV62V65Ia<=V65V61Aa<c0V65FANamatchesV56a-a+V61c1V66V56c0V66Ia<V66a+V61c1Aa<a+V60c1V66FAamatchesV56a-V61V60V56c0V60Aa<=V61V57Aa<V60V61Aa<=c0V60Ia=alengthV62alengthV59FIa=V59aV58c1c0Aa=aeltsV59asetaeltsV58c1c0Ia=alengthV59alengthV58FIa<c1V57Ia=alengthV58V57Aa=aV58V67c0Ia<V67V57Aa<=c0V67FFLalengthV56Ia<=c1alengthV56F
NamatchesV56a-a+V63c1V65V56c0V65Ia<V65a+V63c1Aa<a+V60c1V65FIamatchesV56a-V63V60V56c0V60Ia<=V63V57Aa<V60V63Aa<=c0V60Ia=V64aV62V63c0Aa=aeltsV64asetaeltsV62V63c0Ia=alengthV64alengthV62FIa=V63a+V61c1FIa=V60c0INa=aV56V61aV56V60Ia<V61a-V57c1Iais_nextV56V66aV62V66Ia<=V66V61Aa<c0V66FANamatchesV56a-a+V61c1V67V56c0V67Ia<V67a+V61c1Aa<a+V60c1V67FAamatchesV56a-V61V60V56c0V60Aa<=V61V57Aa<V60V61Aa<=c0V60Ia=alengthV62alengthV59FIa=V59aV58c1c0Aa=aeltsV59asetaeltsV58c1c0Ia=alengthV59alengthV58FIa<c1V57Ia=alengthV58V57Aa=aV58V68c0Ia<V68V57Aa<=c0V68FFLalengthV56Ia<=c1alengthV56F
ais_nextV56V65aV64V65Ia<=V65V63Aa<c0V65FINamatchesV56a-a+V63c1V66V56c0V66Ia<V66a+V63c1Aa<a+V60c1V66FIamatchesV56a-V63V60V56c0V60Ia<=V63V57Aa<V60V63Aa<=c0V60Ia=V64aV62V63c0Aa=aeltsV64asetaeltsV62V63c0Ia=alengthV64alengthV62FIa=V63a+V61c1FIa=V60c0INa=aV56V61aV56V60Ia<V61a-V57c1Iais_nextV56V67aV62V67Ia<=V67V61Aa<c0V67FANamatchesV56a-a+V61c1V68V56c0V68Ia<V68a+V61c1Aa<a+V60c1V68FAamatchesV56a-V61V60V56c0V60Aa<=V61V57Aa<V60V61Aa<=c0V60Ia=alengthV62alengthV59FIa=V59aV58c1c0Aa=aeltsV59asetaeltsV58c1c0Ia=alengthV59alengthV58FIa<c1V57Ia=alengthV58V57Aa=aV58V69c0Ia<V69V57Aa<=c0V69FFLalengthV56Ia<=c1alengthV56F
a<V60alengthV62Aa<=c0V60INa=V60c0INa=aV56V61aV56V60Ia<V61a-V57c1Iais_nextV56V63aV62V63Ia<=V63V61Aa<c0V63FANamatchesV56a-a+V61c1V64V56c0V64Ia<V64a+V61c1Aa<a+V60c1V64FAamatchesV56a-V61V60V56c0V60Aa<=V61V57Aa<V60V61Aa<=c0V60Ia=alengthV62alengthV59FIa=V59aV58c1c0Aa=aeltsV59asetaeltsV58c1c0Ia=alengthV59alengthV58FIa<c1V57Ia=alengthV58V57Aa=aV58V65c0Ia<V65V57Aa<=c0V65FFLalengthV56Ia<=c1alengthV56F
a<V63V60Aa<=c0V60AtOa<a-V57V61a-V57V61Aa<=c0a-V57V61Ia=V63aV62V60FINa=V60c0INa=aV56V61aV56V60Ia<V61a-V57c1Iais_nextV56V64aV62V64Ia<=V64V61Aa<c0V64FANamatchesV56a-a+V61c1V65V56c0V65Ia<V65a+V61c1Aa<a+V60c1V65FAamatchesV56a-V61V60V56c0V60Aa<=V61V57Aa<V60V61Aa<=c0V60Ia=alengthV62alengthV59FIa=V59aV58c1c0Aa=aeltsV59asetaeltsV58c1c0Ia=alengthV59alengthV58FIa<c1V57Ia=alengthV58V57Aa=aV58V66c0Ia<V66V57Aa<=c0V66FFLalengthV56Ia<=c1alengthV56F
a<=V61V57Aa<V63V61Aa<=c0V63Ia=V63aV62V60FINa=V60c0INa=aV56V61aV56V60Ia<V61a-V57c1Iais_nextV56V64aV62V64Ia<=V64V61Aa<c0V64FANamatchesV56a-a+V61c1V65V56c0V65Ia<V65a+V61c1Aa<a+V60c1V65FAamatchesV56a-V61V60V56c0V60Aa<=V61V57Aa<V60V61Aa<=c0V60Ia=alengthV62alengthV59FIa=V59aV58c1c0Aa=aeltsV59asetaeltsV58c1c0Ia=alengthV59alengthV58FIa<c1V57Ia=alengthV58V57Aa=aV58V66c0Ia<V66V57Aa<=c0V66FFLalengthV56Ia<=c1alengthV56F
amatchesV56a-V61V63V56c0V63Ia<=V61V57Aa<V63V61Aa<=c0V63Ia=V63aV62V60FINa=V60c0INa=aV56V61aV56V60Ia<V61a-V57c1Iais_nextV56V64aV62V64Ia<=V64V61Aa<c0V64FANamatchesV56a-a+V61c1V65V56c0V65Ia<V65a+V61c1Aa<a+V60c1V65FAamatchesV56a-V61V60V56c0V60Aa<=V61V57Aa<V60V61Aa<=c0V60Ia=alengthV62alengthV59FIa=V59aV58c1c0Aa=aeltsV59asetaeltsV58c1c0Ia=alengthV59alengthV58FIa<c1V57Ia=alengthV58V57Aa=aV58V66c0Ia<V66V57Aa<=c0V66FFLalengthV56Ia<=c1alengthV56F
NamatchesV56a-a+V61c1V64V56c0V64Ia<V64a+V61c1Aa<a+V63c1V64FIamatchesV56a-V61V63V56c0V63Ia<=V61V57Aa<V63V61Aa<=c0V63Ia=V63aV62V60FINa=V60c0INa=aV56V61aV56V60Ia<V61a-V57c1Iais_nextV56V65aV62V65Ia<=V65V61Aa<c0V65FANamatchesV56a-a+V61c1V66V56c0V66Ia<V66a+V61c1Aa<a+V60c1V66FAamatchesV56a-V61V60V56c0V60Aa<=V61V57Aa<V60V61Aa<=c0V60Ia=alengthV62alengthV59FIa=V59aV58c1c0Aa=aeltsV59asetaeltsV58c1c0Ia=alengthV59alengthV58FIa<c1V57Ia=alengthV58V57Aa=aV58V67c0Ia<V67V57Aa<=c0V67FFLalengthV56Ia<=c1alengthV56F
ais_nextV56V64aV62V64Ia<=V64V61Aa<c0V64FINamatchesV56a-a+V61c1V65V56c0V65Ia<V65a+V61c1Aa<a+V63c1V65FIamatchesV56a-V61V63V56c0V63Ia<=V61V57Aa<V63V61Aa<=c0V63Ia=V63aV62V60FINa=V60c0INa=aV56V61aV56V60Ia<V61a-V57c1Iais_nextV56V66aV62V66Ia<=V66V61Aa<c0V66FANamatchesV56a-a+V61c1V67V56c0V67Ia<V67a+V61c1Aa<a+V60c1V67FAamatchesV56a-V61V60V56c0V60Aa<=V61V57Aa<V60V61Aa<=c0V60Ia=alengthV62alengthV59FIa=V59aV58c1c0Aa=aeltsV59asetaeltsV58c1c0Ia=alengthV59alengthV58FIa<c1V57Ia=alengthV58V57Aa=aV58V68c0Ia<V68V57Aa<=c0V68FFLalengthV56Ia<=c1alengthV56F
ais_nextV56V63aV62V63Ia<V63alengthV56Aa<c0V63FAa=alengthV62alengthV56INa<V61a-V57c1Iais_nextV56V64aV62V64Ia<=V64V61Aa<c0V64FANamatchesV56a-a+V61c1V65V56c0V65Ia<V65a+V61c1Aa<a+V60c1V65FAamatchesV56a-V61V60V56c0V60Aa<=V61V57Aa<V60V61Aa<=c0V60Ia=alengthV62alengthV59FIa=V59aV58c1c0Aa=aeltsV59asetaeltsV58c1c0Ia=alengthV59alengthV58FIa<c1V57Ia=alengthV58V57Aa=aV58V66c0Ia<V66V57Aa<=c0V66FFLalengthV56Ia<=c1alengthV56F
postcondition
ais_nextV56V59aV58V59Ia<V59alengthV56Aa<c0V59FAa=alengthV58alengthV56INa<c1V57Ia=alengthV58V57Aa=aV58V60c0Ia<V60V57Aa<=c0V60FFLalengthV56Ia<=c1alengthV56F
iais_nextV56V59aV58V59Ia<V59alengthV56Aa<c0V59FAa=alengthV58alengthV56iais_nextV56V64aV63V64Ia<V64alengthV56Aa<c0V64FAa=alengthV63alengthV56iiais_nextV56V66aV63V66Ia<=V66V62Aa<c0V66FANamatchesV56a-a+V62c1V67V56c0V67Ia<V67a+V62c1Aa<a+V65c1V67FAamatchesV56a-V62V65V56c0V65Aa<=V62V57Aa<V65V62Aa<=c0V65Aa<V65V61Aa<=c0V61AtOa<a-V57V62a-V57V62Aa<=c0a-V57V62Ia=V65aV63V61FAa<V61alengthV63Aa<=c0V61ais_nextV56V70aV69V70Ia<=V70V68Aa<c0V70FANamatchesV56a-a+V68c1V71V56c0V71Ia<V71a+V68c1Aa<a+V61c1V71FAamatchesV56a-V68V61V56c0V61Aa<=V68V57Aa<V61V68Aa<=c0V61Aa<V61V61Aa<=c0V61Aa=a-V57V62a-V57V68Oa<a-V57V68a-V57V62Aa<=c0a-V57V62Ia=V69aV63V68c0Aa=aeltsV69asetaeltsV63V68c0Ia=alengthV69alengthV63FAa<V68alengthV63Aa<=c0V68Ia=V68a+V62c1Fa=V61c0ais_nextV56V75aV74V75Ia<=V75V72Aa<c0V75FANamatchesV56a-a+V72c1V76V56c0V76Ia<V76a+V72c1Aa<a+V73c1V76FAamatchesV56a-V72V73V56c0V73Aa<=V72V57Aa<V73V72Aa<=c0V73Aa<V73V61Aa<=c0V61Aa=a-V57V62a-V57V72Oa<a-V57V72a-V57V62Aa<=c0a-V57V62Ia=V74aV63V72V73Aa=aeltsV74asetaeltsV63V72V73Ia=alengthV74alengthV63F
VC for initnext
a<=c1alengthV56LalengthV57LalengthV56Ia<=c1alengthV56F
precondition
a<=c0V59Aa<=c0c0Aa<=c0V58Aa<=c0c0Iais_nextV56V61aV60V61Ia<V61alengthV56Aa<c0V61FAa=alengthV60alengthV56FLalengthV57LalengthV56Ia<=c1alengthV56F
amatchesV57a-c0c0V56c0c0Ia<=c0V59Aa<=c0c0Aa<=c0V58Aa<=c0c0Iais_nextV56V61aV60V61Ia<V61alengthV56Aa<c0V61FAa=alengthV60alengthV56FLalengthV57LalengthV56Ia<=c1alengthV56F
NamatchesV57V61V56c0V58Ia<V61a-c0c0Aa<=c0V61FIamatchesV57a-c0c0V56c0c0Ia<=c0V59Aa<=c0c0Aa<=c0V58Aa<=c0c0Iais_nextV56V62aV60V62Ia<V62alengthV56Aa<c0V62FAa=alengthV60alengthV56FLalengthV57LalengthV56Ia<=c1alengthV56F
a<V61alengthV56Aa<=c0V61Ia<V62V59Aa<V61V58INamatchesV57V63V56c0V58Ia<V63a-V62V61Aa<=c0V63FAamatchesV57a-V62V61V56c0V61Aa<=V62V59Aa<=V61V62Aa<=V61V58Aa<=c0V61FIais_nextV56V64aV60V64Ia<V64alengthV56Aa<c0V64FAa=alengthV60alengthV56FLalengthV57LalengthV56Ia<=c1alengthV56F
a<V62alengthV57Aa<=c0V62Ia<V62V59Aa<V61V58INamatchesV57V63V56c0V58Ia<V63a-V62V61Aa<=c0V63FAamatchesV57a-V62V61V56c0V61Aa<=V62V59Aa<=V61V62Aa<=V61V58Aa<=c0V61FIais_nextV56V64aV60V64Ia<V64alengthV56Aa<c0V64FAa=alengthV60alengthV56FLalengthV57LalengthV56Ia<=c1alengthV56F
a<V64V61Aa<=c0V61Aa=a-V59V62a-V59V63Oa<a-V59V63a-V59V62Aa<=c0a-V59V62Ia=V64a+V61c1FIa=V63a+V62c1FIa=aV57V62aV56V61Ia<V62V59Aa<V61V58INamatchesV57V65V56c0V58Ia<V65a-V62V61Aa<=c0V65FAamatchesV57a-V62V61V56c0V61Aa<=V62V59Aa<=V61V62Aa<=V61V58Aa<=c0V61FIais_nextV56V66aV60V66Ia<V66alengthV56Aa<c0V66FAa=alengthV60alengthV56FLalengthV57LalengthV56Ia<=c1alengthV56F
a<=V63V59Aa<=V64V63Aa<=V64V58Aa<=c0V64Ia=V64a+V61c1FIa=V63a+V62c1FIa=aV57V62aV56V61Ia<V62V59Aa<V61V58INamatchesV57V65V56c0V58Ia<V65a-V62V61Aa<=c0V65FAamatchesV57a-V62V61V56c0V61Aa<=V62V59Aa<=V61V62Aa<=V61V58Aa<=c0V61FIais_nextV56V66aV60V66Ia<V66alengthV56Aa<c0V66FAa=alengthV60alengthV56FLalengthV57LalengthV56Ia<=c1alengthV56F
amatchesV57a-V63V64V56c0V64Ia<=V63V59Aa<=V64V63Aa<=V64V58Aa<=c0V64Ia=V64a+V61c1FIa=V63a+V62c1FIa=aV57V62aV56V61Ia<V62V59Aa<V61V58INamatchesV57V65V56c0V58Ia<V65a-V62V61Aa<=c0V65FAamatchesV57a-V62V61V56c0V61Aa<=V62V59Aa<=V61V62Aa<=V61V58Aa<=c0V61FIais_nextV56V66aV60V66Ia<V66alengthV56Aa<c0V66FAa=alengthV60alengthV56FLalengthV57LalengthV56Ia<=c1alengthV56F
NamatchesV57V65V56c0V58Ia<V65a-V63V64Aa<=c0V65FIamatchesV57a-V63V64V56c0V64Ia<=V63V59Aa<=V64V63Aa<=V64V58Aa<=c0V64Ia=V64a+V61c1FIa=V63a+V62c1FIa=aV57V62aV56V61Ia<V62V59Aa<V61V58INamatchesV57V66V56c0V58Ia<V66a-V62V61Aa<=c0V66FAamatchesV57a-V62V61V56c0V61Aa<=V62V59Aa<=V61V62Aa<=V61V58Aa<=c0V61FIais_nextV56V67aV60V67Ia<V67alengthV56Aa<c0V67FAa=alengthV60alengthV56FLalengthV57LalengthV56Ia<=c1alengthV56F
a<V61V61Aa<=c0V61Aa=a-V59V62a-V59V63Oa<a-V59V63a-V59V62Aa<=c0a-V59V62Ia=V63a+V62c1FIa=V61c0INa=aV57V62aV56V61Ia<V62V59Aa<V61V58INamatchesV57V64V56c0V58Ia<V64a-V62V61Aa<=c0V64FAamatchesV57a-V62V61V56c0V61Aa<=V62V59Aa<=V61V62Aa<=V61V58Aa<=c0V61FIais_nextV56V65aV60V65Ia<V65alengthV56Aa<c0V65FAa=alengthV60alengthV56FLalengthV57LalengthV56Ia<=c1alengthV56F
a<=V63V59Aa<=V61V63Aa<=V61V58Aa<=c0V61Ia=V63a+V62c1FIa=V61c0INa=aV57V62aV56V61Ia<V62V59Aa<V61V58INamatchesV57V64V56c0V58Ia<V64a-V62V61Aa<=c0V64FAamatchesV57a-V62V61V56c0V61Aa<=V62V59Aa<=V61V62Aa<=V61V58Aa<=c0V61FIais_nextV56V65aV60V65Ia<V65alengthV56Aa<c0V65FAa=alengthV60alengthV56FLalengthV57LalengthV56Ia<=c1alengthV56F
amatchesV57a-V63V61V56c0V61Ia<=V63V59Aa<=V61V63Aa<=V61V58Aa<=c0V61Ia=V63a+V62c1FIa=V61c0INa=aV57V62aV56V61Ia<V62V59Aa<V61V58INamatchesV57V64V56c0V58Ia<V64a-V62V61Aa<=c0V64FAamatchesV57a-V62V61V56c0V61Aa<=V62V59Aa<=V61V62Aa<=V61V58Aa<=c0V61FIais_nextV56V65aV60V65Ia<V65alengthV56Aa<c0V65FAa=alengthV60alengthV56FLalengthV57LalengthV56Ia<=c1alengthV56F
NamatchesV57V64V56c0V58Ia<V64a-V63V61Aa<=c0V64FIamatchesV57a-V63V61V56c0V61Ia<=V63V59Aa<=V61V63Aa<=V61V58Aa<=c0V61Ia=V63a+V62c1FIa=V61c0INa=aV57V62aV56V61Ia<V62V59Aa<V61V58INamatchesV57V65V56c0V58Ia<V65a-V62V61Aa<=c0V65FAamatchesV57a-V62V61V56c0V61Aa<=V62V59Aa<=V61V62Aa<=V61V58Aa<=c0V61FIais_nextV56V66aV60V66Ia<V66alengthV56Aa<c0V66FAa=alengthV60alengthV56FLalengthV57LalengthV56Ia<=c1alengthV56F
a<V61alengthV60Aa<=c0V61INa=V61c0INa=aV57V62aV56V61Ia<V62V59Aa<V61V58INamatchesV57V63V56c0V58Ia<V63a-V62V61Aa<=c0V63FAamatchesV57a-V62V61V56c0V61Aa<=V62V59Aa<=V61V62Aa<=V61V58Aa<=c0V61FIais_nextV56V64aV60V64Ia<V64alengthV56Aa<c0V64FAa=alengthV60alengthV56FLalengthV57LalengthV56Ia<=c1alengthV56F
a<V63V61Aa<=c0V61AtOa<a-V59V62a-V59V62Aa<=c0a-V59V62Ia=V63aV60V61FINa=V61c0INa=aV57V62aV56V61Ia<V62V59Aa<V61V58INamatchesV57V64V56c0V58Ia<V64a-V62V61Aa<=c0V64FAamatchesV57a-V62V61V56c0V61Aa<=V62V59Aa<=V61V62Aa<=V61V58Aa<=c0V61FIais_nextV56V65aV60V65Ia<V65alengthV56Aa<c0V65FAa=alengthV60alengthV56FLalengthV57LalengthV56Ia<=c1alengthV56F
a<=V62V59Aa<=V63V62Aa<=V63V58Aa<=c0V63Ia=V63aV60V61FINa=V61c0INa=aV57V62aV56V61Ia<V62V59Aa<V61V58INamatchesV57V64V56c0V58Ia<V64a-V62V61Aa<=c0V64FAamatchesV57a-V62V61V56c0V61Aa<=V62V59Aa<=V61V62Aa<=V61V58Aa<=c0V61FIais_nextV56V65aV60V65Ia<V65alengthV56Aa<c0V65FAa=alengthV60alengthV56FLalengthV57LalengthV56Ia<=c1alengthV56F
amatchesV57a-V62V63V56c0V63Ia<=V62V59Aa<=V63V62Aa<=V63V58Aa<=c0V63Ia=V63aV60V61FINa=V61c0INa=aV57V62aV56V61Ia<V62V59Aa<V61V58INamatchesV57V64V56c0V58Ia<V64a-V62V61Aa<=c0V64FAamatchesV57a-V62V61V56c0V61Aa<=V62V59Aa<=V61V62Aa<=V61V58Aa<=c0V61FIais_nextV56V65aV60V65Ia<V65alengthV56Aa<c0V65FAa=alengthV60alengthV56FLalengthV57LalengthV56Ia<=c1alengthV56F
a=alengthanextalengthap
ais_nextapV56aanextV56Ia<V56alengthapAa<c0V56F
a<=ajam
a<=ajai
a<=aian
amatchesaaa-aiajapc0aj
NamatchesaaV57apc0amIa<V57a-aiajAa<=c0V57F
a<ajam
a<aian
Na=aaaaiaapaj
Na=ajc0
a=aj1aanextaj
a<=aianAa<=aj1aiAa<=aj1amAa<=c0aj1
amatchesaaa-aiaj1apc0aj1
a<=c0ak
a<aka-aiaj1
Namatchesaaa-akc1apc0amIa<a-akc1a-aiajAa<=c0a-akc1
Namatchesaaakapc0am
NamatchesV57V64V56c0V58Ia<V64a-V62V63Aa<=c0V64FIamatchesV57a-V62V63V56c0V63Ia<=V62V59Aa<=V63V62Aa<=V63V58Aa<=c0V63Ia=V63aV60V61FINa=V61c0INa=aV57V62aV56V61Ia<V62V59Aa<V61V58INamatchesV57V65V56c0V58Ia<V65a-V62V61Aa<=c0V65FAamatchesV57a-V62V61V56c0V61Aa<=V62V59Aa<=V61V62Aa<=V61V58Aa<=c0V61FIais_nextV56V66aV60V66Ia<V66alengthV56Aa<c0V66FAa=alengthV60alengthV56FLalengthV57LalengthV56Ia<=c1alengthV56F
afirst_occurV56V57V63Iia=V63V62a=V63a-V62V58a=V61V58FINa<V62V59Aa<V61V58INamatchesV57V64V56c0V58Ia<V64a-V62V61Aa<=c0V64FAamatchesV57a-V62V61V56c0V61Aa<=V62V59Aa<=V61V62Aa<=V61V58Aa<=c0V61FIais_nextV56V65aV60V65Ia<V65alengthV56Aa<c0V65FAa=alengthV60alengthV56FLalengthV57LalengthV56Ia<=c1alengthV56F
iafirst_occurV56V57V63Iia=V63V62a=V63a-V62V58a=V61V58FiiNamatchesV57V65V56c0V58Ia<V65a-V62V64Aa<=c0V65FAamatchesV57a-V62V64V56c0V64Aa<=V62V59Aa<=V64V62Aa<=V64V58Aa<=c0V64Aa<V64V61Aa<=c0V61AtOa<a-V59V62a-V59V62Aa<=c0a-V59V62Ia=V64aV60V61FAa<V61alengthV60Aa<=c0V61NamatchesV57V67V56c0V58Ia<V67a-V66V61Aa<=c0V67FAamatchesV57a-V66V61V56c0V61Aa<=V66V59Aa<=V61V66Aa<=V61V58Aa<=c0V61Aa<V61V61Aa<=c0V61Aa=a-V59V62a-V59V66Oa<a-V59V66a-V59V62Aa<=c0a-V59V62Ia=V66a+V62c1Fa=V61c0NamatchesV57V70V56c0V58Ia<V70a-V68V69Aa<=c0V70FAamatchesV57a-V68V69V56c0V69Aa<=V68V59Aa<=V69V68Aa<=V69V58Aa<=c0V69Aa<V69V61Aa<=c0V61Aa=a-V59V62a-V59V68Oa<a-V59V68a-V59V62Aa<=c0a-V59V62Ia=V69a+V61c1FIa=V68a+V62c1Fa=aV57V62aV56V61Aa<V62alengthV57Aa<=c0V62Aa<V61alengthV56Aa<=c0V61a<V62V59Aa<V61V58INamatchesV57V71V56c0V58Ia<V71a-V62V61Aa<=c0V71FAamatchesV57a-V62V61V56c0V61Aa<=V62V59Aa<=V61V62Aa<=V61V58Aa<=c0V61FANamatchesV57V72V56c0V58Ia<V72a-c0c0Aa<=c0V72FAamatchesV57a-c0c0V56c0c0Aa<=c0V59Aa<=c0c0Aa<=c0V58Aa<=c0c0Iais_nextV56V73aV60V73Ia<V73alengthV56Aa<
VC for kmp

69ccc6287732e326ebe74ff6e4eab67d 1H0
9c1c75e6bd829f4030e6f0629b8907c7 1H2H0
883b97f2c3976df58144c16b0a3e4d2a 1H3H2H0
571a95f2c73866dacef9695cd65a3c77 1H4H3H2H0
7af5cd49f6820da1ce068688b1a98fbc 1H5H4H3H2H0
1c9488e8562876ed7061d788376b2fda 1H6H5H4H3H2H0
2061d884ae34e87d67c0d236aa754bd0 1H7H6H5H4H3H2H0
cd505ddec21df2712ce41f2b85fdc0e0 1H8H7H6H5H4H3H2H0
357c63f512bcb9225b9a2e641aceddec 1H9H8H7H6H5H4H3H2H0
a1fd9a883156315bb98050beb849544a 1H10H9H8H7H6H5H4H3H2H0
ab77186de7ca6fbe407b529b511e14f4 1H11H10H9H8H7H6H5H4H3H2H0
ccba8ee282a6b812cb29a892cca7043a 74H73H11H10H9H8H7H6H5H4H3H2H0
51f37cd59e89114225941db13f9ff413 13H12H11H10H9H8H7H6H5H4H3H2H0
9803b7de317237ff41bf851cb79474d8 15H14H11H10H9H8H7H6H5H4H3H2H0
cfa90499fc4e2aa2fc440aa60831f990 17H16H11H10H9H8H7H6H5H4H3H2H0
98722dd228a2a384c60fa229acb9b28c 17H18H11H10H9H8H7H6H5H4H3H2H0
20266fa8d90fcde38e9b11ca380cb380 17H19H11H10H9H8H7H6H5H4H3H2H0
b5a92cc4c39f4b62d2a7ee8e3086f204 17H20H11H10H9H8H7H6H5H4H3H2H0
65cdd99dda33af64ea3fe66126d9c658 15H21H11H10H9H8H7H6H5H4H3H2H0
55c638465e209995c06e5e7e9738503a 15H22H11H10H9H8H7H6H5H4H3H2H0
11795649ea4d38475732dd7b1657aa61 15H23H11H10H9H8H7H6H5H4H3H2H0
542d7b29dc30e6d15d879dd7643f442b 25H24H11H10H9H8H7H6H5H4H3H2H0
b23430629caddd513eee9c888634c98c 27H26H11H10H9H8H7H6H5H4H3H2H0
e7ef455a01f79b06241fb7921b056b7b 27H28H11H10H9H8H7H6H5H4H3H2H0
678cca1357a375fbd8c1311cc0b7d3a5 27H56H11H10H9H8H7H6H5H4H3H2H0
4aa78ea0f7a4ac0a9302070bed912f2d 27H55H53H52H51H50H49H48H47H46H45H44H43H42H41H40H39H38H37H36H35H34H33H32H31H30H29H11H10H9H8H7H6H5H4H3H2H0
4b6d537d48e82d7c720b43a5c4be7636 27H55H54H53H52H51H50H49H48H47H46H45H44H43H42H41H40H39H38H37H36H35H34H33H32H31H30H29H11H10H9H8H7H6H5H4H3H2H0
6126b8e85f12e23a304d9c55cb3a6620 27H57H11H10H9H8H7H6H5H4H3H2H0
2e63b6e9b15ff3eaec0a0b38dc0d7ef8 15H58H11H10H9H8H7H6H5H4H3H2H0
126f1c1748d007acd17902489c7c69a0 25H59H11H10H9H8H7H6H5H4H3H2H0
8938bc243cff4866e25945db2b1eec6a 27H60H11H10H9H8H7H6H5H4H3H2H0
76f0c02024ed24fa6d7fba0108bbabda 27H61H11H10H9H8H7H6H5H4H3H2H0
a2411e8ffe58a69033466a467b772998 27H62H11H10H9H8H7H6H5H4H3H2H0
fcc7da4538ae30554ff74471a4c47b38 27H63H11H10H9H8H7H6H5H4H3H2H0
cd7f166735a5ae8182be05743ebaeb82 15H64H11H10H9H8H7H6H5H4H3H2H0
a4e566ee8827e0320e6ea289c12fe6be 25H65H11H10H9H8H7H6H5H4H3H2H0
849eae4b9a8c0e85b3c3359ea6d5b3bc 27H66H11H10H9H8H7H6H5H4H3H2H0
d5ec1b4283f46ded3b3d8ba0ff94afd3 27H67H11H10H9H8H7H6H5H4H3H2H0
0e609de481c556924ecffb71a06ad352 27H68H11H10H9H8H7H6H5H4H3H2H0
238741446dc6a214fb77a2088c955c9d 27H69H11H10H9H8H7H6H5H4H3H2H0
a0815daf16fb4ecbbce907402ec64150 71H70H11H10H9H8H7H6H5H4H3H2H0
ec4aec797285bb0dbf8edcae311d00ea 71H72H11H10H9H8H7H6H5H4H3H2H0
f6e87ba66cfeec6a3bba71d135832e4b 115H114H11H10H9H8H7H6H5H4H3H2H0
a29db64e37ab642d7cc4597eab5d6b71 76H75H11H10H9H8H7H6H5H4H3H2H0
4539358667b63fc70d4d6c60e9775cc8 17H77H11H10H9H8H7H6H5H4H3H2H0
461cb34b4ec467318c7be1848f981a0f 17H78H11H10H9H8H7H6H5H4H3H2H0
899ef6d57be90c5d03a9493c9c3fe0d4 17H79H11H10H9H8H7H6H5H4H3H2H0
f678d7a82b7691a85e13912d066198d2 15H80H11H10H9H8H7H6H5H4H3H2H0
87dd95f73bf059fae7d63cb75c8dbf5f 15H81H11H10H9H8H7H6H5H4H3H2H0
692cee9f002514669c4285754267a73a 25H82H11H10H9H8H7H6H5H4H3H2H0
bd2427124f748c44a494a24c62595fc5 27H83H11H10H9H8H7H6H5H4H3H2H0
1baff5ce936541a217157e33d41b3f23 27H84H11H10H9H8H7H6H5H4H3H2H0
aec3c0cf0a840eb97d827418602ffc71 27H85H11H10H9H8H7H6H5H4H3H2H0
b48e66443ba3624b6f063c8611c4adf4 25H86H11H10H9H8H7H6H5H4H3H2H0
604d37982c719fe4fb1424b83dae2766 27H87H11H10H9H8H7H6H5H4H3H2H0
e5965d12bfffbb2f5db315a703fcf735 27H88H11H10H9H8H7H6H5H4H3H2H0
7eb443055997c2c24f4d09692433fb44 27H89H11H10H9H8H7H6H5H4H3H2H0
b1f30037caedd6f23f659aee9957b12f 15H90H11H10H9H8H7H6H5H4H3H2H0
ec54c655be673c128d4e5b6a6f591273 25H91H11H10H9H8H7H6H5H4H3H2H0
7d1734f00c219decd9964c5d1bf02205 27H92H11H10H9H8H7H6H5H4H3H2H0
28da81d20c25364003c33ce24fa3aba7 27H93H11H10H9H8H7H6H5H4H3H2H0
fc9ffae31a8f0cf40f1aedaba2c47ac8 27H112H11H10H9H8H7H6H5H4H3H2H0
74522d153c127dbd22c83d8fbcef9c88 27H111H109H108H107H106H105H104H103H102H101H100H99H98H97H96H37H95H94H29H11H10H9H8H7H6H5H4H3H2H0
d654346dbf60203ddcef4c9ff265fec9 27H111H110H109H108H107H106H105H104H103H102H101H100H99H98H97H96H37H95H94H29H11H10H9H8H7H6H5H4H3H2H0
c441f25c550ac90981b5f021501975c3 71H113H11H10H9H8H7H6H5H4H3H2H0
