starting constructor