everything works! now i just need to add some documentation