use iface not impl