working on getting the interface right.