This is a solid rough draft