added libraries
basic implementation