creating an instance: complete