Add initialize
Fix bugs