constructor init on self