like a passthrough, but in both directions