Massive edits by Paul