> what should I do to correct the problem? try to align "m" and "(xse,xsd)": indent "(" to the same number of spaces as "m" where m = (length xs) `div` 2 (xse, xsd) = (take m xs, drop m xs) indents are important. Also check if you use tab character. It is safer to use spaces.