appapple0ytrueappappleappsx0falseappappleappsxappsyappapplexyapppredappsxxappappminusx0xappappminusxappsyapppredappappminusxyappappgcd0yyappappgcdappsx0appsxappappgcdappsxappsyappappappif_gcdappappleyxappsxappsyappappappif_gcdtrueappsxappsyappappgcdappappminusxyappsyappappappif_gcdfalseappsxappsyappappgcdappappminusyxappsxappappmapfnilnilappappmapfappappconsxxsappappconsappfxappappmapfxsappappfilterfnilnilappappfilterfappappconsxxsappappappappfilter2appfxfxxsappappappappfilter2truefxxsappappconsxappappfilterfxsappappappappfilter2falsefxxsappappfilterfxs2.0appappleappsxappsyapplexappappleappsxappsyappapplexyappappminusxappsyappappminusxyappappminusxappsyapppredappappminusxyappappgcdappsxappsyappleyappappgcdappsxappsyappappleyxappappgcdappsxappsyappif_gcdappappleyxappappgcdappsxappsyappappif_gcdappappleyxappsxappappgcdappsxappsyappappappif_gcdappappleyxappsxappsyappappappif_gcdtrueappsxappsyappminusxappappappif_gcdtrueappsxappsyappappminusxyappappappif_gcdtrueappsxappsyappgcdappappminusxyappappappif_gcdtrueappsxappsyappappgcdappappminusxyappsyappappappif_gcdfalseappsxappsyappminusyappappappif_gcdfalseappsxappsyappappminusyxappappappif_gcdfalseappsxappsyappgcdappappminusyxappappappif_gcdfalseappsxappsyappappgcdappappminusyxappsxappappmapfappappconsxxsappappmapfxsappappmapfappappconsxxsappfxappappmapfappappconsxxsappconsappfxappappmapfappappconsxxsappappconsappfxappappmapfxsappappfilterfappappconsxxsappfxappappfilterfappappconsxxsappfilter2appfxappappfilterfappappconsxxsappappfilter2appfxfappappfilterfappappconsxxsappappappfilter2appfxfxappappfilterfappappconsxxsappappappappfilter2appfxfxxsappappappappfilter2truefxxsappfilterfappappappappfilter2truefxxsappappfilterfxsappappappappfilter2truefxxsappconsxappappappappfilter2truefxxsappappconsxappappfilterfxsappappappappfilter2falsefxxsappfilterfappappappappfilter2falsefxxsappappfilterfxstrueappappfilterfappappconsxxsappappappappfilter2appfxfxxsappappappappfilter2falsefxxsappappfilterfxsappappfilterfappappconsxxsappfxappappappappfilter2truefxxsappappfilterfxsappappmapfappappconsxxsappfxappappmapfappappconsxxsappappmapfxstrue211641app200001101020000filter201000filter00000cons00100nil01100map00100if_gcd01000gcd00000minus00000pred00100false00000s00100true01100app211101010120000000000le00000appappappappfilter2falsefxxsappappfilterfxsappappappappfilter2truefxxsappappfilterfxsappappappappfilter2falsefxxsappappfilterfxsfalseappappappappfilter2truefxxsappappfilterfxsfalseappappappif_gcdfalseappsxappsyappappgcdappappminusyxappsxappappgcdappsxappsyappappappif_gcdappappleyxappsxappsyappappappif_gcdtrueappsxappsyappappgcdappappminusxyappsytrueappapp2app0filter20filter20filter21filter22filter23filter24filter0filter0filter1filter2cons0cons0cons1cons2nil0nil0map0map0map1map2if_gcd0if_gcd0if_gcd1if_gcd2if_gcd3gcd0gcd0gcd1gcd2minus0minus0minus1minus2pred0pred0pred1false0false0s0s0s1true0true00000le0le0le1le2apple1x356x357le2x356x357apple0x356le1x356apps0x361s1x361apppred0x364pred1x364appminus1x366x367minus2x366x367appminus0x366minus1x366appgcd1x369x370gcd2x369x370appgcd0x369gcd1x369appif_gcd2x372x373x374if_gcd3x372x373x374appif_gcd1x372x373if_gcd2x372x373appif_gcd0x372if_gcd1x372appmap1x376x377map2x376x377appmap0x376map1x376appcons1x380x381cons2x380x381appcons0x380cons1x380appfilter1x383x384filter2x383x384appfilter0x383filter1x383appfilter23x386x387x388x389filter24x386x387x388x389appfilter22x386x387x388filter23x386x387x388appfilter21x386x387filter22x386x387appfilter20x386filter21x386app0if_gcd2false0s1xs1yapp0gcd1minus2yxs1xapp0gcd1s1xs1yapp0if_gcd2le2yxs1xs1yapp0if_gcd2true0s1xs1yapp0gcd1minus2xys1yle200ytrue0le2s1x00false0le2s1xs1yle2xypred1s1xxminus2x00xminus2xs1ypred1minus2xygcd200yygcd2s1x00s1xgcd2s1xs1yif_gcd3le2yxs1xs1yif_gcd3true0s1xs1ygcd2minus2xys1yif_gcd3false0s1xs1ygcd2minus2yxs1xmap2fnil0nil0map2fcons2xxscons2appfxmap2fxsfilter2fnil0nil0filter2fcons2xxsfilter24appfxfxxsfilter24true0fxxscons2xfilter2fxsfilter24false0fxxsfilter2fxsapple1x356x357le2x356x357apple0x356le1x356apps0x361s1x361apppred0x364pred1x364appminus1x366x367minus2x366x367appminus0x366minus1x366appgcd1x369x370gcd2x369x370appgcd0x369gcd1x369appif_gcd2x372x373x374if_gcd3x372x373x374appif_gcd1x372x373if_gcd2x372x373appif_gcd0x372if_gcd1x372appmap1x376x377map2x376x377appmap0x376map1x376appcons1x380x381cons2x380x381appcons0x380cons1x380appfilter1x383x384filter2x383x384appfilter0x383filter1x383appfilter23x386x387x388x389filter24x386x387x388x389appfilter22x386x387x388filter23x386x387x388appfilter21x386x387filter22x386x387appfilter20x386filter21x386211641app0210101101021000if_gcd2200001100121100gcd11101011100minus2211111000020000pred11110010000false000000s11111111000true0000000001000le2200001111020000app0gcd1s1xs1yapp0if_gcd2le2yxs1xs1yminus2x00xminus2xs1ypred1minus2xypred1s1xxle200ytrue0le2s1x00false0le2s1xs1yle2xyapp0gcd1s1xs1yapp0if_gcd2le2yxs1xs1yfalseappappappif_gcdtrueappsxappsyappminusxfalseappappappif_gcdtrueappsxappsyappappminusxyfalseappappappif_gcdtrueappsxappsyappgcdappappminusxyfalseappappgcdappsxappsyappleyfalseappappgcdappsxappsyappappleyxfalseappappleappsxappsyappapplexytrue211641app200001001020000s00100app200011011120000le00000appappleappsxappsyapplexfalseappappgcdappsxappsyappif_gcdappappleyxfalseappappgcdappsxappsyappappif_gcdappappleyxappsxfalseappappappif_gcdfalseappsxappsyappminusyfalseappappappif_gcdfalseappsxappsyappappminusyxfalseappappminusxappsyappappminusxytrue211641app210101001021000minus01100s00000app210101000120100appappminusxappsyapppredappappminusxyfalseappappappif_gcdfalseappsxappsyappgcdappappminusyxfalseappappmapfappappconsxxsappconsappfxfalseappappmapfappappconsxxsappappconsappfxappappmapfxsfalseappappappappfilter2truefxxsappfilterffalseappappappappfilter2truefxxsappconsxfalseappappappappfilter2truefxxsappappconsxappappfilterfxsfalseappappappappfilter2falsefxxsappfilterffalseappappfilterfappappconsxxsappappappfilter2appfxfxfalseappappfilterfappappconsxxsappappfilter2appfxffalseappappfilterfappappconsxxsappfilter2appfxfalse