add optional nesting