added license
combined diff and patch
added basic functions but yet need to add functionality
imported logging
added inputs