Lots of implementation paper revision