constructor options handling