Added the ability to (hopefully) parse arbitrary inputs