add input(stable)
add config
refactor