Mostly working - needs to be cleaned up!