See details in comments to PR #127
See details in comments to PR #127