private static function createPolygon(array $coordinates): Polygon
    {
        $polygon = array_shift($coordinates);

        return new Polygon(array_map(Coordinate::class.'::create', $polygon), ...array_map(function (array $poly) {
            return array_map(Coordinate::class.'::create', $poly);
        }, $coordinates));
    }