Add working functions
Improve Documentation