S.provide(self, context) and eliminate the R. Schema<A, B, X> -> Schema<A, B, never>const ctx = yield* Effect.context<SchemaR>() and provide it. one problem is that also restores the span, (in other cases it might be problematic by restoring Scope too etc)