Merge with john's interface