cherry-pick PR #15 by @dgryski
cherry-pick PR #15 by @dgryski

bocops/open-location-code,wnameless/open-location-code,wnameless/open-location-code,wnameless/open-location-code,google/open-location-code,bocops/open-location-code,chlorm-forks/open-location-code,google/open-location-code,google/open-location-code,wnameless/open-location-code,bocops/open-location-code,tgulacsi/open-location-code,chlorm-forks/open-location-code,chlorm-forks/open-location-code,zongweil/open-location-code,bocops/open-location-code,google/open-location-code,google/open-location-code,zongweil/open-location-code,bocops/open-location-code,kkdd/open-location-code,zongweil/open-location-code,zongweil/open-location-code,tgulacsi/open-location-code,zongweil/open-location-code,zongweil/open-location-code,kkdd/open-location-code,bocops/open-location-code,kkdd/open-location-code,zongweil/open-location-code,wnameless/open-location-code,zongweil/open-location-code,google/open-location-code,chlorm-forks/open-location-code,bocops/open-location-code,bocops/open-location-code,zongweil/open-location-code,chlorm-forks/open-location-code,chlorm-forks/open-location-code,google/open-location-code,chlorm-forks/open-location-code,google/open-location-code,wnameless/open-location-code,kkdd/open-location-code,wnameless/open-location-code,zongweil/open-location-code,bocops/open-location-code,google/open-location-code,kkdd/open-location-code,google/open-location-code,tgulacsi/open-location-code,google/open-location-code,bocops/open-location-code,bocops/open-location-code,kkdd/open-location-code,zongweil/open-location-code