Use design proposed in #1037
Use design proposed in #1037