everything in the paper fully documented through section 4