## engines.written_plan()


The plan as Lean parsed it, written back out from its `Rel`


Usage

``` python
engines.written_plan(plan_json)
```


(`substrait-check --write`; the golden tests check this round trip), once the checker has found it well-formed.

This is the form [sverify.engines.run](engines.run.md#sverify.engines.run) and [sverify.engines.to_sql](engines.to_sql.md#sverify.engines.to_sql) take, and what a node's [plan](Node.plan.md#sverify.Node.plan) holds.


## Parameters


`plan_json: str`  
A Substrait plan as protobuf JSON.


## Returns


`str`  
The plan in Lean's written form, as protobuf JSON.


## Raises


`ValueError`  
The checker rejects the plan (an operator, function or type outside the Lean model, or an ill-formed plan).
