Reviewed by Nat, some things added, some things removed.