new interface

simplified interface and code