add post func ,filled with bugs