still working out some bugs