re for whitespace
added new fields, cleaning, and run method