make interface more granular.