docs: public static GeographyValue unflattenFromBuffer(ByteBuffer inBuffer) {
          byte version = inBuffer.get(); // encoding version
          inBuffer.get(); // owns loops
          inBuffer.get(); // has holes
          int numLoops = inBuffer.getInt();
          List<List<XYZPoint>> loops = new ArrayList<>();
          int indexOfOuterRing = 0;
          for (int i = 0; i < numLoops; ++i) {
              List<XYZPoint> loop = new ArrayList<>();
              int depth = unflattenLoopFromBuffer(inBuffer, loop);
              if (depth == 0) {
                  indexOfOuterRing = i;
              }
  
              loops.add(loop);
          }
  
          unflattenBoundFromBuffer(inBuffer);
  
          return polygonFromXyzPoints(loops);
      }