added optional to all specs