Working on the interfaces and giving credit where necessary