dropAt i (l:ls) | i == 0    = ls
                | otherwise = l : dropAt (i-1) ls
dropAt i (l:ls) | i == 0    = ls
                | otherwise = l : dropAt (i-1) ls
dropAt i (l:ls) | i == 0    = ls
                | otherwise = l : dropAt (i-1) ls