first initialize
~