enable to self-define the interface size