work in progress, links to come shortly