- First draft of the code, modified the examples