Innitial push
Lib implemented