some form of interface complete