add input interface