added some functionality, more to come