fixes #34, fixes #31 but creates a whole new set of issues.