Experimental code. Don't use it.
intermediate-state
more consistency
merged