added preserve function for removing white space and multiline indentation :beer: