init
add func