add most of the methods section