building out some functionality