a__zeroscons0zerosa__andttXmarkXa__lengthnil0a__lengthconsNLsa__lengthmarkLa__take0ILnila__takesMconsNILconsmarkNtakeMILmarkzerosa__zerosmarkandX1X2a__andmarkX1X2marklengthXa__lengthmarkXmarktakeX1X2a__takemarkX1markX2markconsX1X2consmarkX1X2mark00markttttmarknilnilmarksXsmarkXa__zeroszerosa__andX1X2andX1X2a__lengthXlengthXa__takeX1X2takeX1X2a__lengthconsNzerosa__lengthconsNLsa__lengthmarkLsa__lengthmarkzeros11markzerosa__zerossa__lengtha__zeros11a__zeroscons0zerosN0s