visitor save component done