First edit, removed original forked files to replace with my own