added code and libs