Work in progress: users should not depend on this yet!