added all code and files needed