Author: Hidemine Takahashi (needs-merge-openlibrary OL5638818A)