documented initialization