more work on the naive implementation of the new interface