This issue is split by #13.
This issue is split by #13.