fixed stupidly typed optionals