converted parsing functions to have their attributes cleanly separated