nicer interface
merge (conflict with new API)