takeExact n xs = | n >= 0 && n <= length xs = take n xs | otherwise = error "some message"
dropExact n xs = | n >= 0 && n <= length xs = drop n xs | otherwise = error "some message"