all optionals done