Working on #23. idk how to use monads -_-