input completion